@flatbiz/antd 4.5.46 → 4.5.48
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/esm/ace-editor-json/index.js +1 -1
- package/esm/ace-editor-json/index.js.map +1 -1
- package/esm/ace-editor-mysql/index.js +1 -1
- package/esm/ace-editor-mysql/index.js.map +1 -1
- package/esm/ace-editor-xml/index.js +1 -1
- package/esm/ace-editor-xml/index.js.map +1 -1
- package/esm/ai-search/index.css +0 -0
- package/esm/ai-search/index.js +11 -0
- package/esm/ai-search/index.js.map +1 -0
- package/esm/bootstrap/index.js +1 -1
- package/esm/bootstrap/index.js.map +1 -1
- package/esm/button-operate/index.js +1 -1
- package/esm/button-operate/index.js.map +1 -1
- package/esm/button-wrapper/index.js +1 -1
- package/esm/button-wrapper/index.js.map +1 -1
- package/esm/cascader-wrapper/index.js +1 -1
- package/esm/cascader-wrapper/index.js.map +1 -1
- package/esm/check-list/index.js +1 -1
- package/esm/check-list/index.js.map +1 -1
- package/esm/config-provider-wrapper/index.js +1 -1
- package/esm/date-range-picker-wrapper-form-item/index.js +1 -1
- package/esm/date-range-picker-wrapper-form-item/index.js.map +1 -1
- package/esm/dialog-alert/index.js +1 -1
- package/esm/dialog-alert/index.js.map +1 -1
- package/esm/dialog-confirm/index.js +1 -1
- package/esm/dialog-confirm/index.js.map +1 -1
- package/esm/dialog-drag-modal/index.css +1 -0
- package/esm/dialog-drag-modal/index.js +12 -0
- package/esm/dialog-drag-modal/index.js.map +1 -0
- package/esm/dialog-drawer/index.js +1 -1
- package/esm/dialog-drawer/index.js.map +1 -1
- package/esm/dialog-drawer-content/index.js +1 -1
- package/esm/dialog-drawer-content/index.js.map +1 -1
- package/esm/dialog-loading/index.js +1 -1
- package/esm/dialog-loading/index.js.map +1 -1
- package/esm/dialog-modal/index.js +1 -1
- package/esm/dialog-modal/index.js.map +1 -1
- package/esm/dialog-preview-image/index.js +1 -1
- package/esm/dialog-preview-image/index.js.map +1 -1
- package/esm/drag-collapse/index.js +1 -1
- package/esm/drag-collapse/index.js.map +1 -1
- package/esm/drag-collapse-form-list/index.js +1 -1
- package/esm/drag-collapse-form-list/index.js.map +1 -1
- package/esm/drag-editable-card/index.js +1 -1
- package/esm/drag-editable-card/index.js.map +1 -1
- package/esm/drag-editable-table/index.js +1 -1
- package/esm/drag-editable-table/index.js.map +1 -1
- package/esm/drag-editable-table-pro/index.js +1 -1
- package/esm/drag-editable-table-pro/index.js.map +1 -1
- package/esm/drag-form-list/index.js +1 -1
- package/esm/drag-form-list/index.js.map +1 -1
- package/esm/drawer-wrapper/index.js +1 -1
- package/esm/drawer-wrapper/index.js.map +1 -1
- package/esm/dropdown-menu-wrapper/index.js +1 -1
- package/esm/dropdown-menu-wrapper/index.js.map +1 -1
- package/esm/easy-form/index.js +1 -1
- package/esm/easy-form/index.js.map +1 -1
- package/esm/easy-table/index.js +1 -1
- package/esm/easy-table/index.js.map +1 -1
- package/esm/editable-card/index.js +1 -1
- package/esm/editable-card/index.js.map +1 -1
- package/esm/editable-field/index.js +1 -1
- package/esm/editable-field/index.js.map +1 -1
- package/esm/editable-table/index.js +1 -1
- package/esm/editable-table/index.js.map +1 -1
- package/esm/editable-table-pro/index.js +1 -1
- package/esm/editable-table-pro/index.js.map +1 -1
- package/esm/fba-app/index.js +1 -1
- package/esm/fba-app/index.js.map +1 -1
- package/esm/fba-hooks/index.js +1 -1
- package/esm/fba-hooks/index.js.map +1 -1
- package/esm/form-item-group/index.js +1 -1
- package/esm/form-item-group/index.js.map +1 -1
- package/esm/form-item-text/index.js +1 -1
- package/esm/form-item-text/index.js.map +1 -1
- package/esm/form-item-wrapper/index.js +1 -1
- package/esm/form-item-wrapper/index.js.map +1 -1
- package/esm/form-list-wrapper/index.js +1 -1
- package/esm/form-list-wrapper/index.js.map +1 -1
- package/esm/index.js +3 -1
- package/esm/input-search-wrapper/index.js +1 -1
- package/esm/input-search-wrapper/index.js.map +1 -1
- package/esm/input-text-area-wrapper/index.js +1 -1
- package/esm/input-text-area-wrapper/index.js.map +1 -1
- package/esm/input-wrapper/index.js +1 -1
- package/esm/input-wrapper/index.js.map +1 -1
- package/esm/json-editor/index.js +1 -1
- package/esm/json-editor/index.js.map +1 -1
- package/esm/label-value-render/index.js +1 -1
- package/esm/label-value-render/index.js.map +1 -1
- package/esm/local-loading/index.js +1 -1
- package/esm/local-loading/index.js.map +1 -1
- package/esm/mention-editor/index.js +1 -1
- package/esm/mention-editor/index.js.map +1 -1
- package/esm/mentions-wrapper/index.js +1 -1
- package/esm/mentions-wrapper/index.js.map +1 -1
- package/esm/modal-wrapper/index.js +1 -1
- package/esm/modal-wrapper/index.js.map +1 -1
- package/esm/number-range-form-item/index.js +1 -1
- package/esm/number-range-form-item/index.js.map +1 -1
- package/esm/pdf/index.js +1 -1
- package/esm/pdf/index.js.map +1 -1
- package/esm/pdf-preview/index.js +1 -1
- package/esm/pdf-preview/index.js.map +1 -1
- package/esm/relation-tree/index.js +1 -1
- package/esm/relation-tree/index.js.map +1 -1
- package/esm/rich-text-editor/index.js +1 -1
- package/esm/rich-text-editor/index.js.map +1 -1
- package/esm/rich-text-viewer/index.js +1 -1
- package/esm/rich-text-viewer/index.js.map +1 -1
- package/esm/roll-location-center/index.js +1 -1
- package/esm/roll-location-center/index.js.map +1 -1
- package/esm/roll-location-in-view/index.js +1 -1
- package/esm/roll-location-in-view/index.js.map +1 -1
- package/esm/rule-describe/index.js +1 -1
- package/esm/rule-describe/index.js.map +1 -1
- package/esm/search-form/index.js +1 -1
- package/esm/search-form/index.js.map +1 -1
- package/esm/search-menu/index.js +1 -1
- package/esm/search-menu/index.js.map +1 -1
- package/esm/selector-wrapper/index.js +1 -1
- package/esm/selector-wrapper/index.js.map +1 -1
- package/esm/selector-wrapper-search/index.js +1 -1
- package/esm/selector-wrapper-search/index.js.map +1 -1
- package/esm/selector-wrapper-simple/index.js +1 -1
- package/esm/selector-wrapper-simple/index.js.map +1 -1
- package/esm/simple-layout/index.js +1 -1
- package/esm/simple-layout/index.js.map +1 -1
- package/esm/switch-confirm-wrapper/index.js +1 -1
- package/esm/switch-confirm-wrapper/index.js.map +1 -1
- package/esm/table-cell-render/index.js +1 -1
- package/esm/table-cell-render/index.js.map +1 -1
- package/esm/table-scrollbar/index.js +1 -1
- package/esm/table-scrollbar/index.js.map +1 -1
- package/esm/tabs-wrapper/index.css +1 -1
- package/esm/tag-group/index.js +1 -1
- package/esm/tag-group/index.js.map +1 -1
- package/esm/tag-wrapper/index.js +1 -1
- package/esm/tag-wrapper/index.js.map +1 -1
- package/esm/text-css-ellipsis/index.js +1 -1
- package/esm/text-css-ellipsis/index.js.map +1 -1
- package/esm/text-overflow/index.js +1 -1
- package/esm/text-overflow/index.js.map +1 -1
- package/esm/text-overflow-render/index.js +1 -1
- package/esm/text-overflow-render/index.js.map +1 -1
- package/esm/time-range-picker-wrapper-form-item/index.js +1 -1
- package/esm/time-range-picker-wrapper-form-item/index.js.map +1 -1
- package/esm/tips-title/index.css +1 -1
- package/esm/tips-title/index.js +1 -1
- package/esm/tips-title/index.js.map +1 -1
- package/esm/tree-modal/index.js +1 -1
- package/esm/tree-modal/index.js.map +1 -1
- package/esm/tree-modal-selector/index.js +1 -1
- package/esm/tree-modal-selector/index.js.map +1 -1
- package/esm/tree-selector-wrapper/index.js +1 -1
- package/esm/tree-selector-wrapper/index.js.map +1 -1
- package/esm/tree-wrapper/index.js +1 -1
- package/esm/tree-wrapper/index.js.map +1 -1
- package/esm/upload-wrapper/index.js +1 -1
- package/esm/upload-wrapper/index.js.map +1 -1
- package/index.d.ts +83 -0
- package/package.json +8 -6
|
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
|
|
|
3
3
|
import './../flex-layout/index.css';
|
|
4
4
|
import './index.css';
|
|
5
5
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
6
|
-
import{_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{classNames as r}from"@dimjs/utils/cjs/class-names";import{fbaHooks as t}from"../fba-hooks/index.js";import{jsxs as i,jsx as o}from"react/jsx-runtime";import{Form as l}from"antd";import{useMemo as a,isValidElement as n,cloneElement as s}from"react";import{FlexLayout as m}from"../flex-layout/index.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"../use-responsive-point-21b8c601.js";var
|
|
6
|
+
import{_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{classNames as r}from"@dimjs/utils/cjs/class-names";import{fbaHooks as t}from"../fba-hooks/index.js";import{jsxs as i,jsx as o}from"react/jsx-runtime";import{Form as l}from"antd";import{useMemo as a,isValidElement as n,cloneElement as s}from"react";import{FlexLayout as m}from"../flex-layout/index.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";var u=function l(a){var n;var s="form-item-group-card";var m=t.useThemeToken();var u={"--form-item-group-colorPrimary":m.colorPrimary};return i("div",{className:r(s,a.className),style:e({},u,a.style),children:[a.title?o("div",{className:r(s+"-title",(n={},n[s+"-title-sign"]=a.titleSign===true,n)),children:a.title}):null,a.children]})};u.defaultProps={titleSign:true};var f=function t(i){var u=a((function(){var r=[];var t=[];var l=i.groupConfigList.filter((function(e){return!e.hidden}));l.forEach((function(i){if(i.before){t.push(n(i.before)?i.before:o("div",{className:"union-before-text",children:i.before}))}if(i.width){t.push(s(i.mainItem,{style:e({width:i.width},i.mainItem.props.style)}))}else{r.push(t.length);t.push(i.mainItem)}if(i.after){t.push(n(i.after)?i.after:o("div",{className:"union-after-text",children:i.after}))}}));return{flexElementList:t,fullIndex:r}}),[i.groupConfigList]);return o(l.Item,{label:i.label,className:r("form-item-group-horizontal-union",i.className),style:i.style,hidden:i.hidden,required:i.required,colon:i.colon,children:o(m,{direction:"horizontal",gap:i.gap===undefined?15:i.gap,fullIndex:u.fullIndex,style:i.flexLayoutStyle,className:i.flexLayoutClassName,children:u.flexElementList.map((function(e,r){return s(e,{key:r})}))})})};var d={HorizontalUnion:f,Card:u};export{d as FormItemGroup};
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-item-group/card/index.tsx","@flatbiz/antd/src/form-item-group/horizontal-union/index.tsx","@flatbiz/antd/src/form-item-group/index.ts"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { CSSProperties, FC, ReactElement } from 'react';\nimport { fbaHooks } from '../../fba-hooks';\nimport './style.less';\n\nexport type FormItemCardProps = {\n title?: string | ReactElement;\n children: ReactElement | ReactElement[];\n className?: string;\n style?: CSSProperties;\n titleSign?: boolean;\n};\nexport const FormItemCard: FC<FormItemCardProps> = (props) => {\n const classNamePrefix = 'form-item-group-card';\n\n const theme = fbaHooks.useThemeToken();\n\n const style = { '--form-item-group-colorPrimary': theme.colorPrimary } as CSSProperties;\n\n return (\n <div className={classNames(classNamePrefix, props.className)} style={{ ...style, ...props.style }}>\n {props.title ? (\n <div\n className={classNames(`${classNamePrefix}-title`, {\n [`${classNamePrefix}-title-sign`]: props.titleSign === true,\n })}\n >\n {props.title}\n </div>\n ) : null}\n {props.children}\n </div>\n );\n};\n\nFormItemCard.defaultProps = {\n titleSign: true,\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form } from 'antd';\nimport { cloneElement, CSSProperties, isValidElement, ReactElement, useMemo } from 'react';\nimport { FlexLayout } from '../../flex-layout';\nimport './style.less';\n\nexport type FormItemHorizontalUnionProps = {\n className?: string;\n style?: CSSProperties;\n label?: string | ReactElement;\n /** 水平布局元素 */\n groupConfigList: {\n hidden?: boolean;\n before?: ReactElement | string;\n /**\n * 设置宽度\n * ```\n * 1. 自适应可设置:auto\n * 2. 可设置具体数值\n * 3. 不设置会在铺满flex剩余空间\n * 4. 多个未设置会等分铺满剩余空间\n * ```\n */\n width?: number | string;\n mainItem: ReactElement;\n after?: ReactElement | string;\n }[];\n /** 水平布局原始之间的间距 */\n gap?: number;\n flexLayoutStyle?: CSSProperties;\n flexLayoutClassName?: string;\n hidden?: boolean;\n required?: boolean;\n colon?: boolean;\n};\n\n/**\n * FormItem 水平布局\n * ```\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/form/input\n * ```\n * @param props\n * @returns\n */\nexport const FormItemHorizontalUnion = (props: FormItemHorizontalUnionProps) => {\n const groupFlexElementData = useMemo(() => {\n const fullIndex = [] as number[];\n const flexElementList = [] as Array<ReactElement>;\n const groupConfigList = props.groupConfigList.filter((item) => !item.hidden);\n groupConfigList.forEach((item) => {\n if (item.before) {\n flexElementList.push(\n isValidElement(item.before) ? (\n (item.before as ReactElement)\n ) : (\n <div className=\"union-before-text\">{item.before}</div>\n ),\n );\n }\n if (item.width) {\n flexElementList.push(\n cloneElement(item.mainItem, {\n style: { width: item.width, ...item.mainItem.props.style },\n }),\n );\n } else {\n fullIndex.push(flexElementList.length);\n flexElementList.push(item.mainItem);\n }\n if (item.after) {\n flexElementList.push(\n isValidElement(item.after) ? (\n (item.after as ReactElement)\n ) : (\n <div className=\"union-after-text\">{item.after}</div>\n ),\n );\n }\n });\n return {\n flexElementList,\n fullIndex,\n };\n }, [props.groupConfigList]);\n\n return (\n <Form.Item\n label={props.label}\n className={classNames('form-item-group-horizontal-union', props.className)}\n style={props.style}\n hidden={props.hidden}\n required={props.required}\n colon={props.colon}\n >\n <FlexLayout\n direction=\"horizontal\"\n gap={props.gap === undefined ? 15 : props.gap}\n fullIndex={groupFlexElementData.fullIndex}\n style={props.flexLayoutStyle}\n className={props.flexLayoutClassName}\n >\n {groupFlexElementData.flexElementList.map((item, index) => {\n return cloneElement(item, { key: index });\n })}\n </FlexLayout>\n </Form.Item>\n );\n};\n","import { FormItemCard } from './card';\nimport { FormItemHorizontalUnion } from './horizontal-union';\n\nexport const FormItemGroup = {\n HorizontalUnion: FormItemHorizontalUnion,\n Card: FormItemCard,\n};\n"],"names":["FormItemCard","props","_classNames2","classNamePrefix","theme","fbaHooks","useThemeToken","style","colorPrimary","_jsxs","className","_classNames","_extends","children","title","_jsx","titleSign","defaultProps","FormItemHorizontalUnion","groupFlexElementData","useMemo","fullIndex","flexElementList","groupConfigList","filter","item","hidden","forEach","before","push","isValidElement","width","cloneElement","mainItem","length","after","Form","Item","label","required","colon","FlexLayout","direction","gap","undefined","flexLayoutStyle","flexLayoutClassName","map","index","key","FormItemGroup","HorizontalUnion","Card"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-item-group/card/index.tsx","@flatbiz/antd/src/form-item-group/horizontal-union/index.tsx","@flatbiz/antd/src/form-item-group/index.ts"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { CSSProperties, FC, ReactElement } from 'react';\nimport { fbaHooks } from '../../fba-hooks';\nimport './style.less';\n\nexport type FormItemCardProps = {\n title?: string | ReactElement;\n children: ReactElement | ReactElement[];\n className?: string;\n style?: CSSProperties;\n titleSign?: boolean;\n};\nexport const FormItemCard: FC<FormItemCardProps> = (props) => {\n const classNamePrefix = 'form-item-group-card';\n\n const theme = fbaHooks.useThemeToken();\n\n const style = { '--form-item-group-colorPrimary': theme.colorPrimary } as CSSProperties;\n\n return (\n <div className={classNames(classNamePrefix, props.className)} style={{ ...style, ...props.style }}>\n {props.title ? (\n <div\n className={classNames(`${classNamePrefix}-title`, {\n [`${classNamePrefix}-title-sign`]: props.titleSign === true,\n })}\n >\n {props.title}\n </div>\n ) : null}\n {props.children}\n </div>\n );\n};\n\nFormItemCard.defaultProps = {\n titleSign: true,\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form } from 'antd';\nimport { cloneElement, CSSProperties, isValidElement, ReactElement, useMemo } from 'react';\nimport { FlexLayout } from '../../flex-layout';\nimport './style.less';\n\nexport type FormItemHorizontalUnionProps = {\n className?: string;\n style?: CSSProperties;\n label?: string | ReactElement;\n /** 水平布局元素 */\n groupConfigList: {\n hidden?: boolean;\n before?: ReactElement | string;\n /**\n * 设置宽度\n * ```\n * 1. 自适应可设置:auto\n * 2. 可设置具体数值\n * 3. 不设置会在铺满flex剩余空间\n * 4. 多个未设置会等分铺满剩余空间\n * ```\n */\n width?: number | string;\n mainItem: ReactElement;\n after?: ReactElement | string;\n }[];\n /** 水平布局原始之间的间距 */\n gap?: number;\n flexLayoutStyle?: CSSProperties;\n flexLayoutClassName?: string;\n hidden?: boolean;\n required?: boolean;\n colon?: boolean;\n};\n\n/**\n * FormItem 水平布局\n * ```\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/form/input\n * ```\n * @param props\n * @returns\n */\nexport const FormItemHorizontalUnion = (props: FormItemHorizontalUnionProps) => {\n const groupFlexElementData = useMemo(() => {\n const fullIndex = [] as number[];\n const flexElementList = [] as Array<ReactElement>;\n const groupConfigList = props.groupConfigList.filter((item) => !item.hidden);\n groupConfigList.forEach((item) => {\n if (item.before) {\n flexElementList.push(\n isValidElement(item.before) ? (\n (item.before as ReactElement)\n ) : (\n <div className=\"union-before-text\">{item.before}</div>\n ),\n );\n }\n if (item.width) {\n flexElementList.push(\n cloneElement(item.mainItem, {\n style: { width: item.width, ...item.mainItem.props.style },\n }),\n );\n } else {\n fullIndex.push(flexElementList.length);\n flexElementList.push(item.mainItem);\n }\n if (item.after) {\n flexElementList.push(\n isValidElement(item.after) ? (\n (item.after as ReactElement)\n ) : (\n <div className=\"union-after-text\">{item.after}</div>\n ),\n );\n }\n });\n return {\n flexElementList,\n fullIndex,\n };\n }, [props.groupConfigList]);\n\n return (\n <Form.Item\n label={props.label}\n className={classNames('form-item-group-horizontal-union', props.className)}\n style={props.style}\n hidden={props.hidden}\n required={props.required}\n colon={props.colon}\n >\n <FlexLayout\n direction=\"horizontal\"\n gap={props.gap === undefined ? 15 : props.gap}\n fullIndex={groupFlexElementData.fullIndex}\n style={props.flexLayoutStyle}\n className={props.flexLayoutClassName}\n >\n {groupFlexElementData.flexElementList.map((item, index) => {\n return cloneElement(item, { key: index });\n })}\n </FlexLayout>\n </Form.Item>\n );\n};\n","import { FormItemCard } from './card';\nimport { FormItemHorizontalUnion } from './horizontal-union';\n\nexport const FormItemGroup = {\n HorizontalUnion: FormItemHorizontalUnion,\n Card: FormItemCard,\n};\n"],"names":["FormItemCard","props","_classNames2","classNamePrefix","theme","fbaHooks","useThemeToken","style","colorPrimary","_jsxs","className","_classNames","_extends","children","title","_jsx","titleSign","defaultProps","FormItemHorizontalUnion","groupFlexElementData","useMemo","fullIndex","flexElementList","groupConfigList","filter","item","hidden","forEach","before","push","isValidElement","width","cloneElement","mainItem","length","after","Form","Item","label","required","colon","FlexLayout","direction","gap","undefined","flexLayoutStyle","flexLayoutClassName","map","index","key","FormItemGroup","HorizontalUnion","Card"],"mappings":";ihBAYO,IAAMA,EAAsC,SAAtCA,EAAuCC,GAAU,IAAAC,EAC5D,IAAMC,EAAkB,uBAExB,IAAMC,EAAQC,EAASC,gBAEvB,IAAMC,EAAQ,CAAE,iCAAkCH,EAAMI,cAExD,OACEC,EAAA,MAAA,CAAKC,UAAWC,EAAWR,EAAiBF,EAAMS,WAAYH,MAAKK,EAAOL,CAAAA,EAAAA,EAAUN,EAAMM,OAAQM,SAC/FZ,CAAAA,EAAMa,MACLC,EAAA,MAAA,CACEL,UAAWC,EAAcR,EAAeD,UAAAA,KAAAA,EAClCC,EAA+BF,eAAAA,EAAMe,YAAc,KAAId,IAC1DW,SAEFZ,EAAMa,QAEP,KACHb,EAAMY,WAGb,EAEAb,EAAaiB,aAAe,CAC1BD,UAAW,MCQN,IAAME,EAA0B,SAA1BA,EAA2BjB,GACtC,IAAMkB,EAAuBC,GAAQ,WACnC,IAAMC,EAAY,GAClB,IAAMC,EAAkB,GACxB,IAAMC,EAAkBtB,EAAMsB,gBAAgBC,QAAO,SAACC,GAAI,OAAMA,EAAKC,UACrEH,EAAgBI,SAAQ,SAACF,GACvB,GAAIA,EAAKG,OAAQ,CACfN,EAAgBO,KACdC,EAAeL,EAAKG,QACjBH,EAAKG,OAENb,EAAA,MAAA,CAAKL,UAAU,oBAAmBG,SAAEY,EAAKG,SAG/C,CACA,GAAIH,EAAKM,MAAO,CACdT,EAAgBO,KACdG,EAAaP,EAAKQ,SAAU,CAC1B1B,MAAKK,EAAA,CAAImB,MAAON,EAAKM,OAAUN,EAAKQ,SAAShC,MAAMM,SAGzD,KAAO,CACLc,EAAUQ,KAAKP,EAAgBY,QAC/BZ,EAAgBO,KAAKJ,EAAKQ,SAC5B,CACA,GAAIR,EAAKU,MAAO,CACdb,EAAgBO,KACdC,EAAeL,EAAKU,OACjBV,EAAKU,MAENpB,EAAA,MAAA,CAAKL,UAAU,mBAAkBG,SAAEY,EAAKU,QAG9C,CACF,IACA,MAAO,CACLb,gBAAAA,EACAD,UAAAA,EAEJ,GAAG,CAACpB,EAAMsB,kBAEV,OACER,EAACqB,EAAKC,KAAI,CACRC,MAAOrC,EAAMqC,MACb5B,UAAWC,EAAW,mCAAoCV,EAAMS,WAChEH,MAAON,EAAMM,MACbmB,OAAQzB,EAAMyB,OACda,SAAUtC,EAAMsC,SAChBC,MAAOvC,EAAMuC,MAAM3B,SAEnBE,EAAC0B,EAAU,CACTC,UAAU,aACVC,IAAK1C,EAAM0C,MAAQC,UAAY,GAAK3C,EAAM0C,IAC1CtB,UAAWF,EAAqBE,UAChCd,MAAON,EAAM4C,gBACbnC,UAAWT,EAAM6C,oBAAoBjC,SAEpCM,EAAqBG,gBAAgByB,KAAI,SAACtB,EAAMuB,GAC/C,OAAOhB,EAAaP,EAAM,CAAEwB,IAAKD,UAK3C,ECxGO,IAAME,EAAgB,CAC3BC,gBAAiBjC,EACjBkC,KAAMpD"}
|
|
@@ -7,5 +7,5 @@ import './../pre-defined-class-name/index.css';
|
|
|
7
7
|
import './../form-item-hidden/index.css';
|
|
8
8
|
import './index.css';
|
|
9
9
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
10
|
-
import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as r,a as n}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{Fragment as i,useState as t,useRef as o,useMemo as a}from"react";import
|
|
10
|
+
import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as r,a as n}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{Fragment as i,useState as t,useRef as o,useMemo as a}from"react";import s from"@ant-design/icons/es/icons/RedoOutlined";import l from"@ant-design/icons/es/icons/QuestionCircleFilled";import{isUndefinedOrNull as u,toArray as c}from"@flatbiz/utils";import{Tooltip as d,Spin as m,Form as f}from"antd";import{TextOverflow as p}from"../text-overflow/index.js";import{TipsWrapper as v}from"../tips-wrapper/index.js";import{jsx as h,jsxs as g}from"react/jsx-runtime";import{FormItemWrapper as y}from"../form-item-wrapper/index.js";import{isDeepEqual as j}from"@dimjs/lang/cjs/is-deep-equal";import{fbaHooks as x}from"../fba-hooks/index.js";import{FormItemHidden as w}from"../form-item-hidden/index.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"../pre-defined-class-name/index.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";var C=function e(r){var n=function(){if(u(r.value))return r.placeholderValue;return typeof r.value==="string"?r.value:JSON.stringify(r.value)}();var t=r.wrap?n:h(p,{text:n||""});if(r.status==="error"){return h(i,{children:h(v,{tipType:"tooltip",tooltipProps:{title:r.errorMsg},icon:h(l,{style:{color:"red"}}),gap:6,children:h(d,{title:"点击查询",children:h(s,{style:{color:"red"},onClick:r.onRequest,className:"fitc-reload-icon"})})})})}if(r.loading){return h("span",{className:"form-item-text-content fitc-loading",style:r.style,children:h(m,{spinning:r.loading,size:"small",children:h("span",{style:{textIndent:"-9999px",display:"inline-block"},children:"Loading"})})})}return h("span",{className:"form-item-text-content",style:r.style,children:r.render?r.render(r.value):t})};var V=function e(n){var i=n.serviceConfig;var s=t(false),l=s[0],d=s[1];var m=t(),p=m[0],v=m[1];var h=x.usePrevious(i==null?void 0:i.params);var g=t("init"),y=g[0],w=g[1];var C=o();var V=f.useFormInstance();var N=a((function(){var e;if(!(i!=null&&i.params)||c(i==null?void 0:i.invalidParamKey).length===0){return i==null?void 0:i.params}var n=r({},i==null?void 0:i.params);i==null||(e=i.invalidParamKey)==null||e.forEach((function(e){n[e]=undefined}));return n}),[i==null?void 0:i.invalidParamKey,i==null?void 0:i.params]);var P=function e(t){return new Promise((function(e,o){var a=function(e){return function(r){try{d(false);return e&&e.call(this,r)}catch(e){return o(e)}}.bind(this)}.bind(this);var s,c,m,f,p,h;if(!i)return e();s=r({},N,t);c=i==null?void 0:i.requiredParamsKeys;if(c!=null&&c.length){m=c.find((function(e){return u(s[e])}));if(m){C.current="缺少必填参数:"+c.join("、");console.warn(C.current);w("error");return e()}}var g=function(){try{return e()}catch(e){return o(e)}};var y=function(e){try{console.error(e);C.current=(e==null?void 0:e.message)||"接口调用异常";w("error");return a(g)()}catch(e){return a(o)(e)}};try{if(!l)d(true);w("init");return Promise.resolve(i.onRequest(s)).then((function(e){try{f=e;p=n.name?V.getFieldValue(n.name):undefined;h=i.onResponseAdapter?i.onResponseAdapter(f,p):f;v(h);w("success");return a(g)()}catch(e){return y(e)}}),y)}catch(e){y(e)}}))};x.useEffectCustomAsync(P,[]);x.useEffectCustom((function(){if(!i)return;if(h){if(!j(i.params,h)){void P()}}}),[h,i==null?void 0:i.params]);if(!i){return undefined}return{loading:l,status:y,viewValue:p,onRequest:P,errorMsg:C.current}};var N=["wrap","render","placeholderValue","serviceConfig"];var P=function i(t){var o=t.wrap,a=t.render,s=t.placeholderValue,l=t.serviceConfig,u=n(t,N);var c=V({serviceConfig:l,name:t.name});return h(y,r({},u,{name:undefined,className:e("form-item-text",t.className),children:h(C,{loading:c==null?void 0:c.loading,wrap:o,render:a,placeholderValue:s,value:c==null?void 0:c.viewValue,status:c==null?void 0:c.status,onRequest:c==null?void 0:c.onRequest,errorMsg:c==null?void 0:c.errorMsg})}))};var R=["wrap","render","placeholderValue"];var q=function t(o){var a=o.wrap,s=o.render,l=o.placeholderValue,u=n(o,R);if(o.serviceConfig){return g(i,{children:[h(w,{name:o.name}),h(P,r({},o))]})}return h(y,r({},u,{className:e("form-item-text",o.className),children:h(C,{wrap:a,render:s,placeholderValue:l})}))};q["domTypeName"]="FormItemText";export{q as FormItemText};
|
|
11
11
|
//# 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 { QuestionCircleFilled, RedoOutlined } from '@ant-design/icons';\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Spin, Tooltip } from 'antd';\nimport { Fragment, type CSSProperties } from 'react';\nimport { TextOverflow } from '../text-overflow';\nimport { TipsWrapper } from '../tips-wrapper';\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 status?: 'success' | 'error' | 'init';\n onRequest?: () => TAny;\n errorMsg?: string;\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 : <TextOverflow text={originalValue || ''} />;\n\n if (props.status === 'error') {\n return (\n <Fragment>\n <TipsWrapper\n tipType=\"tooltip\"\n tooltipProps={{ title: props.errorMsg }}\n icon={<QuestionCircleFilled style={{ color: 'red' }} />}\n gap={6}\n >\n <Tooltip title=\"点击查询\">\n <RedoOutlined style={{ color: 'red' }} onClick={props.onRequest} className=\"fitc-reload-icon\" />\n </Tooltip>\n </TipsWrapper>\n </Fragment>\n );\n }\n\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 } from 'antd';\nimport { useMemo, useRef, 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 errorMsgRef = useRef<string>();\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 const keys = serviceConfig?.requiredParamsKeys;\n if (keys?.length) {\n const target = keys.find((item) => {\n return isUndefinedOrNull(mergeProps[item]);\n });\n if (target) {\n errorMsgRef.current = `缺少必填参数:${keys.join('、')}`;\n console.warn(errorMsgRef.current);\n setStatus('error');\n return;\n }\n }\n try {\n if (!loading) setLoading(true);\n setStatus('init');\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 errorMsgRef.current = error?.message || '接口调用异常';\n setStatus('error');\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 {\n loading,\n status,\n viewValue: respData,\n onRequest: onInnerRequest,\n errorMsg: errorMsgRef.current,\n };\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 const requestResult = useRequestFormItemText({\n serviceConfig,\n name: props.name,\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 status={requestResult?.status}\n onRequest={requestResult?.onRequest}\n errorMsg={requestResult?.errorMsg}\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\nFormItemText['domTypeName'] = 'FormItemText';\n"],"names":["FormItemTextContent","props","originalValue","isUndefinedOrNull","value","placeholderValue","JSON","stringify","valueFt","wrap","_jsx","TextOverflow","text","status","Fragment","children","TipsWrapper","tipType","tooltipProps","title","errorMsg","icon","_QuestionCircleFilled","style","color","gap","Tooltip","_RedoOutlined","onClick","onRequest","className","loading","Spin","spinning","size","textIndent","display","render","useRequestFormItemText","serviceConfig","_useState","useState","setLoading","_useState2","respData","setRespData","prevParams","fbaHooks","usePrevious","params","_useState3","setStatus","errorMsgRef","useRef","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","mergeProps","keys","target","_respData","respDataFt","requiredParamsKeys","find","item","current","join","console","warn","$Try_1_Post","$Try_1_Catch","error","message","resolve","then","$await_2","name","getFieldValue","onResponseAdapter","useEffectCustomAsync","useEffectCustom","_isDeepEqual","viewValue","RequestText","otherProps","_objectWithoutPropertiesLoose","_excluded","requestResult","FormItemWrapper","_classNames","FormItemText","_jsxs","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 { QuestionCircleFilled, RedoOutlined } from '@ant-design/icons';\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Spin, Tooltip } from 'antd';\nimport { Fragment, type CSSProperties } from 'react';\nimport { TextOverflow } from '../text-overflow';\nimport { TipsWrapper } from '../tips-wrapper';\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 status?: 'success' | 'error' | 'init';\n onRequest?: () => TAny;\n errorMsg?: string;\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 : <TextOverflow text={originalValue || ''} />;\n\n if (props.status === 'error') {\n return (\n <Fragment>\n <TipsWrapper\n tipType=\"tooltip\"\n tooltipProps={{ title: props.errorMsg }}\n icon={<QuestionCircleFilled style={{ color: 'red' }} />}\n gap={6}\n >\n <Tooltip title=\"点击查询\">\n <RedoOutlined style={{ color: 'red' }} onClick={props.onRequest} className=\"fitc-reload-icon\" />\n </Tooltip>\n </TipsWrapper>\n </Fragment>\n );\n }\n\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 } from 'antd';\nimport { useMemo, useRef, 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 errorMsgRef = useRef<string>();\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 const keys = serviceConfig?.requiredParamsKeys;\n if (keys?.length) {\n const target = keys.find((item) => {\n return isUndefinedOrNull(mergeProps[item]);\n });\n if (target) {\n errorMsgRef.current = `缺少必填参数:${keys.join('、')}`;\n console.warn(errorMsgRef.current);\n setStatus('error');\n return;\n }\n }\n try {\n if (!loading) setLoading(true);\n setStatus('init');\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 errorMsgRef.current = error?.message || '接口调用异常';\n setStatus('error');\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 {\n loading,\n status,\n viewValue: respData,\n onRequest: onInnerRequest,\n errorMsg: errorMsgRef.current,\n };\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 const requestResult = useRequestFormItemText({\n serviceConfig,\n name: props.name,\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 status={requestResult?.status}\n onRequest={requestResult?.onRequest}\n errorMsg={requestResult?.errorMsg}\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\nFormItemText['domTypeName'] = 'FormItemText';\n"],"names":["FormItemTextContent","props","originalValue","isUndefinedOrNull","value","placeholderValue","JSON","stringify","valueFt","wrap","_jsx","TextOverflow","text","status","Fragment","children","TipsWrapper","tipType","tooltipProps","title","errorMsg","icon","_QuestionCircleFilled","style","color","gap","Tooltip","_RedoOutlined","onClick","onRequest","className","loading","Spin","spinning","size","textIndent","display","render","useRequestFormItemText","serviceConfig","_useState","useState","setLoading","_useState2","respData","setRespData","prevParams","fbaHooks","usePrevious","params","_useState3","setStatus","errorMsgRef","useRef","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","mergeProps","keys","target","_respData","respDataFt","requiredParamsKeys","find","item","current","join","console","warn","$Try_1_Post","$Try_1_Catch","error","message","resolve","then","$await_2","name","getFieldValue","onResponseAdapter","useEffectCustomAsync","useEffectCustom","_isDeepEqual","viewValue","RequestText","otherProps","_objectWithoutPropertiesLoose","_excluded","requestResult","FormItemWrapper","_classNames","FormItemText","_jsxs","FormItemHidden"],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
|
|
|
3
3
|
import './../pre-defined-class-name/index.css';
|
|
4
4
|
import './index.css';
|
|
5
5
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
6
|
-
import{a as e,_ as r}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{composeProps as l,isUndefinedOrNull as t}from"@flatbiz/utils";import{Form as
|
|
6
|
+
import{a as e,_ as r}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{composeProps as l,isUndefinedOrNull as t}from"@flatbiz/utils";import{Form as i}from"antd";import{useMemo as a,isValidElement as n,cloneElement as o}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import{preDefinedClassName as f}from"../pre-defined-class-name/index.js";import{jsx as u,jsxs as m}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@dimjs/utils/cjs/class-names";var p=["wrapper","children","inputNormalize","isClear","beforeAfterStyle"],d=["wrapper","isClear","labelWidth","labelItemVertical","labelAlign","children","before","after","inputNormalize","outputNormalize","className","dependencies","hidden","beforeAfterStyle"];var c=function i(a){var n=a.wrapper,f=a.children,d=a.inputNormalize,c=a.isClear,h=a.beforeAfterStyle,b=e(a,p);var v=Object.prototype.hasOwnProperty.call(b,"value");if(v&&d){b["value"]=d(b["value"])}var y=o(f,l(f.props,b,true));s.useEffectCustom((function(){if(c&&!t(a.value)){a.onChange==null||a.onChange(undefined)}}),[c,a.value]);if(n){return n(y)}if(a.before||a.after){return m("div",{style:r({display:"flex",alignItems:"center"},h),children:[a.before?u("span",{style:{marginRight:10},children:a.before}):null,u("div",{style:{flex:1},children:y}),a.after?u("span",{style:{marginLeft:10},children:a.after}):null]})}return y};var h=function l(t){var o=t.wrapper,s=t.isClear,m=t.labelWidth,p=t.labelItemVertical,h=t.labelAlign,b=t.children,v=t.before,y=t.after,g=t.inputNormalize,N=t.outputNormalize,j=t.className,z=t.dependencies,C=t.hidden,I=t.beforeAfterStyle,A=e(t,d);var w=i.useFormInstance();var F=a((function(){return f.getFormItemLayoutClassName({labelWidth:m,labelItemVertical:p,labelAlign:h,className:j})}),[m,p,h,j]);if(z&&(z==null?void 0:z.length)>0){return u(i.Item,{dependencies:z,noStyle:true,children:function e(l){var t=typeof C==="function"?C==null?void 0:C(l.getFieldsValue()):C;var a=typeof s==="function"?s==null?void 0:s(l.getFieldsValue()):s;return u(i.Item,r({normalize:N},A,{rules:a?[]:A.rules,className:F,hidden:a||t,children:n(b)?u(c,{wrapper:o,before:v,after:y,inputNormalize:g,isClear:a,beforeAfterStyle:I,children:b}):b}))}})}var S=typeof C==="function"?C(w.getFieldsValue()):C;var V=typeof s==="function"?s(w.getFieldsValue()):s;return u(i.Item,r({normalize:N},A,{className:F,hidden:S||V,children:n(b)?u(c,{wrapper:o,before:v,after:y,inputNormalize:g,isClear:V,beforeAfterStyle:I,children:b}):b}))};h["domTypeName"]="FormItemWrapper";export{h as FormItemWrapper};
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-item-wrapper/form-item-wrapper.tsx"],"sourcesContent":["import { composeProps, isUndefinedOrNull, TAny, TPlainObject } from '@flatbiz/utils';\nimport { Form, FormItemProps } from 'antd';\nimport { cloneElement, CSSProperties, isValidElement, ReactElement, ReactNode, useMemo } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { preDefinedClassName } from '../pre-defined-class-name';\nimport { TFormItemLayoutPreClassNameProps } from '../pre-defined-class-name/form';\n\nexport type FormItemWrapperProps = Omit<FormItemProps, 'hidden' | 'children' | 'noStyle'> &\n TFormItemLayoutPreClassNameProps & {\n wrapper?: (children: ReactNode) => ReactElement;\n /** 设置wrapper后,before、after失效 */\n before?: ReactNode;\n /** 设置wrapper后,before、after失效 */\n after?: ReactNode;\n /** 设置 before、after 属性的包装结构style */\n beforeAfterStyle?: CSSProperties;\n /** value 序列化处理 */\n inputNormalize?: (value?: TAny) => TAny;\n /**\n * onChange 参数序列化处理\n * 如果设置 normalize 属性,outputNormalize将失效\n */\n outputNormalize?: (value?: TAny) => TAny;\n /**\n * 隐藏 Form.Item,同时清除 Form.Item 值\n * ```\n * 1.与 dependencies 属性配合使用,可实现当前FormItemWrapper的显示隐藏\n * 2.提交不校验rules\n * ```\n */\n isClear?: boolean | ((formValues: TPlainObject) => boolean);\n /**\n * 隐藏 Form.Item,不会清除 Form.Item 值\n * ```\n * 1.与 dependencies 属性配合使用,可实现当前FormItemWrapper的显示隐藏\n * 2.提交会校验rules\n * ```\n */\n hidden?: boolean | ((formValues: TPlainObject) => boolean);\n /**\n * 栅格占位格数,最大值:24\n * ```\n * 1. 当前FormItemWrapper处在 EasyForm 直接子节点中有效,即FormItemWrapper在EasyForm栅格中的占位格数;\n * 2. 父节点使用属性值,当前节点不使用属性值\n * ```\n */\n span?: number;\n\n /** 不支持函数式写法,如果需要使用dependencies获取表单值,可使用FormItemWrapperDependencies 组件 */\n children?: ReactNode;\n\n /**\n * ```\n * 1. 设置noStyle后,可能会导致 FromItemWrapper 在 EasyFrom 内部渲染网格布局时出现异常\n * 2. 在FormItemWrapper中使用 dependencies 逻辑不需要设置 noStyle\n * ```\n */\n noStyle?: boolean;\n };\n\ntype FormItemWrapperChildrenProps = Pick<\n FormItemWrapperProps,\n 'wrapper' | 'after' | 'before' | 'inputNormalize' | 'isClear' | 'beforeAfterStyle'\n> & {\n children: ReactElement;\n value?: any;\n onChange?: (value?: any) => any;\n};\n\nconst FormItemWrapperChildren = (props: FormItemWrapperChildrenProps) => {\n const { wrapper, children, inputNormalize, isClear, beforeAfterStyle, ...rest } = props;\n // composeProps 合并执行 Form.Item 传的 onChange 以及组件本身的方法\n const hasValue = Object.prototype.hasOwnProperty.call(rest, 'value');\n if (hasValue && inputNormalize) {\n rest['value'] = inputNormalize(rest['value']);\n }\n const _children = cloneElement(children, composeProps(children.props, rest, true));\n\n fbaHooks.useEffectCustom(() => {\n if (isClear && !isUndefinedOrNull(props.value)) {\n props.onChange?.(undefined);\n }\n }, [isClear, props.value]);\n\n if (wrapper) {\n return wrapper(_children);\n }\n if (props.before || props.after) {\n return (\n <div style={{ display: 'flex', alignItems: 'center', ...beforeAfterStyle }}>\n {props.before ? <span style={{ marginRight: 10 }}>{props.before}</span> : null}\n <div style={{ flex: 1 }}>{_children}</div>\n {props.after ? <span style={{ marginLeft: 10 }}>{props.after}</span> : null}\n </div>\n );\n }\n return _children;\n};\n\n/**\n * 对 Form.Item 包装处理\n * ```\n * 1. 为 children 增加 before、after\n * 2. 对输入、输出数据进行序列化处理\n * 3. 内置布局样式使用 preDefinedClassName.formItem\n * 4. 设置隐藏域(不清除字段值) 使用hidden,存在依赖逻辑,可与dependencies属性配合使用\n * 5. 设置隐藏域(清除字段值)使用isClear,存在依赖逻辑,可与dependencies属性配合使用\n * 6. 不支持noStyle属性、children不支持函数写法、如果需要获取依赖字段值,可使用 FormItemWrapperDependencies 组件\n * 7. 设置noStyle后,可能会导致 FromItemWrapper 在 EasyFrom 内部渲染网格布局时出现异常\n *\n *\n * ** 依赖其他字段 自身切换显示隐藏 **\n * <FormItemWrapper\n * label=\"label\"\n * name=\"xx1\"\n * dependencies={['type']}\n * isClear={(values) => {\n * return values.type == 1\n * }}>\n * <Input placeholder=\"请输入\" />\n * </FormItemWrapper>\n *\n * 如果只是想获取依赖字段值,可使用 FormItemWrapperDependencies 组件\n * ```\n */\nexport const FormItemWrapper = (props: FormItemWrapperProps) => {\n const {\n wrapper,\n isClear,\n labelWidth,\n labelItemVertical,\n labelAlign,\n children,\n before,\n after,\n inputNormalize,\n outputNormalize,\n className,\n dependencies,\n hidden,\n beforeAfterStyle,\n ...rest\n } = props;\n const form = Form.useFormInstance();\n\n const innerClassName = useMemo(() => {\n return preDefinedClassName.getFormItemLayoutClassName({\n labelWidth,\n labelItemVertical,\n labelAlign,\n className,\n });\n }, [labelWidth, labelItemVertical, labelAlign, className]);\n\n if (dependencies && dependencies?.length > 0) {\n return (\n <Form.Item dependencies={dependencies} noStyle>\n {(innerForm) => {\n const innerHidden = typeof hidden === 'function' ? hidden?.(innerForm.getFieldsValue()) : hidden;\n const innerIsClear =\n typeof isClear === 'function' ? isClear?.(innerForm.getFieldsValue()) : isClear;\n\n return (\n <Form.Item\n normalize={outputNormalize}\n {...rest}\n rules={innerIsClear ? [] : rest.rules}\n className={innerClassName}\n hidden={innerIsClear || innerHidden}\n >\n {isValidElement(children) ? (\n <FormItemWrapperChildren\n wrapper={wrapper}\n before={before}\n after={after}\n inputNormalize={inputNormalize}\n isClear={innerIsClear}\n beforeAfterStyle={beforeAfterStyle}\n >\n {children}\n </FormItemWrapperChildren>\n ) : (\n children\n )}\n </Form.Item>\n );\n }}\n </Form.Item>\n );\n }\n\n const innerHidden = typeof hidden === 'function' ? hidden(form.getFieldsValue()) : hidden;\n const innerIsClear = typeof isClear === 'function' ? isClear(form.getFieldsValue()) : isClear;\n\n return (\n <Form.Item\n normalize={outputNormalize}\n {...rest}\n className={innerClassName}\n hidden={innerHidden || innerIsClear}\n >\n {isValidElement(children) ? (\n <FormItemWrapperChildren\n wrapper={wrapper}\n before={before}\n after={after}\n inputNormalize={inputNormalize}\n isClear={innerIsClear}\n beforeAfterStyle={beforeAfterStyle}\n >\n {children}\n </FormItemWrapperChildren>\n ) : (\n children\n )}\n </Form.Item>\n );\n};\n\nFormItemWrapper['domTypeName'] = 'FormItemWrapper';\n"],"names":["FormItemWrapperChildren","props","wrapper","children","inputNormalize","isClear","beforeAfterStyle","rest","_objectWithoutPropertiesLoose","_excluded","hasValue","Object","prototype","hasOwnProperty","call","_children","cloneElement","composeProps","fbaHooks","useEffectCustom","isUndefinedOrNull","value","onChange","undefined","before","after","_jsxs","style","_extends","display","alignItems","_jsx","marginRight","flex","marginLeft","FormItemWrapper","labelWidth","labelItemVertical","labelAlign","outputNormalize","className","dependencies","hidden","_excluded2","form","Form","useFormInstance","innerClassName","useMemo","preDefinedClassName","getFormItemLayoutClassName","length","Item","noStyle","innerForm","innerHidden","getFieldsValue","innerIsClear","normalize","rules","isValidElement"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-item-wrapper/form-item-wrapper.tsx"],"sourcesContent":["import { composeProps, isUndefinedOrNull, TAny, TPlainObject } from '@flatbiz/utils';\nimport { Form, FormItemProps } from 'antd';\nimport { cloneElement, CSSProperties, isValidElement, ReactElement, ReactNode, useMemo } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { preDefinedClassName } from '../pre-defined-class-name';\nimport { TFormItemLayoutPreClassNameProps } from '../pre-defined-class-name/form';\n\nexport type FormItemWrapperProps = Omit<FormItemProps, 'hidden' | 'children' | 'noStyle'> &\n TFormItemLayoutPreClassNameProps & {\n wrapper?: (children: ReactNode) => ReactElement;\n /** 设置wrapper后,before、after失效 */\n before?: ReactNode;\n /** 设置wrapper后,before、after失效 */\n after?: ReactNode;\n /** 设置 before、after 属性的包装结构style */\n beforeAfterStyle?: CSSProperties;\n /** value 序列化处理 */\n inputNormalize?: (value?: TAny) => TAny;\n /**\n * onChange 参数序列化处理\n * 如果设置 normalize 属性,outputNormalize将失效\n */\n outputNormalize?: (value?: TAny) => TAny;\n /**\n * 隐藏 Form.Item,同时清除 Form.Item 值\n * ```\n * 1.与 dependencies 属性配合使用,可实现当前FormItemWrapper的显示隐藏\n * 2.提交不校验rules\n * ```\n */\n isClear?: boolean | ((formValues: TPlainObject) => boolean);\n /**\n * 隐藏 Form.Item,不会清除 Form.Item 值\n * ```\n * 1.与 dependencies 属性配合使用,可实现当前FormItemWrapper的显示隐藏\n * 2.提交会校验rules\n * ```\n */\n hidden?: boolean | ((formValues: TPlainObject) => boolean);\n /**\n * 栅格占位格数,最大值:24\n * ```\n * 1. 当前FormItemWrapper处在 EasyForm 直接子节点中有效,即FormItemWrapper在EasyForm栅格中的占位格数;\n * 2. 父节点使用属性值,当前节点不使用属性值\n * ```\n */\n span?: number;\n\n /** 不支持函数式写法,如果需要使用dependencies获取表单值,可使用FormItemWrapperDependencies 组件 */\n children?: ReactNode;\n\n /**\n * ```\n * 1. 设置noStyle后,可能会导致 FromItemWrapper 在 EasyFrom 内部渲染网格布局时出现异常\n * 2. 在FormItemWrapper中使用 dependencies 逻辑不需要设置 noStyle\n * ```\n */\n noStyle?: boolean;\n };\n\ntype FormItemWrapperChildrenProps = Pick<\n FormItemWrapperProps,\n 'wrapper' | 'after' | 'before' | 'inputNormalize' | 'isClear' | 'beforeAfterStyle'\n> & {\n children: ReactElement;\n value?: any;\n onChange?: (value?: any) => any;\n};\n\nconst FormItemWrapperChildren = (props: FormItemWrapperChildrenProps) => {\n const { wrapper, children, inputNormalize, isClear, beforeAfterStyle, ...rest } = props;\n // composeProps 合并执行 Form.Item 传的 onChange 以及组件本身的方法\n const hasValue = Object.prototype.hasOwnProperty.call(rest, 'value');\n if (hasValue && inputNormalize) {\n rest['value'] = inputNormalize(rest['value']);\n }\n const _children = cloneElement(children, composeProps(children.props, rest, true));\n\n fbaHooks.useEffectCustom(() => {\n if (isClear && !isUndefinedOrNull(props.value)) {\n props.onChange?.(undefined);\n }\n }, [isClear, props.value]);\n\n if (wrapper) {\n return wrapper(_children);\n }\n if (props.before || props.after) {\n return (\n <div style={{ display: 'flex', alignItems: 'center', ...beforeAfterStyle }}>\n {props.before ? <span style={{ marginRight: 10 }}>{props.before}</span> : null}\n <div style={{ flex: 1 }}>{_children}</div>\n {props.after ? <span style={{ marginLeft: 10 }}>{props.after}</span> : null}\n </div>\n );\n }\n return _children;\n};\n\n/**\n * 对 Form.Item 包装处理\n * ```\n * 1. 为 children 增加 before、after\n * 2. 对输入、输出数据进行序列化处理\n * 3. 内置布局样式使用 preDefinedClassName.formItem\n * 4. 设置隐藏域(不清除字段值) 使用hidden,存在依赖逻辑,可与dependencies属性配合使用\n * 5. 设置隐藏域(清除字段值)使用isClear,存在依赖逻辑,可与dependencies属性配合使用\n * 6. 不支持noStyle属性、children不支持函数写法、如果需要获取依赖字段值,可使用 FormItemWrapperDependencies 组件\n * 7. 设置noStyle后,可能会导致 FromItemWrapper 在 EasyFrom 内部渲染网格布局时出现异常\n *\n *\n * ** 依赖其他字段 自身切换显示隐藏 **\n * <FormItemWrapper\n * label=\"label\"\n * name=\"xx1\"\n * dependencies={['type']}\n * isClear={(values) => {\n * return values.type == 1\n * }}>\n * <Input placeholder=\"请输入\" />\n * </FormItemWrapper>\n *\n * 如果只是想获取依赖字段值,可使用 FormItemWrapperDependencies 组件\n * ```\n */\nexport const FormItemWrapper = (props: FormItemWrapperProps) => {\n const {\n wrapper,\n isClear,\n labelWidth,\n labelItemVertical,\n labelAlign,\n children,\n before,\n after,\n inputNormalize,\n outputNormalize,\n className,\n dependencies,\n hidden,\n beforeAfterStyle,\n ...rest\n } = props;\n const form = Form.useFormInstance();\n\n const innerClassName = useMemo(() => {\n return preDefinedClassName.getFormItemLayoutClassName({\n labelWidth,\n labelItemVertical,\n labelAlign,\n className,\n });\n }, [labelWidth, labelItemVertical, labelAlign, className]);\n\n if (dependencies && dependencies?.length > 0) {\n return (\n <Form.Item dependencies={dependencies} noStyle>\n {(innerForm) => {\n const innerHidden = typeof hidden === 'function' ? hidden?.(innerForm.getFieldsValue()) : hidden;\n const innerIsClear =\n typeof isClear === 'function' ? isClear?.(innerForm.getFieldsValue()) : isClear;\n\n return (\n <Form.Item\n normalize={outputNormalize}\n {...rest}\n rules={innerIsClear ? [] : rest.rules}\n className={innerClassName}\n hidden={innerIsClear || innerHidden}\n >\n {isValidElement(children) ? (\n <FormItemWrapperChildren\n wrapper={wrapper}\n before={before}\n after={after}\n inputNormalize={inputNormalize}\n isClear={innerIsClear}\n beforeAfterStyle={beforeAfterStyle}\n >\n {children}\n </FormItemWrapperChildren>\n ) : (\n children\n )}\n </Form.Item>\n );\n }}\n </Form.Item>\n );\n }\n\n const innerHidden = typeof hidden === 'function' ? hidden(form.getFieldsValue()) : hidden;\n const innerIsClear = typeof isClear === 'function' ? isClear(form.getFieldsValue()) : isClear;\n\n return (\n <Form.Item\n normalize={outputNormalize}\n {...rest}\n className={innerClassName}\n hidden={innerHidden || innerIsClear}\n >\n {isValidElement(children) ? (\n <FormItemWrapperChildren\n wrapper={wrapper}\n before={before}\n after={after}\n inputNormalize={inputNormalize}\n isClear={innerIsClear}\n beforeAfterStyle={beforeAfterStyle}\n >\n {children}\n </FormItemWrapperChildren>\n ) : (\n children\n )}\n </Form.Item>\n );\n};\n\nFormItemWrapper['domTypeName'] = 'FormItemWrapper';\n"],"names":["FormItemWrapperChildren","props","wrapper","children","inputNormalize","isClear","beforeAfterStyle","rest","_objectWithoutPropertiesLoose","_excluded","hasValue","Object","prototype","hasOwnProperty","call","_children","cloneElement","composeProps","fbaHooks","useEffectCustom","isUndefinedOrNull","value","onChange","undefined","before","after","_jsxs","style","_extends","display","alignItems","_jsx","marginRight","flex","marginLeft","FormItemWrapper","labelWidth","labelItemVertical","labelAlign","outputNormalize","className","dependencies","hidden","_excluded2","form","Form","useFormInstance","innerClassName","useMemo","preDefinedClassName","getFormItemLayoutClassName","length","Item","noStyle","innerForm","innerHidden","getFieldsValue","innerIsClear","normalize","rules","isValidElement"],"mappings":";40BAqEA,IAAMA,EAA0B,SAA1BA,EAA2BC,GAC/B,IAAQC,EAA0ED,EAA1EC,QAASC,EAAiEF,EAAjEE,SAAUC,EAAuDH,EAAvDG,eAAgBC,EAAuCJ,EAAvCI,QAASC,EAA8BL,EAA9BK,iBAAqBC,EAAIC,EAAKP,EAAKQ,GAEvF,IAAMC,EAAWC,OAAOC,UAAUC,eAAeC,KAAKP,EAAM,SAC5D,GAAIG,GAAYN,EAAgB,CAC9BG,EAAK,SAAWH,EAAeG,EAAK,SACtC,CACA,IAAMQ,EAAYC,EAAab,EAAUc,EAAad,EAASF,MAAOM,EAAM,OAE5EW,EAASC,iBAAgB,WACvB,GAAId,IAAYe,EAAkBnB,EAAMoB,OAAQ,CAC9CpB,EAAMqB,UAANrB,MAAAA,EAAMqB,SAAWC,UACnB,CACD,GAAE,CAAClB,EAASJ,EAAMoB,QAEnB,GAAInB,EAAS,CACX,OAAOA,EAAQa,EACjB,CACA,GAAId,EAAMuB,QAAUvB,EAAMwB,MAAO,CAC/B,OACEC,EAAA,MAAA,CAAKC,MAAKC,EAAA,CAAIC,QAAS,OAAQC,WAAY,UAAaxB,GAAmBH,SACxEF,CAAAA,EAAMuB,OAASO,EAAA,OAAA,CAAMJ,MAAO,CAAEK,YAAa,IAAK7B,SAAEF,EAAMuB,SAAiB,KAC1EO,EAAA,MAAA,CAAKJ,MAAO,CAAEM,KAAM,GAAI9B,SAAEY,IACzBd,EAAMwB,MAAQM,EAAA,OAAA,CAAMJ,MAAO,CAAEO,WAAY,IAAK/B,SAAEF,EAAMwB,QAAgB,OAG7E,CACA,OAAOV,CACT,MA4BaoB,EAAkB,SAAlBA,EAAmBlC,GAC9B,IACEC,EAeED,EAfFC,QACAG,EAcEJ,EAdFI,QACA+B,EAaEnC,EAbFmC,WACAC,EAYEpC,EAZFoC,kBACAC,EAWErC,EAXFqC,WACAnC,EAUEF,EAVFE,SACAqB,EASEvB,EATFuB,OACAC,EAQExB,EARFwB,MACArB,EAOEH,EAPFG,eACAmC,EAMEtC,EANFsC,gBACAC,EAKEvC,EALFuC,UACAC,EAIExC,EAJFwC,aACAC,EAGEzC,EAHFyC,OACApC,EAEEL,EAFFK,iBACGC,EAAIC,EACLP,EAAK0C,GACT,IAAMC,EAAOC,EAAKC,kBAElB,IAAMC,EAAiBC,GAAQ,WAC7B,OAAOC,EAAoBC,2BAA2B,CACpDd,WAAAA,EACAC,kBAAAA,EACAC,WAAAA,EACAE,UAAAA,GAEH,GAAE,CAACJ,EAAYC,EAAmBC,EAAYE,IAE/C,GAAIC,IAAgBA,GAAY,UAAA,EAAZA,EAAcU,QAAS,EAAG,CAC5C,OACEpB,EAACc,EAAKO,KAAI,CAACX,aAAcA,EAAcY,QAAO,KAAAlD,SAC3C,SAAAA,EAACmD,GACA,IAAMC,SAAqBb,IAAW,WAAaA,GAAM,UAAA,EAANA,EAASY,EAAUE,kBAAoBd,EAC1F,IAAMe,SACGpD,IAAY,WAAaA,GAAO,UAAA,EAAPA,EAAUiD,EAAUE,kBAAoBnD,EAE1E,OACE0B,EAACc,EAAKO,KAAIxB,EAAA,CACR8B,UAAWnB,GACPhC,EAAI,CACRoD,MAAOF,EAAe,GAAKlD,EAAKoD,MAChCnB,UAAWO,EACXL,OAAQe,GAAgBF,EAAYpD,SAEnCyD,EAAezD,GACd4B,EAAC/B,EAAuB,CACtBE,QAASA,EACTsB,OAAQA,EACRC,MAAOA,EACPrB,eAAgBA,EAChBC,QAASoD,EACTnD,iBAAkBA,EAAiBH,SAElCA,IAGHA,IAIR,GAGN,CAEA,IAAMoD,SAAqBb,IAAW,WAAaA,EAAOE,EAAKY,kBAAoBd,EACnF,IAAMe,SAAsBpD,IAAY,WAAaA,EAAQuC,EAAKY,kBAAoBnD,EAEtF,OACE0B,EAACc,EAAKO,KAAIxB,EAAA,CACR8B,UAAWnB,GACPhC,EAAI,CACRiC,UAAWO,EACXL,OAAQa,GAAeE,EAAatD,SAEnCyD,EAAezD,GACd4B,EAAC/B,EAAuB,CACtBE,QAASA,EACTsB,OAAQA,EACRC,MAAOA,EACPrB,eAAgBA,EAChBC,QAASoD,EACTnD,iBAAkBA,EAAiBH,SAElCA,IAGHA,IAIR,EAEAgC,EAAgB,eAAiB"}
|
|
@@ -9,5 +9,5 @@ import './../flex-layout/index.css';
|
|
|
9
9
|
import './../text-symbol-wrapper/index.css';
|
|
10
10
|
import './index.css';
|
|
11
11
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
12
|
-
import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as t}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{toArray as r,getUuid as i}from"@flatbiz/utils";import{Form as o,Empty as n}from"antd";import{useRef as l,Fragment as a}from"react";import{ButtonWrapper as m}from"../button-wrapper/index.js";import{FormItemGroup as s}from"../form-item-group/index.js";import{TextSymbolWrapper as d}from"../text-symbol-wrapper/index.js";import{jsx as p,jsxs as u}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"../index-83bede1b.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";import"@dimjs/model";import"../flex-layout/index.js";var c=function e(t){if(t.wrapper)return t.wrapper({children:t.children});return t.children};var f=function e(r){var i,o;return p(s.HorizontalUnion,t({},r.formListItemTitleHProps,{style:t({marginBottom:10},(i=r.formListItemTitleHProps)==null?void 0:i.style),groupConfigList:((o=r.formListItemTitleList)==null?void 0:o.map((function(e){if(e.required){return{width:e.width,mainItem:p("div",{style:{textAlign:"center"},children:p(d,{text:e.title,symbolType:"required"})})}}return{width:e.width,mainItem:p("div",{style:{textAlign:"center"},children:e.title})}})))||[]}))};var h=function s(d){var h=[].concat(d.prevCompleteName,r(d.name));var g=o.useFormInstance();var j=l([]);var y=d.uidFieldName||"uid";var v=o.useWatch(h,g);var x=d.itemGap?d.itemGap/2:8;return p("div",{className:e("form-list-wrapper",d.className),style:d.style,children:p(o.List,{name:d.name,rules:d.rules,children:function e(l,s,w){var L;var I=w.errors;j.current=l;return u("div",{style:{borderRadius:"6px",border:I!=null&&I.length?"1px solid #ff4d4f":"1px solid transparent"},children:[(L=d.formListItemTitleList)!=null&&L.length?p(f,{formListItemTitleList:d.formListItemTitleList,formListItemTitleHProps:d.formListItemTitleHorizontalUnionProps}):null,!d.hiddenEmptyRender&&!(v!=null&&v.length)?p(n,{image:n.PRESENTED_IMAGE_SIMPLE,style:{margin:"15px 0"}}):null,u(a,{children:[p(c,{wrapper:d.formListChildrenWrapper,children:p(a,{children:l.map((function(e,t){var i=[].concat(h,[e.name]);return p("div",{className:"form-list-item-content",style:{padding:x+"px 0 "+x+"px 0"},children:d.children({formListFieldData:e,operation:s,formStageCompleteName:i,prevCompleteName:h,index:t,getInsideFormItemName:function t(i){var o=r(i);return[e.name].concat(o)},getInsideFormItemData:function e(){return g.getFieldValue(i)},uidKey:y})},e.key)}))})}),d.onCustomAddRowButton?d.onCustomAddRowButton(s):p(m,{hidden:d.hiddenAddRowButton,type:"dashed",block:true,onClick:function e(){var r;return s.add(t((r={},r[y]=i(),r),d.getAddRowDefaultValues==null?void 0:d.getAddRowDefaultValues()))},children:"添加"}),p(o.ErrorList,{errors:I!=null&&I.length?[p("div",{style:{color:"#ff4d4f",padding:"5px"},children:I},"0")]:undefined})]})]})}})})};export{h as FormListWrapper};
|
|
12
|
+
import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as t}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{toArray as r,getUuid as i}from"@flatbiz/utils";import{Form as o,Empty as n}from"antd";import{useRef as l,Fragment as a}from"react";import{ButtonWrapper as m}from"../button-wrapper/index.js";import{FormItemGroup as s}from"../form-item-group/index.js";import{TextSymbolWrapper as d}from"../text-symbol-wrapper/index.js";import{jsx as p,jsxs as u}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"../index-83bede1b.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";import"@dimjs/model";import"../flex-layout/index.js";var c=function e(t){if(t.wrapper)return t.wrapper({children:t.children});return t.children};var f=function e(r){var i,o;return p(s.HorizontalUnion,t({},r.formListItemTitleHProps,{style:t({marginBottom:10},(i=r.formListItemTitleHProps)==null?void 0:i.style),groupConfigList:((o=r.formListItemTitleList)==null?void 0:o.map((function(e){if(e.required){return{width:e.width,mainItem:p("div",{style:{textAlign:"center"},children:p(d,{text:e.title,symbolType:"required"})})}}return{width:e.width,mainItem:p("div",{style:{textAlign:"center"},children:e.title})}})))||[]}))};var h=function s(d){var h=[].concat(d.prevCompleteName,r(d.name));var g=o.useFormInstance();var j=l([]);var y=d.uidFieldName||"uid";var v=o.useWatch(h,g);var x=d.itemGap?d.itemGap/2:8;return p("div",{className:e("form-list-wrapper",d.className),style:d.style,children:p(o.List,{name:d.name,rules:d.rules,children:function e(l,s,w){var L;var I=w.errors;j.current=l;return u("div",{style:{borderRadius:"6px",border:I!=null&&I.length?"1px solid #ff4d4f":"1px solid transparent"},children:[(L=d.formListItemTitleList)!=null&&L.length?p(f,{formListItemTitleList:d.formListItemTitleList,formListItemTitleHProps:d.formListItemTitleHorizontalUnionProps}):null,!d.hiddenEmptyRender&&!(v!=null&&v.length)?p(n,{image:n.PRESENTED_IMAGE_SIMPLE,style:{margin:"15px 0"}}):null,u(a,{children:[p(c,{wrapper:d.formListChildrenWrapper,children:p(a,{children:l.map((function(e,t){var i=[].concat(h,[e.name]);return p("div",{className:"form-list-item-content",style:{padding:x+"px 0 "+x+"px 0"},children:d.children({formListFieldData:e,operation:s,formStageCompleteName:i,prevCompleteName:h,index:t,getInsideFormItemName:function t(i){var o=r(i);return[e.name].concat(o)},getInsideFormItemData:function e(){return g.getFieldValue(i)},uidKey:y})},e.key)}))})}),d.onCustomAddRowButton?d.onCustomAddRowButton(s):p(m,{hidden:d.hiddenAddRowButton,type:"dashed",block:true,onClick:function e(){var r;return s.add(t((r={},r[y]=i(),r),d.getAddRowDefaultValues==null?void 0:d.getAddRowDefaultValues()))},children:"添加"}),p(o.ErrorList,{errors:I!=null&&I.length?[p("div",{style:{color:"#ff4d4f",padding:"5px"},children:I},"0")]:undefined})]})]})}})})};export{h as FormListWrapper};
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-list-wrapper/form-list-wrapper.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { getUuid, toArray } from '@flatbiz/utils';\nimport { Empty, Form, type FormListFieldData } from 'antd';\nimport { Fragment, useRef, type ReactElement } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { FormItemGroup } from '../form-item-group';\nimport { TextSymbolWrapper } from '../text-symbol-wrapper';\nimport './style.less';\nimport { type FormListWrapperProps } from './types';\n\ntype FormListChildrenWrapperProps = {\n wrapper?: FormListWrapperProps['formListChildrenWrapper'];\n children: ReactElement;\n};\nconst FormListChildrenWrapper = (props: FormListChildrenWrapperProps) => {\n if (props.wrapper) return props.wrapper({ children: props.children });\n return props.children;\n};\n\nconst FormListTitleRender = (props: {\n formListItemTitleList: FormListWrapperProps['formListItemTitleList'];\n formListItemTitleHProps?: FormListWrapperProps['formListItemTitleHorizontalUnionProps'];\n}) => {\n return (\n <FormItemGroup.HorizontalUnion\n {...props.formListItemTitleHProps}\n style={{ marginBottom: 10, ...props.formListItemTitleHProps?.style }}\n groupConfigList={\n props.formListItemTitleList?.map((item) => {\n if (item.required) {\n return {\n width: item.width,\n mainItem: (\n <div style={{ textAlign: 'center' }}>\n <TextSymbolWrapper text={item.title} symbolType=\"required\" />\n </div>\n ),\n };\n }\n return {\n width: item.width,\n mainItem: <div style={{ textAlign: 'center' }}>{item.title}</div>,\n };\n }) || []\n }\n />\n );\n};\n\n/**\n * Form.List 包装组件,使用更简单\n * ```\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/form/list\n * 1. FormList数组中必须要有唯一值字段,默认值字段名称uid,可通过uidFieldName自定义设置\n * 2. 通过 itemGap 设置FormList Item 之间间隙\n * ```\n */\nexport const FormListWrapper = (props: FormListWrapperProps) => {\n const stageCompleteName = [...props.prevCompleteName, ...toArray(props.name)] as Array<string | number>;\n const form = Form.useFormInstance();\n const formListOperationRef = useRef<FormListFieldData[]>([]);\n const uidFieldName = props.uidFieldName || 'uid';\n const formListValue = Form.useWatch(stageCompleteName, form);\n\n const gapHalf = props.itemGap ? props.itemGap / 2 : 8;\n\n return (\n <div className={classNames('form-list-wrapper', props.className)} style={props.style}>\n <Form.List name={props.name} rules={props.rules}>\n {(fields, operation, { errors }) => {\n formListOperationRef.current = fields;\n return (\n <div\n style={{\n borderRadius: '6px',\n border: errors?.length ? '1px solid #ff4d4f' : '1px solid transparent',\n }}\n >\n {props.formListItemTitleList?.length ? (\n <FormListTitleRender\n formListItemTitleList={props.formListItemTitleList}\n formListItemTitleHProps={props.formListItemTitleHorizontalUnionProps}\n />\n ) : null}\n {!props.hiddenEmptyRender && !formListValue?.length ? (\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} style={{ margin: '15px 0' }} />\n ) : null}\n <Fragment>\n <FormListChildrenWrapper wrapper={props.formListChildrenWrapper}>\n <Fragment>\n {fields.map((field, index) => {\n const formStageCompleteName = [...stageCompleteName, field.name];\n return (\n <div\n key={field.key}\n className=\"form-list-item-content\"\n style={{ padding: `${gapHalf}px 0 ${gapHalf}px 0` }}\n >\n {props.children({\n formListFieldData: field,\n operation: operation,\n formStageCompleteName,\n prevCompleteName: stageCompleteName,\n index,\n getInsideFormItemName: (key) => {\n const keys = toArray<string>(key);\n return [field.name, ...keys];\n },\n getInsideFormItemData: () => {\n return form.getFieldValue(formStageCompleteName);\n },\n uidKey: uidFieldName,\n })}\n </div>\n );\n })}\n </Fragment>\n </FormListChildrenWrapper>\n {props.onCustomAddRowButton ? (\n props.onCustomAddRowButton(operation)\n ) : (\n <ButtonWrapper\n hidden={props.hiddenAddRowButton}\n type=\"dashed\"\n block\n onClick={() =>\n operation.add({\n [uidFieldName]: getUuid(),\n ...props.getAddRowDefaultValues?.(),\n })\n }\n >\n 添加\n </ButtonWrapper>\n )}\n\n <Form.ErrorList\n errors={\n errors?.length\n ? [\n <div\n key=\"0\"\n style={{\n color: '#ff4d4f',\n padding: '5px',\n }}\n >\n {errors}\n </div>,\n ]\n : undefined\n }\n />\n </Fragment>\n </div>\n );\n }}\n </Form.List>\n </div>\n );\n};\n"],"names":["FormListChildrenWrapper","props","wrapper","children","FormListTitleRender","_props$formListItemTi","_props$formListItemTi2","_jsx","FormItemGroup","HorizontalUnion","_extends","formListItemTitleHProps","style","marginBottom","groupConfigList","formListItemTitleList","map","item","required","width","mainItem","textAlign","TextSymbolWrapper","text","title","symbolType","FormListWrapper","stageCompleteName","concat","prevCompleteName","toArray","name","form","Form","useFormInstance","formListOperationRef","useRef","uidFieldName","formListValue","useWatch","gapHalf","itemGap","className","_classNames","List","rules","fields","operation","_ref","_props$formListItemTi3","errors","current","_jsxs","borderRadius","border","length","formListItemTitleHorizontalUnionProps","hiddenEmptyRender","Empty","image","PRESENTED_IMAGE_SIMPLE","margin","Fragment","formListChildrenWrapper","field","index","formStageCompleteName","padding","formListFieldData","getInsideFormItemName","key","keys","getInsideFormItemData","getFieldValue","uidKey","onCustomAddRowButton","ButtonWrapper","hidden","hiddenAddRowButton","type","block","onClick","_extends2","add","getUuid","getAddRowDefaultValues","ErrorList","color","undefined"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/form-list-wrapper/form-list-wrapper.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { getUuid, toArray } from '@flatbiz/utils';\nimport { Empty, Form, type FormListFieldData } from 'antd';\nimport { Fragment, useRef, type ReactElement } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { FormItemGroup } from '../form-item-group';\nimport { TextSymbolWrapper } from '../text-symbol-wrapper';\nimport './style.less';\nimport { type FormListWrapperProps } from './types';\n\ntype FormListChildrenWrapperProps = {\n wrapper?: FormListWrapperProps['formListChildrenWrapper'];\n children: ReactElement;\n};\nconst FormListChildrenWrapper = (props: FormListChildrenWrapperProps) => {\n if (props.wrapper) return props.wrapper({ children: props.children });\n return props.children;\n};\n\nconst FormListTitleRender = (props: {\n formListItemTitleList: FormListWrapperProps['formListItemTitleList'];\n formListItemTitleHProps?: FormListWrapperProps['formListItemTitleHorizontalUnionProps'];\n}) => {\n return (\n <FormItemGroup.HorizontalUnion\n {...props.formListItemTitleHProps}\n style={{ marginBottom: 10, ...props.formListItemTitleHProps?.style }}\n groupConfigList={\n props.formListItemTitleList?.map((item) => {\n if (item.required) {\n return {\n width: item.width,\n mainItem: (\n <div style={{ textAlign: 'center' }}>\n <TextSymbolWrapper text={item.title} symbolType=\"required\" />\n </div>\n ),\n };\n }\n return {\n width: item.width,\n mainItem: <div style={{ textAlign: 'center' }}>{item.title}</div>,\n };\n }) || []\n }\n />\n );\n};\n\n/**\n * Form.List 包装组件,使用更简单\n * ```\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/form/list\n * 1. FormList数组中必须要有唯一值字段,默认值字段名称uid,可通过uidFieldName自定义设置\n * 2. 通过 itemGap 设置FormList Item 之间间隙\n * ```\n */\nexport const FormListWrapper = (props: FormListWrapperProps) => {\n const stageCompleteName = [...props.prevCompleteName, ...toArray(props.name)] as Array<string | number>;\n const form = Form.useFormInstance();\n const formListOperationRef = useRef<FormListFieldData[]>([]);\n const uidFieldName = props.uidFieldName || 'uid';\n const formListValue = Form.useWatch(stageCompleteName, form);\n\n const gapHalf = props.itemGap ? props.itemGap / 2 : 8;\n\n return (\n <div className={classNames('form-list-wrapper', props.className)} style={props.style}>\n <Form.List name={props.name} rules={props.rules}>\n {(fields, operation, { errors }) => {\n formListOperationRef.current = fields;\n return (\n <div\n style={{\n borderRadius: '6px',\n border: errors?.length ? '1px solid #ff4d4f' : '1px solid transparent',\n }}\n >\n {props.formListItemTitleList?.length ? (\n <FormListTitleRender\n formListItemTitleList={props.formListItemTitleList}\n formListItemTitleHProps={props.formListItemTitleHorizontalUnionProps}\n />\n ) : null}\n {!props.hiddenEmptyRender && !formListValue?.length ? (\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} style={{ margin: '15px 0' }} />\n ) : null}\n <Fragment>\n <FormListChildrenWrapper wrapper={props.formListChildrenWrapper}>\n <Fragment>\n {fields.map((field, index) => {\n const formStageCompleteName = [...stageCompleteName, field.name];\n return (\n <div\n key={field.key}\n className=\"form-list-item-content\"\n style={{ padding: `${gapHalf}px 0 ${gapHalf}px 0` }}\n >\n {props.children({\n formListFieldData: field,\n operation: operation,\n formStageCompleteName,\n prevCompleteName: stageCompleteName,\n index,\n getInsideFormItemName: (key) => {\n const keys = toArray<string>(key);\n return [field.name, ...keys];\n },\n getInsideFormItemData: () => {\n return form.getFieldValue(formStageCompleteName);\n },\n uidKey: uidFieldName,\n })}\n </div>\n );\n })}\n </Fragment>\n </FormListChildrenWrapper>\n {props.onCustomAddRowButton ? (\n props.onCustomAddRowButton(operation)\n ) : (\n <ButtonWrapper\n hidden={props.hiddenAddRowButton}\n type=\"dashed\"\n block\n onClick={() =>\n operation.add({\n [uidFieldName]: getUuid(),\n ...props.getAddRowDefaultValues?.(),\n })\n }\n >\n 添加\n </ButtonWrapper>\n )}\n\n <Form.ErrorList\n errors={\n errors?.length\n ? [\n <div\n key=\"0\"\n style={{\n color: '#ff4d4f',\n padding: '5px',\n }}\n >\n {errors}\n </div>,\n ]\n : undefined\n }\n />\n </Fragment>\n </div>\n );\n }}\n </Form.List>\n </div>\n );\n};\n"],"names":["FormListChildrenWrapper","props","wrapper","children","FormListTitleRender","_props$formListItemTi","_props$formListItemTi2","_jsx","FormItemGroup","HorizontalUnion","_extends","formListItemTitleHProps","style","marginBottom","groupConfigList","formListItemTitleList","map","item","required","width","mainItem","textAlign","TextSymbolWrapper","text","title","symbolType","FormListWrapper","stageCompleteName","concat","prevCompleteName","toArray","name","form","Form","useFormInstance","formListOperationRef","useRef","uidFieldName","formListValue","useWatch","gapHalf","itemGap","className","_classNames","List","rules","fields","operation","_ref","_props$formListItemTi3","errors","current","_jsxs","borderRadius","border","length","formListItemTitleHorizontalUnionProps","hiddenEmptyRender","Empty","image","PRESENTED_IMAGE_SIMPLE","margin","Fragment","formListChildrenWrapper","field","index","formStageCompleteName","padding","formListFieldData","getInsideFormItemName","key","keys","getInsideFormItemData","getFieldValue","uidKey","onCustomAddRowButton","ButtonWrapper","hidden","hiddenAddRowButton","type","block","onClick","_extends2","add","getUuid","getAddRowDefaultValues","ErrorList","color","undefined"],"mappings":"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"}
|
package/esm/index.js
CHANGED
|
@@ -11,6 +11,7 @@ import './types/index.css';
|
|
|
11
11
|
import './fba-utils/index.css';
|
|
12
12
|
import './ace-editor-mysql/index.css';
|
|
13
13
|
import './ace-editor-xml/index.css';
|
|
14
|
+
import './ai-search/index.css';
|
|
14
15
|
import './alert-wrapper/index.css';
|
|
15
16
|
import './amount-fen-input/index.css';
|
|
16
17
|
import './amount-fen-input-form-item/index.css';
|
|
@@ -42,6 +43,7 @@ import './form-item-wrapper/index.css';
|
|
|
42
43
|
import './pre-defined-class-name/index.css';
|
|
43
44
|
import './delete-node/index.css';
|
|
44
45
|
import './dialog-alert/index.css';
|
|
46
|
+
import './dialog-drag-modal/index.css';
|
|
45
47
|
import './dialog-drawer/index.css';
|
|
46
48
|
import './dialog-drawer-content/index.css';
|
|
47
49
|
import './dialog-loading/index.css';
|
|
@@ -139,5 +141,5 @@ import './tree-selector-wrapper/index.css';
|
|
|
139
141
|
import './x-mind-preview/index.css';
|
|
140
142
|
import './index.css';
|
|
141
143
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
142
|
-
export{AceEditorGroovy}from"./ace-editor-groovy/index.js";export{AceEditorJava}from"./ace-editor-java/index.js";export{AceEditorJson}from"./ace-editor-json/index.js";export{AceEditorMysql}from"./ace-editor-mysql/index.js";export{AceEditorXml}from"./ace-editor-xml/index.js";export{AlertWrapper}from"./alert-wrapper/index.js";export{AmountFenInput}from"./amount-fen-input/index.js";export{AmountFenInputFormItem}from"./amount-fen-input-form-item/index.js";export{AnchorSteps}from"./anchor-steps/index.js";export{BlockLayout}from"./block-layout/index.js";export{Bootstrap}from"./bootstrap/index.js";export{BoxGrid,useBoxBreakpoint}from"./box-grid/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CardLayout}from"./card-layout/index.js";export{CardWrapper}from"./card-wrapper/index.js";export{CascaderWrapper}from"./cascader-wrapper/index.js";export{CheckList}from"./check-list/index.js";export{CheckboxWrapper}from"./checkbox-wrapper/index.js";export{ColorPickerWrapper}from"./color-picker-wrapper/index.js";export{C as ConfigProviderWrapper}from"./index-83bede1b.js";export{createDrawerWrapperModel}from"./create-drawer-wrapper-model/index.js";export{createModalWrapperModel}from"./create-modal-wrapper-model/index.js";export{CssNodeHover}from"./css-node-hover/index.js";export{DataRender}from"./data-render/index.js";export{DatePickerWrapper}from"./date-picker-wrapper/index.js";export{DateRangePickerWrapper}from"./date-range-picker-wrapper/index.js";export{DateRangePickerWrapperFormItem}from"./date-range-picker-wrapper-form-item/index.js";export{DeleteNode}from"./delete-node/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDrawer}from"./dialog-drawer/index.js";export{DialogDrawerContent}from"./dialog-drawer-content/index.js";export{dialogLoading}from"./dialog-loading/index.js";export{dialogModal}from"./dialog-modal/index.js";export{dialogPreviewImage}from"./dialog-preview-image/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragEditableCard}from"./drag-editable-card/index.js";export{DragEditableTable}from"./drag-editable-table/index.js";export{DragEditableTablePro}from"./drag-editable-table-pro/index.js";export{DragFormList}from"./drag-form-list/index.js";export{DragTable}from"./drag-table/index.js";export{DrawerWrapper}from"./drawer-wrapper/index.js";export{DropdownMenuWrapper}from"./dropdown-menu-wrapper/index.js";export{dynamicNode}from"./dynamic-node/index.js";export{EasyForm}from"./easy-form/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableCard}from"./editable-card/index.js";export{EditableField}from"./editable-field/index.js";export{EditableFieldProvider}from"./editable-field-provider/index.js";export{EditableTable}from"./editable-table/index.js";export{EditableTablePro}from"./editable-table-pro/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{ErrorBoundaryWrapper}from"./error-boundary-wrapper/index.js";export{FbaApp}from"./fba-app/index.js";export{fbaHooks}from"./fba-hooks/index.js";export{fbaUtils}from"./fba-utils/index.js";export{FileExport}from"./file-export/index.js";export{FileImport}from"./file-import/index.js";export{FileSelect}from"./file-select/index.js";export{FlexLayout}from"./flex-layout/index.js";export{FormGrid}from"./form-grid/index.js";export{FormItemGroup}from"./form-item-group/index.js";export{FormItemHidden}from"./form-item-hidden/index.js";export{FormItemSpan}from"./form-item-span/index.js";export{FormItemText}from"./form-item-text/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormItemWrapperDependencies}from"./form-item-wrapper-dependencies/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{FormWrapper}from"./form-wrapper/index.js";export{Gap}from"./gap/index.js";export{IconWrapper}from"./icon-wrapper/index.js";export{InputSearchWrapper}from"./input-search-wrapper/index.js";export{InputTextAreaWrapper}from"./input-text-area-wrapper/index.js";export{InputWrapper}from"./input-wrapper/index.js";export{JsonEditor}from"./json-editor/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LabelValueRender}from"./label-value-render/index.js";export{LocalLoading}from"./local-loading/index.js";export{MentionEditor}from"./mention-editor/index.js";export{MentionsWrapper}from"./mentions-wrapper/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{NumberRangeFormItem}from"./number-range-form-item/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{PaginationWrapper}from"./pagination-wrapper/index.js";export{Pdf}from"./pdf/index.js";export{PdfPreview}from"./pdf-preview/index.js";export{PdfPreview2}from"./pdf-preview2/index.js";export{Permission}from"./permission/index.js";export{preDefinedClassName}from"./pre-defined-class-name/index.js";export{RadioGroupWrapper}from"./radio-group-wrapper/index.js";export{RelationTree}from"./relation-tree/index.js";export{RequestStatus}from"./request-status/index.js";export{RichTextEditor}from"./rich-text-editor/index.js";export{RichTextViewer}from"./rich-text-viewer/index.js";export{RollLocationCenter}from"./roll-location-center/index.js";export{RollLocationInView}from"./roll-location-in-view/index.js";export{RuleDescribe}from"./rule-describe/index.js";export{SearchForm}from"./search-form/index.js";export{SearchMenu}from"./search-menu/index.js";export{SelectorWrapper}from"./selector-wrapper/index.js";export{SelectorWrapperSearch}from"./selector-wrapper-search/index.js";export{SelectorWrapperSimple}from"./selector-wrapper-simple/index.js";export{SimpleLayout}from"./simple-layout/index.js";export{SmsCountDown}from"./sms-count-down/index.js";export{SplitWrapper}from"./split-wrapper/index.js";export{styles}from"./styles/index.js";export{SvgHttpView}from"./svg-http-view/index.js";export{SwitchConfirmWrapper}from"./switch-confirm-wrapper/index.js";export{SwitchWrapper}from"./switch-wrapper/index.js";export{tableCellRender}from"./table-cell-render/index.js";export{TableScrollbar}from"./table-scrollbar/index.js";export{TableTitleTooltip}from"./table-title-tooltip/index.js";export{TabsSticky}from"./tabs-sticky/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListRender}from"./tag-list-render/index.js";export{TagListSelect}from"./tag-list-select/index.js";export{TagWrapper}from"./tag-wrapper/index.js";export{TextCssEllipsis}from"./text-css-ellipsis/index.js";export{TextOverflow}from"./text-overflow/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TextSymbolWrapper}from"./text-symbol-wrapper/index.js";export{TimePickerWrapper}from"./time-picker-wrapper/index.js";export{TimeRangePickerWrapper}from"./time-range-picker-wrapper/index.js";export{TimeRangePickerWrapperFormItem}from"./time-range-picker-wrapper-form-item/index.js";export{TipsTitle}from"./tips-title/index.js";export{TipsWrapper}from"./tips-wrapper/index.js";export{TreeModal}from"./tree-modal/index.js";export{TreeModalSelector}from"./tree-modal-selector/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";export{XMindPreview}from"./x-mind-preview/index.js";import"./_rollupPluginBabelHelpers-c0dbec57.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-object";import"@flatbiz/utils";import"react";import"react-ace";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/src-noconflict/snippets/groovy";import"react/jsx-runtime";import"ace-builds/src-noconflict/mode-java";import"ace-builds/src-noconflict/snippets/java";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/snippets/json";import"sql-formatter";import"ace-builds/src-noconflict/mode-mysql";import"ace-builds/src-noconflict/snippets/mysql";import"antd";import"xml-formatter";import"ace-builds/src-noconflict/mode-xml";import"ace-builds/src-noconflict/snippets/xml";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-number";import"ahooks";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@ant-design/icons/es/icons/CloseCircleFilled";import"@ant-design/icons/es/icons/RedoOutlined";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/model-react";import"./time-53b3f55f.js";import"@ant-design/icons/es/icons/DeleteOutlined";import"react-dom/client";import"./context-1f2093c6.js";import"./dom-4d04aa64.js";import"@dimjs/utils/cjs/array";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"@dnd-kit/modifiers";import"@ant-design/icons/es/icons/SaveOutlined";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"@ant-design/icons/es/icons/DownOutlined";import"@ant-design/icons/es/icons/UpOutlined";import"react-is";import"@ant-design/icons/es/icons/PlusOutlined";import"@ant-design/icons/es/icons/CloseOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"@ant-design/icons/es/icons/EditOutlined";import"./context-62955871.js";import"@dimjs/lang/cjs/is-boolean";import"@dimjs/model";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/QuestionCircleFilled";import"@dimjs/lang/cjs/is-deep-equal";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-split";import"@dimjs/lang/cjs/is-empty";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"dayjs/plugin/isSameOrAfter";import"dayjs/plugin/isSameOrBefore";import"@ant-design/icons/es/icons/CaretDownFilled";import"dequal";import"@dimjs/utils/cjs/tree";import"react-dom";import"simple-mind-map";
|
|
144
|
+
export{AceEditorGroovy}from"./ace-editor-groovy/index.js";export{AceEditorJava}from"./ace-editor-java/index.js";export{AceEditorJson}from"./ace-editor-json/index.js";export{AceEditorMysql}from"./ace-editor-mysql/index.js";export{AceEditorXml}from"./ace-editor-xml/index.js";export{AiSearch}from"./ai-search/index.js";export{AlertWrapper}from"./alert-wrapper/index.js";export{AmountFenInput}from"./amount-fen-input/index.js";export{AmountFenInputFormItem}from"./amount-fen-input-form-item/index.js";export{AnchorSteps}from"./anchor-steps/index.js";export{BlockLayout}from"./block-layout/index.js";export{Bootstrap}from"./bootstrap/index.js";export{BoxGrid,useBoxBreakpoint}from"./box-grid/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CardLayout}from"./card-layout/index.js";export{CardWrapper}from"./card-wrapper/index.js";export{CascaderWrapper}from"./cascader-wrapper/index.js";export{CheckList}from"./check-list/index.js";export{CheckboxWrapper}from"./checkbox-wrapper/index.js";export{ColorPickerWrapper}from"./color-picker-wrapper/index.js";export{C as ConfigProviderWrapper}from"./index-83bede1b.js";export{createDrawerWrapperModel}from"./create-drawer-wrapper-model/index.js";export{createModalWrapperModel}from"./create-modal-wrapper-model/index.js";export{CssNodeHover}from"./css-node-hover/index.js";export{DataRender}from"./data-render/index.js";export{DatePickerWrapper}from"./date-picker-wrapper/index.js";export{DateRangePickerWrapper}from"./date-range-picker-wrapper/index.js";export{DateRangePickerWrapperFormItem}from"./date-range-picker-wrapper-form-item/index.js";export{DeleteNode}from"./delete-node/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDragModal}from"./dialog-drag-modal/index.js";export{dialogDrawer}from"./dialog-drawer/index.js";export{DialogDrawerContent}from"./dialog-drawer-content/index.js";export{dialogLoading}from"./dialog-loading/index.js";export{dialogModal}from"./dialog-modal/index.js";export{dialogPreviewImage}from"./dialog-preview-image/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragEditableCard}from"./drag-editable-card/index.js";export{DragEditableTable}from"./drag-editable-table/index.js";export{DragEditableTablePro}from"./drag-editable-table-pro/index.js";export{DragFormList}from"./drag-form-list/index.js";export{DragTable}from"./drag-table/index.js";export{DrawerWrapper}from"./drawer-wrapper/index.js";export{DropdownMenuWrapper}from"./dropdown-menu-wrapper/index.js";export{dynamicNode}from"./dynamic-node/index.js";export{EasyForm}from"./easy-form/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableCard}from"./editable-card/index.js";export{EditableField}from"./editable-field/index.js";export{EditableFieldProvider}from"./editable-field-provider/index.js";export{EditableTable}from"./editable-table/index.js";export{EditableTablePro}from"./editable-table-pro/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{ErrorBoundaryWrapper}from"./error-boundary-wrapper/index.js";export{FbaApp}from"./fba-app/index.js";export{fbaHooks}from"./fba-hooks/index.js";export{fbaUtils}from"./fba-utils/index.js";export{FileExport}from"./file-export/index.js";export{FileImport}from"./file-import/index.js";export{FileSelect}from"./file-select/index.js";export{FlexLayout}from"./flex-layout/index.js";export{FormGrid}from"./form-grid/index.js";export{FormItemGroup}from"./form-item-group/index.js";export{FormItemHidden}from"./form-item-hidden/index.js";export{FormItemSpan}from"./form-item-span/index.js";export{FormItemText}from"./form-item-text/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormItemWrapperDependencies}from"./form-item-wrapper-dependencies/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{FormWrapper}from"./form-wrapper/index.js";export{Gap}from"./gap/index.js";export{IconWrapper}from"./icon-wrapper/index.js";export{InputSearchWrapper}from"./input-search-wrapper/index.js";export{InputTextAreaWrapper}from"./input-text-area-wrapper/index.js";export{InputWrapper}from"./input-wrapper/index.js";export{JsonEditor}from"./json-editor/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LabelValueRender}from"./label-value-render/index.js";export{LocalLoading}from"./local-loading/index.js";export{MentionEditor}from"./mention-editor/index.js";export{MentionsWrapper}from"./mentions-wrapper/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{NumberRangeFormItem}from"./number-range-form-item/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{PaginationWrapper}from"./pagination-wrapper/index.js";export{Pdf}from"./pdf/index.js";export{PdfPreview}from"./pdf-preview/index.js";export{PdfPreview2}from"./pdf-preview2/index.js";export{Permission}from"./permission/index.js";export{preDefinedClassName}from"./pre-defined-class-name/index.js";export{RadioGroupWrapper}from"./radio-group-wrapper/index.js";export{RelationTree}from"./relation-tree/index.js";export{RequestStatus}from"./request-status/index.js";export{RichTextEditor}from"./rich-text-editor/index.js";export{RichTextViewer}from"./rich-text-viewer/index.js";export{RollLocationCenter}from"./roll-location-center/index.js";export{RollLocationInView}from"./roll-location-in-view/index.js";export{RuleDescribe}from"./rule-describe/index.js";export{SearchForm}from"./search-form/index.js";export{SearchMenu}from"./search-menu/index.js";export{SelectorWrapper}from"./selector-wrapper/index.js";export{SelectorWrapperSearch}from"./selector-wrapper-search/index.js";export{SelectorWrapperSimple}from"./selector-wrapper-simple/index.js";export{SimpleLayout}from"./simple-layout/index.js";export{SmsCountDown}from"./sms-count-down/index.js";export{SplitWrapper}from"./split-wrapper/index.js";export{styles}from"./styles/index.js";export{SvgHttpView}from"./svg-http-view/index.js";export{SwitchConfirmWrapper}from"./switch-confirm-wrapper/index.js";export{SwitchWrapper}from"./switch-wrapper/index.js";export{tableCellRender}from"./table-cell-render/index.js";export{TableScrollbar}from"./table-scrollbar/index.js";export{TableTitleTooltip}from"./table-title-tooltip/index.js";export{TabsSticky}from"./tabs-sticky/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListRender}from"./tag-list-render/index.js";export{TagListSelect}from"./tag-list-select/index.js";export{TagWrapper}from"./tag-wrapper/index.js";export{TextCssEllipsis}from"./text-css-ellipsis/index.js";export{TextOverflow}from"./text-overflow/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TextSymbolWrapper}from"./text-symbol-wrapper/index.js";export{TimePickerWrapper}from"./time-picker-wrapper/index.js";export{TimeRangePickerWrapper}from"./time-range-picker-wrapper/index.js";export{TimeRangePickerWrapperFormItem}from"./time-range-picker-wrapper-form-item/index.js";export{TipsTitle}from"./tips-title/index.js";export{TipsWrapper}from"./tips-wrapper/index.js";export{TreeModal}from"./tree-modal/index.js";export{TreeModalSelector}from"./tree-modal-selector/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";export{XMindPreview}from"./x-mind-preview/index.js";import"./_rollupPluginBabelHelpers-c0dbec57.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-object";import"@flatbiz/utils";import"react";import"react-ace";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/src-noconflict/snippets/groovy";import"react/jsx-runtime";import"ace-builds/src-noconflict/mode-java";import"ace-builds/src-noconflict/snippets/java";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/snippets/json";import"sql-formatter";import"ace-builds/src-noconflict/mode-mysql";import"ace-builds/src-noconflict/snippets/mysql";import"antd";import"xml-formatter";import"ace-builds/src-noconflict/mode-xml";import"ace-builds/src-noconflict/snippets/xml";import"@flatbiz/ai-request";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-number";import"ahooks";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@ant-design/icons/es/icons/CloseCircleFilled";import"@ant-design/icons/es/icons/RedoOutlined";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/model-react";import"./time-53b3f55f.js";import"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/CloseOutlined";import"react-dom/client";import"react-draggable";import"./context-1f2093c6.js";import"./dom-4d04aa64.js";import"@dimjs/utils/cjs/array";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"@dnd-kit/modifiers";import"@ant-design/icons/es/icons/SaveOutlined";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"@ant-design/icons/es/icons/DownOutlined";import"@ant-design/icons/es/icons/UpOutlined";import"react-is";import"@ant-design/icons/es/icons/PlusOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"@ant-design/icons/es/icons/EditOutlined";import"./context-62955871.js";import"@dimjs/lang/cjs/is-boolean";import"@dimjs/model";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@ant-design/icons/es/icons/QuestionCircleFilled";import"@dimjs/lang/cjs/is-deep-equal";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-split";import"@dimjs/lang/cjs/is-empty";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"dayjs/plugin/isSameOrAfter";import"dayjs/plugin/isSameOrBefore";import"@ant-design/icons/es/icons/CaretDownFilled";import"dequal";import"@dimjs/utils/cjs/tree";import"react-dom";import"simple-mind-map";
|
|
143
145
|
//# sourceMappingURL=index.js.map
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import './../fba-hooks/index.css';
|
|
3
3
|
import './index.css';
|
|
4
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
5
|
-
import{a as r,_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as t}from"@wove/react/cjs/hooks";import{isUndefinedOrNull as o}from"@flatbiz/utils";import{Input as n}from"antd";import{useRef as a,useState as i,createElement as u}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";var f=["value"];var l=function l(m){var p=m.value,c=r(m,f);var v=a();var
|
|
5
|
+
import{a as r,_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as t}from"@wove/react/cjs/hooks";import{isUndefinedOrNull as o}from"@flatbiz/utils";import{Input as n}from"antd";import{useRef as a,useState as i,createElement as u}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";var f=["value"];var l=function l(m){var p=m.value,c=r(m,f);var v=a();var j=a(true);var C=i(0),d=C[0],g=C[1];s.useEffectCustom((function(){if(o(p)&&j.current)return;j.current=false;if(p===v.current&&!o(p))return;g(Date.now())}),[p]);var h=t.useCallbackRef((function(r){if(r.nativeEvent["inputType"]==="insertCompositionText"){return}v.current=r.target.value;m.onChange==null||m.onChange(r)}));var b=t.useCallbackRef((function(r){h(r)}));return u(n.Search,e({},c,{key:d,onCompositionEnd:b,onChange:h,defaultValue:p}))};export{l as InputSearchWrapper};
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/input-search-wrapper/input-search-wrapper.tsx"],"sourcesContent":["import { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Input } from 'antd';\nimport { SearchProps } from 'antd/lib/input';\nimport { useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\n\nexport type InputSearchWrapperProps = Omit<SearchProps, 'defaultValue'>;\n\n/**\n * ```\n * 1. 在输入框内输入拼音的时候,在拼音尚未输入完成时,字母会触发Input的onChange事件;导致以上效果的原因是input事件没办法知道我们在使用中文输入法\n * 2. 此处封装可以解决此问题,在输入拼音未完成时不会触达onChange,选择拼音结果触发onChange\n *\n * 3. 设置value时,内部可将受控操作转为非受控操作(具体实现逻辑,自行查看源码)\n * 4. 适用场景:需要通过onChange事件处理业务逻辑,例如:在onChange中调用接口数据\n * 5. defaultValue不可使用\n *\n * ```\n */\nexport const InputSearchWrapper = (props: InputSearchWrapperProps) => {\n const { value, ...otherProps } = props;\n const inputValueRef = useRef<string>();\n const isFirstUseValueRef = useRef(true);\n const [defaultSearchInputKey, setDefaultSearchInputKey] = useState(0);\n\n fbaHooks.useEffectCustom(() => {\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value === inputValueRef.current && !isUndefinedOrNull(value)) return;\n setDefaultSearchInputKey(Date.now());\n }, [value]);\n\n const onChange = hooks.useCallbackRef((event) => {\n if (event.nativeEvent['inputType'] === 'insertCompositionText') {\n return;\n }\n inputValueRef.current = event.target.value;\n props.onChange?.(event);\n });\n\n const onCompositionEnd = hooks.useCallbackRef((event) => {\n onChange(event);\n });\n\n return (\n <Input.Search\n {...otherProps}\n key={defaultSearchInputKey}\n onCompositionEnd={onCompositionEnd}\n onChange={onChange}\n defaultValue={value as TAny}\n />\n );\n};\n"],"names":["InputSearchWrapper","props","value","otherProps","_objectWithoutPropertiesLoose","_excluded","inputValueRef","useRef","isFirstUseValueRef","_useState","useState","defaultSearchInputKey","setDefaultSearchInputKey","fbaHooks","useEffectCustom","isUndefinedOrNull","current","Date","now","onChange","_hooks","useCallbackRef","event","nativeEvent","target","onCompositionEnd","_createElement","Input","Search","_extends","key","defaultValue"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/input-search-wrapper/input-search-wrapper.tsx"],"sourcesContent":["import { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Input } from 'antd';\nimport { SearchProps } from 'antd/lib/input';\nimport { useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\n\nexport type InputSearchWrapperProps = Omit<SearchProps, 'defaultValue'>;\n\n/**\n * ```\n * 1. 在输入框内输入拼音的时候,在拼音尚未输入完成时,字母会触发Input的onChange事件;导致以上效果的原因是input事件没办法知道我们在使用中文输入法\n * 2. 此处封装可以解决此问题,在输入拼音未完成时不会触达onChange,选择拼音结果触发onChange\n *\n * 3. 设置value时,内部可将受控操作转为非受控操作(具体实现逻辑,自行查看源码)\n * 4. 适用场景:需要通过onChange事件处理业务逻辑,例如:在onChange中调用接口数据\n * 5. defaultValue不可使用\n *\n * ```\n */\nexport const InputSearchWrapper = (props: InputSearchWrapperProps) => {\n const { value, ...otherProps } = props;\n const inputValueRef = useRef<string>();\n const isFirstUseValueRef = useRef(true);\n const [defaultSearchInputKey, setDefaultSearchInputKey] = useState(0);\n\n fbaHooks.useEffectCustom(() => {\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value === inputValueRef.current && !isUndefinedOrNull(value)) return;\n setDefaultSearchInputKey(Date.now());\n }, [value]);\n\n const onChange = hooks.useCallbackRef((event) => {\n if (event.nativeEvent['inputType'] === 'insertCompositionText') {\n return;\n }\n inputValueRef.current = event.target.value;\n props.onChange?.(event);\n });\n\n const onCompositionEnd = hooks.useCallbackRef((event) => {\n onChange(event);\n });\n\n return (\n <Input.Search\n {...otherProps}\n key={defaultSearchInputKey}\n onCompositionEnd={onCompositionEnd}\n onChange={onChange}\n defaultValue={value as TAny}\n />\n );\n};\n"],"names":["InputSearchWrapper","props","value","otherProps","_objectWithoutPropertiesLoose","_excluded","inputValueRef","useRef","isFirstUseValueRef","_useState","useState","defaultSearchInputKey","setDefaultSearchInputKey","fbaHooks","useEffectCustom","isUndefinedOrNull","current","Date","now","onChange","_hooks","useCallbackRef","event","nativeEvent","target","onCompositionEnd","_createElement","Input","Search","_extends","key","defaultValue"],"mappings":";kbAoBaA,EAAqB,SAArBA,EAAsBC,GACjC,IAAQC,EAAyBD,EAAzBC,MAAUC,EAAUC,EAAKH,EAAKI,GACtC,IAAMC,EAAgBC,IACtB,IAAMC,EAAqBD,EAAO,MAClC,IAAAE,EAA0DC,EAAS,GAA5DC,EAAqBF,EAAA,GAAEG,EAAwBH,EAAA,GAEtDI,EAASC,iBAAgB,WACvB,GAAIC,EAAkBb,IAAUM,EAAmBQ,QAAS,OAC5DR,EAAmBQ,QAAU,MAC7B,GAAId,IAAUI,EAAcU,UAAYD,EAAkBb,GAAQ,OAClEU,EAAyBK,KAAKC,MAChC,GAAG,CAAChB,IAEJ,IAAMiB,EAAWC,EAAMC,gBAAe,SAACC,GACrC,GAAIA,EAAMC,YAAY,eAAiB,wBAAyB,CAC9D,MACF,CACAjB,EAAcU,QAAUM,EAAME,OAAOtB,MACrCD,EAAMkB,UAANlB,MAAAA,EAAMkB,SAAWG,EACnB,IAEA,IAAMG,EAAmBL,EAAMC,gBAAe,SAACC,GAC7CH,EAASG,EACX,IAEA,OACEI,EAACC,EAAMC,OAAMC,KACP1B,EAAU,CACd2B,IAAKnB,EACLc,iBAAkBA,EAClBN,SAAUA,EACVY,aAAc7B,IAGpB"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import './../fba-hooks/index.css';
|
|
3
3
|
import './index.css';
|
|
4
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
5
|
-
import{a as r,_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as
|
|
5
|
+
import{a as r,_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as t}from"@wove/react/cjs/hooks";import{Input as o}from"antd";import{isUndefinedOrNull as n}from"@flatbiz/utils";import{useRef as a,useState as i,createElement as u}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";var l=["value","debounceDuration"];var f=function f(m){var c=m.value,p=m.debounceDuration,v=r(m,l);var d=a();var b=a(true);var j=i(0),C=j[0],g=j[1];s.useEffectCustom((function(){if(n(c)&&b.current)return;b.current=false;if(c===d.current&&!n(c))return;g(Date.now())}),[c]);var h=t.useDebounceCallback((function(r){if(r.nativeEvent["inputType"]==="insertCompositionText"){return}d.current=r.target.value;m.onChange==null||m.onChange(r)}),p||0);var k=t.useCallbackRef((function(r){h(r)}));return u(o.TextArea,e({},v,{key:C,onCompositionEnd:k,onChange:h,defaultValue:c}))};export{f as InputTextAreaWrapper};
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/input-text-area-wrapper/input-text-area-wrapper.tsx"],"sourcesContent":["import { Input } from 'antd';\nimport { TextAreaProps } from 'antd/lib/input';\n\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\n\nexport type InputTextAreaWrapperProps = Omit<TextAreaProps, 'defaultValue'> & {\n // 防抖触发时间,单位毫秒 默认值:0\n debounceDuration?: number;\n};\n\n/**\n * ```\n * 1. 在输入框内输入拼音的时候,在拼音尚未输入完成时,字母会触发Input的onChange事件;导致以上效果的原因是input事件没办法知道我们在使用中文输入法\n * 2. 此处封装可以解决此问题,在输入拼音未完成时不会触达onChange,选择拼音结果触发onChange\n *\n * 3. 设置value时,内部可将受控操作转为非受控操作(具体实现逻辑,自行查看源码)\n * 4. 适用场景:需要通过onChange事件处理业务逻辑,例如:在onChange中调用接口数据\n * 5. defaultValue不可使用\n *\n * ```\n */\nexport const InputTextAreaWrapper = (props: InputTextAreaWrapperProps) => {\n const { value, debounceDuration, ...otherProps } = props;\n const inputValueRef = useRef<string>();\n const isFirstUseValueRef = useRef(true);\n const [inputKey, seInputKey] = useState(0);\n\n fbaHooks.useEffectCustom(() => {\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value === inputValueRef.current && !isUndefinedOrNull(value)) return;\n seInputKey(Date.now());\n }, [value]);\n\n const onChange = hooks.useDebounceCallback((event) => {\n if (event.nativeEvent['inputType'] === 'insertCompositionText') {\n return;\n }\n inputValueRef.current = event.target.value;\n props.onChange?.(event);\n }, debounceDuration || 0);\n\n const onCompositionEnd = hooks.useCallbackRef((event) => {\n onChange(event);\n });\n\n return (\n <Input.TextArea\n {...otherProps}\n key={inputKey}\n onCompositionEnd={onCompositionEnd}\n onChange={onChange}\n defaultValue={value as TAny}\n />\n );\n};\n"],"names":["InputTextAreaWrapper","props","value","debounceDuration","otherProps","_objectWithoutPropertiesLoose","_excluded","inputValueRef","useRef","isFirstUseValueRef","_useState","useState","inputKey","seInputKey","fbaHooks","useEffectCustom","isUndefinedOrNull","current","Date","now","onChange","_hooks","useDebounceCallback","event","nativeEvent","target","onCompositionEnd","useCallbackRef","_createElement","Input","TextArea","_extends","key","defaultValue"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/input-text-area-wrapper/input-text-area-wrapper.tsx"],"sourcesContent":["import { Input } from 'antd';\nimport { TextAreaProps } from 'antd/lib/input';\n\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\n\nexport type InputTextAreaWrapperProps = Omit<TextAreaProps, 'defaultValue'> & {\n // 防抖触发时间,单位毫秒 默认值:0\n debounceDuration?: number;\n};\n\n/**\n * ```\n * 1. 在输入框内输入拼音的时候,在拼音尚未输入完成时,字母会触发Input的onChange事件;导致以上效果的原因是input事件没办法知道我们在使用中文输入法\n * 2. 此处封装可以解决此问题,在输入拼音未完成时不会触达onChange,选择拼音结果触发onChange\n *\n * 3. 设置value时,内部可将受控操作转为非受控操作(具体实现逻辑,自行查看源码)\n * 4. 适用场景:需要通过onChange事件处理业务逻辑,例如:在onChange中调用接口数据\n * 5. defaultValue不可使用\n *\n * ```\n */\nexport const InputTextAreaWrapper = (props: InputTextAreaWrapperProps) => {\n const { value, debounceDuration, ...otherProps } = props;\n const inputValueRef = useRef<string>();\n const isFirstUseValueRef = useRef(true);\n const [inputKey, seInputKey] = useState(0);\n\n fbaHooks.useEffectCustom(() => {\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value === inputValueRef.current && !isUndefinedOrNull(value)) return;\n seInputKey(Date.now());\n }, [value]);\n\n const onChange = hooks.useDebounceCallback((event) => {\n if (event.nativeEvent['inputType'] === 'insertCompositionText') {\n return;\n }\n inputValueRef.current = event.target.value;\n props.onChange?.(event);\n }, debounceDuration || 0);\n\n const onCompositionEnd = hooks.useCallbackRef((event) => {\n onChange(event);\n });\n\n return (\n <Input.TextArea\n {...otherProps}\n key={inputKey}\n onCompositionEnd={onCompositionEnd}\n onChange={onChange}\n defaultValue={value as TAny}\n />\n );\n};\n"],"names":["InputTextAreaWrapper","props","value","debounceDuration","otherProps","_objectWithoutPropertiesLoose","_excluded","inputValueRef","useRef","isFirstUseValueRef","_useState","useState","inputKey","seInputKey","fbaHooks","useEffectCustom","isUndefinedOrNull","current","Date","now","onChange","_hooks","useDebounceCallback","event","nativeEvent","target","onCompositionEnd","useCallbackRef","_createElement","Input","TextArea","_extends","key","defaultValue"],"mappings":";qcAwBaA,EAAuB,SAAvBA,EAAwBC,GACnC,IAAQC,EAA2CD,EAA3CC,MAAOC,EAAoCF,EAApCE,iBAAqBC,EAAUC,EAAKJ,EAAKK,GACxD,IAAMC,EAAgBC,IACtB,IAAMC,EAAqBD,EAAO,MAClC,IAAAE,EAA+BC,EAAS,GAAjCC,EAAQF,EAAA,GAAEG,EAAUH,EAAA,GAE3BI,EAASC,iBAAgB,WACvB,GAAIC,EAAkBd,IAAUO,EAAmBQ,QAAS,OAC5DR,EAAmBQ,QAAU,MAC7B,GAAIf,IAAUK,EAAcU,UAAYD,EAAkBd,GAAQ,OAClEW,EAAWK,KAAKC,MAClB,GAAG,CAACjB,IAEJ,IAAMkB,EAAWC,EAAMC,qBAAoB,SAACC,GAC1C,GAAIA,EAAMC,YAAY,eAAiB,wBAAyB,CAC9D,MACF,CACAjB,EAAcU,QAAUM,EAAME,OAAOvB,MACrCD,EAAMmB,UAANnB,MAAAA,EAAMmB,SAAWG,EACnB,GAAGpB,GAAoB,GAEvB,IAAMuB,EAAmBL,EAAMM,gBAAe,SAACJ,GAC7CH,EAASG,EACX,IAEA,OACEK,EAACC,EAAMC,SAAQC,KACT3B,EAAU,CACd4B,IAAKpB,EACLc,iBAAkBA,EAClBN,SAAUA,EACVa,aAAc/B,IAGpB"}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import './../fba-hooks/index.css';
|
|
3
3
|
import './index.css';
|
|
4
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
5
|
-
import{a as r,_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as o}from"@wove/react/cjs/hooks";import{isUndefinedOrNull as
|
|
5
|
+
import{a as r,_ as e}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as o}from"@wove/react/cjs/hooks";import{isUndefinedOrNull as t}from"@flatbiz/utils";import{Input as n}from"antd";import{useRef as a,useState as i,createElement as u}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";var l=["value","debounceDuration"];var f=function f(m){var c=m.value,p=m.debounceDuration,v=r(m,l);var d=a();var b=a(true);var j=i(0),C=j[0],g=j[1];s.useEffectCustom((function(){if(t(c)&&b.current)return;b.current=false;if(c===d.current&&!t(c))return;g(Date.now())}),[c]);var h=o.useDebounceCallback((function(r){if(r.nativeEvent["inputType"]==="insertCompositionText"){return}d.current=r.target.value;m.onChange==null||m.onChange(r)}),p||0);var k=o.useCallbackRef((function(r){h(r)}));return u(n,e({},v,{key:C,onCompositionEnd:k,onChange:h,defaultValue:c}))};export{f as InputWrapper};
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/input-wrapper/input-wrapper.tsx"],"sourcesContent":["import { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Input, InputProps } from 'antd';\nimport { useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\n\nexport type InputWrapperProps = Omit<InputProps, 'defaultValue'> & {\n // 防抖触发时间,单位毫秒 默认值:0\n debounceDuration?: number;\n};\n\n/**\n * ```\n * 1. 在输入框内输入拼音的时候,在拼音尚未输入完成时,字母会触发Input的onChange事件;导致以上效果的原因是input事件没办法知道我们在使用中文输入法\n * 2. 此处封装可以解决此问题,在输入拼音未完成时不会触达onChange,选择拼音结果触发onChange\n *\n * 3. 设置value时,内部可将受控操作转为非受控操作(具体实现逻辑,自行查看源码)\n * 4. 适用场景:需要通过onChange事件处理业务逻辑,例如:在onChange中调用接口数据\n * 5. defaultValue不可使用\n * 6. 可设置防抖执行时间\n * ```\n */\nexport const InputWrapper = (props: InputWrapperProps) => {\n const { value, debounceDuration, ...otherProps } = props;\n const inputValueRef = useRef<string>();\n const isFirstUseValueRef = useRef(true);\n const [inputKey, setInputKey] = useState(0);\n\n fbaHooks.useEffectCustom(() => {\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value === inputValueRef.current && !isUndefinedOrNull(value)) return;\n setInputKey(Date.now());\n }, [value]);\n\n const onChange = hooks.useDebounceCallback((event) => {\n if (event.nativeEvent['inputType'] === 'insertCompositionText') {\n return;\n }\n inputValueRef.current = event.target.value;\n props.onChange?.(event);\n }, debounceDuration || 0);\n\n const onCompositionEnd = hooks.useCallbackRef((event) => {\n onChange(event);\n });\n\n return (\n <Input\n {...otherProps}\n key={inputKey}\n onCompositionEnd={onCompositionEnd}\n onChange={onChange}\n defaultValue={value as TAny}\n />\n );\n};\n"],"names":["InputWrapper","props","value","debounceDuration","otherProps","_objectWithoutPropertiesLoose","_excluded","inputValueRef","useRef","isFirstUseValueRef","_useState","useState","inputKey","setInputKey","fbaHooks","useEffectCustom","isUndefinedOrNull","current","Date","now","onChange","_hooks","useDebounceCallback","event","nativeEvent","target","onCompositionEnd","useCallbackRef","_createElement","Input","_extends","key","defaultValue"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/input-wrapper/input-wrapper.tsx"],"sourcesContent":["import { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Input, InputProps } from 'antd';\nimport { useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\n\nexport type InputWrapperProps = Omit<InputProps, 'defaultValue'> & {\n // 防抖触发时间,单位毫秒 默认值:0\n debounceDuration?: number;\n};\n\n/**\n * ```\n * 1. 在输入框内输入拼音的时候,在拼音尚未输入完成时,字母会触发Input的onChange事件;导致以上效果的原因是input事件没办法知道我们在使用中文输入法\n * 2. 此处封装可以解决此问题,在输入拼音未完成时不会触达onChange,选择拼音结果触发onChange\n *\n * 3. 设置value时,内部可将受控操作转为非受控操作(具体实现逻辑,自行查看源码)\n * 4. 适用场景:需要通过onChange事件处理业务逻辑,例如:在onChange中调用接口数据\n * 5. defaultValue不可使用\n * 6. 可设置防抖执行时间\n * ```\n */\nexport const InputWrapper = (props: InputWrapperProps) => {\n const { value, debounceDuration, ...otherProps } = props;\n const inputValueRef = useRef<string>();\n const isFirstUseValueRef = useRef(true);\n const [inputKey, setInputKey] = useState(0);\n\n fbaHooks.useEffectCustom(() => {\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value === inputValueRef.current && !isUndefinedOrNull(value)) return;\n setInputKey(Date.now());\n }, [value]);\n\n const onChange = hooks.useDebounceCallback((event) => {\n if (event.nativeEvent['inputType'] === 'insertCompositionText') {\n return;\n }\n inputValueRef.current = event.target.value;\n props.onChange?.(event);\n }, debounceDuration || 0);\n\n const onCompositionEnd = hooks.useCallbackRef((event) => {\n onChange(event);\n });\n\n return (\n <Input\n {...otherProps}\n key={inputKey}\n onCompositionEnd={onCompositionEnd}\n onChange={onChange}\n defaultValue={value as TAny}\n />\n );\n};\n"],"names":["InputWrapper","props","value","debounceDuration","otherProps","_objectWithoutPropertiesLoose","_excluded","inputValueRef","useRef","isFirstUseValueRef","_useState","useState","inputKey","setInputKey","fbaHooks","useEffectCustom","isUndefinedOrNull","current","Date","now","onChange","_hooks","useDebounceCallback","event","nativeEvent","target","onCompositionEnd","useCallbackRef","_createElement","Input","_extends","key","defaultValue"],"mappings":";qcAsBaA,EAAe,SAAfA,EAAgBC,GAC3B,IAAQC,EAA2CD,EAA3CC,MAAOC,EAAoCF,EAApCE,iBAAqBC,EAAUC,EAAKJ,EAAKK,GACxD,IAAMC,EAAgBC,IACtB,IAAMC,EAAqBD,EAAO,MAClC,IAAAE,EAAgCC,EAAS,GAAlCC,EAAQF,EAAA,GAAEG,EAAWH,EAAA,GAE5BI,EAASC,iBAAgB,WACvB,GAAIC,EAAkBd,IAAUO,EAAmBQ,QAAS,OAC5DR,EAAmBQ,QAAU,MAC7B,GAAIf,IAAUK,EAAcU,UAAYD,EAAkBd,GAAQ,OAClEW,EAAYK,KAAKC,MACnB,GAAG,CAACjB,IAEJ,IAAMkB,EAAWC,EAAMC,qBAAoB,SAACC,GAC1C,GAAIA,EAAMC,YAAY,eAAiB,wBAAyB,CAC9D,MACF,CACAjB,EAAcU,QAAUM,EAAME,OAAOvB,MACrCD,EAAMmB,UAANnB,MAAAA,EAAMmB,SAAWG,EACnB,GAAGpB,GAAoB,GAEvB,IAAMuB,EAAmBL,EAAMM,gBAAe,SAACJ,GAC7CH,EAASG,EACX,IAEA,OACEK,EAACC,EAAKC,KACA1B,EAAU,CACd2B,IAAKnB,EACLc,iBAAkBA,EAClBN,SAAUA,EACVY,aAAc9B,IAGpB"}
|
package/esm/json-editor/index.js
CHANGED
|
@@ -8,5 +8,5 @@ import './../error-boundary-wrapper/index.css';
|
|
|
8
8
|
import './../flex-layout/index.css';
|
|
9
9
|
import './index.css';
|
|
10
10
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
11
|
-
import{a as e,_ as t}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as i}from"@wove/react/cjs/hooks";import{isObject as o}from"@dimjs/lang/cjs/is-object";import{isUndefinedOrNull as
|
|
11
|
+
import{a as e,_ as t}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{hooks as i}from"@wove/react/cjs/hooks";import{isObject as o}from"@dimjs/lang/cjs/is-object";import{isUndefinedOrNull as r,jsonStringToJsonObject as n}from"@flatbiz/utils";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-json";import{useState as a,useRef as s,useMemo as l}from"react";import m from"react-ace";import{ButtonWrapper as u}from"../button-wrapper/index.js";import{ErrorBoundaryWrapper as c}from"../error-boundary-wrapper/index.js";import{FlexLayout as d}from"../flex-layout/index.js";import{jsxs as p,jsx as f}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@dimjs/utils/cjs/class-names";import"antd";import"../index-83bede1b.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";import"@dimjs/model";var j=["value","onChange","theme","height","showVerifyBtn","autoCompleterList"];var h=function h(g){var v=g.value,y=g.onChange,b=g.theme,w=g.height,x=g.showVerifyBtn,C=g.autoCompleterList,k=e(g,j);var L=r(w)?"100%":w;var N=a(Date.now()),z=N[0],B=N[1];var O=a(),S=O[0],_=O[1];var R=s();var V=l((function(){if(o(v)){return JSON.stringify(v,null,2)}return v}),[v]);var A=i.useCallbackRef((function(e){if(S){if(!e){_(undefined)}else{try{var t=n(e);_(t?undefined:undefined)}catch(e){}}}y==null||y(e)}));var D=i.useCallbackRef((function(e,t,i,o,r){r(null,C==null?void 0:C.map((function(e){return{name:e.name,value:e.name,meta:e.desc}})))}));var P=function e(t){R.current=t;var i=t.completers.findIndex((function(e){return e.id==="custom"}));if(i>=0){t.completers[i]={getCompletions:D,id:"custom"}}else{t.completers.push({getCompletions:D,id:"custom"})}};var F=function e(t){try{var i=n(t);y==null||y(i)}catch(e){_('数据解析异常,正确格式:{"name":"张三", "age": 20}')}};return p(d,{fullIndex:0,className:"json-editor",style:{height:L},children:[f("div",{className:"json-editor-ace",children:f(c,{onRenderReset:function e(){y==null||y(undefined);B(Date.now())},children:f(m,t({fontSize:14,showPrintMargin:true,showGutter:true,highlightActiveLine:true,height:"100%",width:"auto"},k,{setOptions:t({useWorker:false,enableBasicAutocompletion:false,enableLiveAutocompletion:true,enableSnippets:false,showLineNumbers:true,tabSize:2},k.setOptions),theme:b,mode:"json",onLoad:P,onChange:A,onBlur:function e(t,i){var o=i==null?void 0:i.getValue();if(o){F(o)}},value:V}))})}),p("div",{className:"json-editor-erify",children:[x!==false?f(u,{style:{marginTop:10},block:false,onClick:function e(){var t;var i=(t=R.current)==null?void 0:t.getValue();if(!i){y==null||y(i);return}F(i)},children:"验证数据"}):null,S?f("span",{style:{color:"red",marginLeft:10},children:S}):null]})]},z)};export{h as JsonEditor};
|
|
12
12
|
//# sourceMappingURL=index.js.map
|