@flatbiz/antd 4.2.32 → 4.2.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- export{D as DatePickerWrapper}from"../date-picker-wrapper-407942d1.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"antd";import"dayjs";import"react";import"../time-2782aa9b.js";import"react/jsx-runtime";
4
+ export{D as DatePickerWrapper}from"../date-picker-wrapper-ba650858.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"antd";import"dayjs";import"react";import"../time-53b3f55f.js";import"react/jsx-runtime";
5
5
  //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
1
  /*! @flatjs/forge MIT @flatbiz/antd */
2
- import{_ as e,a as r}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as a}from"@wove/react/cjs/hooks";import{flatbizDate as t}from"@flatbiz/utils";import{DatePicker as i}from"antd";import n from"dayjs";import{useMemo as o}from"react";import{D as s,g as u,a as f,b as d}from"./time-2782aa9b.js";import{jsx as l}from"react/jsx-runtime";var m=["value","onChange","style","format"];var b=function b(c){var v=c.value,D=c.onChange,p=c.style,M=c.format,g=e(c,m);var C=c.disabledDateConfig||{},h=C.minDate,Y=C.maxDate,L=C.disabledHourList,j=C.disabledMinuteList,w=C.disabledSecondList;var H=h?n(h):undefined;var T=Y?n(Y):undefined;var k=o((function(){if(M)return M;if(c.showTime)return s.YMDHms;return s.YMD}),[c.showTime,M]);var x=a.useCallbackRef((function(e,r){if(e){D==null?void 0:D(r)}else{D==null?void 0:D(undefined)}}));var y=a.useCallbackRef((function(e){var r=e.format(s.YMD);if(!c.disabledDateConfig){return false}if(H&&T){if(!t.in(r,H.format(s.YMD),T.format(s.YMD))){return true}}else if(H){if(!t.gte(r,H.format(s.YMD))){return true}}else if(T){if(!t.gte(T.format(s.YMD),r)){return true}}return false}));var R=o((function(){if(v){return n(t.dateNormalize(v))}return undefined}),[v]);var S=a.useCallbackRef((function(e){var r={minDateTime:H,maxDateTime:T,disabledHourList:L,disabledMinuteList:j,disabledSecondList:w};e=e||R||n(new Date);return{disabledHours:function a(){return u(e,r)},disabledMinutes:function a(){return f(e,r)},disabledSeconds:function a(){return d(e,r)}}}));return l(i,r({disabledDate:y,disabledTime:S},g,{format:k,style:r({width:"100%"},p),value:R,onChange:x}))};export{b as D};
3
- //# sourceMappingURL=date-picker-wrapper-407942d1.js.map
2
+ import{_ as e,a as r}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as a}from"@wove/react/cjs/hooks";import{flatbizDate as t}from"@flatbiz/utils";import{DatePicker as i}from"antd";import n from"dayjs";import{useMemo as o}from"react";import{D as s,g as u,a as f,b as d}from"./time-53b3f55f.js";import{jsx as l}from"react/jsx-runtime";var m=["value","onChange","style","format"];var b=function b(c){var v=c.value,D=c.onChange,p=c.style,M=c.format,g=e(c,m);var C=c.disabledDateConfig||{},h=C.minDate,Y=C.maxDate,L=C.disabledHourList,j=C.disabledMinuteList,w=C.disabledSecondList;var H=h?n(h):undefined;var T=Y?n(Y):undefined;var k=o((function(){if(M)return M;if(c.showTime)return s.YMDHms;return s.YMD}),[c.showTime,M]);var x=a.useCallbackRef((function(e,r){if(e){D==null?void 0:D(r)}else{D==null?void 0:D(undefined)}}));var y=a.useCallbackRef((function(e){var r=e.format(s.YMD);if(!c.disabledDateConfig){return false}if(H&&T){if(!t.in(r,H.format(s.YMD),T.format(s.YMD))){return true}}else if(H){if(!t.gte(r,H.format(s.YMD))){return true}}else if(T){if(!t.gte(T.format(s.YMD),r)){return true}}return false}));var R=o((function(){if(v){return n(t.dateNormalize(v))}return undefined}),[v]);var S=a.useCallbackRef((function(e){var r={minDateTime:H,maxDateTime:T,disabledHourList:L,disabledMinuteList:j,disabledSecondList:w};e=e||R||n(new Date);return{disabledHours:function a(){return u(e,r)},disabledMinutes:function a(){return f(e,r)},disabledSeconds:function a(){return d(e,r)}}}));return l(i,r({disabledDate:y,disabledTime:S},g,{format:k,style:r({width:"100%"},p),value:R,onChange:x}))};export{b as D};
3
+ //# sourceMappingURL=date-picker-wrapper-ba650858.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-picker-wrapper-407942d1.js","sources":["@flatbiz/antd/src/date-picker-wrapper/date-picker-wrapper.tsx"],"sourcesContent":["import { flatbizDate } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { DatePicker } from 'antd';\nimport type { PickerDateProps } from 'antd/es/date-picker/generatePicker';\nimport dayjs from 'dayjs';\nimport { useMemo } from 'react';\nimport { DayjsDateTypeEnum, TDayjsDateType } from '../_utils/constants';\nimport { getDisabledHour, getDisabledMinute, getDisabledSecond } from '../_utils/time';\n\nexport type DatePickerWrapperProps = Omit<PickerDateProps<dayjs.Dayjs>, 'value' | 'onChange' | 'format'> & {\n value?: string;\n onChange?: (value?: string) => void;\n disabledDateConfig?: {\n minDate?: TDayjsDateType;\n maxDate?: TDayjsDateType;\n /** 禁用 小时 刻度列表,与日期无关 */\n disabledHourList?: number[];\n /** 禁用 分钟 刻度列表,与日期无关 */\n disabledMinuteList?: number[];\n /** 禁用 秒钟 刻度列表,与日期无关 */\n disabledSecondList?: number[];\n };\n /** 可自定义格式 */\n format?: TDayjsDateType;\n};\n\n/**\n * DatePicker包装组件\n * ```\n * 1. value类型为 string\n * 2. onChange返回类型 string\n * 3. 默认格式化类型 YYYY-MM-DD; 当showTime===true时,默认格式化类型 DayjsDateTypeEnum.YMDHms;其他格式化类型自定义format\n * 4. 设置 disabledDate 后,disabledDateConfig配置将失效\n * 5. 设置 disabledTime 后,内置的disabledTime逻辑将失效\n * ```\n */\nexport const DatePickerWrapper = (props: DatePickerWrapperProps) => {\n const { value, onChange, style, format, ...otherProps } = props;\n const { minDate, maxDate, disabledHourList, disabledMinuteList, disabledSecondList } =\n props.disabledDateConfig || {};\n const minDateTimeDayInst = minDate ? dayjs(minDate) : undefined;\n const maxDateTimeDayInst = maxDate ? dayjs(maxDate) : undefined;\n const customFormat = useMemo(() => {\n if (format) return format as string;\n if (props.showTime) return DayjsDateTypeEnum.YMDHms;\n return DayjsDateTypeEnum.YMD;\n }, [props.showTime, format]);\n\n const onChangeDate = hooks.useCallbackRef((date, dateString: string) => {\n if (date) {\n onChange?.(dateString);\n } else {\n onChange?.(undefined);\n }\n });\n\n const getDisabledDate = hooks.useCallbackRef((current: dayjs.Dayjs) => {\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 return false;\n });\n\n const datePickerValue = useMemo(() => {\n if (value) {\n return dayjs(flatbizDate.dateNormalize(value));\n }\n return undefined;\n }, [value]);\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 || datePickerValue || dayjs(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\n disabledDate={getDisabledDate}\n disabledTime={getDisabledTime}\n {...otherProps}\n format={customFormat}\n style={{ width: '100%', ...style }}\n value={datePickerValue}\n onChange={onChangeDate}\n />\n );\n};\n"],"names":["DatePickerWrapper","props","value","onChange","style","format","otherProps","_objectWithoutPropertiesLoose","_excluded","_ref","disabledDateConfig","minDate","maxDate","disabledHourList","disabledMinuteList","disabledSecondList","minDateTimeDayInst","dayjs","undefined","maxDateTimeDayInst","customFormat","useMemo","showTime","DayjsDateTypeEnum","YMDHms","YMD","onChangeDate","_hooks","useCallbackRef","date","dateString","getDisabledDate","current","currentDate","flatbizDate","in","gte","datePickerValue","dateNormalize","getDisabledTime","options","minDateTime","maxDateTime","Date","disabledHours","getDisabledHour","disabledMinutes","getDisabledMinute","disabledSeconds","getDisabledSecond","_jsx","DatePicker","_extends","disabledDate","disabledTime","width"],"mappings":";yYAoCaA,EAAoB,SAApBA,EAAqBC,GAChC,IAAQC,EAAkDD,EAAlDC,MAAOC,EAA2CF,EAA3CE,SAAUC,EAAiCH,EAAjCG,MAAOC,EAA0BJ,EAA1BI,OAAWC,EAAUC,EAAKN,EAAKO,GAC/D,IAAAC,EACER,EAAMS,oBAAsB,CAAE,EADxBC,EAAOF,EAAPE,QAASC,EAAOH,EAAPG,QAASC,EAAgBJ,EAAhBI,iBAAkBC,EAAkBL,EAAlBK,mBAAoBC,EAAkBN,EAAlBM,mBAEhE,IAAMC,EAAqBL,EAAUM,EAAMN,GAAWO,UACtD,IAAMC,EAAqBP,EAAUK,EAAML,GAAWM,UACtD,IAAME,EAAeC,GAAQ,WAC3B,GAAIhB,EAAQ,OAAOA,EACnB,GAAIJ,EAAMqB,SAAU,OAAOC,EAAkBC,OAC7C,OAAOD,EAAkBE,GAC1B,GAAE,CAACxB,EAAMqB,SAAUjB,IAEpB,IAAMqB,EAAeC,EAAMC,gBAAe,SAACC,EAAMC,GAC/C,GAAID,EAAM,CACR1B,GAAAA,UAAAA,EAAAA,EAAW2B,EACb,KAAO,CACL3B,GAAAA,UAAAA,EAAAA,EAAWe,UACb,CACF,IAEA,IAAMa,EAAkBJ,EAAMC,gBAAe,SAACI,GAC5C,IAAMC,EAAcD,EAAQ3B,OAAOkB,EAAkBE,KACrD,IAAKxB,EAAMS,mBAAoB,CAC7B,OAAO,KACT,CACA,GAAIM,GAAsBG,EAAoB,CAC5C,IACGe,EAAYC,GACXF,EACAjB,EAAmBX,OAAOkB,EAAkBE,KAC5CN,EAAmBd,OAAOkB,EAAkBE,MAE9C,CACA,OAAO,IACT,CACD,MAAM,GAAIT,EAAoB,CAC7B,IAAKkB,EAAYE,IAAIH,EAAajB,EAAmBX,OAAOkB,EAAkBE,MAAO,CACnF,OAAO,IACT,CACD,MAAM,GAAIN,EAAoB,CAC7B,IAAKe,EAAYE,IAAIjB,EAAmBd,OAAOkB,EAAkBE,KAAMQ,GAAc,CACnF,OAAO,IACT,CACF,CACA,OAAO,KACT,IAEA,IAAMI,EAAkBhB,GAAQ,WAC9B,GAAInB,EAAO,CACT,OAAOe,EAAMiB,EAAYI,cAAcpC,GACzC,CACA,OAAOgB,SACT,GAAG,CAAChB,IAEJ,IAAMqC,EAAkBZ,EAAMC,gBAAe,SAACI,GAC5C,IAAMQ,EAAU,CACdC,YAAazB,EACb0B,YAAavB,EACbN,iBAAAA,EACAC,mBAAAA,EACAC,mBAAAA,GAEFiB,EAAUA,GAAWK,GAAmBpB,EAAM,IAAI0B,MAClD,MAAO,CACLC,cAAe,SAAAA,IACb,OAAOC,EAAgBb,EAASQ,EACjC,EACDM,gBAAiB,SAAAA,IACf,OAAOC,EAAkBf,EAASQ,EACnC,EACDQ,gBAAiB,SAAAA,IACf,OAAOC,EAAkBjB,EAASQ,EACpC,EAEJ,IAEA,OACEU,EAACC,EAAUC,EAAA,CACTC,aAActB,EACduB,aAAcf,GACVjC,EAAU,CACdD,OAAQe,EACRhB,MAAKgD,EAAA,CAAIG,MAAO,QAAWnD,GAC3BF,MAAOmC,EACPlC,SAAUuB,IAGhB"}
1
+ {"version":3,"file":"date-picker-wrapper-ba650858.js","sources":["@flatbiz/antd/src/date-picker-wrapper/date-picker-wrapper.tsx"],"sourcesContent":["import { flatbizDate } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { DatePicker } from 'antd';\nimport type { PickerDateProps } from 'antd/es/date-picker/generatePicker';\nimport dayjs from 'dayjs';\nimport { useMemo } from 'react';\nimport { DayjsDateTypeEnum, TDayjsDateType } from '../_utils/constants';\nimport { getDisabledHour, getDisabledMinute, getDisabledSecond } from '../_utils/time';\n\nexport type DatePickerWrapperProps = Omit<PickerDateProps<dayjs.Dayjs>, 'value' | 'onChange' | 'format'> & {\n value?: string;\n onChange?: (value?: string) => void;\n disabledDateConfig?: {\n minDate?: TDayjsDateType;\n maxDate?: TDayjsDateType;\n /** 禁用 小时 刻度列表,与日期无关 */\n disabledHourList?: number[];\n /** 禁用 分钟 刻度列表,与日期无关 */\n disabledMinuteList?: number[];\n /** 禁用 秒钟 刻度列表,与日期无关 */\n disabledSecondList?: number[];\n };\n /** 可自定义格式 */\n format?: TDayjsDateType;\n};\n\n/**\n * DatePicker包装组件\n * ```\n * 1. value类型为 string\n * 2. onChange返回类型 string\n * 3. 默认格式化类型 YYYY-MM-DD; 当showTime===true时,默认格式化类型 DayjsDateTypeEnum.YMDHms;其他格式化类型自定义format\n * 4. 设置 disabledDate 后,disabledDateConfig配置将失效\n * 5. 设置 disabledTime 后,内置的disabledTime逻辑将失效\n * ```\n */\nexport const DatePickerWrapper = (props: DatePickerWrapperProps) => {\n const { value, onChange, style, format, ...otherProps } = props;\n const { minDate, maxDate, disabledHourList, disabledMinuteList, disabledSecondList } =\n props.disabledDateConfig || {};\n const minDateTimeDayInst = minDate ? dayjs(minDate) : undefined;\n const maxDateTimeDayInst = maxDate ? dayjs(maxDate) : undefined;\n const customFormat = useMemo(() => {\n if (format) return format as string;\n if (props.showTime) return DayjsDateTypeEnum.YMDHms;\n return DayjsDateTypeEnum.YMD;\n }, [props.showTime, format]);\n\n const onChangeDate = hooks.useCallbackRef((date, dateString: string) => {\n if (date) {\n onChange?.(dateString);\n } else {\n onChange?.(undefined);\n }\n });\n\n const getDisabledDate = hooks.useCallbackRef((current: dayjs.Dayjs) => {\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 return false;\n });\n\n const datePickerValue = useMemo(() => {\n if (value) {\n return dayjs(flatbizDate.dateNormalize(value));\n }\n return undefined;\n }, [value]);\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 || datePickerValue || dayjs(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\n disabledDate={getDisabledDate}\n disabledTime={getDisabledTime}\n {...otherProps}\n format={customFormat}\n style={{ width: '100%', ...style }}\n value={datePickerValue}\n onChange={onChangeDate}\n />\n );\n};\n"],"names":["DatePickerWrapper","props","value","onChange","style","format","otherProps","_objectWithoutPropertiesLoose","_excluded","_ref","disabledDateConfig","minDate","maxDate","disabledHourList","disabledMinuteList","disabledSecondList","minDateTimeDayInst","dayjs","undefined","maxDateTimeDayInst","customFormat","useMemo","showTime","DayjsDateTypeEnum","YMDHms","YMD","onChangeDate","_hooks","useCallbackRef","date","dateString","getDisabledDate","current","currentDate","flatbizDate","in","gte","datePickerValue","dateNormalize","getDisabledTime","options","minDateTime","maxDateTime","Date","disabledHours","getDisabledHour","disabledMinutes","getDisabledMinute","disabledSeconds","getDisabledSecond","_jsx","DatePicker","_extends","disabledDate","disabledTime","width"],"mappings":";yYAoCaA,EAAoB,SAApBA,EAAqBC,GAChC,IAAQC,EAAkDD,EAAlDC,MAAOC,EAA2CF,EAA3CE,SAAUC,EAAiCH,EAAjCG,MAAOC,EAA0BJ,EAA1BI,OAAWC,EAAUC,EAAKN,EAAKO,GAC/D,IAAAC,EACER,EAAMS,oBAAsB,CAAE,EADxBC,EAAOF,EAAPE,QAASC,EAAOH,EAAPG,QAASC,EAAgBJ,EAAhBI,iBAAkBC,EAAkBL,EAAlBK,mBAAoBC,EAAkBN,EAAlBM,mBAEhE,IAAMC,EAAqBL,EAAUM,EAAMN,GAAWO,UACtD,IAAMC,EAAqBP,EAAUK,EAAML,GAAWM,UACtD,IAAME,EAAeC,GAAQ,WAC3B,GAAIhB,EAAQ,OAAOA,EACnB,GAAIJ,EAAMqB,SAAU,OAAOC,EAAkBC,OAC7C,OAAOD,EAAkBE,GAC1B,GAAE,CAACxB,EAAMqB,SAAUjB,IAEpB,IAAMqB,EAAeC,EAAMC,gBAAe,SAACC,EAAMC,GAC/C,GAAID,EAAM,CACR1B,GAAAA,UAAAA,EAAAA,EAAW2B,EACb,KAAO,CACL3B,GAAAA,UAAAA,EAAAA,EAAWe,UACb,CACF,IAEA,IAAMa,EAAkBJ,EAAMC,gBAAe,SAACI,GAC5C,IAAMC,EAAcD,EAAQ3B,OAAOkB,EAAkBE,KACrD,IAAKxB,EAAMS,mBAAoB,CAC7B,OAAO,KACT,CACA,GAAIM,GAAsBG,EAAoB,CAC5C,IACGe,EAAYC,GACXF,EACAjB,EAAmBX,OAAOkB,EAAkBE,KAC5CN,EAAmBd,OAAOkB,EAAkBE,MAE9C,CACA,OAAO,IACT,CACD,MAAM,GAAIT,EAAoB,CAC7B,IAAKkB,EAAYE,IAAIH,EAAajB,EAAmBX,OAAOkB,EAAkBE,MAAO,CACnF,OAAO,IACT,CACD,MAAM,GAAIN,EAAoB,CAC7B,IAAKe,EAAYE,IAAIjB,EAAmBd,OAAOkB,EAAkBE,KAAMQ,GAAc,CACnF,OAAO,IACT,CACF,CACA,OAAO,KACT,IAEA,IAAMI,EAAkBhB,GAAQ,WAC9B,GAAInB,EAAO,CACT,OAAOe,EAAMiB,EAAYI,cAAcpC,GACzC,CACA,OAAOgB,SACT,GAAG,CAAChB,IAEJ,IAAMqC,EAAkBZ,EAAMC,gBAAe,SAACI,GAC5C,IAAMQ,EAAU,CACdC,YAAazB,EACb0B,YAAavB,EACbN,iBAAAA,EACAC,mBAAAA,EACAC,mBAAAA,GAEFiB,EAAUA,GAAWK,GAAmBpB,EAAM,IAAI0B,MAClD,MAAO,CACLC,cAAe,SAAAA,IACb,OAAOC,EAAgBb,EAASQ,EACjC,EACDM,gBAAiB,SAAAA,IACf,OAAOC,EAAkBf,EAASQ,EACnC,EACDQ,gBAAiB,SAAAA,IACf,OAAOC,EAAkBjB,EAASQ,EACpC,EAEJ,IAEA,OACEU,EAACC,EAAUC,EAAA,CACTC,aAActB,EACduB,aAAcf,GACVjC,EAAU,CACdD,OAAQe,EACRhB,MAAKgD,EAAA,CAAIG,MAAO,QAAWnD,GAC3BF,MAAOmC,EACPlC,SAAUuB,IAGhB"}
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- export{D as DateRangePickerWrapper}from"../date-range-picker-wrapper-d22d0f60.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"antd";import"dayjs";import"react";import"../time-2782aa9b.js";import"react/jsx-runtime";
4
+ export{D as DateRangePickerWrapper}from"../date-range-picker-wrapper-fb15c592.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"antd";import"dayjs";import"react";import"../time-53b3f55f.js";import"react/jsx-runtime";
5
5
  //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
