@flatbiz/antd 4.2.78 → 4.2.80
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/date-range-picker-wrapper/index.js.map +1 -1
- package/esm/dialog-alert/index.js +2 -1
- package/esm/dialog-alert/index.js.map +1 -1
- package/esm/dialog-confirm/index.js +2 -1
- package/esm/dialog-confirm/index.js.map +1 -1
- package/esm/dialog-modal/index.css +1 -1
- package/esm/dialog-modal/index.js +2 -1
- package/esm/dialog-modal/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/editable-table/index.js +1 -1
- package/esm/editable-table/index.js.map +1 -1
- package/esm/pre-defined-class-name/index.css +1 -1
- package/esm/pre-defined-class-name/index.js +1 -1
- package/esm/pre-defined-class-name/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-title-tooltip/index.js.map +1 -1
- package/esm/tag-list-select/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/index.d.ts +41 -8
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/date-range-picker-wrapper/date-range-picker-wrapper.tsx"],"sourcesContent":["import { flatbizDate, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { DatePicker } from 'antd';\nimport { RangePickerDateProps } from 'antd/es/date-picker/generatePicker';\nimport dayjs, { Dayjs } from 'dayjs';\nimport { useMemo, useState } from 'react';\nimport { DayjsDateTypeEnum, TDayjsDateType } from '../_utils/constants';\nimport { getDisabledHour, getDisabledMinute, getDisabledSecond } from '../_utils/time';\n\nexport type DateRangePickerWrapperProps = Omit<\n RangePickerDateProps<TAny>,\n 'value' | 'onChange' | 'onCalendarChange' | '
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/date-range-picker-wrapper/date-range-picker-wrapper.tsx"],"sourcesContent":["import { flatbizDate, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { DatePicker } from 'antd';\nimport { RangePickerDateProps } from 'antd/es/date-picker/generatePicker';\nimport dayjs, { Dayjs } from 'dayjs';\nimport { useMemo, useState } from 'react';\nimport { DayjsDateTypeEnum, TDayjsDateType } from '../_utils/constants';\nimport { getDisabledHour, getDisabledMinute, getDisabledSecond } from '../_utils/time';\n\nexport type DateRangePickerWrapperProps = Omit<\n RangePickerDateProps<TAny>,\n 'value' | 'onChange' | 'onCalendarChange' | 'format'\n> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n /**\n * 1. minDate、maxDate 与 format格式相同;默认:YYYY-MM-DD\n * 2. maxDays 最大可选的天数\n */\n disabledDateConfig?: {\n minDate?: TDayjsDateType;\n maxDate?: TDayjsDateType;\n maxDays?: number;\n /** 禁用 小时 刻度列表,与日期无关 */\n disabledHourList?: number[];\n /** 禁用 分钟 刻度列表,与日期无关 */\n disabledMinuteList?: number[];\n /** 禁用 秒钟 刻度列表,与日期无关 */\n disabledSecondList?: number[];\n };\n format?: TDayjsDateType;\n};\n\ntype RangeValue = [Dayjs | null, Dayjs | null] | null;\n\n/**\n * DatePicker.RangePicker包装组件\n * ```\n * 1. value类型为 [string, string]\n * 2. onChange返回类型 [string, string]\n * 3. 默认格式化类型 YYYY-MM-DD; 当showTime===true时,默认格式化类型YYYY-MM-DD HH:mm:ss;其他格式化类型自定义format\n * 4. 可设置disabledDateConfig,来控制日期项的disbaled状态\n * 5. 设置 disabledDate 后,disabledDateConfig配置将失效\n * 6. 设置 disabledTime 后,内置的disabledTime逻辑将失效\n *\n * TODO: 引用DatePicker.RangePicker TS有问题,待解决\n * TODO: 存在场景缺陷,当设置maxDays、showTime后,在选择单个日期不通过确认按钮直接切换输入框,无法获取回调,无法约束disabledDate\n * ```\n */\nexport const DateRangePickerWrapper = (props: DateRangePickerWrapperProps) => {\n const { value, onChange, style, format, onOpenChange: onAntdOpenChange, ...otherProps } = props;\n const { maxDays, minDate, maxDate, disabledHourList, disabledMinuteList, disabledSecondList } =\n props.disabledDateConfig || {};\n const minDateTimeDayInst = minDate ? dayjs(minDate) : undefined;\n const maxDateTimeDayInst = maxDate ? dayjs(maxDate) : undefined;\n\n const [dates, setDates] = useState<RangeValue>(null);\n const [hackValue, setHackValue] = useState<RangeValue>(null);\n\n const [date1, date2] = value || [];\n const rangePickerValue = useMemo(() => {\n if (date1 && date2) {\n const newDate1 = flatbizDate.dateNormalize(date1);\n const newDate2 = flatbizDate.dateNormalize(date2);\n return [dayjs(newDate1), dayjs(newDate2)];\n }\n return undefined;\n }, [date1, date2]) as [Dayjs, Dayjs];\n\n const customFormat = useMemo(() => {\n if (format) return format as string;\n if (props.showTime === true) return DayjsDateTypeEnum.YMDHms;\n return DayjsDateTypeEnum.YMD;\n }, [props.showTime, format]);\n\n const onChangeDate = hooks.useCallbackRef((dates, dateStrings) => {\n if (dates && dates[0] && dates[1]) {\n onChange?.(dateStrings);\n } else {\n onChange?.(undefined);\n }\n });\n\n const getDisabledDate = hooks.useCallbackRef((current) => {\n const currentDate = current.format(DayjsDateTypeEnum.YMD);\n if (!props.disabledDateConfig) {\n return false;\n }\n if (minDateTimeDayInst && maxDateTimeDayInst) {\n if (\n !flatbizDate.in(\n currentDate,\n minDateTimeDayInst.format(DayjsDateTypeEnum.YMD),\n maxDateTimeDayInst.format(DayjsDateTypeEnum.YMD),\n )\n ) {\n return true;\n }\n } else if (minDateTimeDayInst) {\n if (!flatbizDate.gte(currentDate, minDateTimeDayInst.format(DayjsDateTypeEnum.YMD))) {\n return true;\n }\n } else if (maxDateTimeDayInst) {\n if (!flatbizDate.gte(maxDateTimeDayInst.format(DayjsDateTypeEnum.YMD), currentDate)) {\n return true;\n }\n }\n\n if (!maxDays || (!dates?.[0] && !dates?.[1])) {\n return false;\n }\n\n const tooLate = dates?.[0] && current.diff(dates[0], 'days') > maxDays - 1;\n const tooEarly = dates?.[1] && dates[1].diff(current, 'days') > maxDays - 1;\n return !!tooEarly || !!tooLate;\n });\n\n const onOpenChange = (open: boolean) => {\n if (maxDays && maxDays > 0) {\n if (open) {\n setHackValue([null, null]);\n setDates([null, null]);\n } else {\n setHackValue(null);\n }\n }\n onAntdOpenChange?.(open);\n };\n\n const getDisabledTime = hooks.useCallbackRef((current) => {\n const options = {\n minDateTime: minDateTimeDayInst,\n maxDateTime: maxDateTimeDayInst,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n };\n current = current || dayjs(date1 || new Date());\n return {\n disabledHours: () => {\n return getDisabledHour(current, options);\n },\n disabledMinutes: () => {\n return getDisabledMinute(current, options);\n },\n disabledSeconds: () => {\n return getDisabledSecond(current, options);\n },\n };\n });\n\n return (\n <DatePicker.RangePicker\n disabledDate={getDisabledDate}\n disabledTime={getDisabledTime}\n {...otherProps}\n format={customFormat}\n style={{ width: '100%', ...style }}\n value={hackValue || rangePickerValue}\n onChange={onChangeDate}\n onOpenChange={onOpenChange}\n onCalendarChange={(val) => setDates(val as RangeValue)}\n />\n );\n};\n"],"names":["DateRangePickerWrapper","props","value","onChange","style","format","onAntdOpenChange","onOpenChange","otherProps","_objectWithoutPropertiesLoose","_excluded","_ref","disabledDateConfig","maxDays","minDate","maxDate","disabledHourList","disabledMinuteList","disabledSecondList","minDateTimeDayInst","dayjs","undefined","maxDateTimeDayInst","_useState","useState","dates","setDates","_useState2","hackValue","setHackValue","_ref2","date1","date2","rangePickerValue","useMemo","newDate1","flatbizDate","dateNormalize","newDate2","customFormat","showTime","DayjsDateTypeEnum","YMDHms","YMD","onChangeDate","_hooks","useCallbackRef","dateStrings","getDisabledDate","current","currentDate","in","gte","tooLate","diff","tooEarly","open","getDisabledTime","options","minDateTime","maxDateTime","Date","disabledHours","getDisabledHour","disabledMinutes","getDisabledMinute","disabledSeconds","getDisabledSecond","_jsx","DatePicker","RangePicker","_extends","disabledDate","disabledTime","width","onCalendarChange","val"],"mappings":"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"}
|
|
@@ -5,7 +5,8 @@ import './../button-wrapper/index.css';
|
|
|
5
5
|
import './../config-provider-wrapper/index.css';
|
|
6
6
|
import './../fba-hooks/index.css';
|
|
7
7
|
import './../fba-utils/index.css';
|
|
8
|
+
import './../flex-layout/index.css';
|
|
8
9
|
import './index.css';
|
|
9
10
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
10
|
-
import{_ as i}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{dialogConfirm as o}from"../dialog-confirm/index.js";import"@dimjs/utils/cjs/class-names";import"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper/index.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"react/jsx-runtime";import"../fba-utils/index.js";var r={open:function r(t){return o.open(i({okText:"确定",cancelHidden:true,maskClosable:false},t,{onOk:t.onClick}))}};export{r as dialogAlert};
|
|
11
|
+
import{_ as i}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{dialogConfirm as o}from"../dialog-confirm/index.js";import"@dimjs/utils/cjs/class-names";import"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper/index.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"react/jsx-runtime";import"../fba-utils/index.js";import"../flex-layout/index.js";var r={open:function r(t){return o.open(i({okText:"确定",cancelHidden:true,maskClosable:false},t,{onOk:t.onClick}))}};export{r as dialogAlert};
|
|
11
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-alert/dialog-alert.tsx"],"sourcesContent":["import { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport type DialogAlertProps = Omit<\n DialogModalProps,\n 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const dialogAlert = {\n open: (props: DialogAlertProps) => {\n return dialogConfirm.open({\n okText: '确定',\n cancelHidden: true,\n maskClosable: false,\n ...props,\n onOk: props.onClick,\n } as DialogModalProps);\n },\n};\n"],"names":["dialogAlert","open","props","dialogConfirm","_extends","okText","cancelHidden","maskClosable","onOk","onClick"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-alert/dialog-alert.tsx"],"sourcesContent":["import { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport type DialogAlertProps = Omit<\n DialogModalProps,\n 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const dialogAlert = {\n open: (props: DialogAlertProps) => {\n return dialogConfirm.open({\n okText: '确定',\n cancelHidden: true,\n maskClosable: false,\n ...props,\n onOk: props.onClick,\n } as DialogModalProps);\n },\n};\n"],"names":["dialogAlert","open","props","dialogConfirm","_extends","okText","cancelHidden","maskClosable","onOk","onClick"],"mappings":";0hCAWO,IAAMA,EAAc,CACzBC,KAAM,SAAAA,EAACC,GACL,OAAOC,EAAcF,KAAIG,EAAA,CACvBC,OAAQ,KACRC,aAAc,KACdC,aAAc,OACXL,EAAK,CACRM,KAAMN,EAAMO,UAEhB"}
|
|
@@ -4,7 +4,8 @@ import './../button-wrapper/index.css';
|
|
|
4
4
|
import './../config-provider-wrapper/index.css';
|
|
5
5
|
import './../fba-hooks/index.css';
|
|
6
6
|
import './../fba-utils/index.css';
|
|
7
|
+
import './../flex-layout/index.css';
|
|
7
8
|
import './index.css';
|
|
8
9
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
9
|
-
import{_ as i}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{classNames as o}from"@dimjs/utils/cjs/class-names";import{dialogModal as r}from"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper/index.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"react/jsx-runtime";import"../fba-utils/index.js";var t={open:function t(a){var s=o("v-dialog-confirm",a.className);return r.open(i({width:350,okText:"确定",cancelText:"取消",maskClosable:true},a,{className:s}))}};export{t as dialogConfirm};
|
|
10
|
+
import{_ as i}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{classNames as o}from"@dimjs/utils/cjs/class-names";import{dialogModal as r}from"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper/index.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"react/jsx-runtime";import"../fba-utils/index.js";import"../flex-layout/index.js";var t={open:function t(a){var s=o("v-dialog-confirm",a.className);return r.open(i({width:350,okText:"确定",cancelText:"取消",maskClosable:true},a,{className:s}))}};export{t as dialogConfirm};
|
|
10
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-confirm/dialog-confirm.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { dialogModal, DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport const dialogConfirm = {\n open: (props: DialogModalProps) => {\n const className = classNames('v-dialog-confirm', props.className);\n return dialogModal.open({\n width: 350,\n okText: '确定',\n cancelText: '取消',\n maskClosable: true,\n ...props,\n className,\n });\n },\n};\n"],"names":["dialogConfirm","open","props","className","_classNames","dialogModal","_extends","width","okText","cancelText","maskClosable"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-confirm/dialog-confirm.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { dialogModal, DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport const dialogConfirm = {\n open: (props: DialogModalProps) => {\n const className = classNames('v-dialog-confirm', props.className);\n return dialogModal.open({\n width: 350,\n okText: '确定',\n cancelText: '取消',\n maskClosable: true,\n ...props,\n className,\n });\n },\n};\n"],"names":["dialogConfirm","open","props","className","_classNames","dialogModal","_extends","width","okText","cancelText","maskClosable"],"mappings":";0gCAIO,IAAMA,EAAgB,CAC3BC,KAAM,SAAAA,EAACC,GACL,IAAMC,EAAYC,EAAW,mBAAoBF,EAAMC,WACvD,OAAOE,EAAYJ,KAAIK,EAAA,CACrBC,MAAO,IACPC,OAAQ,KACRC,WAAY,KACZC,aAAc,MACXR,EAAK,CACRC,UAAAA,IAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-dialog-modal .ant-modal-body{overflow-x:hidden;overflow-y:auto;padding:10px 24px 20px}.v-dialog-modal .ant-modal-content{padding:20px 0}.v-dialog-modal .ant-modal-
|
|
1
|
+
.v-dialog-modal .ant-modal-body{overflow-x:hidden;overflow-y:auto;padding:10px 24px 20px}.v-dialog-modal .ant-modal-content{padding:20px 0}.v-dialog-modal .ant-modal-header{padding:0 24px}.v-dialog-modal .ant-modal-footer{margin:0;padding:10px 24px 0}.v-dialog-modal-title-extra .ant-modal-close{right:5px;top:5px}
|
|
@@ -3,7 +3,8 @@ import './../button-wrapper/index.css';
|
|
|
3
3
|
import './../config-provider-wrapper/index.css';
|
|
4
4
|
import './../fba-hooks/index.css';
|
|
5
5
|
import './../fba-utils/index.css';
|
|
6
|
+
import './../flex-layout/index.css';
|
|
6
7
|
import './index.css';
|
|
7
8
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
8
|
-
import{isString as e}from"@dimjs/lang/cjs/is-string";import{classNames as o}from"@dimjs/utils/cjs/class-names";import{_ as
|
|
9
|
+
import{isString as e}from"@dimjs/lang/cjs/is-string";import{classNames as o}from"@dimjs/utils/cjs/class-names";import{_ as t,a as r}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{isPromise as n}from"@dimjs/lang/cjs/is-promise";import{hooks as i}from"@wove/react/cjs/hooks";import{dom as l}from"@flatbiz/utils";import{useSize as a}from"ahooks";import{Form as d,Modal as s}from"antd";import{useState as c,useMemo as m}from"react";import{createRoot as u}from"react-dom/client";import{ButtonWrapper as p}from"../button-wrapper/index.js";import{ConfigProviderWrapper as f}from"../config-provider-wrapper/index.js";import{fbaHooks as v}from"../fba-hooks/index.js";import{FlexLayout as h}from"../flex-layout/index.js";import{jsx as g,jsxs as y}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"../fba-utils/index.js";import"@dimjs/lang/cjs/is-array";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"../use-responsive-point-21b8c601.js";var j=["title","titleExtra","divElement","elementId","onOk","onCancel","okButtonProps","cancelButtonProps","content","configProviderProps","className","okHidden","cancelHidden","footer","cancelText","okText","bodyHeightPercent"];var k=function e(u){var k=u.title,C=u.titleExtra,w=u.divElement,x=u.elementId,b=u.onOk,P=u.onCancel,_=u.okButtonProps,E=u.cancelButtonProps,H=u.content,I=u.configProviderProps,B=u.className,O=u.okHidden,z=u.cancelHidden,N=u.footer,R=u.cancelText,S=u.okText,T=u.bodyHeightPercent,F=r(u,j);var D=c(true),Y=D[0],q=D[1];var A=d.useForm(),L=A[0];var U=a(document.querySelector("html"));var G=i.useCallbackRef((function(){try{delete window[x]}catch(e){}q(false)}));v.useEffectCustom((function(){window[x]=G}),[G]);var J=i.useCallbackRef((function(e){if(P){var o=P(L,e);if(o&&n(o)){return o.then(G)}}return G()}));var K=i.useCallbackRef((function(e){if(b){var o=b(L,e);if(o&&n(o)){return o.then(G)}}return G()}));var M=i.useCallbackRef((function(){l.removeBodyChild("#"+x);u.afterClose==null?void 0:u.afterClose()}));var Q=[g(p,t({},E,{onClick:J,hidden:z,children:R||"取消"}),"0"),g(p,t({type:"primary"},_,{onClick:K,hidden:O,children:S||"提交"}),"1")];var V=N||Q;var W=m((function(){if(!(U!=null&&U.height)||!T){return"auto"}return(U==null?void 0:U.height)*(T/100)}),[T,U==null?void 0:U.height]);return g(f,t({},I,{children:g(s,t({title:C?y(h,{direction:"horizontal",fullIndex:0,children:[g("span",{children:k}),C]}):k,maskClosable:true,centered:true,onCancel:G,destroyOnClose:true},F,{bodyStyle:t({height:W,maxHeight:U!=null&&U.height?(U==null?void 0:U.height)*.8:"calc(100vh - 200px)"},F.bodyStyle),className:o("v-dialog-modal",{"v-dialog-modal-title-extra":!!C},B),open:Y,afterClose:M,getContainer:w,footer:V,children:typeof H==="function"?H(L,{onClose:G}):H}))}))};var C={open:function e(o){var r=l.bodyAppendDivElement(),n=r.divElement,i=r.elementId;window["__dialog_modal_elementId"]=i;var a=u(n);a.render(g(k,t({},o,{divElement:n,elementId:i})));return{close:function e(){var o,t;(o=(t=window)[i])==null?void 0:o.call(t)}}},close:function o(){try{var t,r;var n=window["__dialog_modal_elementId"];if(e(n))(t=(r=window)[n])==null?void 0:t.call(r)}catch(e){}}};export{C as dialogModal};
|
|
9
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-modal/dialog-modal.tsx"],"sourcesContent":["import { isPromise, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { BodyAppendDivElementProps, dom, TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { ConfigProviderWrapper, ConfigProviderWrapperProps } from '../config-provider-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport './style.less';\n\nexport type DialogModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'open' | 'open' | 'okButtonProps' | 'cancelButtonProps'\n> & {\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n configProviderProps?: ConfigProviderWrapperProps;\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n /**\n * 设置modal body height 为当前窗口height的百分比,例如:30\n * ```\n * 1. 最大值:80\n * 1. 设置bodyStyle.height 后,bodyHeightPercent失效\n * ```\n */\n bodyHeightPercent?: number;\n};\n\nconst ModalRender = (props: BodyAppendDivElementProps & DialogModalProps) => {\n const {\n divElement,\n elementId,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps,\n content,\n configProviderProps,\n className,\n okHidden,\n cancelHidden,\n footer,\n cancelText,\n okText,\n bodyHeightPercent,\n ...otherProps\n } = props;\n const [open, setOpen] = useState(true);\n const [form] = Form.useForm();\n const size = useSize(document.querySelector('html'));\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n window[elementId] = onClose;\n }, [onClose]);\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onAfterClose = hooks.useCallbackRef(() => {\n dom.removeBodyChild(`#${elementId}`);\n props.afterClose?.();\n });\n\n const operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || '取消'}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = footer || operateGroup;\n\n const height = useMemo(() => {\n if (!size?.height || !bodyHeightPercent) {\n return 'auto';\n }\n return size?.height * (bodyHeightPercent / 100);\n }, [bodyHeightPercent, size?.height]);\n\n return (\n <ConfigProviderWrapper {...configProviderProps}>\n <Modal\n maskClosable={true}\n centered={true}\n onCancel={onClose}\n destroyOnClose\n {...otherProps}\n bodyStyle={{\n height,\n maxHeight: size?.height ? size?.height * 0.8 : 'calc(100vh - 200px)',\n ...otherProps.bodyStyle,\n }}\n className={classNames('v-dialog-modal', className)}\n open={open}\n afterClose={onAfterClose}\n getContainer={divElement}\n footer={footerNew}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n </ConfigProviderWrapper>\n );\n};\n\n/**\n * 函数式调用弹框;初始化后,内容无法更新\n *```\n * 1. 基础使用方式\n * dialogModal.open({\n * title: '我是弹框',\n * content: <div>我是内容</div>,\n * });\n * ```\n * ```\n * ***************************\n * 2. 结合内置form使用,可在onOK、onCancel获取form对象\n * dialogModal.open({\n * title: '我是弹框',\n * content: (form, operate) => {\n * return (\n * <Form form={form}>\n * <Form.Item name=\"useName\">\n * <Input placeholder=\"请输入\" />\n * </Form.Item>\n * </Form>\n * );\n * },\n * onOK: (form) => {\n * console.log('content form数据', form.getFieldsValue());\n * return Promise.resolve();\n * },\n * });\n * ```\n */\nexport const dialogModal = {\n open: (props: DialogModalProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_modal_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(<ModalRender {...props} divElement={divElement} elementId={elementId} />);\n return {\n close: () => {\n window[elementId]?.();\n },\n };\n },\n /**\n * ```\n * 1. 关闭最新弹框,如果有多个弹框只能关闭最后一个\n * 2. 多个弹框主动关闭,只能使用 dialogModal.open()返回值中的close\n * ```\n */\n close: () => {\n try {\n const elementId = window['__dialog_modal_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","divElement","elementId","onOk","onCancel","okButtonProps","cancelButtonProps","content","configProviderProps","className","okHidden","cancelHidden","footer","cancelText","okText","bodyHeightPercent","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","open","setOpen","_Form$useForm","Form","useForm","form","size","useSize","document","querySelector","onClose","_hooks","useCallbackRef","window","error","fbaHooks","useEffectCustom","onCancelHandle","e","response","_isPromise","then","onOkHandle","onAfterClose","dom","removeBodyChild","afterClose","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","type","footerNew","height","useMemo","ConfigProviderWrapper","Modal","maskClosable","centered","destroyOnClose","bodyStyle","maxHeight","_classNames","getContainer","dialogModal","_dom$bodyAppendDivEle","bodyAppendDivElement","root","createRoot","render","close","_window$elementId","_window","call","_window$elementId2","_window2","_isString"],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-modal/dialog-modal.tsx"],"sourcesContent":["import { isPromise, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { BodyAppendDivElementProps, dom, TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { ConfigProviderWrapper, ConfigProviderWrapperProps } from '../config-provider-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport { FlexLayout } from '../flex-layout';\nimport './style.less';\n\nexport type DialogModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'open' | 'open' | 'okButtonProps' | 'cancelButtonProps'\n> & {\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n configProviderProps?: ConfigProviderWrapperProps;\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n /**\n * 设置modal body height 为当前窗口height的百分比,例如:30\n * ```\n * 1. 最大值:80\n * 1. 设置bodyStyle.height 后,bodyHeightPercent失效\n * ```\n */\n bodyHeightPercent?: number;\n titleExtra?: ReactElement;\n};\n\nconst ModalRender = (props: BodyAppendDivElementProps & DialogModalProps) => {\n const {\n title,\n titleExtra,\n divElement,\n elementId,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps,\n content,\n configProviderProps,\n className,\n okHidden,\n cancelHidden,\n footer,\n cancelText,\n okText,\n bodyHeightPercent,\n ...otherProps\n } = props;\n const [open, setOpen] = useState(true);\n const [form] = Form.useForm();\n const size = useSize(document.querySelector('html'));\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n window[elementId] = onClose;\n }, [onClose]);\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onAfterClose = hooks.useCallbackRef(() => {\n dom.removeBodyChild(`#${elementId}`);\n props.afterClose?.();\n });\n\n const operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || '取消'}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = footer || operateGroup;\n\n const height = useMemo(() => {\n if (!size?.height || !bodyHeightPercent) {\n return 'auto';\n }\n return size?.height * (bodyHeightPercent / 100);\n }, [bodyHeightPercent, size?.height]);\n\n return (\n <ConfigProviderWrapper {...configProviderProps}>\n <Modal\n title={\n titleExtra ? (\n <FlexLayout direction=\"horizontal\" fullIndex={0}>\n <span>{title}</span>\n {titleExtra}\n </FlexLayout>\n ) : (\n title\n )\n }\n maskClosable={true}\n centered={true}\n onCancel={onClose}\n destroyOnClose\n {...otherProps}\n bodyStyle={{\n height,\n maxHeight: size?.height ? size?.height * 0.8 : 'calc(100vh - 200px)',\n ...otherProps.bodyStyle,\n }}\n className={classNames('v-dialog-modal', { 'v-dialog-modal-title-extra': !!titleExtra }, className)}\n open={open}\n afterClose={onAfterClose}\n getContainer={divElement}\n footer={footerNew}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n </ConfigProviderWrapper>\n );\n};\n\n/**\n * 函数式调用弹框;初始化后,内容无法更新\n *```\n * 1. 基础使用方式\n * dialogModal.open({\n * title: '我是弹框',\n * content: <div>我是内容</div>,\n * });\n * ```\n * ```\n * ***************************\n * 2. 结合内置form使用,可在onOK、onCancel获取form对象\n * dialogModal.open({\n * title: '我是弹框',\n * content: (form, operate) => {\n * return (\n * <Form form={form}>\n * <Form.Item name=\"useName\">\n * <Input placeholder=\"请输入\" />\n * </Form.Item>\n * </Form>\n * );\n * },\n * onOK: (form) => {\n * console.log('content form数据', form.getFieldsValue());\n * return Promise.resolve();\n * },\n * });\n * ```\n */\nexport const dialogModal = {\n open: (props: DialogModalProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_modal_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(<ModalRender {...props} divElement={divElement} elementId={elementId} />);\n return {\n close: () => {\n window[elementId]?.();\n },\n };\n },\n /**\n * ```\n * 1. 关闭最新弹框,如果有多个弹框只能关闭最后一个\n * 2. 多个弹框主动关闭,只能使用 dialogModal.open()返回值中的close\n * ```\n */\n close: () => {\n try {\n const elementId = window['__dialog_modal_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","title","titleExtra","divElement","elementId","onOk","onCancel","okButtonProps","cancelButtonProps","content","configProviderProps","className","okHidden","cancelHidden","footer","cancelText","okText","bodyHeightPercent","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","open","setOpen","_Form$useForm","Form","useForm","form","size","useSize","document","querySelector","onClose","_hooks","useCallbackRef","window","error","fbaHooks","useEffectCustom","onCancelHandle","e","response","_isPromise","then","onOkHandle","onAfterClose","dom","removeBodyChild","afterClose","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","type","footerNew","height","useMemo","ConfigProviderWrapper","Modal","_jsxs","FlexLayout","direction","fullIndex","maskClosable","centered","destroyOnClose","bodyStyle","maxHeight","_classNames","getContainer","dialogModal","_dom$bodyAppendDivEle","bodyAppendDivElement","root","createRoot","render","close","_window$elementId","_window","call","_window$elementId2","_window2","_isString"],"mappings":"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"}
|
|
@@ -8,5 +8,5 @@ import './../dialog-modal/index.css';
|
|
|
8
8
|
import './../flex-layout/index.css';
|
|
9
9
|
import './index.css';
|
|
10
10
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
11
|
-
import{classNames as e}from"@dimjs/utils/cjs/class-names";import i from"@ant-design/icons/es/icons/ExclamationCircleFilled";import{a as r,_ as o}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{hooks as n}from"@wove/react/cjs/hooks";import{Dropdown as t}from"antd";import{Fragment as a,useMemo as s,createElement as l}from"react";import{ButtonWrapper as m}from"../button-wrapper/index.js";import{dialogConfirm as d}from"../dialog-confirm/index.js";import{fbaUtils as p}from"../fba-utils/index.js";import{FlexLayout as c}from"../flex-layout/index.js";import{jsxs as u,jsx as f}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@flatbiz/utils";import"../config-provider-wrapper/index.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"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"react-dom/client";function g(e){var i=true;var r=false;while(i){if(e.tagName==="HTML"||e.tagName==="BODY"){i=false;r=false}else{var o=window.getComputedStyle(e),n=o.position;if(n==="sticky"){r=true;i=false}else{if(!e||!e.parentNode){i=false}else{e=e.parentNode}}}}return r}var j=["menuList"],v=["text","permission","needConfirm","confirmMessage","hidden","type","confirmModalProps"];var y=function y(h){var
|
|
11
|
+
import{classNames as e}from"@dimjs/utils/cjs/class-names";import i from"@ant-design/icons/es/icons/ExclamationCircleFilled";import{a as r,_ as o}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{hooks as n}from"@wove/react/cjs/hooks";import{Dropdown as t}from"antd";import{Fragment as a,useMemo as s,createElement as l}from"react";import{ButtonWrapper as m}from"../button-wrapper/index.js";import{dialogConfirm as d}from"../dialog-confirm/index.js";import{fbaUtils as p}from"../fba-utils/index.js";import{FlexLayout as c}from"../flex-layout/index.js";import{jsxs as u,jsx as f}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@flatbiz/utils";import"../config-provider-wrapper/index.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"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"react-dom/client";function g(e){var i=true;var r=false;while(i){if(e.tagName==="HTML"||e.tagName==="BODY"){i=false;r=false}else{var o=window.getComputedStyle(e),n=o.position;if(n==="sticky"){r=true;i=false}else{if(!e||!e.parentNode){i=false}else{e=e.parentNode}}}}return r}var j=["menuList"],v=["text","permission","needConfirm","confirmMessage","hidden","type","confirmModalProps"];var y=function y(h){var k=h.menuList,x=r(h,j);var w=n.useId(undefined,"DropdownMenuWrapper");var C=n.useCallbackRef((function(e,r){if(e.needConfirm){var n;d.open(o({title:u(c,{direction:"horizontal",fullIndex:1,gap:8,children:[f(i,{style:{color:"#faad14"}}),f("span",{children:e.title})]}),content:f(a,{children:e.confirmMessage}),onOk:(n=e.onClick)==null?void 0:n.bind(null,r),okButtonProps:{loadingPosition:"center"}},e.confirmModalProps));return Promise.resolve()}r.stopPropagation();return e.onClick==null?void 0:e.onClick(r)}));var P=document.querySelector("."+w);var b=s((function(){if(h.isFixed||P&&g(P)){return undefined}return P}),[h.isFixed,P]);var M=s((function(){var i=[];k.filter(Boolean).forEach((function(n,t){if(!n)return;var a=n.text,s=n.permission,d=n.needConfirm,c=n.confirmMessage,u=n.hidden,f=n.type,g=n.confirmModalProps,j=r(n,v);if(u)return;if(s&&!p.hasPermission(s))return;var y=f||"link";var h=j.color?false:d;i.push({key:t,label:l(m,o({loadingPosition:"center",size:"small",danger:h},j,{style:o({padding:0},j.style),className:e("dmw-item-button",j.className),type:y,key:t,onClick:C.bind(null,o({},n,{needConfirm:d,confirmMessage:c,confirmModalProps:g}))}),a)})}));return i}),[k,C]);return f("div",{className:e("dropdown-menu-wrapper",w),style:{position:"relative"},children:f(t,o({trigger:(x==null?void 0:x.trigger)||["hover"],getPopupContainer:b?function(){return P}:undefined,arrow:{pointAtCenter:true}},x,{overlayStyle:o({zIndex:9},x.overlayStyle),menu:{items:M},children:h.children}))})};export{y as DropdownMenuWrapper};
|
|
12
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dropdown-menu-wrapper/utils.ts","@flatbiz/antd/src/dropdown-menu-wrapper/dropdown-menu-wrapper.tsx"],"sourcesContent":["export function parentsHasSticky(node: Element) {\n let condition = true;\n let result = false;\n while (condition) {\n if (node.tagName === 'HTML' || node.tagName === 'BODY') {\n condition = false;\n result = false;\n } else {\n const { position } = window.getComputedStyle(node);\n if (position === 'sticky') {\n result = true;\n condition = false;\n } else {\n if (!node || !node.parentNode) {\n condition = false;\n } else {\n node = node.parentNode as Element;\n }\n }\n }\n }\n return result;\n}\n","import { ExclamationCircleFilled } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { ButtonProps, Dropdown, DropdownProps } from 'antd';\nimport { ItemType } from 'antd/lib/menu/hooks/useItems';\nimport { Fragment, ReactElement, useMemo } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport { fbaUtils } from '../fba-utils';\nimport { FlexLayout } from '../flex-layout';\nimport './style.less';\nimport { parentsHasSticky } from './utils';\n\nexport interface DropdownMenuItem extends ButtonProps {\n text?: string | ReactElement;\n color?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n permission?: string;\n needConfirm?: boolean;\n confirmMessage?: string;\n hidden?: boolean;\n confirmModalProps?: DialogModalProps;\n stopPropagation?: boolean;\n}\n\nexport interface DropdownMenuWrapperProps extends Omit<DropdownProps, 'menu'> {\n menuList: Array<DropdownMenuItem | null>;\n /** dropdown 设置弹框根节点在body下 */\n isFixed?: boolean;\n}\n\n/**\n * DropdownMenuWrapper\n * 升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框使用存在问题,所以在 @flatbiz/antd@4.2.49版本修改为使用dialogConfirm组件实现二次弹框确认功能\n * @param props\n * @returns\n * ```\n * 1. Dropdown默认弹框根节点在组件内部,通过isFixed=true可设置弹框根节点在body下\n * ```\n */\nexport const DropdownMenuWrapper = (props: DropdownMenuWrapperProps) => {\n const { menuList, ...dropdownOtherProps } = props;\n const clsName = hooks.useId(undefined, 'DropdownMenuWrapper');\n\n const onClick = hooks.useCallbackRef((item: DropdownMenuItem, event) => {\n if (item.needConfirm) {\n dialogConfirm.open({\n title: (\n <FlexLayout direction=\"horizontal\" fullIndex={1} gap={8}>\n <ExclamationCircleFilled style={{ color: '#faad14' }} />\n <span>{item.
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dropdown-menu-wrapper/utils.ts","@flatbiz/antd/src/dropdown-menu-wrapper/dropdown-menu-wrapper.tsx"],"sourcesContent":["export function parentsHasSticky(node: Element) {\n let condition = true;\n let result = false;\n while (condition) {\n if (node.tagName === 'HTML' || node.tagName === 'BODY') {\n condition = false;\n result = false;\n } else {\n const { position } = window.getComputedStyle(node);\n if (position === 'sticky') {\n result = true;\n condition = false;\n } else {\n if (!node || !node.parentNode) {\n condition = false;\n } else {\n node = node.parentNode as Element;\n }\n }\n }\n }\n return result;\n}\n","import { ExclamationCircleFilled } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { ButtonProps, Dropdown, DropdownProps } from 'antd';\nimport { ItemType } from 'antd/lib/menu/hooks/useItems';\nimport { Fragment, ReactElement, useMemo } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport { fbaUtils } from '../fba-utils';\nimport { FlexLayout } from '../flex-layout';\nimport './style.less';\nimport { parentsHasSticky } from './utils';\n\nexport interface DropdownMenuItem extends ButtonProps {\n text?: string | ReactElement;\n color?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n permission?: string;\n needConfirm?: boolean;\n confirmMessage?: string;\n hidden?: boolean;\n confirmModalProps?: DialogModalProps;\n stopPropagation?: boolean;\n}\n\nexport interface DropdownMenuWrapperProps extends Omit<DropdownProps, 'menu'> {\n menuList: Array<DropdownMenuItem | null>;\n /** dropdown 设置弹框根节点在body下 */\n isFixed?: boolean;\n}\n\n/**\n * DropdownMenuWrapper\n * 升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框使用存在问题,所以在 @flatbiz/antd@4.2.49版本修改为使用dialogConfirm组件实现二次弹框确认功能\n * @param props\n * @returns\n * ```\n * 1. Dropdown默认弹框根节点在组件内部,通过isFixed=true可设置弹框根节点在body下\n * ```\n */\nexport const DropdownMenuWrapper = (props: DropdownMenuWrapperProps) => {\n const { menuList, ...dropdownOtherProps } = props;\n const clsName = hooks.useId(undefined, 'DropdownMenuWrapper');\n\n const onClick = hooks.useCallbackRef((item: DropdownMenuItem, event) => {\n if (item.needConfirm) {\n dialogConfirm.open({\n title: (\n <FlexLayout direction=\"horizontal\" fullIndex={1} gap={8}>\n <ExclamationCircleFilled style={{ color: '#faad14' }} />\n <span>{item.title}</span>\n </FlexLayout>\n ),\n content: <Fragment>{item.confirmMessage}</Fragment>,\n onOk: item.onClick?.bind(null, event),\n okButtonProps: {\n loadingPosition: 'center',\n },\n ...item.confirmModalProps,\n });\n return Promise.resolve();\n }\n event.stopPropagation();\n return item.onClick?.(event);\n });\n\n const target = document.querySelector(`.${clsName}`);\n const container = useMemo(() => {\n if (props.isFixed || (target && parentsHasSticky(target))) {\n return undefined;\n }\n return target;\n }, [props.isFixed, target]);\n\n const menuItems = useMemo(() => {\n const menuItemsNew: ItemType[] = [];\n menuList.filter(Boolean).forEach((item, index) => {\n if (!item) return;\n const {\n text,\n permission,\n needConfirm,\n confirmMessage,\n hidden,\n type,\n confirmModalProps,\n ...otherProps\n } = item;\n if (hidden) return;\n if (permission && !fbaUtils.hasPermission(permission)) return;\n const buttonType = type || 'link';\n const danger = otherProps.color ? false : needConfirm;\n menuItemsNew.push({\n key: index,\n label: (\n <ButtonWrapper\n loadingPosition=\"center\"\n size=\"small\"\n danger={danger}\n {...otherProps}\n style={{ padding: 0, ...otherProps.style }}\n className={classNames('dmw-item-button', otherProps.className)}\n type={buttonType}\n key={index}\n onClick={onClick.bind(null, {\n ...item,\n needConfirm,\n confirmMessage,\n confirmModalProps,\n })}\n >\n {text}\n </ButtonWrapper>\n ),\n });\n });\n return menuItemsNew;\n }, [menuList, onClick]);\n\n return (\n <div className={classNames('dropdown-menu-wrapper', clsName)} style={{ position: 'relative' }}>\n <Dropdown\n trigger={dropdownOtherProps?.trigger || ['hover']}\n getPopupContainer={container ? () => target as HTMLElement : undefined}\n arrow={{ pointAtCenter: true }}\n {...dropdownOtherProps}\n overlayStyle={{ zIndex: 9, ...dropdownOtherProps.overlayStyle }}\n menu={{ items: menuItems }}\n >\n {props.children}\n </Dropdown>\n </div>\n );\n};\n"],"names":["parentsHasSticky","node","condition","result","tagName","_window$getComputedSt","window","getComputedStyle","position","parentNode","DropdownMenuWrapper","props","menuList","dropdownOtherProps","_objectWithoutPropertiesLoose","_excluded","clsName","_hooks","useId","undefined","onClick","useCallbackRef","item","event","needConfirm","_item$onClick","dialogConfirm","open","_extends","title","_jsxs","FlexLayout","direction","fullIndex","gap","children","_jsx","_ExclamationCircleFilled","style","color","content","Fragment","confirmMessage","onOk","bind","okButtonProps","loadingPosition","confirmModalProps","Promise","resolve","stopPropagation","target","document","querySelector","container","useMemo","isFixed","menuItems","menuItemsNew","filter","Boolean","forEach","index","text","permission","hidden","type","otherProps","_excluded2","fbaUtils","hasPermission","buttonType","danger","push","key","label","_createElement","ButtonWrapper","size","padding","className","_classNames","Dropdown","trigger","getPopupContainer","arrow","pointAtCenter","overlayStyle","zIndex","menu","items"],"mappings":"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"}
|
|
@@ -13,5 +13,5 @@ import './../input-wrapper/index.css';
|
|
|
13
13
|
import './../input-text-area-wrapper/index.css';
|
|
14
14
|
import './index.css';
|
|
15
15
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
16
|
-
import e from"@ant-design/icons/es/icons/PlusOutlined";import{_ as n,a as r}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{arrayField2LabelValue as a,toArray as i}from"@flatbiz/utils";import{Form as t,Checkbox as l,Tag as o,InputNumber as d,Radio as u,Space as m,Button as s,Input as f,Table as c}from"antd";import{useMemo as p,useState as v,useEffect as g,Fragment as b}from"react";import{ButtonWrapper as C}from"../button-wrapper/index.js";import{TableTitleTooltip as h}from"../table-title-tooltip/index.js";import{isArray as I}from"@dimjs/lang/cjs/is-array";import{extend as x}from"@dimjs/utils/cjs/extend";import{classNames as j}from"@dimjs/utils/cjs/class-names";import{hooks as w}from"@wove/react/cjs/hooks";import{jsx as R,jsxs as N,Fragment as y}from"react/jsx-runtime";import{DatePickerWrapper as P}from"../date-picker-wrapper/index.js";import{DateRangePickerWrapper as k}from"../date-range-picker-wrapper/index.js";import{InputWrapper as F}from"../input-wrapper/index.js";import{fbaHooks as L}from"../fba-hooks/index.js";import{SelectorWrapper as O}from"../selector-wrapper/index.js";import{isBoolean as T}from"@dimjs/lang/cjs/is-boolean";import{isNumber as A}from"@dimjs/lang/cjs/is-number";import{isString as S}from"@dimjs/lang/cjs/is-string";import{InputTextAreaWrapper as _}from"../input-text-area-wrapper/index.js";import{UploadWrapper as B}from"../upload-wrapper/index.js";import V from"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../config-provider-wrapper/index.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"../use-responsive-point-21b8c601.js";import"../fba-utils/index.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"../time-53b3f55f.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../request-status/index.js";import"@dimjs/lang/cjs/is-deep-equal";import"@dimjs/utils/cjs/get";import"@dimjs/utils/cjs/json";import"pubsub-js";import"@dimjs/lang/cjs/is-object";import"@dimjs/lang/cjs/is-plain-object";import"react-dom";var W=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var G=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,d=a.render;var u=i.editableComptProps;var m=p((function(){if(t)return[];var e=I(r.value)?r.value:[];var n=u.options||[];if(!I(n)||n.length===0){return e.map((function(e){return{label:e,value:e}}))}var a=[];e.forEach((function(e){var r=n.find((function(n){return n.value===e}));a.push(r?r:{label:e,value:e})}));return a}),[t,u.options,r.value]);var s=w.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e)}));if(t){return R(l.Group,n({},u,{value:r.value,onChange:s}))}return R("span",{className:"editable-checkbox-group-view",children:d?d(r.value):m.map((function(e,n){return R(o,{color:"#1890ff",children:e.label},n)}))})};var z=function e(r){var a=r.fieldConfig.formItemProps;return R(t.Item,n({},a,{name:r.name,className:j("editable-checkbox-group-form-item",a==null?void 0:a.className),children:R(G,n({},r))}))};var E=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return R(t.Item,n({},i,{name:r.name,className:j("editable-date-picker-wraper-form-item",i==null?void 0:i.className),children:R(P,n({allowClear:true},l.editableComptProps))}))};var q=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,l=a.render;var o=i.editableComptProps;var d=w.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null||o.onChange==null?void 0:o.onChange(e)}));var u=p((function(){var e=I(r.value)?r.value:[];if(t)return undefined;return e.join("~")}),[t,r.value]);if(t){return R(k,n({allowClear:true},o,{value:r.value,onChange:d}))}return R("span",{className:"editable-date-range-picker-view",children:l?l(r.value):u})};var D=function e(r){var a=r.fieldConfig.formItemProps;return R(t.Item,n({},a,{name:r.name,className:j("editable-date-range-picker-wraper-form-item",a==null?void 0:a.className),children:R(q,n({},r))}))};var M=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return R(t.Item,n({},i,{name:r.name,children:R(F,n({allowClear:true},l.editableComptProps))}))};var Y=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return R(t.Item,n({},i,{name:r.name,className:j("editable-input-number-form-item",i==null?void 0:i.className),children:R(d,n({},l.editableComptProps))}))};var H=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,l=a.render;var d=i.editableComptProps;var m=L.useThemeToken();var s=p((function(){if(t)return[];var e=r.value;var n=d.options||[];if(!I(n)||n.length===0){return e}var a=n.find((function(n){return n.value===e}));return(a==null?void 0:a.label)||e}),[t,d.options,r.value]);var f=w.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);d.onChange==null?void 0:d.onChange(e)}));if(t){return R(u.Group,n({},d,{value:r.value,onChange:f}))}return R("span",{className:"editable-radio-group-view",children:l?l(r.value):s?R(o,{color:m.colorPrimary,children:s}):null})};var J=function e(r){var a=r.fieldConfig.formItemProps;return R(t.Item,n({},a,{name:r.name,className:j("editable-radio-group-form-item",a==null?void 0:a.className),children:R(H,n({},r))}))};var K=function e(r){var i=r.fieldConfig,t=i.editableConfig,l=i.editable,d=i.render;var u=t.editableComptProps;var m=v([]),s=m[0],f=m[1];var c=v([]),p=c[0],C=c[1];var h=L.useThemeToken();g((function(){if(!l){var e=I(r.value)?r.value:r.value===undefined?[]:[r.value];if(s.length===0){C(e.map((function(e){return{label:e,value:e}})))}var n=[];e.forEach((function(e){var r=s.find((function(n){return n.value===e}));n.push(r?r:{label:String(e),value:e})}));C(n)}}),[l,u.fieldNames,r.value,s]);var x=w.useCallbackRef((function(e){f(a(e||[],u.fieldNames))}));var j=w.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e,n)}));if(l){return R(O,n({},u,{value:r.value,onChange:j,onSelectorListAllChange:x}))}return N(b,{children:[R("div",{style:{display:"none"},children:R(O,n({},u,{onSelectorListAllChange:x}))}),R("span",{className:"editable-selector-view",children:d?d(r.value,s):p.map((function(e,n){return R(o,{color:h.colorPrimary,children:e.label},n)}))})]})};var Q=function e(r){var a=r.fieldConfig.formItemProps;return R(t.Item,n({},a,{name:r.name,className:j("editable-selector-wrapper-form-item",a==null?void 0:a.className),children:R(K,n({},r))}))};var U=function e(n){var r,a;var i=p((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=S(n.value)||A(n.value)||T(n.value)||!n.value;if(!r){console.warn("Form.List name:【"+n.name+"】数据【"+JSON.stringify(n.value)+"】不能渲染在页面中")}return r?n.value:undefined}),[(r=n.fieldConfig)==null?void 0:r.render,n.name,n.value]);var t=((a=n.fieldConfig)==null||a.render==null?void 0:a.render(n.value))||i;return R("span",{children:t})};var X=function e(n){return R(t.Item,{noStyle:true,name:n.name,children:R(U,{name:n.name,fieldConfig:n.fieldConfig})})};var Z=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return R(t.Item,n({},i,{name:r.name,children:R(_,n({},l.editableComptProps))}))};var $=["children"];var ee=function e(a){var i=a.fieldConfig,t=i.editableConfig,l=i.render,o=i.editable;var d=t.editableComptProps,u=d.children,m=r(d,$);if(o){return R(B,n({listType:"text"},m,{value:a.value,onChange:a.onChange,children:u}))}return R("div",{className:"upload-wrapper-selector-view",children:l?l(a.value):R(B,n({listType:"text"},m,{value:a.value,disabled:true}))})};var ne=function e(r){var a=r.fieldConfig.formItemProps;return R(t.Item,n({},a,{name:r.name,className:j("editable-upload-wrapper-form-item",a==null?void 0:a.className),children:R(ee,n({},r))}))};var re=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable;var l=W(t,r.tableRowIndex);var o=x({},r.fieldConfig,{editable:l});var d={name:r.name,fieldConfig:o};if((i==null?void 0:i.type)==="input"&&l){return R(M,n({},d))}else if((i==null?void 0:i.type)==="inputNumber"&&l){return R(Y,n({},d))}else if((i==null?void 0:i.type)==="textArea"&&l){return R(Z,n({},d))}else if((i==null?void 0:i.type)==="datePickerWrapper"&&l){return R(E,n({},d))}else if((i==null?void 0:i.type)==="dateRangePickerWrapper"){return R(D,n({},d))}else if((i==null?void 0:i.type)==="selectorWrapper"){return R(Q,n({},d))}else if((i==null?void 0:i.type)==="checkboxGroup"){return R(z,n({},d))}else if((i==null?void 0:i.type)==="radioGroup"){return R(J,n({},d))}else if((i==null?void 0:i.type)==="uploadWrapper"){return R(ne,n({},d))}else if((i==null?void 0:i.type)==="custom"){return i.editableComptProps({name:r.name,editable:l,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return R(X,n({},d))};var ae=function e(n){var r=t.useFormInstance();var a=n.formListConfig,i=a.onFormListBeforeRender,l=a.editableConfigList,o=a.onFormListAfterRender,d=a.onFormListItemBeforeRender,u=a.onFormListItemAfterRender,s=a.deleteOperateRender;return R(t.List,{name:n.name,children:function e(a,t){var f=t.add,c=t.remove;return N(y,{children:[i?i({tableRowIndex:n.tableRowIndex,add:f,get value(){return r.getFieldValue(n.completeName)}}):null,a.map((function(e,a){var i=l.find((function(e){return W(e.editable,n.tableRowIndex)}));var t=j("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!i});return N("div",{className:t,children:[d==null?void 0:d({add:f,remove:function e(){c(a)},formListItemIndex:a,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),N(m,{children:[l.map((function(r,a){return R(re,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},a)})),i?R(ie,{deleteOperateRender:s,remove:function e(){c(a)},index:a}):undefined]}),u==null?void 0:u({add:f,formListItemIndex:a,tableRowIndex:n.tableRowIndex,remove:function e(){c(a)},get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}})]},a)})),o?o({tableRowIndex:n.tableRowIndex,add:f,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ie=function e(n){return R(t.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):R(s,{type:"link",danger:true,icon:R(V,{}),onClick:n.remove,children:"删除"})})};var te=function e(n){if(n.fieldConfig){if(I(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return R(ae,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return N(b,{children:[R(re,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?R(t.Item,{hidden:true,name:n.hiddenField.dataIndex,children:R(f,{})}):null]})}}return R(X,{name:n.name})};var le=["fieldConfig","renderMiddleware","tableChildrenColumnRender","tooltip","title"];var oe=function a(l){var o;var d=t.useFormInstance();var u=p((function(){if(!l.columns)return[];return l.columns.map((function(e){var a=e.fieldConfig,t=e.renderMiddleware,o=e.tableChildrenColumnRender,d=e.tooltip,u=e.title,m=r(e,le);return n({title:typeof u==="string"&&!!d?R(h,{title:u,tooltip:d}):u,onCell:function e(){var n;return{valign:((n=l.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},m,{render:function n(r,d,u){if(d["_isChildrenItem"]){if(o){return o(r,d,u)}return r}var m=[].concat(i(l.name),[d.name]);var s=e.dataIndex?[].concat(m,[e.dataIndex]):m;var f=t==null?void 0:t({name:s,tableRowIndex:d.name,operation:d.operation,tableRowName:m,index:u});if(f){return f}var c=typeof a==="function"?a({name:s,tableRowIndex:d.name,tableRowName:m}):a;return R(te,{name:e.dataIndex?[d.name,e.dataIndex]:[d.name],completeName:s,fieldConfig:c,tableRowIndex:d.name,hiddenField:e.hiddenField})}})}))}),[l.columns,l.name,(o=l.tableProps)==null?void 0:o.cellVerticalAlign]);var m=t.useWatch(l.name,d);return R("div",{className:"editable-table",children:R(t.List,{name:l.name,rules:l.rules,children:function r(a,i){return N(b,{children:[l.onTableBeforeRender?l.onTableBeforeRender(i,a.length):null,R(c,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},l.tableProps,{dataSource:a.map((function(e){var r;var a=m==null||(r=m[e.name])==null?void 0:r.children;if(a){a.forEach((function(e){e["_isChildrenItem"]=true}))}return n({},e,{operation:i,children:a})})),columns:u})),l.onTableAfterRender?l.onTableAfterRender(i,a.length):R(C,{type:"dashed",hidden:l.hiddenFooterBtn,onClick:function e(){return i.add()},block:true,icon:R(e,{}),style:{marginTop:15},children:"新增"})]})}})})};export{oe as EditableTable};
|
|
16
|
+
import e from"@ant-design/icons/es/icons/PlusOutlined";import{_ as n,a as r}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{arrayField2LabelValue as a,toArray as i}from"@flatbiz/utils";import{Form as t,Checkbox as l,Tag as o,InputNumber as d,Radio as u,Space as m,Button as s,Input as f,Table as c}from"antd";import{useMemo as p,useState as v,useEffect as g,Fragment as b,isValidElement as C}from"react";import{ButtonWrapper as h}from"../button-wrapper/index.js";import{TableTitleTooltip as I}from"../table-title-tooltip/index.js";import{isArray as x}from"@dimjs/lang/cjs/is-array";import{extend as j}from"@dimjs/utils/cjs/extend";import{classNames as w}from"@dimjs/utils/cjs/class-names";import{hooks as R}from"@wove/react/cjs/hooks";import{jsx as N,jsxs as y,Fragment as k}from"react/jsx-runtime";import{DatePickerWrapper as P}from"../date-picker-wrapper/index.js";import{DateRangePickerWrapper as F}from"../date-range-picker-wrapper/index.js";import{InputWrapper as L}from"../input-wrapper/index.js";import{SelectorWrapper as A}from"../selector-wrapper/index.js";import{isBoolean as O}from"@dimjs/lang/cjs/is-boolean";import{isNumber as V}from"@dimjs/lang/cjs/is-number";import{isString as S}from"@dimjs/lang/cjs/is-string";import{InputTextAreaWrapper as T}from"../input-text-area-wrapper/index.js";import{UploadWrapper as _}from"../upload-wrapper/index.js";import B from"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../config-provider-wrapper/index.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"../use-responsive-point-21b8c601.js";import"../fba-utils/index.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"../time-53b3f55f.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../request-status/index.js";import"@dimjs/lang/cjs/is-deep-equal";import"@dimjs/utils/cjs/get";import"@dimjs/utils/cjs/json";import"pubsub-js";import"@dimjs/lang/cjs/is-object";import"@dimjs/lang/cjs/is-plain-object";import"react-dom";var W=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var D=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,d=a.render;var u=i.editableComptProps;var m=p((function(){return u.options||[]}),[u.options]);var s=p((function(){if(t)return[];var e=x(r.value)?r.value:[];if(!x(m)||m.length===0){return e.map((function(e){return{label:e,value:e}}))}var n=[];e.forEach((function(e){var r=m.find((function(n){return n.value===e}));n.push(r?r:{label:e,value:e})}));return n}),[t,m,r.value]);var f=R.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e)}));if(t){return N(l.Group,n({},u,{value:r.value,onChange:f}))}return N("span",{className:"editable-checkbox-group-view",children:d?d(r.value,m):s.map((function(e,n){return N(o,{color:"geekblue",children:e.label},n)}))})};var G=function e(r){var a=r.fieldConfig.formItemProps;return N(t.Item,n({},a,{name:r.name,className:w("editable-checkbox-group-form-item",a==null?void 0:a.className),children:N(D,n({},r))}))};var z=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return N(t.Item,n({},i,{name:r.name,className:w("editable-date-picker-wraper-form-item",i==null?void 0:i.className),children:N(P,n({allowClear:true},l.editableComptProps))}))};var E=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,l=a.render;var o=i.editableComptProps;var d=R.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null||o.onChange==null?void 0:o.onChange(e)}));var u=p((function(){var e=x(r.value)?r.value:[];if(t)return undefined;return e.join("~")}),[t,r.value]);if(t){return N(F,n({allowClear:true},o,{value:r.value,onChange:d}))}return N("span",{className:"editable-date-range-picker-view",children:l?l(r.value):u})};var q=function e(r){var a=r.fieldConfig.formItemProps;return N(t.Item,n({},a,{name:r.name,className:w("editable-date-range-picker-wraper-form-item",a==null?void 0:a.className),children:N(E,n({},r))}))};var M=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return N(t.Item,n({},i,{name:r.name,children:N(L,n({allowClear:true},l.editableComptProps))}))};var Y=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return N(t.Item,n({},i,{name:r.name,className:w("editable-input-number-form-item",i==null?void 0:i.className),children:N(d,n({},l.editableComptProps))}))};var H=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,l=a.render;var d=i.editableComptProps;var m=p((function(){return d.options||[]}),[d.options]);var s=p((function(){if(t)return[];var e=r.value;if(!x(m)||m.length===0){return e}var n=m.find((function(n){return n.value===e}));return(n==null?void 0:n.label)||e}),[t,m,r.value]);var f=R.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);d.onChange==null?void 0:d.onChange(e)}));if(t){return N(u.Group,n({},d,{value:r.value,onChange:f}))}return N("span",{className:"editable-radio-group-view",children:l?l(r.value,m):s?N(o,{color:"geekblue",children:s}):null})};var J=function e(r){var a=r.fieldConfig.formItemProps;return N(t.Item,n({},a,{name:r.name,className:w("editable-radio-group-form-item",a==null?void 0:a.className),children:N(H,n({},r))}))};var K=function e(r){var i=r.fieldConfig,t=i.editableConfig,l=i.editable,d=i.render;var u=t.editableComptProps;var m=v([]),s=m[0],f=m[1];var c=v([]),p=c[0],C=c[1];g((function(){if(!l){var e=x(r.value)?r.value:r.value===undefined?[]:[r.value];if(s.length===0){C(e.map((function(e){return{label:e,value:e}})))}var n=[];e.forEach((function(e){var r=s.find((function(n){return n.value===e}));n.push(r?r:{label:String(e),value:e})}));C(n)}}),[l,u.fieldNames,r.value,s]);var h=R.useCallbackRef((function(e){f(a(e||[],u.fieldNames))}));var I=R.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e,n)}));if(l){return N(A,n({},u,{value:r.value,onChange:I,onSelectorListAllChange:h}))}return y(b,{children:[N("div",{style:{display:"none"},children:N(A,n({},u,{onSelectorListAllChange:h}))}),N("span",{className:"editable-selector-view",children:d?d(r.value,s):p.map((function(e,n){return N(o,{color:"geekblue",children:e.label},n)}))})]})};var Q=function e(r){var a=r.fieldConfig.formItemProps;return N(t.Item,n({},a,{name:r.name,className:w("editable-selector-wrapper-form-item",a==null?void 0:a.className),children:N(K,n({},r))}))};var U=function e(n){var r,a;var i=p((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=S(n.value)||V(n.value)||O(n.value)||!n.value;if(!r){console.warn("Form.List name:【"+n.name+"】数据【"+JSON.stringify(n.value)+"】不能渲染在页面中")}return r?n.value:undefined}),[(r=n.fieldConfig)==null?void 0:r.render,n.name,n.value]);var t=((a=n.fieldConfig)==null||a.render==null?void 0:a.render(n.value))||i;return N("span",{children:t})};var X=function e(n){return N(t.Item,{noStyle:true,name:n.name,children:N(U,{name:n.name,fieldConfig:n.fieldConfig})})};var Z=function e(r){var a=r.fieldConfig,i=a.formItemProps,l=a.editableConfig;return N(t.Item,n({},i,{name:r.name,children:N(T,n({},l.editableComptProps))}))};var $=["children"];var ee=function e(a){var i=a.fieldConfig,t=i.editableConfig,l=i.render,o=i.editable;var d=t.editableComptProps,u=d.children,m=r(d,$);if(o){return N(_,n({listType:"text"},m,{value:a.value,onChange:a.onChange,children:u}))}return N("div",{className:"upload-wrapper-selector-view",children:l?l(a.value):N(_,n({listType:"text"},m,{value:a.value,disabled:true}))})};var ne=function e(r){var a=r.fieldConfig.formItemProps;return N(t.Item,n({},a,{name:r.name,className:w("editable-upload-wrapper-form-item",a==null?void 0:a.className),children:N(ee,n({},r))}))};var re=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable;var l=W(t,r.tableRowIndex);var o=j({},r.fieldConfig,{editable:l});var d={name:r.name,fieldConfig:o};if((i==null?void 0:i.type)==="input"&&l){return N(M,n({},d))}else if((i==null?void 0:i.type)==="inputNumber"&&l){return N(Y,n({},d))}else if((i==null?void 0:i.type)==="textArea"&&l){return N(Z,n({},d))}else if((i==null?void 0:i.type)==="datePickerWrapper"&&l){return N(z,n({},d))}else if((i==null?void 0:i.type)==="dateRangePickerWrapper"){return N(q,n({},d))}else if((i==null?void 0:i.type)==="selectorWrapper"){return N(Q,n({},d))}else if((i==null?void 0:i.type)==="checkboxGroup"){return N(G,n({},d))}else if((i==null?void 0:i.type)==="radioGroup"){return N(J,n({},d))}else if((i==null?void 0:i.type)==="uploadWrapper"){return N(ne,n({},d))}else if((i==null?void 0:i.type)==="custom"){return i.editableComptProps({name:r.name,editable:l,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return N(X,n({},d))};var ae=function e(n){var r=t.useFormInstance();var a=n.formListConfig,i=a.onFormListBeforeRender,l=a.editableConfigList,o=a.onFormListAfterRender,d=a.onFormListItemBeforeRender,u=a.onFormListItemAfterRender,s=a.deleteOperateRender;return N(t.List,{name:n.name,children:function e(a,t){var f=t.add,c=t.remove;return y(k,{children:[i?i({tableRowIndex:n.tableRowIndex,add:f,get value(){return r.getFieldValue(n.completeName)}}):null,a.map((function(e,a){var i=l.find((function(e){return W(e.editable,n.tableRowIndex)}));var t=w("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!i});return y("div",{className:t,children:[d==null?void 0:d({add:f,remove:function e(){c(a)},formListItemIndex:a,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),y(m,{children:[l.map((function(r,a){return N(re,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},a)})),i?N(ie,{deleteOperateRender:s,remove:function e(){c(a)},index:a}):undefined]}),u==null?void 0:u({add:f,formListItemIndex:a,tableRowIndex:n.tableRowIndex,remove:function e(){c(a)},get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}})]},a)})),o?o({tableRowIndex:n.tableRowIndex,add:f,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ie=function e(n){return N(t.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):N(s,{type:"link",danger:true,icon:N(B,{}),onClick:n.remove,children:"删除"})})};var te=function e(n){if(n.fieldConfig){if(x(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return N(ae,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return y(b,{children:[N(re,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?N(t.Item,{hidden:true,name:n.hiddenField.dataIndex,children:N(f,{})}):null]})}}return N(X,{name:n.name})};var le=["fieldConfig","renderMiddleware","tableChildrenColumnRender","tooltip","title"];var oe=function a(l){var o;var d=t.useFormInstance();var u=p((function(){if(!l.columns)return[];return l.columns.map((function(e){var a=e.fieldConfig,t=e.renderMiddleware,o=e.tableChildrenColumnRender,d=e.tooltip,u=e.title,m=r(e,le);var s=C(u)||typeof u==="string";return n({title:s&&!!d?N(I,{title:u,tooltip:d}):u,onCell:function e(){var n;return{valign:((n=l.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},m,{render:function n(r,d,u){if(d["_isChildrenItem"]){if(o){return o(r,d,u)}return r}var m=[].concat(i(l.name),[d.name]);var s=e.dataIndex?[].concat(m,[e.dataIndex]):m;var f=t==null?void 0:t({name:s,tableRowIndex:d.name,operation:d.operation,tableRowName:m,index:u});if(f){return f}var c=typeof a==="function"?a({name:s,tableRowIndex:d.name,tableRowName:m}):a;return N(te,{name:e.dataIndex?[d.name,e.dataIndex]:[d.name],completeName:s,fieldConfig:c,tableRowIndex:d.name,hiddenField:e.hiddenField})}})}))}),[l.columns,l.name,(o=l.tableProps)==null?void 0:o.cellVerticalAlign]);var m=t.useWatch(l.name,d);return N("div",{className:"editable-table",children:N(t.List,{name:l.name,rules:l.rules,children:function r(a,i){return y(b,{children:[l.onTableBeforeRender?l.onTableBeforeRender(i,a.length):null,N(c,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},l.tableProps,{dataSource:a.map((function(e){var r;var a=m==null||(r=m[e.name])==null?void 0:r.children;if(a){a.forEach((function(e){e["_isChildrenItem"]=true}))}return n({},e,{operation:i,children:a})})),columns:u})),l.onTableAfterRender?l.onTableAfterRender(i,a.length):N(h,{type:"dashed",hidden:l.hiddenFooterBtn,onClick:function e(){return i.add(l.getAddRowDefaultValues==null?void 0:l.getAddRowDefaultValues())},block:true,icon:N(e,{}),style:{marginTop:15},children:"新增"})]})}})})};export{oe as EditableTable};
|
|
17
17
|
//# sourceMappingURL=index.js.map
|