1
  /*! @flatjs/forge MIT @flatbiz/antd */
2
- import{_ as e,a}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as r}from"@wove/react/cjs/hooks";import{flatbizDate as n}from"@flatbiz/utils";import{DatePicker as i}from"antd";import t from"dayjs";import{useState as l,useMemo as u}from"react";import{D as o,g as f,a as s,b as d}from"./time-2782aa9b.js";import{jsx as m}from"react/jsx-runtime";var v=["value","onChange","style","format","onOpenChange"];var c=function c(b){var D=b.value,g=b.onChange,p=b.style,C=b.format,h=b.onOpenChange,M=e(b,v);var y=b.disabledDateConfig||{},Y=y.maxDays,L=y.minDate,j=y.maxDate,k=y.disabledHourList,w=y.disabledMinuteList,x=y.disabledSecondList;var H=L?t(L):undefined;var T=j?t(j):undefined;var R=l(null),z=R[0],O=R[1];var S=l(null),N=S[0],P=S[1];var _=D||[],B=_[0],q=_[1];var A=u((function(){if(B&&q){var e=n.dateNormalize(B);var a=n.dateNormalize(q);return[t(e),t(a)]}return undefined}),[B,q]);var E=u((function(){if(C)return C;if(b.showTime===true)return o.YMDHms;return o.YMD}),[b.showTime,C]);var F=r.useCallbackRef((function(e,a){if(e&&e[0]&&e[1]){g==null?void 0:g(a)}else{g==null?void 0:g(undefined)}}));var G=r.useCallbackRef((function(e){var a=e.format(o.YMD);if(!b.disabledDateConfig){return false}if(H&&T){if(!n.in(a,H.format(o.YMD),T.format(o.YMD))){return true}}else if(H){if(!n.gte(a,H.format(o.YMD))){return true}}else if(T){if(!n.gte(T.format(o.YMD),a)){return true}}if(!Y||!(z!=null&&z[0])&&!(z!=null&&z[1])){return false}var r=(z==null?void 0:z[0])&&e.diff(z[0],"days")>Y-1;var i=(z==null?void 0:z[1])&&z[1].diff(e,"days")>Y-1;return!!i||!!r}));var I=function e(a){if(Y&&Y>0){if(a){P([null,null]);O([null,null])}else{P(null)}}h==null?void 0:h(a)};var J=r.useCallbackRef((function(e){var a={minDateTime:H,maxDateTime:T,disabledHourList:k,disabledMinuteList:w,disabledSecondList:x};e=e||t(B||new Date);return{disabledHours:function r(){return f(e,a)},disabledMinutes:function r(){return s(e,a)},disabledSeconds:function r(){return d(e,a)}}}));return m(i.RangePicker,a({disabledDate:G,disabledTime:J},M,{format:E,style:a({width:"100%"},p),value:N||A,onChange:F,onOpenChange:I,onCalendarChange:function e(a){return O(a)}}))};export{c as D};
3
- //# sourceMappingURL=date-range-picker-wrapper-d22d0f60.js.map
2
+ import{_ as e,a}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as r}from"@wove/react/cjs/hooks";import{flatbizDate as n}from"@flatbiz/utils";import{DatePicker as i}from"antd";import t from"dayjs";import{useState as l,useMemo as u}from"react";import{D as o,g as f,a as s,b as d}from"./time-53b3f55f.js";import{jsx as m}from"react/jsx-runtime";var v=["value","onChange","style","format","onOpenChange"];var c=function c(b){var D=b.value,g=b.onChange,p=b.style,C=b.format,h=b.onOpenChange,M=e(b,v);var y=b.disabledDateConfig||{},Y=y.maxDays,L=y.minDate,j=y.maxDate,k=y.disabledHourList,w=y.disabledMinuteList,x=y.disabledSecondList;var H=L?t(L):undefined;var T=j?t(j):undefined;var R=l(null),z=R[0],O=R[1];var S=l(null),N=S[0],P=S[1];var _=D||[],B=_[0],q=_[1];var A=u((function(){if(B&&q){var e=n.dateNormalize(B);var a=n.dateNormalize(q);return[t(e),t(a)]}return undefined}),[B,q]);var E=u((function(){if(C)return C;if(b.showTime===true)return o.YMDHms;return o.YMD}),[b.showTime,C]);var F=r.useCallbackRef((function(e,a){if(e&&e[0]&&e[1]){g==null?void 0:g(a)}else{g==null?void 0:g(undefined)}}));var G=r.useCallbackRef((function(e){var a=e.format(o.YMD);if(!b.disabledDateConfig){return false}if(H&&T){if(!n.in(a,H.format(o.YMD),T.format(o.YMD))){return true}}else if(H){if(!n.gte(a,H.format(o.YMD))){return true}}else if(T){if(!n.gte(T.format(o.YMD),a)){return true}}if(!Y||!(z!=null&&z[0])&&!(z!=null&&z[1])){return false}var r=(z==null?void 0:z[0])&&e.diff(z[0],"days")>Y-1;var i=(z==null?void 0:z[1])&&z[1].diff(e,"days")>Y-1;return!!i||!!r}));var I=function e(a){if(Y&&Y>0){if(a){P([null,null]);O([null,null])}else{P(null)}}h==null?void 0:h(a)};var J=r.useCallbackRef((function(e){var a={minDateTime:H,maxDateTime:T,disabledHourList:k,disabledMinuteList:w,disabledSecondList:x};e=e||t(B||new Date);return{disabledHours:function r(){return f(e,a)},disabledMinutes:function r(){return s(e,a)},disabledSeconds:function r(){return d(e,a)}}}));return m(i.RangePicker,a({disabledDate:G,disabledTime:J},M,{format:E,style:a({width:"100%"},p),value:N||A,onChange:F,onOpenChange:I,onCalendarChange:function e(a){return O(a)}}))};export{c as D};
3
+ //# sourceMappingURL=date-range-picker-wrapper-fb15c592.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-range-picker-wrapper-d22d0f60.js","sources":["@flatbiz/antd/src/date-range-picker-wrapper/date-range-picker-wrapper.tsx"],"sourcesContent":["import { flatbizDate } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { DatePicker } from 'antd';\nimport { RangePickerDateProps } from 'antd/lib/date-picker/generatePicker';\nimport type { Dayjs } from 'dayjs';\nimport 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<Dayjs>,\n 'value' | 'onChange' | 'onCalendarChange' | 'disabledDate' | '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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"}
1
+ {"version":3,"file":"date-range-picker-wrapper-fb15c592.js","sources":["@flatbiz/antd/src/date-range-picker-wrapper/date-range-picker-wrapper.tsx"],"sourcesContent":["import { flatbizDate } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { DatePicker } from 'antd';\nimport { RangePickerDateProps } from 'antd/lib/date-picker/generatePicker';\nimport type { Dayjs } from 'dayjs';\nimport 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<Dayjs>,\n 'value' | 'onChange' | 'onCalendarChange' | 'disabledDate' | '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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"}
@@ -4,5 +4,5 @@ import './../fba-hooks/index.css';
4
4
  import './../types/index.css';
5
5
  import './index.css';
6
6
  /*! @flatjs/forge MIT @flatbiz/antd */
7
- import{_ as e,a as n}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as r}from"@wove/react/cjs/hooks";import{isArray as a}from"@dimjs/lang/cjs/is-array";import{Form as o,Input as t}from"antd";import{useMemo as i,useRef as l,forwardRef as u,useImperativeHandle as s}from"react";import{D as m}from"../date-range-picker-wrapper-d22d0f60.js";import{fbaHooks as v}from"../fba-hooks/index.js";import{jsxs as c,Fragment as d,jsx as f}from"react/jsx-runtime";import"@flatbiz/utils";import"dayjs";import"../time-2782aa9b.js";import"../use-responsive-point-21b8c601.js";var p=["startName","endName","formListName","dateRangePickerWrapperProps"];var h=function t(u){var s=u.startName,h=u.endName,C=u.formListName,_=u.dateRangePickerWrapperProps,j=e(u,p);var P=o.useFormInstance();var k=i((function(){if(a(s)&&a(h)){return s.slice(0,s.length-1).concat("__#invalid_date_"+s[s.length-1]+"_"+h[h.length-1])}return"__#invalid_date_"+s+"_"+h}),[s,h]);var N=i((function(){return C?[].concat(C,s):s}),[s,C]);var b=i((function(){return C?[].concat(C,h):h}),[h,C]);var F=o.useWatch(N,P);var I=o.useWatch(b,P);var W=v.usePrevious(F);var x=v.usePrevious(I);v.useEffectCustom((function(){var e=C?[].concat(C,k):k;if(F&&I){P.setFields([{name:e,value:[F,I]}])}if(W&&x&&!F&&!I){P.setFields([{name:e,value:undefined}])}}),[F,I]);var R=l(null);var w=l(null);var y=r.useCallbackRef((function(e){var n,r;P.setFields([{name:N,value:e==null?void 0:e[0]},{name:b,value:e==null?void 0:e[1]}]);(n=R.current)==null?void 0:n.onChange==null?void 0:n.onChange(e==null?void 0:e[0]);(r=w.current)==null?void 0:r.onChange==null?void 0:r.onChange(e==null?void 0:e[1]);_==null?void 0:_.onChange==null?void 0:_.onChange(e)}));return c(d,{children:[f(o.Item,{name:s,hidden:true,children:f(g,{ref:R})}),f(o.Item,{name:h,hidden:true,children:f(g,{ref:w})}),f(o.Item,n({},j,{name:k,children:f(m,n({},_,{onChange:y}))}))]})};var g=u((function(e,n){s(n,(function(){return{onChange:function n(r){e.onChange==null?void 0:e.onChange(r)}}}));return f(t,{value:e.value})}));export{h as DateRangePickerWrapperFormItem};
7
+ import{_ as e,a as n}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as r}from"@wove/react/cjs/hooks";import{isArray as a}from"@dimjs/lang/cjs/is-array";import{Form as o,Input as t}from"antd";import{useMemo as i,useRef as l,forwardRef as u,useImperativeHandle as s}from"react";import{D as m}from"../date-range-picker-wrapper-fb15c592.js";import{fbaHooks as v}from"../fba-hooks/index.js";import{jsxs as c,Fragment as d,jsx as f}from"react/jsx-runtime";import"@flatbiz/utils";import"dayjs";import"../time-53b3f55f.js";import"../use-responsive-point-21b8c601.js";var p=["startName","endName","formListName","dateRangePickerWrapperProps"];var h=function t(u){var s=u.startName,h=u.endName,C=u.formListName,_=u.dateRangePickerWrapperProps,j=e(u,p);var P=o.useFormInstance();var k=i((function(){if(a(s)&&a(h)){return s.slice(0,s.length-1).concat("__#invalid_date_"+s[s.length-1]+"_"+h[h.length-1])}return"__#invalid_date_"+s+"_"+h}),[s,h]);var N=i((function(){return C?[].concat(C,s):s}),[s,C]);var b=i((function(){return C?[].concat(C,h):h}),[h,C]);var F=o.useWatch(N,P);var I=o.useWatch(b,P);var W=v.usePrevious(F);var x=v.usePrevious(I);v.useEffectCustom((function(){var e=C?[].concat(C,k):k;if(F&&I){P.setFields([{name:e,value:[F,I]}])}if(W&&x&&!F&&!I){P.setFields([{name:e,value:undefined}])}}),[F,I]);var R=l(null);var w=l(null);var y=r.useCallbackRef((function(e){var n,r;P.setFields([{name:N,value:e==null?void 0:e[0]},{name:b,value:e==null?void 0:e[1]}]);(n=R.current)==null?void 0:n.onChange==null?void 0:n.onChange(e==null?void 0:e[0]);(r=w.current)==null?void 0:r.onChange==null?void 0:r.onChange(e==null?void 0:e[1]);_==null?void 0:_.onChange==null?void 0:_.onChange(e)}));return c(d,{children:[f(o.Item,{name:s,hidden:true,children:f(g,{ref:R})}),f(o.Item,{name:h,hidden:true,children:f(g,{ref:w})}),f(o.Item,n({},j,{name:k,children:f(m,n({},_,{onChange:y}))}))]})};var g=u((function(e,n){s(n,(function(){return{onChange:function n(r){e.onChange==null?void 0:e.onChange(r)}}}));return f(t,{value:e.value})}));export{h as DateRangePickerWrapperFormItem};
8
8
  //# sourceMappingURL=index.js.map
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
3
3
  import './../icon-wrapper/index.css';
4
4
  import './index.css';
5
5
  /*! @flatjs/forge MIT @flatbiz/antd */
6
- import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{a as i}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{isArray as o}from"@dimjs/lang/cjs/is-array";import{isNumber as t}from"@dimjs/lang/cjs/is-number";import{isString as l}from"@dimjs/lang/cjs/is-string";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as c}from"@flatbiz/utils";import{Space as s}from"antd";import{useState as u,useContext as f,useRef as m,useEffect as d,isValidElement as v}from"react";import{E as p}from"../context-25d0b686.js";import{fbaHooks as h}from"../fba-hooks/index.js";import{I as C}from"../icon-wrapper-ed5fcacc.js";import{jsx as b,jsxs as g}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var j=function j(k){var I=k.value,y=k.onChange,w=k.viewRender,E=k.placeholderValue,P=E===void 0?"-":E,x=k.editRender,z=k.isEditFull,R=k.onClickEditIconPre,O=k.onClickConfirmIconPre,N=k.iconConfig,T=k.onEditCallback,B=k.onConfirmCallback;var F=u(false),H=F[0],V=F[1];var _=f(p);var q=m(I);var A=function(){if(_.isCtx){return k.showEditableIcon===undefined?_.showEditableIcon:k.showEditableIcon}return k.showEditableIcon===undefined?true:k.showEditableIcon}();var D=function(){if(_.isCtx){return k.editable===undefined?_.editable:k.editable}return k.editable||false}();var G=h.useThemeToken();d((function(){V(D)}),[D]);var J=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(I)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q.current=I;V(true);T==null?void 0:T(I);return n()}return e.call(this)}))};var K=N!=null&&N.editIcon?N.editIcon({onClick:J}):b(C,{size:"small",icon:b(a,{}),onClick:J});if(!H){var L=(w?w(k.value):k.value)||P;if(l(L)||t(L)||c(L)||v(L)){if(!A){return L}return g(s,{size:8,children:[b("span",{children:L}),K]})}console.warn("对象作为React子对象无效",L)}var M=function n(){if(I!==q.current){k.onChange==null?void 0:k.onChange(q.current)}V(false)};var Q=function n(r){var e=r;if(typeof r==="object"&&!o(r)&&r.target){var i;e=(i=r.target)==null?void 0:i.value}y==null?void 0:y(e)};var S=function n(){return new Promise((function(n,r){if(O){return Promise.resolve(O(I,q.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){V(false);B==null?void 0:B(I,q.current);return n()}return e.call(this)}))};var U=v(x)?x:x({value:I,onChange:Q});if(!A){return b(U.type,i({value:I,onChange:Q},U.props))}var W=N!=null&&N.confirmIcon?N.confirmIcon({onClick:S}):b(C,{size:"small",icon:b(e,{style:{color:G.colorPrimary}}),onClick:S});var X=N!=null&&N.cancelIcon?N.cancelIcon({onClick:M}):b(C,{size:"small",icon:b(r,{style:{color:G.colorPrimary}}),onClick:M});return g(s,{direction:"horizontal",size:12,style:{display:"flex",paddingRight:6},className:n({"editable-field-full":z},k.className),children:[b(U.type,i({value:I,onChange:Q},U.props)),W,X]})};export{j as EditableField};
6
+ import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{a as i}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{isArray as o}from"@dimjs/lang/cjs/is-array";import{isNumber as t}from"@dimjs/lang/cjs/is-number";import{isString as l}from"@dimjs/lang/cjs/is-string";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as c}from"@flatbiz/utils";import{Space as s}from"antd";import{useState as u,useContext as f,useRef as m,useEffect as d,isValidElement as v}from"react";import{E as p}from"../context-25d0b686.js";import{fbaHooks as h}from"../fba-hooks/index.js";import{I as C}from"../icon-wrapper-ed5fcacc.js";import{jsx as b,jsxs as g}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var j=function j(k){var I=k.value,y=k.onChange,w=k.viewRender,E=k.placeholderValue,P=E===void 0?"-":E,x=k.editRender,z=k.isEditFull,R=k.onClickEditIconPre,O=k.onClickConfirmIconPre,N=k.iconConfig,T=k.onEditCallback,B=k.onConfirmCallback;var F=u(false),H=F[0],V=F[1];var _=f(p);var q=m(I);var A=function(){if(_.isCtx){return k.showEditableIcon===undefined?_.showEditableIcon:k.showEditableIcon}return k.showEditableIcon===undefined?true:k.showEditableIcon}();var D=function(){if(_.isCtx){return k.editable===undefined?_.editable:k.editable}return k.editable||false}();var G=h.useThemeToken();d((function(){V(D)}),[D]);var J=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(I)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q.current=I;V(true);T==null?void 0:T(I);return n()}return e.call(this)}))};var K=N!=null&&N.editIcon?N.editIcon({onClick:J}):b(C,{size:"small",icon:b(a,{}),onClick:J});if(!H){var L=(w?w(k.value):k.value)||P;if(l(L)||t(L)||c(L)||v(L)){if(!A){return L}return g(s,{size:8,children:[b("span",{children:L}),K]})}console.warn("对象作为React子对象无效",L)}var M=function n(){if(I!==q.current){k.onChange==null?void 0:k.onChange(q.current)}V(false)};var Q=function n(r){var e=r;if(typeof r==="object"&&!o(r)&&r.target){var i;e=(i=r.target)==null?void 0:i.value}y==null?void 0:y(e)};var S=function n(){return new Promise((function(n,r){if(O){return Promise.resolve(O(I,q.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){V(false);B==null?void 0:B(I,q.current);return n()}return e.call(this)}))};var U=typeof x==="function"?x({value:I,onChange:Q}):x;if(!A){return b(U.type,i({value:I,onChange:Q},U.props))}var W=N!=null&&N.confirmIcon?N.confirmIcon({onClick:S}):b(C,{size:"small",icon:b(e,{style:{color:G.colorPrimary}}),onClick:S});var X=N!=null&&N.cancelIcon?N.cancelIcon({onClick:M}):b(C,{size:"small",icon:b(r,{style:{color:G.colorPrimary}}),onClick:M});return g(s,{direction:"horizontal",size:12,style:{display:"flex",paddingRight:6},className:n({"editable-field-full":z},k.className),children:[b(U.type,i({value:I,onChange:Q},U.props)),W,X]})};export{j as EditableField};
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-field/editable-field.tsx"],"sourcesContent":["import { CheckOutlined, CloseOutlined, EditOutlined } from '@ant-design/icons';\nimport { isArray, isNumber, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Space } from 'antd';\nimport { isValidElement, ReactElement, ReactNode, useContext, useEffect, useRef, useState } from 'react';\nimport { EditableFieldContext } from '../editable-field-provider/context';\nimport { fbaHooks } from '../fba-hooks';\nimport { IconWrapper } from '../icon-wrapper';\n\nimport './style.less';\n\nexport interface EditableFieldProps {\n className?: string;\n editRender: ReactElement | ((data: { value?: TAny; onChange?: (data?: TAny) => void }) => ReactElement);\n viewRender?: (value?: TAny) => ReactNode;\n value?: TAny;\n onChange?: (data?: TAny) => void;\n placeholderValue?: string;\n /** edit 区域是否铺满,showEditableIcon=false 无效 */\n isEditFull?: boolean;\n /** 是否可编辑 */\n editable?: boolean;\n /** 是否显示编辑、确认、取消操作icon,默认值:true */\n showEditableIcon?: boolean;\n /** 点击编辑按钮,操作前,返回reject不会开启编辑效果 */\n onClickEditIconPre?: (value?: TAny) => Promise<void>;\n onEditCallback?: (value?: TAny) => void;\n /** 点击确定按钮,操作前,返回reject不会执行确定功能 */\n onClickConfirmIconPre?: (value?: TAny, preValue?: TAny) => Promise<void>;\n onConfirmCallback?: (value?: TAny, preValue?: TAny) => void;\n /** 组件操作Icon配置 */\n iconConfig?: {\n editIcon?: (options: { onClick: () => void }) => ReactElement;\n confirmIcon?: (options: { onClick: () => void }) => ReactElement;\n cancelIcon?: (options: { onClick: () => void }) => ReactElement;\n };\n}\n\n/**\n * 可编辑字段组件\n * @param props\n * @returns\n * ```\n * 字段渲染有两种状态\n * 1. 只读:如果value类型为复杂格式,必须要通过【viewRender】来进行处理操作,转成简单数据类型\n * 2. 编辑:参数value的格式要求必须满足编辑组件入参value要求\n * 3. 可自定义编辑Icon、确定Icon、取消Icon\n * 4. 可拦截编辑操作、确定操作\n * ```\n */\nexport const EditableField = (props: EditableFieldProps) => {\n const {\n value,\n onChange,\n viewRender,\n placeholderValue = '-',\n editRender,\n isEditFull,\n onClickEditIconPre,\n onClickConfirmIconPre,\n iconConfig,\n onEditCallback,\n onConfirmCallback,\n } = props;\n const [isEdit, setIsEdit] = useState<boolean>(false);\n const ctx = useContext(EditableFieldContext);\n const originalValue = useRef<TAny>(value);\n\n const showEditableIcon = (function () {\n if (ctx.isCtx) {\n return props.showEditableIcon === undefined ? ctx.showEditableIcon : props.showEditableIcon;\n }\n return props.showEditableIcon === undefined ? true : props.showEditableIcon;\n })();\n\n const editable = (function () {\n if (ctx.isCtx) {\n return props.editable === undefined ? ctx.editable : props.editable;\n }\n return props.editable || false;\n })();\n\n const theme = fbaHooks.useThemeToken();\n\n useEffect(() => {\n setIsEdit(editable);\n }, [editable]);\n\n const onClickEditIcon = async () => {\n if (onClickEditIconPre) {\n await onClickEditIconPre(value);\n }\n originalValue.current = value;\n setIsEdit(true);\n onEditCallback?.(value);\n };\n\n const editIcon = iconConfig?.editIcon ? (\n iconConfig.editIcon({ onClick: onClickEditIcon })\n ) : (\n <IconWrapper size=\"small\" icon={<EditOutlined />} onClick={onClickEditIcon} />\n );\n\n if (!isEdit) {\n const viewValue = (viewRender ? viewRender(props.value) : props.value) || placeholderValue;\n if (\n isString(viewValue) ||\n isNumber(viewValue) ||\n isUndefinedOrNull(viewValue) ||\n isValidElement(viewValue)\n ) {\n if (!showEditableIcon) {\n return viewValue;\n }\n return (\n <Space size={8}>\n <span>{viewValue}</span>\n {editIcon}\n </Space>\n );\n }\n console.warn('对象作为React子对象无效', viewValue);\n }\n\n const onCancel = () => {\n if (value !== originalValue.current) {\n props.onChange?.(originalValue.current);\n }\n setIsEdit(false);\n };\n\n const onEditChange = (value) => {\n let target = value;\n /** 为了处理 Input、TextArea等onChange取值 */\n if (typeof value === 'object' && !isArray(value) && value.target) {\n target = value.target?.value;\n }\n onChange?.(target);\n };\n\n const onOk = async () => {\n if (onClickConfirmIconPre) {\n await onClickConfirmIconPre(value, originalValue.current);\n }\n setIsEdit(false);\n onConfirmCallback?.(value, originalValue.current);\n };\n\n const editRenderElement = isValidElement(editRender)\n ? editRender\n : editRender({ value: value, onChange: onEditChange });\n\n if (!showEditableIcon) {\n return <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />;\n }\n\n const confirmIcon = iconConfig?.confirmIcon ? (\n iconConfig.confirmIcon({ onClick: onOk })\n ) : (\n <IconWrapper size=\"small\" icon={<CheckOutlined style={{ color: theme.colorPrimary }} />} onClick={onOk} />\n );\n\n const cancelIcon = iconConfig?.cancelIcon ? (\n iconConfig.cancelIcon({ onClick: onCancel })\n ) : (\n <IconWrapper\n size=\"small\"\n icon={<CloseOutlined style={{ color: theme.colorPrimary }} />}\n onClick={onCancel}\n />\n );\n\n return (\n <Space\n direction=\"horizontal\"\n size={12}\n style={{ display: 'flex', paddingRight: 6 }}\n className={classNames({ 'editable-field-full': isEditFull }, props.className)}\n >\n <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />\n {confirmIcon}\n {cancelIcon}\n </Space>\n );\n};\n"],"names":["EditableField","props","value","onChange","viewRender","_props$placeholderVal","placeholderValue","editRender","isEditFull","onClickEditIconPre","onClickConfirmIconPre","iconConfig","onEditCallback","onConfirmCallback","_useState","useState","isEdit","setIsEdit","ctx","useContext","EditableFieldContext","originalValue","useRef","showEditableIcon","isCtx","undefined","editable","theme","fbaHooks","useThemeToken","useEffect","onClickEditIcon","Promise","$return","$error","resolve","then","$await_3","$If_1","call","this","$boundEx","bind","current","editIcon","onClick","_jsx","IconWrapper","size","icon","_EditOutlined","viewValue","_isString","_isNumber","isUndefinedOrNull","isValidElement","_jsxs","Space","children","console","warn","onCancel","onEditChange","target","_isArray","_value$target","onOk","$await_4","$If_2","editRenderElement","type","_extends","confirmIcon","_CheckOutlined","style","color","colorPrimary","cancelIcon","_CloseOutlined","direction","display","paddingRight","className","_classNames"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-field/editable-field.tsx"],"sourcesContent":["import { CheckOutlined, CloseOutlined, EditOutlined } from '@ant-design/icons';\nimport { isArray, isNumber, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Space } from 'antd';\nimport { isValidElement, ReactElement, ReactNode, useContext, useEffect, useRef, useState } from 'react';\nimport { EditableFieldContext } from '../editable-field-provider/context';\nimport { fbaHooks } from '../fba-hooks';\nimport { IconWrapper } from '../icon-wrapper';\n\nimport './style.less';\n\nexport interface EditableFieldProps {\n className?: string;\n editRender: ReactElement | ((data: { value?: TAny; onChange?: (data?: TAny) => void }) => ReactElement);\n viewRender?: (value?: TAny) => ReactNode;\n value?: TAny;\n onChange?: (data?: TAny) => void;\n placeholderValue?: string;\n /** edit 区域是否铺满,showEditableIcon=false 无效 */\n isEditFull?: boolean;\n /** 是否可编辑 */\n editable?: boolean;\n /** 是否显示编辑、确认、取消操作icon,默认值:true */\n showEditableIcon?: boolean;\n /** 点击编辑按钮,操作前,返回reject不会开启编辑效果 */\n onClickEditIconPre?: (value?: TAny) => Promise<void>;\n onEditCallback?: (value?: TAny) => void;\n /** 点击确定按钮,操作前,返回reject不会执行确定功能 */\n onClickConfirmIconPre?: (value?: TAny, preValue?: TAny) => Promise<void>;\n onConfirmCallback?: (value?: TAny, preValue?: TAny) => void;\n /** 组件操作Icon配置 */\n iconConfig?: {\n editIcon?: (options: { onClick: () => void }) => ReactElement;\n confirmIcon?: (options: { onClick: () => void }) => ReactElement;\n cancelIcon?: (options: { onClick: () => void }) => ReactElement;\n };\n}\n\n/**\n * 可编辑字段组件\n * @param props\n * @returns\n * ```\n * 字段渲染有两种状态\n * 1. 只读:如果value类型为复杂格式,必须要通过【viewRender】来进行处理操作,转成简单数据类型\n * 2. 编辑:参数value的格式要求必须满足编辑组件入参value要求\n * 3. 可自定义编辑Icon、确定Icon、取消Icon\n * 4. 可拦截编辑操作、确定操作\n * ```\n */\nexport const EditableField = (props: EditableFieldProps) => {\n const {\n value,\n onChange,\n viewRender,\n placeholderValue = '-',\n editRender,\n isEditFull,\n onClickEditIconPre,\n onClickConfirmIconPre,\n iconConfig,\n onEditCallback,\n onConfirmCallback,\n } = props;\n const [isEdit, setIsEdit] = useState<boolean>(false);\n const ctx = useContext(EditableFieldContext);\n const originalValue = useRef<TAny>(value);\n\n const showEditableIcon = (function () {\n if (ctx.isCtx) {\n return props.showEditableIcon === undefined ? ctx.showEditableIcon : props.showEditableIcon;\n }\n return props.showEditableIcon === undefined ? true : props.showEditableIcon;\n })();\n\n const editable = (function () {\n if (ctx.isCtx) {\n return props.editable === undefined ? ctx.editable : props.editable;\n }\n return props.editable || false;\n })();\n\n const theme = fbaHooks.useThemeToken();\n\n useEffect(() => {\n setIsEdit(editable);\n }, [editable]);\n\n const onClickEditIcon = async () => {\n if (onClickEditIconPre) {\n await onClickEditIconPre(value);\n }\n originalValue.current = value;\n setIsEdit(true);\n onEditCallback?.(value);\n };\n\n const editIcon = iconConfig?.editIcon ? (\n iconConfig.editIcon({ onClick: onClickEditIcon })\n ) : (\n <IconWrapper size=\"small\" icon={<EditOutlined />} onClick={onClickEditIcon} />\n );\n\n if (!isEdit) {\n const viewValue = (viewRender ? viewRender(props.value) : props.value) || placeholderValue;\n if (\n isString(viewValue) ||\n isNumber(viewValue) ||\n isUndefinedOrNull(viewValue) ||\n isValidElement(viewValue)\n ) {\n if (!showEditableIcon) {\n return viewValue;\n }\n return (\n <Space size={8}>\n <span>{viewValue}</span>\n {editIcon}\n </Space>\n );\n }\n console.warn('对象作为React子对象无效', viewValue);\n }\n\n const onCancel = () => {\n if (value !== originalValue.current) {\n props.onChange?.(originalValue.current);\n }\n setIsEdit(false);\n };\n\n const onEditChange = (value) => {\n let target = value;\n /** 为了处理 Input、TextArea等onChange取值 */\n if (typeof value === 'object' && !isArray(value) && value.target) {\n target = value.target?.value;\n }\n onChange?.(target);\n };\n\n const onOk = async () => {\n if (onClickConfirmIconPre) {\n await onClickConfirmIconPre(value, originalValue.current);\n }\n setIsEdit(false);\n onConfirmCallback?.(value, originalValue.current);\n };\n\n const editRenderElement =\n typeof editRender === 'function' ? editRender({ value: value, onChange: onEditChange }) : editRender;\n\n if (!showEditableIcon) {\n return <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />;\n }\n\n const confirmIcon = iconConfig?.confirmIcon ? (\n iconConfig.confirmIcon({ onClick: onOk })\n ) : (\n <IconWrapper size=\"small\" icon={<CheckOutlined style={{ color: theme.colorPrimary }} />} onClick={onOk} />\n );\n\n const cancelIcon = iconConfig?.cancelIcon ? (\n iconConfig.cancelIcon({ onClick: onCancel })\n ) : (\n <IconWrapper\n size=\"small\"\n icon={<CloseOutlined style={{ color: theme.colorPrimary }} />}\n onClick={onCancel}\n />\n );\n\n return (\n <Space\n direction=\"horizontal\"\n size={12}\n style={{ display: 'flex', paddingRight: 6 }}\n className={classNames({ 'editable-field-full': isEditFull }, props.className)}\n >\n <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />\n {confirmIcon}\n {cancelIcon}\n </Space>\n );\n};\n"],"names":["EditableField","props","value","onChange","viewRender","_props$placeholderVal","placeholderValue","editRender","isEditFull","onClickEditIconPre","onClickConfirmIconPre","iconConfig","onEditCallback","onConfirmCallback","_useState","useState","isEdit","setIsEdit","ctx","useContext","EditableFieldContext","originalValue","useRef","showEditableIcon","isCtx","undefined","editable","theme","fbaHooks","useThemeToken","useEffect","onClickEditIcon","Promise","$return","$error","resolve","then","$await_3","$If_1","call","this","$boundEx","bind","current","editIcon","onClick","_jsx","IconWrapper","size","icon","_EditOutlined","viewValue","_isString","_isNumber","isUndefinedOrNull","isValidElement","_jsxs","Space","children","console","warn","onCancel","onEditChange","target","_isArray","_value$target","onOk","$await_4","$If_2","editRenderElement","type","_extends","confirmIcon","_CheckOutlined","style","color","colorPrimary","cancelIcon","_CloseOutlined","direction","display","paddingRight","className","_classNames"],"mappings":"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"}
@@ -9,5 +9,5 @@ import './../input-wrapper/index.css';
9
9
  import './../input-text-area-wrapper/index.css';
10
10
  import './index.css';
11
11
  /*! @flatjs/forge MIT @flatbiz/antd */
12
- import e from"@ant-design/icons/es/icons/PlusOutlined";import{a as n,_ as r}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{Form as a,Checkbox as i,Tag as l,InputNumber as t,Radio as o,Space as d,Button as u,Input as m,Table as f}from"antd";import{useMemo as s,useState as c,useEffect as v,Fragment as p}from"react";import{isArray as g}from"@dimjs/lang/cjs/is-array";import{extend as b}from"@dimjs/utils/cjs/extend";import{classNames as C}from"@dimjs/utils/cjs/class-names";import{hooks as h}from"@wove/react/cjs/hooks";import{jsx as I,jsxs as w,Fragment as x}from"react/jsx-runtime";import{D as R}from"../date-picker-wrapper-407942d1.js";import{D as N}from"../date-range-picker-wrapper-d22d0f60.js";import{I as j}from"../input-wrapper-b378eb5a.js";import{fbaHooks as P}from"../fba-hooks/index.js";import{arrayField2LabelValue as y}from"@flatbiz/utils";import{S as k}from"../selector-wrapper-6560eb49.js";import{isBoolean as L}from"@dimjs/lang/cjs/is-boolean";import{isNumber as F}from"@dimjs/lang/cjs/is-number";import{isString as T}from"@dimjs/lang/cjs/is-string";import{I as A}from"../input-text-area-wrapper-c958fba0.js";import{U as O}from"../upload-wrapper-f20208d6.js";import S from"@ant-design/icons/es/icons/DeleteOutlined";import"dayjs";import"../time-2782aa9b.js";import"../use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../request-status-03fc60e2.js";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 V=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var B=function e(r){var a=r.fieldConfig,t=a.editableConfig,o=a.editable,d=a.render;var u=t.editableComptProps;var m=s((function(){if(o)return[];var e=g(r.value)?r.value:[];var n=u.options||[];if(!g(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}),[o,u.options,r.value]);var f=h.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e)}));if(o){return I(i.Group,n({},u,{value:r.value,onChange:f}))}return I("span",{className:"editable-checkbox-group-view",children:d?d(r.value):m.map((function(e,n){return I(l,{color:"#1890ff",children:e.label},n)}))})};var G=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-checkbox-group-form-item",i==null?void 0:i.className),children:I(B,n({},r))}))};var W=function e(r){var i=r.fieldConfig,l=i.formItemProps,t=i.editableConfig;return I(a.Item,n({},l,{name:r.name,className:C("editable-date-picker-wraper-form-item",l==null?void 0:l.className),children:I(R,n({allowClear:true},t.editableComptProps))}))};var D=function e(r){var a=r.fieldConfig,i=a.editableConfig,l=a.editable,t=a.render;var o=i.editableComptProps;var d=h.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null?void 0:o.onChange==null?void 0:o.onChange(e)}));var u=s((function(){var e=g(r.value)?r.value:[];if(l)return undefined;return e.join("~")}),[l,r.value]);if(l){return I(N,n({allowClear:true},o,{value:r.value,onChange:d}))}return I("span",{className:"editable-date-range-picker-view",children:t?t(r.value):u})};var _=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-date-range-picker-wraper-form-item",i==null?void 0:i.className),children:I(D,n({},r))}))};var E=function e(r){var i=r.fieldConfig,l=i.formItemProps,t=i.editableConfig;return I(a.Item,n({},l,{name:r.name,children:I(j,n({allowClear:true},t.editableComptProps))}))};var M=function e(r){var i=r.fieldConfig,l=i.formItemProps,o=i.editableConfig;return I(a.Item,n({},l,{name:r.name,className:C("editable-input-number-form-item",l==null?void 0:l.className),children:I(t,n({},o.editableComptProps))}))};var q=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,d=a.render;var u=i.editableComptProps;var m=P.useThemeToken();var f=s((function(){if(t)return[];var e=r.value;var n=u.options||[];if(!g(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,u.options,r.value]);var c=h.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);u.onChange==null?void 0:u.onChange(e)}));if(t){return I(o.Group,n({},u,{value:r.value,onChange:c}))}return I("span",{className:"editable-radio-group-view",children:d?d(r.value):f?I(l,{color:m.colorPrimary,children:f}):null})};var z=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-radio-group-form-item",i==null?void 0:i.className),children:I(q,n({},r))}))};var H=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,o=a.render;var d=i.editableComptProps;var u=c([]),m=u[0],f=u[1];var s=c([]),b=s[0],C=s[1];var x=P.useThemeToken();v((function(){if(!t){var e=g(r.value)?r.value:r.value===undefined?[]:[r.value];if(m.length===0){C(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:String(e),value:e})}));C(n)}}),[t,d.fieldNames,r.value,m]);var R=h.useCallbackRef((function(e){f(y(e||[],d.fieldNames))}));var N=h.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e,n)}));if(t){return I(k,n({},d,{value:r.value,onChange:N,onSelectorListAllChange:R}))}return w(p,{children:[I("div",{style:{display:"none"},children:I(k,n({},d,{onSelectorListAllChange:R}))}),I("span",{className:"editable-selector-view",children:o?o(r.value,m):b.map((function(e,n){return I(l,{color:x.colorPrimary,children:e.label},n)}))})]})};var J=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-selector-wrapper-form-item",i==null?void 0:i.className),children:I(H,n({},r))}))};var K=function e(n){var r,a;var i=s((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=T(n.value)||F(n.value)||L(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 l=((a=n.fieldConfig)==null?void 0:a.render==null?void 0:a.render(n.value))||i;return I("span",{children:l})};var U=function e(n){return I(a.Item,{noStyle:true,name:n.name,children:I(K,{name:n.name,fieldConfig:n.fieldConfig})})};var Q=function e(r){var i=r.fieldConfig,l=i.formItemProps,t=i.editableConfig;return I(a.Item,n({},l,{name:r.name,children:I(A,n({},t.editableComptProps))}))};var X=["children"];var Y=function e(a){var i=a.fieldConfig,l=i.editableConfig,t=i.render,o=i.editable;var d=l.editableComptProps,u=d.children,m=r(d,X);if(o){return I(O,n({listType:"text"},m,{value:a.value,onChange:a.onChange,children:u}))}return I("div",{className:"upload-wrapper-selector-view",children:t?t(a.value):I(O,n({listType:"text"},m,{value:a.value,disabled:true}))})};var Z=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-upload-wrapper-form-item",i==null?void 0:i.className),children:I(Y,n({},r))}))};var $=function e(r){var a=r.fieldConfig,i=a.editableConfig,l=a.editable;var t=V(l,r.tableRowIndex);var o=b({},r.fieldConfig,{editable:t});var d={name:r.name,fieldConfig:o};if((i==null?void 0:i.type)==="input"&&t){return I(E,n({},d))}else if((i==null?void 0:i.type)==="inputNumber"&&t){return I(M,n({},d))}else if((i==null?void 0:i.type)==="textArea"&&t){return I(Q,n({},d))}else if((i==null?void 0:i.type)==="datePickerWrapper"&&t){return I(W,n({},d))}else if((i==null?void 0:i.type)==="dateRangePickerWrapper"){return I(_,n({},d))}else if((i==null?void 0:i.type)==="selectorWrapper"){return I(J,n({},d))}else if((i==null?void 0:i.type)==="checkboxGroup"){return I(G,n({},d))}else if((i==null?void 0:i.type)==="radioGroup"){return I(z,n({},d))}else if((i==null?void 0:i.type)==="uploadWrapper"){return I(Z,n({},d))}else if((i==null?void 0:i.type)==="custom"){return i.editableComptProps({name:r.name,editable:t,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return I(U,n({},d))};var ee=function e(n){var r=a.useFormInstance();var i=n.formListConfig,l=i.onFormListBeforeRender,t=i.editableConfigList,o=i.onFormListAfterRender,u=i.onFormListItemBeforeRender,m=i.onFormListItemAfterRender,f=i.deleteOperateRender;return I(a.List,{name:n.name,children:function e(a,i){var s=i.add,c=i.remove;return w(x,{children:[l?l({tableRowIndex:n.tableRowIndex,add:s,get value(){return r.getFieldValue(n.completeName)}}):null,a.map((function(e,a){var i=t.find((function(e){return V(e.editable,n.tableRowIndex)}));var l=C("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!i});return w("div",{className:l,children:[u==null?void 0:u({add:s,remove:function e(){c(a)},formListItemIndex:a,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),w(d,{children:[t.map((function(r,a){return I($,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},a)})),i?I(ne,{deleteOperateRender:f,remove:function e(){c(a)},index:a}):undefined]}),m==null?void 0:m({add:s,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:s,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ne=function e(n){return I(a.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):I(u,{type:"link",danger:true,icon:I(S,{}),onClick:n.remove,children:"删除"})})};var re=function e(n){if(n.fieldConfig){if(g(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return I(ee,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return w(p,{children:[I($,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?I(a.Item,{hidden:true,name:n.hiddenField.dataIndex,children:I(m,{})}):null]})}}return I(U,{name:n.name})};var ae=["fieldConfig","renderMiddleware"];var ie=function i(l){var t;var o=s((function(){if(!l.columns)return[];return l.columns.map((function(e){var a=e.fieldConfig,i=e.renderMiddleware,t=r(e,ae);return n({onCell:function e(){var n;return{valign:((n=l.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},t,{render:function n(r,t,o){var d=[l.name,t.name];var u=e.dataIndex?[].concat(d,[e.dataIndex]):d;var m=i==null?void 0:i({name:u,tableRowIndex:t.name,operation:t.operation,tableRowName:d,index:o});if(m){return m}var f=typeof a==="function"?a({name:u,tableRowIndex:t.name,tableRowName:d}):a;return I(re,{name:e.dataIndex?[t.name,e.dataIndex]:[t.name],completeName:u,fieldConfig:f,tableRowIndex:t.name,hiddenField:e.hiddenField})}})}))}),[l.columns,l.name,(t=l.tableProps)==null?void 0:t.cellVerticalAlign]);return I("div",{className:"editable-table",children:I(a.List,{name:l.name,rules:l.rules,children:function r(a,i){return w(p,{children:[l.onTableBeforeRender?l.onTableBeforeRender(i,a.length):null,I(f,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},l.tableProps,{dataSource:a.map((function(e){return n({},e,{operation:i})})),columns:o})),l.onTableAfterRender?l.onTableAfterRender(i,a.length):I(u,{type:"dashed",onClick:function e(){return i.add()},block:true,icon:I(e,{}),style:{marginTop:15},children:"新增"})]})}})})};export{ie as EditableTable};
12
+ import e from"@ant-design/icons/es/icons/PlusOutlined";import{a as n,_ as r}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{Form as a,Checkbox as i,Tag as l,InputNumber as t,Radio as o,Space as d,Button as u,Input as m,Table as f}from"antd";import{useMemo as s,useState as c,useEffect as v,Fragment as p}from"react";import{isArray as g}from"@dimjs/lang/cjs/is-array";import{extend as b}from"@dimjs/utils/cjs/extend";import{classNames as C}from"@dimjs/utils/cjs/class-names";import{hooks as h}from"@wove/react/cjs/hooks";import{jsx as I,jsxs as w,Fragment as x}from"react/jsx-runtime";import{D as R}from"../date-picker-wrapper-ba650858.js";import{D as N}from"../date-range-picker-wrapper-fb15c592.js";import{I as j}from"../input-wrapper-b378eb5a.js";import{fbaHooks as P}from"../fba-hooks/index.js";import{arrayField2LabelValue as y}from"@flatbiz/utils";import{S as k}from"../selector-wrapper-6560eb49.js";import{isBoolean as L}from"@dimjs/lang/cjs/is-boolean";import{isNumber as F}from"@dimjs/lang/cjs/is-number";import{isString as T}from"@dimjs/lang/cjs/is-string";import{I as A}from"../input-text-area-wrapper-c958fba0.js";import{U as O}from"../upload-wrapper-f20208d6.js";import S from"@ant-design/icons/es/icons/DeleteOutlined";import"dayjs";import"../time-53b3f55f.js";import"../use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../request-status-03fc60e2.js";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 V=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var B=function e(r){var a=r.fieldConfig,t=a.editableConfig,o=a.editable,d=a.render;var u=t.editableComptProps;var m=s((function(){if(o)return[];var e=g(r.value)?r.value:[];var n=u.options||[];if(!g(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}),[o,u.options,r.value]);var f=h.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e)}));if(o){return I(i.Group,n({},u,{value:r.value,onChange:f}))}return I("span",{className:"editable-checkbox-group-view",children:d?d(r.value):m.map((function(e,n){return I(l,{color:"#1890ff",children:e.label},n)}))})};var G=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-checkbox-group-form-item",i==null?void 0:i.className),children:I(B,n({},r))}))};var W=function e(r){var i=r.fieldConfig,l=i.formItemProps,t=i.editableConfig;return I(a.Item,n({},l,{name:r.name,className:C("editable-date-picker-wraper-form-item",l==null?void 0:l.className),children:I(R,n({allowClear:true},t.editableComptProps))}))};var D=function e(r){var a=r.fieldConfig,i=a.editableConfig,l=a.editable,t=a.render;var o=i.editableComptProps;var d=h.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null?void 0:o.onChange==null?void 0:o.onChange(e)}));var u=s((function(){var e=g(r.value)?r.value:[];if(l)return undefined;return e.join("~")}),[l,r.value]);if(l){return I(N,n({allowClear:true},o,{value:r.value,onChange:d}))}return I("span",{className:"editable-date-range-picker-view",children:t?t(r.value):u})};var _=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-date-range-picker-wraper-form-item",i==null?void 0:i.className),children:I(D,n({},r))}))};var E=function e(r){var i=r.fieldConfig,l=i.formItemProps,t=i.editableConfig;return I(a.Item,n({},l,{name:r.name,children:I(j,n({allowClear:true},t.editableComptProps))}))};var M=function e(r){var i=r.fieldConfig,l=i.formItemProps,o=i.editableConfig;return I(a.Item,n({},l,{name:r.name,className:C("editable-input-number-form-item",l==null?void 0:l.className),children:I(t,n({},o.editableComptProps))}))};var q=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,d=a.render;var u=i.editableComptProps;var m=P.useThemeToken();var f=s((function(){if(t)return[];var e=r.value;var n=u.options||[];if(!g(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,u.options,r.value]);var c=h.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);u.onChange==null?void 0:u.onChange(e)}));if(t){return I(o.Group,n({},u,{value:r.value,onChange:c}))}return I("span",{className:"editable-radio-group-view",children:d?d(r.value):f?I(l,{color:m.colorPrimary,children:f}):null})};var z=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-radio-group-form-item",i==null?void 0:i.className),children:I(q,n({},r))}))};var H=function e(r){var a=r.fieldConfig,i=a.editableConfig,t=a.editable,o=a.render;var d=i.editableComptProps;var u=c([]),m=u[0],f=u[1];var s=c([]),b=s[0],C=s[1];var x=P.useThemeToken();v((function(){if(!t){var e=g(r.value)?r.value:r.value===undefined?[]:[r.value];if(m.length===0){C(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:String(e),value:e})}));C(n)}}),[t,d.fieldNames,r.value,m]);var R=h.useCallbackRef((function(e){f(y(e||[],d.fieldNames))}));var N=h.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e,n)}));if(t){return I(k,n({},d,{value:r.value,onChange:N,onSelectorListAllChange:R}))}return w(p,{children:[I("div",{style:{display:"none"},children:I(k,n({},d,{onSelectorListAllChange:R}))}),I("span",{className:"editable-selector-view",children:o?o(r.value,m):b.map((function(e,n){return I(l,{color:x.colorPrimary,children:e.label},n)}))})]})};var J=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-selector-wrapper-form-item",i==null?void 0:i.className),children:I(H,n({},r))}))};var K=function e(n){var r,a;var i=s((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=T(n.value)||F(n.value)||L(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 l=((a=n.fieldConfig)==null?void 0:a.render==null?void 0:a.render(n.value))||i;return I("span",{children:l})};var U=function e(n){return I(a.Item,{noStyle:true,name:n.name,children:I(K,{name:n.name,fieldConfig:n.fieldConfig})})};var Q=function e(r){var i=r.fieldConfig,l=i.formItemProps,t=i.editableConfig;return I(a.Item,n({},l,{name:r.name,children:I(A,n({},t.editableComptProps))}))};var X=["children"];var Y=function e(a){var i=a.fieldConfig,l=i.editableConfig,t=i.render,o=i.editable;var d=l.editableComptProps,u=d.children,m=r(d,X);if(o){return I(O,n({listType:"text"},m,{value:a.value,onChange:a.onChange,children:u}))}return I("div",{className:"upload-wrapper-selector-view",children:t?t(a.value):I(O,n({listType:"text"},m,{value:a.value,disabled:true}))})};var Z=function e(r){var i=r.fieldConfig.formItemProps;return I(a.Item,n({},i,{name:r.name,className:C("editable-upload-wrapper-form-item",i==null?void 0:i.className),children:I(Y,n({},r))}))};var $=function e(r){var a=r.fieldConfig,i=a.editableConfig,l=a.editable;var t=V(l,r.tableRowIndex);var o=b({},r.fieldConfig,{editable:t});var d={name:r.name,fieldConfig:o};if((i==null?void 0:i.type)==="input"&&t){return I(E,n({},d))}else if((i==null?void 0:i.type)==="inputNumber"&&t){return I(M,n({},d))}else if((i==null?void 0:i.type)==="textArea"&&t){return I(Q,n({},d))}else if((i==null?void 0:i.type)==="datePickerWrapper"&&t){return I(W,n({},d))}else if((i==null?void 0:i.type)==="dateRangePickerWrapper"){return I(_,n({},d))}else if((i==null?void 0:i.type)==="selectorWrapper"){return I(J,n({},d))}else if((i==null?void 0:i.type)==="checkboxGroup"){return I(G,n({},d))}else if((i==null?void 0:i.type)==="radioGroup"){return I(z,n({},d))}else if((i==null?void 0:i.type)==="uploadWrapper"){return I(Z,n({},d))}else if((i==null?void 0:i.type)==="custom"){return i.editableComptProps({name:r.name,editable:t,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return I(U,n({},d))};var ee=function e(n){var r=a.useFormInstance();var i=n.formListConfig,l=i.onFormListBeforeRender,t=i.editableConfigList,o=i.onFormListAfterRender,u=i.onFormListItemBeforeRender,m=i.onFormListItemAfterRender,f=i.deleteOperateRender;return I(a.List,{name:n.name,children:function e(a,i){var s=i.add,c=i.remove;return w(x,{children:[l?l({tableRowIndex:n.tableRowIndex,add:s,get value(){return r.getFieldValue(n.completeName)}}):null,a.map((function(e,a){var i=t.find((function(e){return V(e.editable,n.tableRowIndex)}));var l=C("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!i});return w("div",{className:l,children:[u==null?void 0:u({add:s,remove:function e(){c(a)},formListItemIndex:a,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),w(d,{children:[t.map((function(r,a){return I($,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},a)})),i?I(ne,{deleteOperateRender:f,remove:function e(){c(a)},index:a}):undefined]}),m==null?void 0:m({add:s,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:s,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ne=function e(n){return I(a.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):I(u,{type:"link",danger:true,icon:I(S,{}),onClick:n.remove,children:"删除"})})};var re=function e(n){if(n.fieldConfig){if(g(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return I(ee,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return w(p,{children:[I($,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?I(a.Item,{hidden:true,name:n.hiddenField.dataIndex,children:I(m,{})}):null]})}}return I(U,{name:n.name})};var ae=["fieldConfig","renderMiddleware"];var ie=function i(l){var t;var o=s((function(){if(!l.columns)return[];return l.columns.map((function(e){var a=e.fieldConfig,i=e.renderMiddleware,t=r(e,ae);return n({onCell:function e(){var n;return{valign:((n=l.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},t,{render:function n(r,t,o){var d=[l.name,t.name];var u=e.dataIndex?[].concat(d,[e.dataIndex]):d;var m=i==null?void 0:i({name:u,tableRowIndex:t.name,operation:t.operation,tableRowName:d,index:o});if(m){return m}var f=typeof a==="function"?a({name:u,tableRowIndex:t.name,tableRowName:d}):a;return I(re,{name:e.dataIndex?[t.name,e.dataIndex]:[t.name],completeName:u,fieldConfig:f,tableRowIndex:t.name,hiddenField:e.hiddenField})}})}))}),[l.columns,l.name,(t=l.tableProps)==null?void 0:t.cellVerticalAlign]);return I("div",{className:"editable-table",children:I(a.List,{name:l.name,rules:l.rules,children:function r(a,i){return w(p,{children:[l.onTableBeforeRender?l.onTableBeforeRender(i,a.length):null,I(f,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},l.tableProps,{dataSource:a.map((function(e){return n({},e,{operation:i})})),columns:o})),l.onTableAfterRender?l.onTableAfterRender(i,a.length):I(u,{type:"dashed",onClick:function e(){return i.add()},block:true,icon:I(e,{}),style:{marginTop:15},children:"新增"})]})}})})};export{ie as EditableTable};
13
13
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- import{classNames as l}from"@dimjs/utils/cjs/class-names";import{Descriptions as e}from"antd";import{jsx as r}from"react/jsx-runtime";var a=function a(t){var o={"--v-label-value-layout-lWidth":(t.labelWidth||120)+"px"};var m=l("v-label-value-layout");return r(e,{column:t.column||1,bordered:t.bordered,size:"small",className:m,style:o,children:t.options.map((function(l,a){return r(e.Item,{label:l.label,children:l.value},a)}))})};export{a as LabelValueLayout};
4
+ import{classNames as r}from"@dimjs/utils/cjs/class-names";import{Descriptions as e}from"antd";import{useMemo as l}from"react";import{jsx as a}from"react/jsx-runtime";var t=function t(n){var o={"--v-label-value-layout-lWidth":(n.labelWidth||120)+"px"};var i=r("v-label-value-layout",n.className);var m=l((function(){return n.options.filter((function(r){return!r.hidden}))}),[n.options]);return a(e,{column:n.column||1,bordered:n.bordered,size:"small",className:i,style:o,children:m.map((function(r,l){return a(e.Item,{label:r.label,span:r.span,children:r.value},l)}))})};export{t as LabelValueLayout};
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/label-value-layout/label-value-layout.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { Descriptions } from 'antd';\nimport { CSSProperties, ReactElement } from 'react';\nimport './style.less';\n\nexport type LabelValueLayoutProps = {\n options: { label: string | ReactElement; value?: string | number | ReactElement }[];\n labelWidth?: number;\n // 一行占几组,默认1\n column?: number;\n bordered?: boolean;\n};\n\nexport const LabelValueLayout = (props: LabelValueLayoutProps) => {\n const style = { '--v-label-value-layout-lWidth': `${props.labelWidth || 120}px` } as CSSProperties;\n const className = classNames('v-label-value-layout');\n return (\n <Descriptions\n column={props.column || 1}\n bordered={props.bordered}\n size=\"small\"\n className={className}\n style={style}\n >\n {props.options.map((item, index) => {\n return (\n <Descriptions.Item key={index} label={item.label}>\n {item.value}\n </Descriptions.Item>\n );\n })}\n </Descriptions>\n );\n};\n"],"names":["LabelValueLayout","props","style","labelWidth","className","_classNames","_jsx","Descriptions","column","bordered","size","children","options","map","item","index","Item","label","value"],"mappings":";0IAaaA,EAAmB,SAAnBA,EAAoBC,GAC/B,IAAMC,EAAQ,CAAE,iCAAoCD,EAAME,YAAc,KAAG,MAC3E,IAAMC,EAAYC,EAAW,wBAC7B,OACEC,EAACC,EAAY,CACXC,OAAQP,EAAMO,QAAU,EACxBC,SAAUR,EAAMQ,SAChBC,KAAK,QACLN,UAAWA,EACXF,MAAOA,EAAMS,SAEZV,EAAMW,QAAQC,KAAI,SAACC,EAAMC,GACxB,OACET,EAACC,EAAaS,KAAI,CAAaC,MAAOH,EAAKG,MAAMN,SAC9CG,EAAKI,OADgBH,OAOlC"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/label-value-layout/label-value-layout.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { Descriptions } from 'antd';\nimport { CSSProperties, ReactElement, useMemo } from 'react';\nimport './style.less';\n\nexport type LabelValueLayoutProps = {\n options: {\n label: string | ReactElement;\n value?: string | number | ReactElement;\n span?: number;\n hidden?: boolean;\n }[];\n labelWidth?: number;\n // 一行占几组,默认1\n column?: number;\n bordered?: boolean;\n className?: string;\n};\n\n/**\n * options[].span 是 Description.Item 的数量。 span={2} 会占用两个 DescriptionItem 的宽度\n * options[].hidden 是否隐藏 Description.Item\n */\nexport const LabelValueLayout = (props: LabelValueLayoutProps) => {\n const style = { '--v-label-value-layout-lWidth': `${props.labelWidth || 120}px` } as CSSProperties;\n const className = classNames('v-label-value-layout', props.className);\n\n const options = useMemo(() => {\n return props.options.filter((item) => !item.hidden);\n }, [props.options]);\n return (\n <Descriptions\n column={props.column || 1}\n bordered={props.bordered}\n size=\"small\"\n className={className}\n style={style}\n >\n {options.map((item, index) => {\n return (\n <Descriptions.Item key={index} label={item.label} span={item.span}>\n {item.value}\n </Descriptions.Item>\n );\n })}\n </Descriptions>\n );\n};\n"],"names":["LabelValueLayout","props","style","labelWidth","className","_classNames","options","useMemo","filter","item","hidden","_jsx","Descriptions","column","bordered","size","children","map","index","Item","label","span","value"],"mappings":";0KAuBaA,EAAmB,SAAnBA,EAAoBC,GAC/B,IAAMC,EAAQ,CAAE,iCAAoCD,EAAME,YAAc,KAAG,MAC3E,IAAMC,EAAYC,EAAW,uBAAwBJ,EAAMG,WAE3D,IAAME,EAAUC,GAAQ,WACtB,OAAON,EAAMK,QAAQE,QAAO,SAACC,GAAI,OAAMA,EAAKC,SAC9C,GAAG,CAACT,EAAMK,UACV,OACEK,EAACC,EAAY,CACXC,OAAQZ,EAAMY,QAAU,EACxBC,SAAUb,EAAMa,SAChBC,KAAK,QACLX,UAAWA,EACXF,MAAOA,EAAMc,SAEZV,EAAQW,KAAI,SAACR,EAAMS,GAClB,OACEP,EAACC,EAAaO,KAAI,CAAaC,MAAOX,EAAKW,MAAOC,KAAMZ,EAAKY,KAAKL,SAC/DP,EAAKa,OADgBJ,OAOlC"}
@@ -1 +1 @@
1
- .local-loading-error{position:relative}.local-loading-error .ant-result-icon{margin-bottom:15px!important}.local-loading-error .ant-result-icon .anticon{font-size:40px!important}.local-loading-error .ant-result-title{font-size:16px!important}.local-loading-error .ant-result-extra{margin-top:15px!important}.local-loading-error .ant-result-error{left:50%;padding:24px 16px!important;position:absolute;top:50%;transform:translate(-50%,-50%)}.local-loading-area{left:50%;position:absolute;top:50%;z-index:9}.fba-local-loading{overflow:hidden;position:relative}.local-loading-content{height:100%;overflow-y:auto}
1
+ .local-loading-error{align-items:center;display:flex;height:100%;justify-content:center;position:relative}.local-loading-error .ant-result-icon{margin-bottom:10px!important}.local-loading-error .ant-result-icon .anticon{font-size:30px!important}.local-loading-error .ant-result-title{font-size:16px!important}.local-loading-error .ant-result-extra{margin-top:10px!important}.local-loading-error .ant-result-error{padding:24px 16px!important}.local-loading-area{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:9}.fba-local-loading{overflow:hidden;position:relative}.local-loading-content{height:100%;overflow-y:auto}
@@ -1,7 +1,8 @@
1
1
  /* eslint-disable */
2
+ import './../fba-utils/index.css';
2
3
  import './../dynamic-node/index.css';
3
4
  import './../fba-hooks/index.css';
4
5
  import './index.css';
5
6
  /*! @flatjs/forge MIT @flatbiz/antd */
6
- import{classNames as r}from"@dimjs/utils/cjs/class-names";import{isDeepEqual as n}from"@dimjs/lang/cjs/is-deep-equal";import{a as e}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{toArray as t}from"@flatbiz/utils";import{Result as i,Button as a,Spin as o}from"antd";import{forwardRef as c,useState as s,useRef as u,useMemo as l,useImperativeHandle as f}from"react";import{d as m}from"../dynamic-node-c7864af4.js";import{fbaHooks as d}from"../fba-hooks/index.js";import{jsx as v,jsxs as h}from"react/jsx-runtime";import"react-dom/client";import"../dom-4d04aa64.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var p=c((function(c,p){var y=c.serviceConfig,g=c.isAsync,j=c.children,b=c.errorRender;var P=s("init"),C=P[0],N=P[1];var x=s(),k=x[0],R=x[1];var q=c.loadingHeight===undefined?100:c.loadingHeight;var w=u(null);var E=u();var H=u();var A=d.usePrevious(y.params);var K=l((function(){var r;if(!y.params||t(y.invalidParamKey).length===0){return y.params}var n=e({},y.params);(r=y.invalidParamKey)==null?void 0:r.forEach((function(r){n[r]=undefined}));return n}),[y]);var T=function r(){H.current=undefined;E.current=m.append({content:v(o,{spinning:true}),getContainer:function r(){return w.current}}).elementId};var z=function r(){m.remove(E.current)};var B=function r(){return new Promise((function(r,n){var e=function(r){return function(e){try{z();return r&&r.call(this,e)}catch(r){return n(r)}}.bind(this)}.bind(this);var t;var i=function(){try{return r()}catch(r){return n(r)}};var a=function(r){try{N("error");H.current=r.message;return e(i)()}catch(r){return e(n)(r)}};try{T();return Promise.resolve(y.onRequest(K)).then((function(r){try{t=r;N("success");R(t);return e(i)()}catch(r){return a(r)}}),a)}catch(r){a(r)}}))};d.useEffectCustomAsync(B,[]);d.useEffectCustom((function(){if(A){if(!n(y.params,A)){void I()}}}),[A,y.params]);var I=function r(){return new Promise((function(r,n){var e=function(r){return function(e){try{z();return r&&r.call(this,e)}catch(r){return n(r)}}.bind(this)}.bind(this);var t;var i=function(){try{return r()}catch(r){return n(r)}};var a=function(r){try{N("error");return e(i)()}catch(r){return e(n)(r)}};try{T();return Promise.resolve(y.onRequest(K)).then((function(r){try{t=r;R(t);N("success");return e(i)()}catch(r){return a(r)}}),a)}catch(r){a()}}))};f(p,(function(){return{onRefresh:I}}));if(C==="error"){if(b){return b(k)}return v("div",{className:"local-loading-error",style:{height:q},children:v(i,{status:"error",subTitle:H.current||"数据处理异常",extra:[v(a,{type:"primary",ghost:true,onClick:function r(){N("init");setTimeout((function(){void B()}),100)},children:"重新获取"},"console")]})})}if(C!=="success"&&!g){return v("div",{className:"fba-local-loading-process",style:{height:q,display:"flex",justifyContent:"center",position:"relative",backgroundColor:"#fff"},children:v("div",{className:"local-loading-area",ref:w})})}return h("div",{className:r("fba-local-loading",c.className),style:c.style,children:[v("div",{className:"local-loading-area",ref:w}),v("div",{className:"local-loading-content",children:j(k)})]})}));export{p as LocalLoading};
7
+ import{f as r}from"../fba-utils-1e895394.js";import{createCtx as e}from"@wove/react/cjs/create-ctx";import{classNames as n}from"@dimjs/utils/cjs/class-names";import{isDeepEqual as t}from"@dimjs/lang/cjs/is-deep-equal";import{a}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{toArray as i}from"@flatbiz/utils";import{Result as o,Button as s,Spin as c}from"antd";import{forwardRef as u,useState as l,useRef as m,useMemo as f,useImperativeHandle as d}from"react";import{d as v}from"../dynamic-node-c7864af4.js";import{fbaHooks as p}from"../fba-hooks/index.js";import{jsx as h,jsxs as g}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"react-dom/client";import"../dom-4d04aa64.js";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var y=e(),j=y[0],b=y[1];var C=u((function(r,e){var u=r.serviceConfig,y=r.isAsync,j=r.children,C=r.errorRender;var N=l("init"),P=N[0],R=N[1];var q=l(),x=q[0],k=q[1];var w=r.loadingHeight===undefined?100:r.loadingHeight;var E=m(null);var H=m();var T=m();var z=p.usePrevious(u.params);var A=f((function(){var r;if(!u.params||i(u.invalidParamKey).length===0){return u.params}var e=a({},u.params);(r=u.invalidParamKey)==null?void 0:r.forEach((function(r){e[r]=undefined}));return e}),[u]);var K=function r(){T.current=undefined;H.current=v.append({content:h(c,{spinning:true}),getContainer:function r(){return E.current}}).elementId};var L=function r(){v.remove(H.current)};var B=function r(e){return new Promise((function(r,n){var t=function(r){return function(e){try{L();return r&&r.call(this,e)}catch(r){return n(r)}}.bind(this)}.bind(this);var i;var o=function(){try{return r()}catch(r){return n(r)}};var s=function(r){try{console.error(r);R("error");T.current=r.message;return t(o)()}catch(r){return t(n)(r)}};try{K();return Promise.resolve(u.onRequest(a({},A,e))).then((function(r){try{i=r;R("success");k(i);return t(o)()}catch(r){return s(r)}}),s)}catch(r){s(r)}}))};p.useEffectCustomAsync(B,[]);p.useEffectCustom((function(){if(z){if(!t(u.params,z)){void B()}}}),[z,u.params]);d(e,(function(){return{onRefresh:B}}));if(P==="error"){if(C){return C(x)}return h(b,{value:{onRequest:B},children:g("div",{className:"local-loading-error",children:[h("div",{className:"local-loading-area",ref:E}),h(o,{status:"error",subTitle:T.current||"数据处理异常",extra:[h(s,{type:"primary",ghost:true,size:"small",onClick:function r(){R("init");setTimeout((function(){void B()}),100)},children:"重新获取"},"console")]})]})})}if(P!=="success"&&!y){return h("div",{className:"fba-local-loading-process",style:{height:w,display:"flex",justifyContent:"center",position:"relative",backgroundColor:"#fff"},children:h("div",{className:"local-loading-area",ref:E})})}return h(b,{value:{onRequest:B},children:g("div",{className:n("fba-local-loading",r.className),style:r.style,children:[h("div",{className:"local-loading-area",ref:E}),h("div",{className:"local-loading-content",children:j(x)})]})})}));var N=r.attachPropertiesToComponent(C,{useLocalLoading:function r(){var e=j();return{onRequest:function r(n){e.onRequest(n)}}}});export{N as LocalLoading};
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/local-loading/local-loading.tsx"],"sourcesContent":["import { isDeepEqual } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { Button, Result, Spin } from 'antd';\nimport {\n CSSProperties,\n forwardRef,\n ReactElement,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { dynamicNode } from '../dynamic-node';\nimport { fbaHooks } from '../fba-hooks';\nimport './style.less';\n\nexport type LocalLoadingServiceConfig = {\n onRequest: (params?: TAny) => Promise<TPlainObject>;\n params?: TPlainObject;\n /** 标记serviceConfig.params中无效参数,被设置的params key 不传入服务接口入参 */\n invalidParamKey?: string[];\n};\n\nexport interface LocalLoadingProps {\n /** 接口数据配置 */\n serviceConfig: LocalLoadingServiceConfig;\n /** children 为函数,参数【respData】为接口返回数据 */\n children: (respData?: TAny) => ReactElement;\n /**\n * 是否异步,默认:false\n * ```\n * true(异步):onRequest、react dom渲染同步执行\n * false(同步):onRequest有结果了才渲染 react dom\n * ```\n */\n isAsync?: boolean;\n /** 自定义异常渲染处理 */\n errorRender?: (error?: TAny) => ReactElement;\n /** loading高度,默认值:100;isAsync = true 无效 */\n loadingHeight?: number;\n className?: string;\n style?: CSSProperties;\n}\n\nexport type LocalLoadingRefApi = {\n onRefresh: () => void;\n};\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果\n * 2. error显示效果\n * 3. 获取服务数据\n * 4. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * ```\n * @param props\n * @returns\n */\nexport const LocalLoading = forwardRef<LocalLoadingRefApi, LocalLoadingProps>((props, ref) => {\n const { serviceConfig, isAsync, children, errorRender } = props;\n const [status, setStatus] = useState<'success' | 'error' | 'init'>('init');\n const [respData, setRespData] = useState<TAny>();\n const loadingHeight = props.loadingHeight === undefined ? 100 : props.loadingHeight;\n const rootRef = useRef<HTMLDivElement>(null);\n const loadingKeyRef = useRef<string>();\n const errorRef = useRef<string>();\n\n const prevParams = fbaHooks.usePrevious(serviceConfig.params);\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]);\n\n const openLoading = () => {\n errorRef.current = undefined;\n loadingKeyRef.current = dynamicNode.append({\n content: <Spin spinning={true}></Spin>,\n getContainer: () => {\n return rootRef.current as HTMLElement;\n },\n }).elementId;\n };\n\n const closeLoading = () => {\n dynamicNode.remove(loadingKeyRef.current);\n };\n\n const onInitRequest = async () => {\n try {\n openLoading();\n const respData = await serviceConfig.onRequest(serviceParams);\n setStatus('success');\n setRespData(respData);\n } catch (error) {\n setStatus('error');\n errorRef.current = error.message;\n } finally {\n closeLoading();\n }\n };\n\n fbaHooks.useEffectCustomAsync(onInitRequest, []);\n\n fbaHooks.useEffectCustom(() => {\n if (prevParams) {\n if (!isDeepEqual(serviceConfig.params, prevParams)) {\n void onRefresh();\n }\n }\n }, [prevParams, serviceConfig.params]);\n\n const onRefresh = async () => {\n try {\n openLoading();\n const respData = await serviceConfig.onRequest(serviceParams);\n setRespData(respData);\n setStatus('success');\n } catch (error) {\n setStatus('error');\n } finally {\n closeLoading();\n }\n };\n\n useImperativeHandle(ref, () => {\n return { onRefresh };\n });\n\n if (status === 'error') {\n if (errorRender) {\n return errorRender(respData);\n }\n return (\n <div className=\"local-loading-error\" style={{ height: loadingHeight }}>\n <Result\n status=\"error\"\n subTitle={errorRef.current || '数据处理异常'}\n extra={[\n <Button\n type=\"primary\"\n ghost\n key=\"console\"\n onClick={() => {\n setStatus('init');\n setTimeout(() => {\n void onInitRequest();\n }, 100);\n }}\n >\n 重新获取\n </Button>,\n ]}\n />\n </div>\n );\n }\n\n if (status !== 'success' && !isAsync) {\n return (\n <div\n className=\"fba-local-loading-process\"\n style={{\n height: loadingHeight,\n display: 'flex',\n justifyContent: 'center',\n position: 'relative',\n backgroundColor: '#fff',\n }}\n >\n <div className=\"local-loading-area\" ref={rootRef}></div>\n </div>\n );\n }\n\n return (\n <div className={classNames('fba-local-loading', props.className)} style={props.style}>\n <div className=\"local-loading-area\" ref={rootRef}></div>\n <div className=\"local-loading-content\">{children(respData)}</div>\n </div>\n );\n});\n"],"names":["LocalLoading","forwardRef","props","ref","serviceConfig","isAsync","children","errorRender","_useState","useState","status","setStatus","_useState2","respData","setRespData","loadingHeight","undefined","rootRef","useRef","loadingKeyRef","errorRef","prevParams","fbaHooks","usePrevious","params","serviceParams","useMemo","_serviceConfig$invali","toArray","invalidParamKey","length","newParams","_extends","forEach","key","openLoading","current","dynamicNode","append","content","_jsx","Spin","spinning","getContainer","elementId","closeLoading","remove","onInitRequest","Promise","$return","$error","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","this","$boundEx","bind","_respData","$Try_1_Post","$Try_1_Catch","error","message","resolve","onRequest","then","$await_3","useEffectCustomAsync","useEffectCustom","_isDeepEqual","onRefresh","$Try_2_Finally","$Try_2_Exit","$Try_2_Value","_respData2","$Try_2_Post","$Try_2_Catch","$await_4","useImperativeHandle","className","style","height","Result","subTitle","extra","Button","type","ghost","onClick","setTimeout","display","justifyContent","position","backgroundColor","_jsxs","_classNames"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/local-loading/context.ts","@flatbiz/antd/src/local-loading/local-loading.tsx","@flatbiz/antd/src/local-loading/index.ts"],"sourcesContent":["import { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\n\nexport const [useLocalLoadingCtx, LocalLoadingCtxProvider] = createCtx<{\n onRequest: (params?: TPlainObject) => void;\n}>();\n","import { isDeepEqual } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { Button, Result, Spin } from 'antd';\nimport {\n CSSProperties,\n forwardRef,\n ReactElement,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { dynamicNode } from '../dynamic-node';\nimport { fbaHooks } from '../fba-hooks';\nimport { LocalLoadingCtxProvider } from './context';\nimport './style.less';\n\nexport type LocalLoadingServiceConfig = {\n onRequest: (params?: TAny) => Promise<TPlainObject>;\n params?: TPlainObject;\n /** 标记serviceConfig.params中无效参数,被设置的params key 不传入服务接口入参 */\n invalidParamKey?: string[];\n};\n\nexport interface LocalLoadingProps {\n /** 接口数据配置 */\n serviceConfig: LocalLoadingServiceConfig;\n /** children 为函数,参数【respData】为接口返回数据 */\n children: (respData?: TAny) => ReactElement;\n /**\n * 是否异步,默认:false\n * ```\n * true(异步):onRequest、react dom渲染同步执行\n * false(同步):onRequest有结果了才渲染 react dom\n * ```\n */\n isAsync?: boolean;\n /** 自定义异常渲染处理 */\n errorRender?: (error?: TAny) => ReactElement;\n /** loading高度,默认值:100;isAsync = true 无效 */\n loadingHeight?: number;\n className?: string;\n style?: CSSProperties;\n}\n\nexport type LocalLoadingRefApi = {\n onRefresh: (params?: TPlainObject) => void;\n};\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果\n * 2. error显示效果\n * 3. 获取服务数据\n * 4. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * ```\n * @param props\n * @returns\n */\nexport const LocalLoadingInner = forwardRef<LocalLoadingRefApi, LocalLoadingProps>((props, ref) => {\n const { serviceConfig, isAsync, children, errorRender } = props;\n const [status, setStatus] = useState<'success' | 'error' | 'init'>('init');\n const [respData, setRespData] = useState<TAny>();\n const loadingHeight = props.loadingHeight === undefined ? 100 : props.loadingHeight;\n const rootRef = useRef<HTMLDivElement>(null);\n const loadingKeyRef = useRef<string>();\n const errorRef = useRef<string>();\n\n const prevParams = fbaHooks.usePrevious(serviceConfig.params);\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]);\n\n const openLoading = () => {\n errorRef.current = undefined;\n loadingKeyRef.current = dynamicNode.append({\n content: <Spin spinning={true}></Spin>,\n getContainer: () => {\n return rootRef.current as HTMLElement;\n },\n }).elementId;\n };\n\n const closeLoading = () => {\n dynamicNode.remove(loadingKeyRef.current);\n };\n\n const onInitRequest = async (params?: TPlainObject) => {\n try {\n openLoading();\n const respData = await serviceConfig.onRequest({\n ...serviceParams,\n ...params,\n });\n setStatus('success');\n setRespData(respData);\n } catch (error) {\n console.error(error);\n setStatus('error');\n errorRef.current = error.message;\n } finally {\n closeLoading();\n }\n };\n\n fbaHooks.useEffectCustomAsync(onInitRequest, []);\n\n fbaHooks.useEffectCustom(() => {\n if (prevParams) {\n if (!isDeepEqual(serviceConfig.params, prevParams)) {\n void onInitRequest();\n }\n }\n }, [prevParams, serviceConfig.params]);\n\n useImperativeHandle(ref, () => {\n return { onRefresh: onInitRequest };\n });\n\n if (status === 'error') {\n if (errorRender) {\n return errorRender(respData);\n }\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className=\"local-loading-error\">\n <div className=\"local-loading-area\" ref={rootRef}></div>\n <Result\n status=\"error\"\n subTitle={errorRef.current || '数据处理异常'}\n extra={[\n <Button\n type=\"primary\"\n ghost\n key=\"console\"\n size=\"small\"\n onClick={() => {\n setStatus('init');\n setTimeout(() => {\n void onInitRequest();\n }, 100);\n }}\n >\n 重新获取\n </Button>,\n ]}\n />\n </div>\n </LocalLoadingCtxProvider>\n );\n }\n\n if (status !== 'success' && !isAsync) {\n return (\n <div\n className=\"fba-local-loading-process\"\n style={{\n height: loadingHeight,\n display: 'flex',\n justifyContent: 'center',\n position: 'relative',\n backgroundColor: '#fff',\n }}\n >\n <div className=\"local-loading-area\" ref={rootRef}></div>\n </div>\n );\n }\n\n return (\n <LocalLoadingCtxProvider value={{ onRequest: onInitRequest }}>\n <div className={classNames('fba-local-loading', props.className)} style={props.style}>\n <div className=\"local-loading-area\" ref={rootRef}></div>\n <div className=\"local-loading-content\">{children(respData)}</div>\n </div>\n </LocalLoadingCtxProvider>\n );\n});\n","import { TPlainObject } from '@flatbiz/utils';\nimport { fbaUtils } from '../fba-utils';\nimport { useLocalLoadingCtx } from './context';\nimport { LocalLoadingInner } from './local-loading';\n\n/**\n * 局部加载,包含接口数据处理逻辑\n * ```\n * 包括\n * 1. loading显示效果\n * 2. error显示效果\n * 3. 获取服务数据\n * 4. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用\n * ```\n */\nexport const LocalLoading = fbaUtils.attachPropertiesToComponent(LocalLoadingInner, {\n useLocalLoading: () => {\n const ctx = useLocalLoadingCtx();\n return {\n onRequest: (params?: TPlainObject) => {\n ctx.onRequest(params);\n },\n };\n },\n});\n"],"names":["_createCtx","_createCtx2","useLocalLoadingCtx","LocalLoadingCtxProvider","LocalLoadingInner","forwardRef","props","ref","serviceConfig","isAsync","children","errorRender","_useState","useState","status","setStatus","_useState2","respData","setRespData","loadingHeight","undefined","rootRef","useRef","loadingKeyRef","errorRef","prevParams","fbaHooks","usePrevious","params","serviceParams","useMemo","_serviceConfig$invali","toArray","invalidParamKey","length","newParams","_extends","forEach","key","openLoading","current","dynamicNode","append","content","_jsx","Spin","spinning","getContainer","elementId","closeLoading","remove","onInitRequest","Promise","$return","$error","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","this","$boundEx","bind","_respData","$Try_1_Post","$Try_1_Catch","error","console","message","resolve","onRequest","then","$await_2","useEffectCustomAsync","useEffectCustom","_isDeepEqual","useImperativeHandle","onRefresh","value","_jsxs","className","Result","subTitle","extra","Button","type","ghost","size","onClick","setTimeout","style","height","display","justifyContent","position","backgroundColor","_classNames","LocalLoading","fbaUtils","attachPropertiesToComponent","useLocalLoading","ctx"],"mappings":";owBAGO,IAAAA,EAAsDC,IAA/CC,EAAkBF,EAAA,GAAEG,EAAuBH,EAAA,GC2DlD,IAAMI,EAAoBC,GAAkD,SAACC,EAAOC,GACzF,IAAQC,EAAkDF,EAAlDE,cAAeC,EAAmCH,EAAnCG,QAASC,EAA0BJ,EAA1BI,SAAUC,EAAgBL,EAAhBK,YAC1C,IAAAC,EAA4BC,EAAuC,QAA5DC,EAAMF,EAAA,GAAEG,EAASH,EAAA,GACxB,IAAAI,EAAgCH,IAAzBI,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAC5B,IAAMG,EAAgBb,EAAMa,gBAAkBC,UAAY,IAAMd,EAAMa,cACtE,IAAME,EAAUC,EAAuB,MACvC,IAAMC,EAAgBD,IACtB,IAAME,EAAWF,IAEjB,IAAMG,EAAaC,EAASC,YAAYnB,EAAcoB,QAGtD,IAAMC,EAAgBC,GAAQ,WAAM,IAAAC,EAClC,IAAKvB,EAAcoB,QAAUI,EAAQxB,EAAcyB,iBAAiBC,SAAW,EAAG,CAChF,OAAO1B,EAAcoB,MACvB,CACA,IAAMO,EAASC,KAAQ5B,EAAcoB,SACrCG,EAAAvB,EAAcyB,kBAAe,UAAA,EAA7BF,EAA+BM,SAAQ,SAACC,GACtCH,EAAUG,GAAOlB,SACnB,IACA,OAAOe,CACT,GAAG,CAAC3B,IAEJ,IAAM+B,EAAc,SAAdA,IACJf,EAASgB,QAAUpB,UACnBG,EAAciB,QAAUC,EAAYC,OAAO,CACzCC,QAASC,EAACC,EAAI,CAACC,SAAU,OACzBC,aAAc,SAAAA,IACZ,OAAO1B,EAAQmB,OACjB,IACCQ,WAGL,IAAMC,EAAe,SAAfA,IACJR,EAAYS,OAAO3B,EAAciB,UAGnC,IAAMW,EAAgB,SAAhBA,EAAuBvB,GAAP,OAAA,IAAAwB,SAAA,SAAAC,EAAAC,GAAA,IAAAC,EAnGxB,SAAAC,GAAA,OAAC,SAAAC,GAAD,IAiHMR,IAjHyG,OAAOO,GAAUA,EAAME,KAAKC,KAAIF,EAAtI,CAAC,MAAAG,GAAW,OAAON,EAAAM,EAAM,CAAgI,EAA/JC,KAAKF,OAALE,KAAKF,MAAK,IAsGDG,EAtGZ,IAAIC,aAAJ,IAAI,OAAAV,GAAK,CAAC,MAAAO,GAAW,OAAON,EAAAM,EAAM,GAAlC,IAAII,EAAA,SA4GSC,GA5Gb,IA6GMC,QAAQD,MAAMA,GACdlD,EAAU,SACVS,EAASgB,QAAUyB,EAAME,QA/G/B,OAAOZ,EAAAQ,EAAAR,EAAE,CAAC,MAAAK,GAAW,OAAOL,EAAAD,EAAAC,CAAAK,EAAM,GAoG9B,IACErB,IACiB,OAAAa,QAAAgB,QAAM5D,EAAc6D,UAASjC,EAAA,CAAA,EACzCP,EACAD,KAFY0C,eAGfC,GAzGR,IAsGYtD,EAAWsD,EAIjBxD,EAAU,WACVG,EAAYD,GA3GlB,OAAOsC,EAAAQ,EAAAR,EAAE,CAAC,MAAAK,GAAW,OAAOI,EAAAJ,EAAM,CAAC,GAAAI,EA4G9B,CAAC,MAAOC,GAAOD,EAAPC,EAIT,CAEC,GACF,EAEDvC,EAAS8C,qBAAqBrB,EAAe,IAE7CzB,EAAS+C,iBAAgB,WACvB,GAAIhD,EAAY,CACd,IAAKiD,EAAYlE,EAAcoB,OAAQH,GAAa,MAC7C0B,GACP,CACF,CACD,GAAE,CAAC1B,EAAYjB,EAAcoB,SAE9B+C,EAAoBpE,GAAK,WACvB,MAAO,CAAEqE,UAAWzB,EACtB,IAEA,GAAIrC,IAAW,QAAS,CACtB,GAAIH,EAAa,CACf,OAAOA,EAAYM,EACrB,CACA,OACE2B,EAACzC,EAAuB,CAAC0E,MAAO,CAAER,UAAWlB,GAAgBzC,SAC3DoE,EAAA,MAAA,CAAKC,UAAU,sBAAqBrE,UAClCkC,EAAA,MAAA,CAAKmC,UAAU,qBAAqBxE,IAAKc,IACzCuB,EAACoC,EAAM,CACLlE,OAAO,QACPmE,SAAUzD,EAASgB,SAAW,SAC9B0C,MAAO,CACLtC,EAACuC,EAAM,CACLC,KAAK,UACLC,MAAK,KAELC,KAAK,QACLC,QAAS,SAAAA,IACPxE,EAAU,QACVyE,YAAW,gBACJrC,GACN,GAAE,IACH,EAAAzC,SACH,QARK,kBAgBlB,CAEA,GAAII,IAAW,YAAcL,EAAS,CACpC,OACEmC,EAAA,MAAA,CACEmC,UAAU,4BACVU,MAAO,CACLC,OAAQvE,EACRwE,QAAS,OACTC,eAAgB,SAChBC,SAAU,WACVC,gBAAiB,QACjBpF,SAEFkC,EAAA,MAAA,CAAKmC,UAAU,qBAAqBxE,IAAKc,KAG/C,CAEA,OACEuB,EAACzC,EAAuB,CAAC0E,MAAO,CAAER,UAAWlB,GAAgBzC,SAC3DoE,EAAA,MAAA,CAAKC,UAAWgB,EAAW,oBAAqBzF,EAAMyE,WAAYU,MAAOnF,EAAMmF,MAAM/E,UACnFkC,EAAA,MAAA,CAAKmC,UAAU,qBAAqBxE,IAAKc,IACzCuB,EAAA,MAAA,CAAKmC,UAAU,wBAAuBrE,SAAEA,EAASO,SAIzD,IC9KO,IAAM+E,EAAeC,EAASC,4BAA4B9F,EAAmB,CAClF+F,gBAAiB,SAAAA,IACf,IAAMC,EAAMlG,IACZ,MAAO,CACLmE,UAAW,SAAAA,EAACzC,GACVwE,EAAI/B,UAAUzC,EAChB,EAEJ"}
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ var r=function(r){r["YMDHms"]="YYYY-MM-DD HH:mm:ss";r["YMDHm"]="YYYY-MM-DD HH:mm";r["YMDH"]="YYYY-MM-DD HH";r["YMD"]="YYYY-MM-DD";return r}({});var i=function(r){r["Hms"]="HH:mm:ss";r["Hm"]="HH:mm";r["H"]="HH";r["ms"]="mm:ss";r["m"]="mm";r["s"]="ss";return r}({});var t=function r(i,t){var e=[];for(var n=i;n<=t;n++){e.push(n)}return e};var e=function i(e,n){var a,m;if(!n||!e)return[];var u=0;var f=23;if(((a=n.minDateTime)==null?void 0:a.format(r.YMD))===e.format(r.YMD)){u=n.minDateTime.get("hour")}if(((m=n.maxDateTime)==null?void 0:m.format(r.YMD))===e.format(r.YMD)){f=n.maxDateTime.get("hour")}var o=t(u,f);if(n.disabledHourList){o=o.filter((function(r){var i;return!((i=n.disabledHourList)!=null&&i.includes(r))}))}return t(0,23).filter((function(r){return!o.includes(r)}))};var n=function i(e,n){var a,m;if(!n||!e)return[];var u=0;var f=59;if(((a=n.minDateTime)==null?void 0:a.format(r.YMDH))===e.format(r.YMDH)){u=n.minDateTime.get("minute")}if(((m=n.maxDateTime)==null?void 0:m.format(r.YMDH))===e.format(r.YMDH)){f=n.maxDateTime.get("minute")}var o=t(u,f);if(n.disabledMinuteList){o=o.filter((function(r){var i;return!((i=n.disabledMinuteList)!=null&&i.includes(r))}))}return t(0,59).filter((function(r){return!o.includes(r)}))};var a=function i(e,n){var a,m;if(!n||!e)return[];var u=0;var f=59;if(((a=n.minDateTime)==null?void 0:a.format(r.YMDHm))===e.format(r.YMDHm)){u=n.minDateTime.get("second")}if(((m=n.maxDateTime)==null?void 0:m.format(r.YMDHm))===e.format(r.YMDHm)){f=n.maxDateTime.get("second")}var o=t(u,f);if(n.disabledSecondList){o=o.filter((function(r){var i;return!((i=n.disabledSecondList)!=null&&i.includes(r))}))}return t(0,59).filter((function(r){return!o.includes(r)}))};export{r as D,n as a,a as b,i as c,e as g};
3
+ //# sourceMappingURL=time-53b3f55f.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-2782aa9b.js","sources":["@flatbiz/antd/src/_utils/constants.ts","@flatbiz/antd/src/_utils/time.tsx"],"sourcesContent":["export enum DayjsDateTypeEnum {\n YMDHms = 'YYYY-MM-DD HH:mm:ss',\n YMDHm = 'YYYY-MM-DD HH:mm',\n YMDH = 'YYYY-MM-DD HH',\n YMD = 'YYYY-MM-DD',\n}\n\nexport enum DayjsTimeTypeEnum {\n Hms = 'HH:mm:ss',\n Hm = 'HH:mm',\n H = 'HH',\n ms = 'mm:ss',\n m = 'mm',\n s = 'ss',\n}\n\nexport type TDayjsDateType =\n | 'YYYY-MM-DD HH:mm:ss'\n | 'YYYY-MM-DD HH:mm'\n | 'YYYY-MM-DD HH'\n | 'YYYY-MM-DD'\n | (string & {});\n\nexport type TDayjsTimeType = 'HH:mm:ss' | 'HH:mm' | 'HH' | 'mm:ss' | 'mm' | 'ss' | (string & {});\n","import { Dayjs } from 'dayjs';\nimport { DayjsDateTypeEnum } from './constants';\n\nconst range = (start: number, end: number) => {\n const result: number[] = [];\n for (let i = start; i <= end; i++) {\n result.push(i);\n }\n return result;\n};\nexport const getDisabledHour = (\n current?: Dayjs,\n options?: {\n minDateTime?: Dayjs;\n maxDateTime?: Dayjs;\n disabledHourList?: number[];\n },\n) => {\n if (!options || !current) return [];\n let minTimeHour = 0;\n let maxTimeHour = 23;\n\n if (options.minDateTime?.format(DayjsDateTypeEnum.YMD) === current.format(DayjsDateTypeEnum.YMD)) {\n minTimeHour = options.minDateTime.get('hour');\n }\n if (options.maxDateTime?.format(DayjsDateTypeEnum.YMD) === current.format(DayjsDateTypeEnum.YMD)) {\n maxTimeHour = options.maxDateTime.get('hour');\n }\n let selectableMinute = range(minTimeHour, maxTimeHour);\n if (options.disabledHourList) {\n selectableMinute = selectableMinute.filter((item) => !options.disabledHourList?.includes(item));\n }\n return range(0, 23).filter((item) => !selectableMinute.includes(item));\n};\n\nexport const getDisabledMinute = (\n current?: Dayjs,\n options?: {\n minDateTime?: Dayjs;\n maxDateTime?: Dayjs;\n disabledMinuteList?: number[];\n },\n) => {\n if (!options || !current) return [];\n let minTimeMinute = 0;\n let maxTimeMinute = 59;\n if (options.minDateTime?.format(DayjsDateTypeEnum.YMDH) === current.format(DayjsDateTypeEnum.YMDH)) {\n minTimeMinute = options.minDateTime.get('minute');\n }\n if (options.maxDateTime?.format(DayjsDateTypeEnum.YMDH) === current.format(DayjsDateTypeEnum.YMDH)) {\n maxTimeMinute = options.maxDateTime.get('minute');\n }\n let selectableMinute = range(minTimeMinute, maxTimeMinute);\n if (options.disabledMinuteList) {\n selectableMinute = selectableMinute.filter((item) => !options.disabledMinuteList?.includes(item));\n }\n return range(0, 59).filter((item) => !selectableMinute.includes(item));\n};\n\nexport const getDisabledSecond = (\n current?: Dayjs,\n options?: {\n minDateTime?: Dayjs;\n maxDateTime?: Dayjs;\n disabledSecondList?: number[];\n },\n) => {\n if (!options || !current) return [];\n let minTimeSecond = 0;\n let maxTimeSecond = 59;\n if (options.minDateTime?.format(DayjsDateTypeEnum.YMDHm) === current.format(DayjsDateTypeEnum.YMDHm)) {\n minTimeSecond = options.minDateTime.get('second');\n }\n if (options.maxDateTime?.format(DayjsDateTypeEnum.YMDHm) === current.format(DayjsDateTypeEnum.YMDHm)) {\n maxTimeSecond = options.maxDateTime.get('second');\n }\n let selectableMinute = range(minTimeSecond, maxTimeSecond);\n if (options.disabledSecondList) {\n selectableMinute = selectableMinute.filter((item) => !options.disabledSecondList?.includes(item));\n }\n return range(0, 59).filter((item) => !selectableMinute.includes(item));\n};\n"],"names":["DayjsDateTypeEnum","DayjsTimeTypeEnum","range","start","end","result","i","push","getDisabledHour","current","options","_options$minDateTime","_options$maxDateTime","minTimeHour","maxTimeHour","minDateTime","format","YMD","get","maxDateTime","selectableMinute","disabledHourList","filter","item","_options$disabledHour","includes","getDisabledMinute","_options$minDateTime2","_options$maxDateTime2","minTimeMinute","maxTimeMinute","YMDH","disabledMinuteList","_options$disabledMinu","getDisabledSecond","_options$minDateTime3","_options$maxDateTime3","minTimeSecond","maxTimeSecond","YMDHm","disabledSecondList","_options$disabledSeco"],"mappings":"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"}
1
+ {"version":3,"file":"time-53b3f55f.js","sources":["@flatbiz/antd/src/_utils/constants.ts","@flatbiz/antd/src/_utils/time.tsx"],"sourcesContent":["export enum DayjsDateTypeEnum {\n YMDHms = 'YYYY-MM-DD HH:mm:ss',\n YMDHm = 'YYYY-MM-DD HH:mm',\n YMDH = 'YYYY-MM-DD HH',\n YMD = 'YYYY-MM-DD',\n}\n\nexport enum DayjsTimeTypeEnum {\n Hms = 'HH:mm:ss',\n Hm = 'HH:mm',\n H = 'HH',\n ms = 'mm:ss',\n m = 'mm',\n s = 'ss',\n}\n\nexport type TDayjsDateType =\n | 'YYYY-MM-DD HH:mm:ss'\n | 'YYYY-MM-DD HH:mm'\n | 'YYYY-MM-DD HH'\n | 'YYYY-MM-DD'\n | (string & {});\n\nexport type TDayjsTimeType = 'HH:mm:ss' | 'HH:mm' | 'HH' | 'mm:ss' | 'mm' | 'ss' | (string & {});\n","import { Dayjs } from 'dayjs';\nimport { DayjsDateTypeEnum } from './constants';\n\nconst range = (start: number, end: number) => {\n const result: number[] = [];\n for (let i = start; i <= end; i++) {\n result.push(i);\n }\n return result;\n};\nexport const getDisabledHour = (\n current?: Dayjs,\n options?: {\n minDateTime?: Dayjs;\n maxDateTime?: Dayjs;\n disabledHourList?: number[];\n },\n) => {\n if (!options || !current) return [];\n let minTimeHour = 0;\n let maxTimeHour = 23;\n\n if (options.minDateTime?.format(DayjsDateTypeEnum.YMD) === current.format(DayjsDateTypeEnum.YMD)) {\n minTimeHour = options.minDateTime.get('hour');\n }\n if (options.maxDateTime?.format(DayjsDateTypeEnum.YMD) === current.format(DayjsDateTypeEnum.YMD)) {\n maxTimeHour = options.maxDateTime.get('hour');\n }\n let selectableMinute = range(minTimeHour, maxTimeHour);\n if (options.disabledHourList) {\n selectableMinute = selectableMinute.filter((item) => !options.disabledHourList?.includes(item));\n }\n return range(0, 23).filter((item) => !selectableMinute.includes(item));\n};\n\nexport const getDisabledMinute = (\n current?: Dayjs,\n options?: {\n minDateTime?: Dayjs;\n maxDateTime?: Dayjs;\n disabledMinuteList?: number[];\n },\n) => {\n if (!options || !current) return [];\n let minTimeMinute = 0;\n let maxTimeMinute = 59;\n if (options.minDateTime?.format(DayjsDateTypeEnum.YMDH) === current.format(DayjsDateTypeEnum.YMDH)) {\n minTimeMinute = options.minDateTime.get('minute');\n }\n if (options.maxDateTime?.format(DayjsDateTypeEnum.YMDH) === current.format(DayjsDateTypeEnum.YMDH)) {\n maxTimeMinute = options.maxDateTime.get('minute');\n }\n let selectableMinute = range(minTimeMinute, maxTimeMinute);\n if (options.disabledMinuteList) {\n selectableMinute = selectableMinute.filter((item) => !options.disabledMinuteList?.includes(item));\n }\n return range(0, 59).filter((item) => !selectableMinute.includes(item));\n};\n\nexport const getDisabledSecond = (\n current?: Dayjs,\n options?: {\n minDateTime?: Dayjs;\n maxDateTime?: Dayjs;\n disabledSecondList?: number[];\n },\n) => {\n if (!options || !current) return [];\n let minTimeSecond = 0;\n let maxTimeSecond = 59;\n if (options.minDateTime?.format(DayjsDateTypeEnum.YMDHm) === current.format(DayjsDateTypeEnum.YMDHm)) {\n minTimeSecond = options.minDateTime.get('second');\n }\n if (options.maxDateTime?.format(DayjsDateTypeEnum.YMDHm) === current.format(DayjsDateTypeEnum.YMDHm)) {\n maxTimeSecond = options.maxDateTime.get('second');\n }\n let selectableMinute = range(minTimeSecond, maxTimeSecond);\n if (options.disabledSecondList) {\n selectableMinute = selectableMinute.filter((item) => !options.disabledSecondList?.includes(item));\n }\n return range(0, 59).filter((item) => !selectableMinute.includes(item));\n};\n"],"names":["DayjsDateTypeEnum","DayjsTimeTypeEnum","range","start","end","result","i","push","getDisabledHour","current","options","_options$minDateTime","_options$maxDateTime","minTimeHour","maxTimeHour","minDateTime","format","YMD","get","maxDateTime","selectableMinute","disabledHourList","filter","item","_options$disabledHour","includes","getDisabledMinute","_options$minDateTime2","_options$maxDateTime2","minTimeMinute","maxTimeMinute","YMDH","disabledMinuteList","_options$disabledMinu","getDisabledSecond","_options$minDateTime3","_options$maxDateTime3","minTimeSecond","maxTimeSecond","YMDHm","disabledSecondList","_options$disabledSeco"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- import{_ as e,a as r}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as i}from"@wove/react/cjs/hooks";import{TimePicker as a}from"antd";import n from"dayjs";import o from"dayjs/plugin/isSameOrAfter";import t from"dayjs/plugin/isSameOrBefore";import{useMemo as s}from"react";import{c as d,D as m,g as u,a as f,b as l}from"../time-2782aa9b.js";import{jsx as v}from"react/jsx-runtime";var c=["onChange","disabledTimeConfig","format"];n.extend(t);n.extend(o);var b=function o(t){var b=t.onChange,p=t.disabledTimeConfig,g=t.format,j=e(t,c);var S=p||{},T=S.minTime,x=S.maxTime,C=S.disabledHourList,L=S.disabledMinuteList,h=S.disabledSecondList;var H=g||d.Hms;var D=i.useCallbackRef((function(e,r){if(e){b==null?void 0:b(r)}else{b==null?void 0:b(undefined)}}));var M=s((function(){var e=t.value;if(e){return n(e,H)}return undefined}),[H,t.value]);var O=function e(){var r=n().format(m.YMD);var i={minDateTime:T?n(r+" "+T):undefined,maxDateTime:x?n(r+" "+x):undefined,disabledHourList:C,disabledMinuteList:L,disabledSecondList:h};return{disabledHours:function e(){return u(n(),i)},disabledMinutes:function e(a){return f(n(r+" "+a),i)},disabledSeconds:function e(a,o){return l(n(r+" "+a+":"+o),i)}}};var w=s((function(){var e=n();return e.isSameOrAfter(n(T||"00:00:00",H))&&e.isSameOrBefore(n(x||"23:59:59",H))}),[H,x,T]);return v(a,r({showNow:w,disabledTime:O},j,{value:M,onChange:D,format:H}))};export{b as TimePickerWrapper};
4
+ import{_ as e,a as r}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as i}from"@wove/react/cjs/hooks";import{TimePicker as a}from"antd";import n from"dayjs";import o from"dayjs/plugin/isSameOrAfter";import t from"dayjs/plugin/isSameOrBefore";import{useMemo as s}from"react";import{c as d,D as m,g as u,a as f,b as l}from"../time-53b3f55f.js";import{jsx as v}from"react/jsx-runtime";var c=["onChange","disabledTimeConfig","format"];n.extend(t);n.extend(o);var b=function o(t){var b=t.onChange,p=t.disabledTimeConfig,g=t.format,j=e(t,c);var S=p||{},T=S.minTime,x=S.maxTime,C=S.disabledHourList,L=S.disabledMinuteList,h=S.disabledSecondList;var H=g||d.Hms;var D=i.useCallbackRef((function(e,r){if(e){b==null?void 0:b(r)}else{b==null?void 0:b(undefined)}}));var M=s((function(){var e=t.value;if(e){return n(e,H)}return undefined}),[H,t.value]);var O=function e(){var r=n().format(m.YMD);var i={minDateTime:T?n(r+" "+T):undefined,maxDateTime:x?n(r+" "+x):undefined,disabledHourList:C,disabledMinuteList:L,disabledSecondList:h};return{disabledHours:function e(){return u(n(),i)},disabledMinutes:function e(a){return f(n(r+" "+a),i)},disabledSeconds:function e(a,o){return l(n(r+" "+a+":"+o),i)}}};var w=s((function(){var e=n();return e.isSameOrAfter(n(T||"00:00:00",H))&&e.isSameOrBefore(n(x||"23:59:59",H))}),[H,x,T]);return v(a,r({showNow:w,disabledTime:O},j,{value:M,onChange:D,format:H}))};export{b as TimePickerWrapper};
5
5
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- export{T as TimeRangePickerWrapper}from"../time-range-picker-wrapper-24adf0d0.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"antd";import"dayjs";import"react";import"../time-2782aa9b.js";import"react/jsx-runtime";
4
+ export{T as TimeRangePickerWrapper}from"../time-range-picker-wrapper-be9850b5.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"antd";import"dayjs";import"react";import"../time-53b3f55f.js";import"react/jsx-runtime";
5
5
  //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
1
  /*! @flatjs/forge MIT @flatbiz/antd */
2
- import{_ as e,a as i}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as a}from"@wove/react/cjs/hooks";import{TimePicker as r}from"antd";import n from"dayjs";import{useMemo as t}from"react";import{c as o,D as d,g as s,a as u,b as m}from"./time-2782aa9b.js";import{jsx as f}from"react/jsx-runtime";var l=["onChange","disabledTimeConfig"];var c=function c(v){var b=v.onChange,p=v.disabledTimeConfig,g=e(v,l);var T=p||{},C=T.minTime,L=T.maxTime,h=T.disabledHourList,j=T.disabledMinuteList,H=T.disabledSecondList;var x=t((function(){return v.format||o.Hms}),[v.format]);var D=a.useCallbackRef((function(e,i){var a=i[0],r=i[1];if(e){b==null?void 0:b([a,r])}else{b==null?void 0:b(undefined)}}));var M=t((function(){var e=v.value;if(e&&e.length>0){return[e[0]?n(e[0],x):e[0],e[1]?n(e[1],x):e[1]]}return undefined}),[v.value,x]);var k=function e(){var i=n().format(d.YMD);var a={minDateTime:C?n(i+" "+C):undefined,maxDateTime:L?n(i+" "+L):undefined,disabledHourList:h,disabledMinuteList:j,disabledSecondList:H};return{disabledHours:function e(){return s(n(),a)},disabledMinutes:function e(r){return u(n(i+" "+r),a)},disabledSeconds:function e(r,t){return m(n(i+" "+r+":"+t),a)}}};return f(r.RangePicker,i({disabledTime:k},g,{value:M,onChange:D,format:x}))};export{c as T};
3
- //# sourceMappingURL=time-range-picker-wrapper-24adf0d0.js.map
2
+ import{_ as e,a as i}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as a}from"@wove/react/cjs/hooks";import{TimePicker as r}from"antd";import n from"dayjs";import{useMemo as t}from"react";import{c as o,D as d,g as s,a as u,b as m}from"./time-53b3f55f.js";import{jsx as f}from"react/jsx-runtime";var l=["onChange","disabledTimeConfig"];var c=function c(v){var b=v.onChange,p=v.disabledTimeConfig,g=e(v,l);var T=p||{},C=T.minTime,L=T.maxTime,h=T.disabledHourList,j=T.disabledMinuteList,H=T.disabledSecondList;var x=t((function(){return v.format||o.Hms}),[v.format]);var D=a.useCallbackRef((function(e,i){var a=i[0],r=i[1];if(e){b==null?void 0:b([a,r])}else{b==null?void 0:b(undefined)}}));var M=t((function(){var e=v.value;if(e&&e.length>0){return[e[0]?n(e[0],x):e[0],e[1]?n(e[1],x):e[1]]}return undefined}),[v.value,x]);var k=function e(){var i=n().format(d.YMD);var a={minDateTime:C?n(i+" "+C):undefined,maxDateTime:L?n(i+" "+L):undefined,disabledHourList:h,disabledMinuteList:j,disabledSecondList:H};return{disabledHours:function e(){return s(n(),a)},disabledMinutes:function e(r){return u(n(i+" "+r),a)},disabledSeconds:function e(r,t){return m(n(i+" "+r+":"+t),a)}}};return f(r.RangePicker,i({disabledTime:k},g,{value:M,onChange:D,format:x}))};export{c as T};
3
+ //# sourceMappingURL=time-range-picker-wrapper-be9850b5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time-range-picker-wrapper-24adf0d0.js","sources":["@flatbiz/antd/src/time-range-picker-wrapper/time-range-picker-wrapper.tsx"],"sourcesContent":["import { hooks } from '@wove/react';\nimport { TimePicker, TimeRangePickerProps } from 'antd';\nimport dayjs, { Dayjs } from 'dayjs';\nimport { useMemo } from 'react';\nimport { DayjsDateTypeEnum, DayjsTimeTypeEnum, TDayjsTimeType } from '../_utils/constants';\nimport { getDisabledHour, getDisabledMinute, getDisabledSecond } from '../_utils/time';\n\nexport type TimeRangePickerWrapperProps = Omit<TimeRangePickerProps, 'value' | 'onChange' | 'format'> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n /**\n * 1. minTime、maxTime设置格式,默认格式:HH:mm:ss\n * 2. minTime、maxTime格式必须与 format 相同\n */\n disabledTimeConfig?: {\n minTime?: TDayjsTimeType;\n maxTime?: TDayjsTimeType;\n /** 禁用 小时 刻度列表,与日期无关 */\n disabledHourList?: number[];\n /** 禁用 分钟 刻度列表,与日期无关 */\n disabledMinuteList?: number[];\n /** 禁用 秒钟 刻度列表,与日期无关 */\n disabledSecondList?: number[];\n };\n format?: TDayjsTimeType;\n};\n// export declare type EventValue<DateType> = DateType | null;\n// export declare type RangeValue<DateType> = [EventValue<DateType>, EventValue<DateType>] | null;\n/**\n * TimePicker组件包装\n * ```\n * 1. value类型为 [string, string]\n * 2. onChange返回类型 [string, string]\n * 3. 默认格式化类型 HH:mm:ss,其他格式化类型自定义format\n * 4. 设置disabledTime后,disabledTimeConfig配置将失效\n * ```\n */\nexport const TimeRangePickerWrapper = (props: TimeRangePickerWrapperProps) => {\n const { onChange, disabledTimeConfig, ...otherProps } = props;\n\n const { minTime, maxTime, disabledHourList, disabledMinuteList, disabledSecondList } =\n disabledTimeConfig || {};\n\n const format = useMemo(() => {\n return props.format || DayjsTimeTypeEnum.Hms;\n }, [props.format]);\n\n const onChangeTime = hooks.useCallbackRef((date, [timeStart, timeEnd]: [string, string]) => {\n if (date) {\n onChange?.([timeStart, timeEnd]);\n } else {\n onChange?.(undefined);\n }\n });\n\n const timePickerValue = useMemo(() => {\n const value = props.value;\n if (value && value.length > 0) {\n return [\n value[0] ? dayjs(value[0], format) : value[0],\n value[1] ? dayjs(value[1], format) : value[1],\n ] as [Dayjs, Dayjs];\n }\n return undefined;\n }, [props.value, format]);\n\n const getDisabledTime: TimeRangePickerProps['disabledTime'] = () => {\n const date = dayjs().format(DayjsDateTypeEnum.YMD);\n const options = {\n minDateTime: minTime ? dayjs(`${date} ${minTime}`) : undefined,\n maxDateTime: maxTime ? dayjs(`${date} ${maxTime}`) : undefined,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n };\n return {\n disabledHours: () => {\n return getDisabledHour(dayjs(), options);\n },\n disabledMinutes: (hour: number) => {\n return getDisabledMinute(dayjs(`${date} ${hour}`), options);\n },\n disabledSeconds: (hour: number, minute: number) => {\n return getDisabledSecond(dayjs(`${date} ${hour}:${minute}`), options);\n },\n };\n };\n\n return (\n <TimePicker.RangePicker\n disabledTime={getDisabledTime}\n {...otherProps}\n value={timePickerValue}\n onChange={onChangeTime}\n format={format}\n />\n );\n};\n"],"names":["TimeRangePickerWrapper","props","onChange","disabledTimeConfig","otherProps","_objectWithoutPropertiesLoose","_excluded","_ref","minTime","maxTime","disabledHourList","disabledMinuteList","disabledSecondList","format","useMemo","DayjsTimeTypeEnum","Hms","onChangeTime","_hooks","useCallbackRef","date","_ref2","timeStart","timeEnd","undefined","timePickerValue","value","length","dayjs","getDisabledTime","DayjsDateTypeEnum","YMD","options","minDateTime","maxDateTime","disabledHours","getDisabledHour","disabledMinutes","hour","getDisabledMinute","disabledSeconds","minute","getDisabledSecond","_jsx","TimePicker","RangePicker","_extends","disabledTime"],"mappings":";+VAqCaA,EAAyB,SAAzBA,EAA0BC,GACrC,IAAQC,EAAgDD,EAAhDC,SAAUC,EAAsCF,EAAtCE,mBAAuBC,EAAUC,EAAKJ,EAAKK,GAE7D,IAAAC,EACEJ,GAAsB,CAAE,EADlBK,EAAOD,EAAPC,QAASC,EAAOF,EAAPE,QAASC,EAAgBH,EAAhBG,iBAAkBC,EAAkBJ,EAAlBI,mBAAoBC,EAAkBL,EAAlBK,mBAGhE,IAAMC,EAASC,GAAQ,WACrB,OAAOb,EAAMY,QAAUE,EAAkBC,GAC3C,GAAG,CAACf,EAAMY,SAEV,IAAMI,EAAeC,EAAMC,gBAAe,SAACC,EAAIC,GAA6C,IAA1CC,EAASD,EAAA,GAAEE,EAAOF,EAAA,GAClE,GAAID,EAAM,CACRlB,GAAQ,UAAA,EAARA,EAAW,CAACoB,EAAWC,GACzB,KAAO,CACLrB,GAAAA,UAAAA,EAAAA,EAAWsB,UACb,CACF,IAEA,IAAMC,EAAkBX,GAAQ,WAC9B,IAAMY,EAAQzB,EAAMyB,MACpB,GAAIA,GAASA,EAAMC,OAAS,EAAG,CAC7B,MAAO,CACLD,EAAM,GAAKE,EAAMF,EAAM,GAAIb,GAAUa,EAAM,GAC3CA,EAAM,GAAKE,EAAMF,EAAM,GAAIb,GAAUa,EAAM,GAE/C,CACA,OAAOF,SACR,GAAE,CAACvB,EAAMyB,MAAOb,IAEjB,IAAMgB,EAAwD,SAAxDA,IACJ,IAAMT,EAAOQ,IAAQf,OAAOiB,EAAkBC,KAC9C,IAAMC,EAAU,CACdC,YAAazB,EAAUoB,EAASR,EAAQZ,IAAAA,GAAagB,UACrDU,YAAazB,EAAUmB,EAASR,EAAQX,IAAAA,GAAae,UACrDd,iBAAAA,EACAC,mBAAAA,EACAC,mBAAAA,GAEF,MAAO,CACLuB,cAAe,SAAAA,IACb,OAAOC,EAAgBR,IAASI,EACjC,EACDK,gBAAiB,SAAAA,EAACC,GAChB,OAAOC,EAAkBX,EAASR,MAAQkB,GAASN,EACpD,EACDQ,gBAAiB,SAAAA,EAACF,EAAcG,GAC9B,OAAOC,EAAkBd,EAASR,EAAI,IAAIkB,EAAI,IAAIG,GAAWT,EAC/D,IAIJ,OACEW,EAACC,EAAWC,YAAWC,EAAA,CACrBC,aAAclB,GACVzB,EAAU,CACdsB,MAAOD,EACPvB,SAAUe,EACVJ,OAAQA,IAGd"}
1
+ {"version":3,"file":"time-range-picker-wrapper-be9850b5.js","sources":["@flatbiz/antd/src/time-range-picker-wrapper/time-range-picker-wrapper.tsx"],"sourcesContent":["import { hooks } from '@wove/react';\nimport { TimePicker, TimeRangePickerProps } from 'antd';\nimport dayjs, { Dayjs } from 'dayjs';\nimport { useMemo } from 'react';\nimport { DayjsDateTypeEnum, DayjsTimeTypeEnum, TDayjsTimeType } from '../_utils/constants';\nimport { getDisabledHour, getDisabledMinute, getDisabledSecond } from '../_utils/time';\n\nexport type TimeRangePickerWrapperProps = Omit<TimeRangePickerProps, 'value' | 'onChange' | 'format'> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n /**\n * 1. minTime、maxTime设置格式,默认格式:HH:mm:ss\n * 2. minTime、maxTime格式必须与 format 相同\n */\n disabledTimeConfig?: {\n minTime?: TDayjsTimeType;\n maxTime?: TDayjsTimeType;\n /** 禁用 小时 刻度列表,与日期无关 */\n disabledHourList?: number[];\n /** 禁用 分钟 刻度列表,与日期无关 */\n disabledMinuteList?: number[];\n /** 禁用 秒钟 刻度列表,与日期无关 */\n disabledSecondList?: number[];\n };\n format?: TDayjsTimeType;\n};\n// export declare type EventValue<DateType> = DateType | null;\n// export declare type RangeValue<DateType> = [EventValue<DateType>, EventValue<DateType>] | null;\n/**\n * TimePicker组件包装\n * ```\n * 1. value类型为 [string, string]\n * 2. onChange返回类型 [string, string]\n * 3. 默认格式化类型 HH:mm:ss,其他格式化类型自定义format\n * 4. 设置disabledTime后,disabledTimeConfig配置将失效\n * ```\n */\nexport const TimeRangePickerWrapper = (props: TimeRangePickerWrapperProps) => {\n const { onChange, disabledTimeConfig, ...otherProps } = props;\n\n const { minTime, maxTime, disabledHourList, disabledMinuteList, disabledSecondList } =\n disabledTimeConfig || {};\n\n const format = useMemo(() => {\n return props.format || DayjsTimeTypeEnum.Hms;\n }, [props.format]);\n\n const onChangeTime = hooks.useCallbackRef((date, [timeStart, timeEnd]: [string, string]) => {\n if (date) {\n onChange?.([timeStart, timeEnd]);\n } else {\n onChange?.(undefined);\n }\n });\n\n const timePickerValue = useMemo(() => {\n const value = props.value;\n if (value && value.length > 0) {\n return [\n value[0] ? dayjs(value[0], format) : value[0],\n value[1] ? dayjs(value[1], format) : value[1],\n ] as [Dayjs, Dayjs];\n }\n return undefined;\n }, [props.value, format]);\n\n const getDisabledTime: TimeRangePickerProps['disabledTime'] = () => {\n const date = dayjs().format(DayjsDateTypeEnum.YMD);\n const options = {\n minDateTime: minTime ? dayjs(`${date} ${minTime}`) : undefined,\n maxDateTime: maxTime ? dayjs(`${date} ${maxTime}`) : undefined,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n };\n return {\n disabledHours: () => {\n return getDisabledHour(dayjs(), options);\n },\n disabledMinutes: (hour: number) => {\n return getDisabledMinute(dayjs(`${date} ${hour}`), options);\n },\n disabledSeconds: (hour: number, minute: number) => {\n return getDisabledSecond(dayjs(`${date} ${hour}:${minute}`), options);\n },\n };\n };\n\n return (\n <TimePicker.RangePicker\n disabledTime={getDisabledTime}\n {...otherProps}\n value={timePickerValue}\n onChange={onChangeTime}\n format={format}\n />\n );\n};\n"],"names":["TimeRangePickerWrapper","props","onChange","disabledTimeConfig","otherProps","_objectWithoutPropertiesLoose","_excluded","_ref","minTime","maxTime","disabledHourList","disabledMinuteList","disabledSecondList","format","useMemo","DayjsTimeTypeEnum","Hms","onChangeTime","_hooks","useCallbackRef","date","_ref2","timeStart","timeEnd","undefined","timePickerValue","value","length","dayjs","getDisabledTime","DayjsDateTypeEnum","YMD","options","minDateTime","maxDateTime","disabledHours","getDisabledHour","disabledMinutes","hour","getDisabledMinute","disabledSeconds","minute","getDisabledSecond","_jsx","TimePicker","RangePicker","_extends","disabledTime"],"mappings":";+VAqCaA,EAAyB,SAAzBA,EAA0BC,GACrC,IAAQC,EAAgDD,EAAhDC,SAAUC,EAAsCF,EAAtCE,mBAAuBC,EAAUC,EAAKJ,EAAKK,GAE7D,IAAAC,EACEJ,GAAsB,CAAE,EADlBK,EAAOD,EAAPC,QAASC,EAAOF,EAAPE,QAASC,EAAgBH,EAAhBG,iBAAkBC,EAAkBJ,EAAlBI,mBAAoBC,EAAkBL,EAAlBK,mBAGhE,IAAMC,EAASC,GAAQ,WACrB,OAAOb,EAAMY,QAAUE,EAAkBC,GAC3C,GAAG,CAACf,EAAMY,SAEV,IAAMI,EAAeC,EAAMC,gBAAe,SAACC,EAAIC,GAA6C,IAA1CC,EAASD,EAAA,GAAEE,EAAOF,EAAA,GAClE,GAAID,EAAM,CACRlB,GAAQ,UAAA,EAARA,EAAW,CAACoB,EAAWC,GACzB,KAAO,CACLrB,GAAAA,UAAAA,EAAAA,EAAWsB,UACb,CACF,IAEA,IAAMC,EAAkBX,GAAQ,WAC9B,IAAMY,EAAQzB,EAAMyB,MACpB,GAAIA,GAASA,EAAMC,OAAS,EAAG,CAC7B,MAAO,CACLD,EAAM,GAAKE,EAAMF,EAAM,GAAIb,GAAUa,EAAM,GAC3CA,EAAM,GAAKE,EAAMF,EAAM,GAAIb,GAAUa,EAAM,GAE/C,CACA,OAAOF,SACR,GAAE,CAACvB,EAAMyB,MAAOb,IAEjB,IAAMgB,EAAwD,SAAxDA,IACJ,IAAMT,EAAOQ,IAAQf,OAAOiB,EAAkBC,KAC9C,IAAMC,EAAU,CACdC,YAAazB,EAAUoB,EAASR,EAAQZ,IAAAA,GAAagB,UACrDU,YAAazB,EAAUmB,EAASR,EAAQX,IAAAA,GAAae,UACrDd,iBAAAA,EACAC,mBAAAA,EACAC,mBAAAA,GAEF,MAAO,CACLuB,cAAe,SAAAA,IACb,OAAOC,EAAgBR,IAASI,EACjC,EACDK,gBAAiB,SAAAA,EAACC,GAChB,OAAOC,EAAkBX,EAASR,MAAQkB,GAASN,EACpD,EACDQ,gBAAiB,SAAAA,EAACF,EAAcG,GAC9B,OAAOC,EAAkBd,EAASR,EAAI,IAAIkB,EAAI,IAAIG,GAAWT,EAC/D,IAIJ,OACEW,EAACC,EAAWC,YAAWC,EAAA,CACrBC,aAAclB,GACVzB,EAAU,CACdsB,MAAOD,EACPvB,SAAUe,EACVJ,OAAQA,IAGd"}
@@ -4,5 +4,5 @@ import './../time-range-picker-wrapper/index.css';
4
4
  import './../types/index.css';
5
5
  import './index.css';
6
6
  /*! @flatjs/forge MIT @flatbiz/antd */
7
- import{_ as e,a as n}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as r}from"@wove/react/cjs/hooks";import{isArray as a}from"@dimjs/lang/cjs/is-array";import{Form as t,Input as i}from"antd";import{useMemo as o,useRef as u,forwardRef as l,useImperativeHandle as m}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import{T as v}from"../time-range-picker-wrapper-24adf0d0.js";import{jsxs as c,Fragment as d,jsx as f}from"react/jsx-runtime";import"../use-responsive-point-21b8c601.js";import"dayjs";import"../time-2782aa9b.js";var p=["startName","endName","formListName","timeRangePickerWrapperProps"];var h=function i(l){var m=l.startName,h=l.endName,_=l.formListName,j=l.timeRangePickerWrapperProps,C=e(l,p);var P=t.useFormInstance();var k=o((function(){if(a(m)&&a(h)){return m.slice(0,m.length-1).concat("__#invalid_time_"+m[m.length-1]+"_"+h[h.length-1])}return"__#invalid_time_"+m+"_"+h}),[m,h]);var N=o((function(){return _?[].concat(_,m):m}),[m,_]);var F=o((function(){return _?[].concat(_,h):h}),[h,_]);var I=t.useWatch(N,P);var W=t.useWatch(F,P);var b=s.usePrevious(I);var x=s.usePrevious(W);s.useEffectCustom((function(){var e=_?[].concat(_,k):k;if(I&&W){P.setFields([{name:e,value:[I,W]}])}if(b&&x&&!I&&!W){P.setFields([{name:e,value:undefined}])}}),[I,W]);var R=u(null);var w=u(null);var y=r.useCallbackRef((function(e){var n,r;P.setFields([{name:N,value:e==null?void 0:e[0]},{name:F,value:e==null?void 0:e[1]}]);(n=R.current)==null?void 0:n.onChange==null?void 0:n.onChange(e==null?void 0:e[0]);(r=w.current)==null?void 0:r.onChange==null?void 0:r.onChange(e==null?void 0:e[1])}));return c(d,{children:[f(t.Item,{name:m,hidden:true,children:f(g,{ref:R})}),f(t.Item,{name:h,hidden:true,children:f(g,{ref:w})}),f(t.Item,n({},C,{name:k,children:f(v,n({},j,{onChange:y}))}))]})};var g=l((function(e,n){m(n,(function(){return{onChange:function n(r){e.onChange==null?void 0:e.onChange(r)}}}));return f(i,{value:e.value})}));export{h as TimeRangePickerWrapperFormItem};
7
+ import{_ as e,a as n}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as r}from"@wove/react/cjs/hooks";import{isArray as a}from"@dimjs/lang/cjs/is-array";import{Form as t,Input as i}from"antd";import{useMemo as o,useRef as u,forwardRef as l,useImperativeHandle as m}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import{T as v}from"../time-range-picker-wrapper-be9850b5.js";import{jsxs as c,Fragment as d,jsx as f}from"react/jsx-runtime";import"../use-responsive-point-21b8c601.js";import"dayjs";import"../time-53b3f55f.js";var p=["startName","endName","formListName","timeRangePickerWrapperProps"];var h=function i(l){var m=l.startName,h=l.endName,_=l.formListName,j=l.timeRangePickerWrapperProps,C=e(l,p);var P=t.useFormInstance();var k=o((function(){if(a(m)&&a(h)){return m.slice(0,m.length-1).concat("__#invalid_time_"+m[m.length-1]+"_"+h[h.length-1])}return"__#invalid_time_"+m+"_"+h}),[m,h]);var N=o((function(){return _?[].concat(_,m):m}),[m,_]);var F=o((function(){return _?[].concat(_,h):h}),[h,_]);var I=t.useWatch(N,P);var W=t.useWatch(F,P);var b=s.usePrevious(I);var x=s.usePrevious(W);s.useEffectCustom((function(){var e=_?[].concat(_,k):k;if(I&&W){P.setFields([{name:e,value:[I,W]}])}if(b&&x&&!I&&!W){P.setFields([{name:e,value:undefined}])}}),[I,W]);var R=u(null);var w=u(null);var y=r.useCallbackRef((function(e){var n,r;P.setFields([{name:N,value:e==null?void 0:e[0]},{name:F,value:e==null?void 0:e[1]}]);(n=R.current)==null?void 0:n.onChange==null?void 0:n.onChange(e==null?void 0:e[0]);(r=w.current)==null?void 0:r.onChange==null?void 0:r.onChange(e==null?void 0:e[1])}));return c(d,{children:[f(t.Item,{name:m,hidden:true,children:f(g,{ref:R})}),f(t.Item,{name:h,hidden:true,children:f(g,{ref:w})}),f(t.Item,n({},C,{name:k,children:f(v,n({},j,{onChange:y}))}))]})};var g=l((function(e,n){m(n,(function(){return{onChange:function n(r){e.onChange==null?void 0:e.onChange(r)}}}));return f(i,{value:e.value})}));export{h as TimeRangePickerWrapperFormItem};
8
8
  //# sourceMappingURL=index.js.map
package/index.d.ts CHANGED
@@ -1396,11 +1396,18 @@ export type LabelValueLayoutProps = {
1396
1396
  options: {
1397
1397
  label: string | ReactElement;
1398
1398
  value?: string | number | ReactElement;
1399
+ span?: number;
1400
+ hidden?: boolean;
1399
1401
  }[];
1400
1402
  labelWidth?: number;
1401
1403
  column?: number;
1402
1404
  bordered?: boolean;
1405
+ className?: string;
1403
1406
  };
1407
+ /**
1408
+ * options[].span 是 Description.Item 的数量。 span={2} 会占用两个 DescriptionItem 的宽度
1409
+ * options[].hidden 是否隐藏 Description.Item
1410
+ */
1404
1411
  export declare const LabelValueLayout: (props: LabelValueLayoutProps) => JSX.Element;
1405
1412
  export type LocalLoadingServiceConfig = {
1406
1413
  onRequest: (params?: TAny) => Promise<TPlainObject>;
@@ -1429,7 +1436,7 @@ export interface LocalLoadingProps {
1429
1436
  style?: CSSProperties;
1430
1437
  }
1431
1438
  export type LocalLoadingRefApi = {
1432
- onRefresh: () => void;
1439
+ onRefresh: (params?: TPlainObject) => void;
1433
1440
  };
1434
1441
  /**
1435
1442
  * 局部加载,包含接口数据处理逻辑
@@ -1440,10 +1447,12 @@ export type LocalLoadingRefApi = {
1440
1447
  * 3. 获取服务数据
1441
1448
  * 4. 当 serviceConfig.params 值与上一次值不相等时,会主动发起服务调用
1442
1449
  * ```
1443
- * @param props
1444
- * @returns
1445
1450
  */
1446
- export declare const LocalLoading: import("react").ForwardRefExoticComponent<LocalLoadingProps & import("react").RefAttributes<LocalLoadingRefApi>>;
1451
+ export declare const LocalLoading: import("react").ForwardRefExoticComponent<LocalLoadingProps & import("react").RefAttributes<LocalLoadingRefApi>> & {
1452
+ useLocalLoading: () => {
1453
+ onRequest: (params?: TPlainObject) => void;
1454
+ };
1455
+ };
1447
1456
  export type onClick = (e?: React.MouseEvent<HTMLElement>) => void;
1448
1457
  export interface ModalActionProps {
1449
1458
  children: ReactElement | ((data: {
@@ -2470,7 +2479,7 @@ export declare const TreeWrapper: import("react").ForwardRefExoticComponent<Omit
2470
2479
  * 1. 不支持异步数据,异步使用serviceConfig方式
2471
2480
  * ```
2472
2481
  */
2473
- selectorTreeList?: TPlainObject<any>[] | undefined;
2482
+ selectorTreeList?: TPlainObject[] | undefined;
2474
2483
  /**
2475
2484
  * 通过服务获取数据后回调,当设置`selectorList`后无效果
2476
2485
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flatbiz/antd",
3
- "version": "4.2.32",
3
+ "version": "4.2.34",
4
4
  "description": "flat-biz ui components",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",
@@ -1,3 +0,0 @@
1
- /*! @flatjs/forge MIT @flatbiz/antd */
2
- var i;(function(i){i["YMDHms"]="YYYY-MM-DD HH:mm:ss";i["YMDHm"]="YYYY-MM-DD HH:mm";i["YMDH"]="YYYY-MM-DD HH";i["YMD"]="YYYY-MM-DD"})(i||(i={}));var r;(function(i){i["Hms"]="HH:mm:ss";i["Hm"]="HH:mm";i["H"]="HH";i["ms"]="mm:ss";i["m"]="mm";i["s"]="ss"})(r||(r={}));var t=function i(r,t){var e=[];for(var n=r;n<=t;n++){e.push(n)}return e};var e=function r(e,n){var a,m;if(!n||!e)return[];var u=0;var f=23;if(((a=n.minDateTime)==null?void 0:a.format(i.YMD))===e.format(i.YMD)){u=n.minDateTime.get("hour")}if(((m=n.maxDateTime)==null?void 0:m.format(i.YMD))===e.format(i.YMD)){f=n.maxDateTime.get("hour")}var o=t(u,f);if(n.disabledHourList){o=o.filter((function(i){var r;return!((r=n.disabledHourList)!=null&&r.includes(i))}))}return t(0,23).filter((function(i){return!o.includes(i)}))};var n=function r(e,n){var a,m;if(!n||!e)return[];var u=0;var f=59;if(((a=n.minDateTime)==null?void 0:a.format(i.YMDH))===e.format(i.YMDH)){u=n.minDateTime.get("minute")}if(((m=n.maxDateTime)==null?void 0:m.format(i.YMDH))===e.format(i.YMDH)){f=n.maxDateTime.get("minute")}var o=t(u,f);if(n.disabledMinuteList){o=o.filter((function(i){var r;return!((r=n.disabledMinuteList)!=null&&r.includes(i))}))}return t(0,59).filter((function(i){return!o.includes(i)}))};var a=function r(e,n){var a,m;if(!n||!e)return[];var u=0;var f=59;if(((a=n.minDateTime)==null?void 0:a.format(i.YMDHm))===e.format(i.YMDHm)){u=n.minDateTime.get("second")}if(((m=n.maxDateTime)==null?void 0:m.format(i.YMDHm))===e.format(i.YMDHm)){f=n.maxDateTime.get("second")}var o=t(u,f);if(n.disabledSecondList){o=o.filter((function(i){var r;return!((r=n.disabledSecondList)!=null&&r.includes(i))}))}return t(0,59).filter((function(i){return!o.includes(i)}))};export{i as D,n as a,a as b,r as c,e as g};
3
- //# sourceMappingURL=time-2782aa9b.js.map