@flatbiz/antd 5.0.44 → 5.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_commonjsHelpers-a3yINl_6.js +8 -0
- package/dist/_commonjsHelpers-a3yINl_6.js.map +1 -0
- package/dist/amount-fen-input-DI4mxLeO.js.map +1 -1
- package/dist/anchor-steps-CqqmN9Pf.js.map +1 -1
- package/dist/bootstrap/index.d.ts +1 -1
- package/dist/bootstrap-DtZAiLNG.js.map +1 -1
- package/dist/box-grid/index.js.map +1 -1
- package/dist/button-operate/index.d.ts +1 -1
- package/dist/button-operate-BIWXX7to.js.map +1 -1
- package/dist/button-wrapper-DezyMqPx.js.map +1 -1
- package/dist/card-layout-P-Qb5pCT.js.map +1 -1
- package/dist/cascader-wrapper-CMYrmR6L.js.map +1 -1
- package/dist/cell-render-1gunNiMm.js.map +1 -1
- package/dist/center-DgQUmnwe.js.map +1 -1
- package/dist/check-list/index.js.map +1 -1
- package/dist/checkbox-wrapper-BOIS5kIz.js.map +1 -1
- package/dist/color-picker-D8Tiiut0.js.map +1 -1
- package/dist/config-provider-wrapper/index.d.ts +1 -1
- package/dist/config-provider-wrapper-C72dPUJZ.js.map +1 -1
- package/dist/content-B5Twifti.js.map +1 -1
- package/dist/context-HuMVSP3b.js.map +1 -1
- package/dist/copy-BSlIwnwz.js.map +1 -1
- package/dist/css-node-hover-2asP-4iL.js.map +1 -1
- package/dist/data-render-U7RkK7OY.js.map +1 -1
- package/dist/date-picker-wrapper/index.d.ts +1 -1
- package/dist/date-picker-wrapper-D0_g483p.js.map +1 -1
- package/dist/date-range-picker-wrapper-BYOsf0I5.js.map +1 -1
- package/dist/date-range-picker-wrapper-form-item-C_ClxVlZ.js.map +1 -1
- package/dist/delete-node-BXaXf6fO.js.map +1 -1
- package/dist/dependencies-BPs1pFvo.js.map +1 -1
- package/dist/dialog-alert/index.d.ts +1 -1
- package/dist/dialog-alert-CDsZqePQ.js.map +1 -1
- package/dist/dialog-confirm/index.d.ts +1 -1
- package/dist/dialog-confirm-Dc6IMRm7.js.map +1 -1
- package/dist/dialog-drag-modal/index.js +2 -2
- package/dist/dialog-drawer/index.d.ts +1 -1
- package/dist/dialog-drawer-JEjoR512.js.map +1 -1
- package/dist/dialog-loading-Bm6n4_3R.js.map +1 -1
- package/dist/dialog-modal/index.d.ts +1 -1
- package/dist/dialog-modal-DLWmy5GR.js.map +1 -1
- package/dist/dom-DJxTwF3J.js.map +1 -1
- package/dist/{drag-Dxvr0bSy.js → drag-D891d5m3.js} +3 -2
- package/dist/drag-D891d5m3.js.map +1 -0
- package/dist/{drag-CGxDk1SF.js → drag-DT_ZyPqJ.js} +2 -2
- package/dist/{drag-CGxDk1SF.js.map → drag-DT_ZyPqJ.js.map} +1 -1
- package/dist/drag-collapse-D2mbeDvD.js.map +1 -1
- package/dist/drag-collapse-DhZ1V5P6.js.map +1 -1
- package/dist/drag-collapse-form-list/index.d.ts +1 -1
- package/dist/drag-editable-card/index.d.ts +1 -1
- package/dist/drag-editable-table/index.d.ts +6 -6
- package/dist/drag-editable-table/index.js +5 -5
- package/dist/drag-editable-table-pro/index.d.ts +2 -2
- package/dist/drag-editable-table-pro/index.js +1 -1
- package/dist/drag-form-list/index.d.ts +1 -1
- package/dist/drag-form-list-BrIW06Ex.js.map +1 -1
- package/dist/{drag-modal-C3Azghu3.js → drag-modal-Y41HH12_.js} +161 -204
- package/dist/drag-modal-Y41HH12_.js.map +1 -0
- package/dist/drag-table-Dk8HllSn.js.map +1 -1
- package/dist/{drawer-6Cq1mcQa.js → drawer-BfMemZA8.js} +2 -2
- package/dist/{drawer-6Cq1mcQa.js.map → drawer-BfMemZA8.js.map} +1 -1
- package/dist/dropdown-menu-wrapper/index.d.ts +1 -1
- package/dist/dropdown-menu-wrapper-BE3Liqoh.js.map +1 -1
- package/dist/dynamic-node-B_An5owN.js.map +1 -1
- package/dist/easy-table/index.d.ts +1 -1
- package/dist/easy-table/index.js.map +1 -1
- package/dist/editable-card/index.d.ts +1 -1
- package/dist/editable-card-tyOSUivy.js.map +1 -1
- package/dist/editable-card-zY9wCgE6.js.map +1 -1
- package/dist/editable-field-DBiVpCRE.js.map +1 -1
- package/dist/editable-table/index.d.ts +6 -6
- package/dist/editable-table/index.js +4 -4
- package/dist/{editable-table-Ckl_Q1fk.js → editable-table-0f-H4DHt.js} +2 -2
- package/dist/editable-table-0f-H4DHt.js.map +1 -0
- package/dist/editable-table-pro/index.d.ts +2 -2
- package/dist/editable-table-pro-B12YG7J_.js.map +1 -1
- package/dist/editor-C_Wf256R.js.map +1 -1
- package/dist/editor-CncecOdy.js.map +1 -1
- package/dist/editor-CxXSgnLP.js.map +1 -1
- package/dist/editor-Dhs7idH7.js.map +1 -1
- package/dist/editor-i79rPG9r.js.map +1 -1
- package/dist/error-boundary-D6RX4EQZ.js.map +1 -1
- package/dist/fba-app-Ew89Y7th.js.map +1 -1
- package/dist/fba-hooks/index.js.map +1 -1
- package/dist/fba-utils-okhb5eSJ.js.map +1 -1
- package/dist/file-export-B3RBS7Wl.js.map +1 -1
- package/dist/file-import-pbdSC5lZ.js.map +1 -1
- package/dist/file-select/index.d.ts +1 -1
- package/dist/file-select-BFrXFyKW.js.map +1 -1
- package/dist/flex-layout-BGtMe7zr.js.map +1 -1
- package/dist/form-ByFljQr9.js.map +1 -1
- package/dist/form-grid/index.js.map +1 -1
- package/dist/form-item-group/index.js.map +1 -1
- package/dist/form-item-hidden-BtQvJEx7.js.map +1 -1
- package/dist/form-item-text-bxy5q8tw.js.map +1 -1
- package/dist/form-item-wrapper-Ci7-5IKi.js.map +1 -1
- package/dist/form-list-wrapper/index.d.ts +1 -1
- package/dist/form-list-wrapper-BTSuq_pI.js.map +1 -1
- package/dist/form-wrapper-DBDMN0mN.js.map +1 -1
- package/dist/full-screen/index.js.map +1 -1
- package/dist/gap-5v_ndf2v.js.map +1 -1
- package/dist/icon-wrapper-DE97bI14.js.map +1 -1
- package/dist/in-view-XeG6cIRO.js.map +1 -1
- package/dist/{index-DSPRsDId.js → index-C6y8q2MK.js} +2 -2
- package/dist/{index-DSPRsDId.js.map → index-C6y8q2MK.js.map} +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.js +9 -9
- package/dist/input-search-wrapper/index.d.ts +1 -1
- package/dist/input-search-wrapper-dVFSFf3t.js.map +1 -1
- package/dist/input-text-area-wrapper/index.d.ts +1 -1
- package/dist/input-text-area-wrapper-CRi9fWSJ.js.map +1 -1
- package/dist/input-wrapper-hEJP2UIk.js.map +1 -1
- package/dist/label-value-layout-CbKTtTXJ.js.map +1 -1
- package/dist/{label-value-CcUdtnY1.js → label-value-o1pOZ2M6.js} +9 -1
- package/dist/label-value-o1pOZ2M6.js.map +1 -0
- package/dist/label-value-render/index.d.ts +3 -2
- package/dist/label-value-render/index.js +1 -1
- package/dist/layout-2woF_D6T.js.map +1 -1
- package/dist/local-loading/index.js.map +1 -1
- package/dist/mention-editor-zgAlQ8Cx.js.map +1 -1
- package/dist/mentions-950t_JC_.js.map +1 -1
- package/dist/modal-action-kQ60nGCG.js.map +1 -1
- package/dist/number-range-DUyTW0V1.js.map +1 -1
- package/dist/page-fixed-footer-BHBJsfnh.js.map +1 -1
- package/dist/pdf/index.js.map +1 -1
- package/dist/permission-D5AvZAS8.js.map +1 -1
- package/dist/pre-defined-class-name/index.js.map +1 -1
- package/dist/preview-Blwn4lHG.js.map +1 -1
- package/dist/preview-DvEwmG2h.js.map +1 -1
- package/dist/preview-image-BCBOv4h_.js.map +1 -1
- package/dist/radio-group-wrapper-Dip9OsdR.js.map +1 -1
- package/dist/relation-tree-BMas57Ck.js.map +1 -1
- package/dist/request-status-CTleOQtX.js.map +1 -1
- package/dist/resizable-drawer/index.js +3 -3
- package/dist/rich-text-editor-cqzUxX_s.js.map +1 -1
- package/dist/rich-text-viewer-FVi2i8nv.js.map +1 -1
- package/dist/rule-describe-BkkX7ukt.js.map +1 -1
- package/dist/search-BbKmdP-9.js.map +1 -1
- package/dist/search-menu/index.d.ts +1 -1
- package/dist/search-menu-N7nz0XoH.js.map +1 -1
- package/dist/selector-D0YxuDbf.js.map +1 -1
- package/dist/selector-fu9imgsR.js.map +1 -1
- package/dist/selector-wrapper/index.js +3 -3
- package/dist/{selector-wrapper-l88Z-JLK.js → selector-wrapper-B5PUm15M.js} +2 -2
- package/dist/{selector-wrapper-l88Z-JLK.js.map → selector-wrapper-B5PUm15M.js.map} +1 -1
- package/dist/selector-wrapper-search-BMyOMlZl.js.map +1 -1
- package/dist/selector-wrapper-simple-Vbt4cYNm.js.map +1 -1
- package/dist/simple-layout-mSolkIZ5.js.map +1 -1
- package/dist/sms-count-down-DyovY2s3.js.map +1 -1
- package/dist/span-Cjqb-rEm.js.map +1 -1
- package/dist/split-BHDOAdvw.js.map +1 -1
- package/dist/svg-CqFW3W-s.js.map +1 -1
- package/dist/switch-confirm-wrapper-CFFD0YJY.js.map +1 -1
- package/dist/switch-wrapper-CxGztawn.js.map +1 -1
- package/dist/symbol-DcM8okBP.js.map +1 -1
- package/dist/table-cell-render/index.d.ts +1 -1
- package/dist/table-scrollbar-yqz5FkCz.js.map +1 -1
- package/dist/tabs-cpy2bCpo.js.map +1 -1
- package/dist/tabs-wrapper-IxpPTX9z.js.map +1 -1
- package/dist/tag-group-B2oj-CYo.js.map +1 -1
- package/dist/tag-list-DrmpuEDJ.js.map +1 -1
- package/dist/tag-list-select-C8_X2SS-.js.map +1 -1
- package/dist/tag-wrapper-CJsZ8Jvy.js.map +1 -1
- package/dist/text-overflow-C42UFIyh.js.map +1 -1
- package/dist/time-Cv4_lLXu.js.map +1 -1
- package/dist/time-picker-wrapper-AQg6UCts.js.map +1 -1
- package/dist/time-range-picker-wrapper-C2Y0j-w1.js.map +1 -1
- package/dist/time-range-picker-wrapper-form-item-Cl0i2rZv.js.map +1 -1
- package/dist/tips-title-B6qZn_zc.js.map +1 -1
- package/dist/tips-wrapper-DvbgHMwl.js.map +1 -1
- package/dist/title-render-DGYUo6yV.js.map +1 -1
- package/dist/tree-modal/index.d.ts +1 -1
- package/dist/tree-modal/index.js.map +1 -1
- package/dist/tree-modal-selector/index.d.ts +1 -1
- package/dist/tree-wrapper/index.d.ts +1 -1
- package/dist/tree-wrapper/index.js.map +1 -1
- package/dist/upload-wrapper/index.d.ts +1 -1
- package/dist/upload-wrapper--IfkLPBP.js.map +1 -1
- package/dist/use-responsive-point-Bp3D3lZT.js.map +1 -1
- package/dist/x-mind-preview-Bx7UmHAu.js.map +1 -1
- package/package.json +1 -1
- package/dist/_commonjsHelpers-nJh5OW6J.js +0 -33
- package/dist/_commonjsHelpers-nJh5OW6J.js.map +0 -1
- package/dist/drag-Dxvr0bSy.js.map +0 -1
- package/dist/drag-modal-C3Azghu3.js.map +0 -1
- package/dist/editable-table-Ckl_Q1fk.js.map +0 -1
- package/dist/label-value-CcUdtnY1.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switch-wrapper-CxGztawn.js","sources":["@flatbiz/antd/src/switch-wrapper/switch-wrapper.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { SwitchProps, TooltipProps } from 'antd';\nimport { message, Switch, Tooltip } from 'antd';\nimport type { TAny } from '@flatbiz/utils';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nexport type SwitchWrapperValue = string | number | boolean;\nexport type SwitchWrapperProps = Omit<\n SwitchProps,\n 'checked' | 'defaultChecked' | 'onChange' | 'value'\n> & {\n value?: SwitchWrapperValue;\n checkedValue: SwitchWrapperValue;\n unCheckedValue: SwitchWrapperValue;\n onChange?: (value: SwitchWrapperValue) => void;\n tooltipProps?: Omit<TooltipProps, 'title'>;\n tooltipTitle?: string | ((value?: SwitchWrapperValue) => string | undefined);\n serviceConfig?: {\n onRequest: (value: SwitchWrapperValue) => TAny;\n message?: {\n success?: string;\n defaultError?: string;\n };\n };\n};\n/**\n * 解决Switch只能接收boolean的限制,与Form.Item结合使用最佳\n * ```\n * 1. value 为状态值,不局限于boolean,可以为 [string | number | boolean]\n * 2. checkedValue 选中值\n * 3. unCheckedValue 未选中值\n * 4. 与 Form.Item 结合使用,不再需要配置 valuePropName\n * <Form.Item name=\"fieldName\">\n * <SwitchWrapper checkedValue={2} unCheckedValue={1} />\n * </Form.Item>\n * 5. 可设置tooltip效果数据显示\n * 6. 可设置 serviceConfig 配置服务调用交互\n * ```\n */\nexport const SwitchWrapper = (props: SwitchWrapperProps) => {\n const {\n checkedValue,\n unCheckedValue,\n onChange,\n value,\n tooltipProps,\n tooltipTitle,\n serviceConfig,\n ...otherProps\n } = props;\n const [loading, setLoading] = useState<boolean>();\n const onChangeHandle = hooks.useCallbackRef(async (checked) => {\n const changeValue = checked ? checkedValue : unCheckedValue;\n if (serviceConfig?.onRequest) {\n try {\n setLoading(true);\n await serviceConfig.onRequest(changeValue);\n onChange?.(changeValue);\n void message.success(\n serviceConfig?.message?.success || '状态修改成功!'\n );\n } catch (error: TAny) {\n void message.error(\n error?.message ||\n serviceConfig?.message?.defaultError ||\n '状态修改失败!'\n );\n } finally {\n setLoading(false);\n }\n } else {\n onChange?.(changeValue);\n }\n });\n\n let tipTitle: string | undefined;\n\n if (typeof tooltipTitle === 'function') {\n tipTitle = tooltipTitle(value);\n } else {\n tipTitle = tooltipTitle;\n }\n\n if (tipTitle) {\n return (\n <Tooltip placement=\"top\" {...tooltipProps} title={tipTitle}>\n <Switch\n {...otherProps}\n checked={!isUndefinedOrNull(value) && checkedValue === value}\n onChange={onChangeHandle}\n />\n </Tooltip>\n );\n }\n\n return (\n <Switch\n loading={loading}\n {...otherProps}\n checked={!isUndefinedOrNull(value) && checkedValue === value}\n onChange={onChangeHandle}\n />\n );\n};\n"],"names":["SwitchWrapper","props","checkedValue","unCheckedValue","onChange","value","tooltipProps","tooltipTitle","serviceConfig","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","loading","setLoading","onChangeHandle","_hooks","useCallbackRef","checked","Promise","$return","$error","changeValue","_serviceConfig$messag","_serviceConfig$messag2","onRequest","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","$boundEx","bind","$Try_1_Post","$If_2","$Try_1_Catch","error","message","defaultError","resolve","then","$await_3","success","tipTitle","_jsx","Tooltip","_objectSpread","placement","title","children","Switch","isUndefinedOrNull"],"mappings":";;;;;;;;;;AA0BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,KAAyB,EAAK;AAC1D,EAAA,IACEC,YAAY,GAQVD,KAAK,CARPC,YAAY;IACZC,cAAc,GAOZF,KAAK,CAPPE,cAAc;IACdC,QAAQ,GAMNH,KAAK,CANPG,QAAQ;IACRC,KAAK,GAKHJ,KAAK,CALPI,KAAK;IACLC,YAAY,GAIVL,KAAK,CAJPK,YAAY;IACZC,YAAY,GAGVN,KAAK,CAHPM,YAAY;IACZC,aAAa,GAEXP,KAAK,CAFPO,aAAa;AACVC,IAAAA,UAAU,GAAAC,wBAAA,CACXT,KAAK,EAAAU,SAAA,CAAA;AACT,EAAA,IAAAC,SAAA,GAA8BC,QAAQ,EAAW;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1CI,IAAAA,OAAO,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,UAAU,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,IAAMI,cAAc,GAAGC,KAAA,CAAMC,cAAc,CAAC,UAAOC,OAAO,EAAA;AAAd,IAAA,OAAA,IAAAC,OAAA,CAAA,UAAAC,OAAA,EAAAC,MAAA,EAAA;AAAA,MAAA,IACpCC,WAAqD,EAAAC,qBAAA,EAAAC,sBAAA;AAArDF,MAAAA,WAAW,GAAGJ,OAAO,GAAGnB,YAAY,GAAGC,cAAc;AAC3D,MAAA,IAAIK,aAAa,
|
|
1
|
+
{"version":3,"file":"switch-wrapper-CxGztawn.js","sources":["@flatbiz/antd/src/switch-wrapper/switch-wrapper.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { SwitchProps, TooltipProps } from 'antd';\nimport { message, Switch, Tooltip } from 'antd';\nimport type { TAny } from '@flatbiz/utils';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nexport type SwitchWrapperValue = string | number | boolean;\nexport type SwitchWrapperProps = Omit<\n SwitchProps,\n 'checked' | 'defaultChecked' | 'onChange' | 'value'\n> & {\n value?: SwitchWrapperValue;\n checkedValue: SwitchWrapperValue;\n unCheckedValue: SwitchWrapperValue;\n onChange?: (value: SwitchWrapperValue) => void;\n tooltipProps?: Omit<TooltipProps, 'title'>;\n tooltipTitle?: string | ((value?: SwitchWrapperValue) => string | undefined);\n serviceConfig?: {\n onRequest: (value: SwitchWrapperValue) => TAny;\n message?: {\n success?: string;\n defaultError?: string;\n };\n };\n};\n/**\n * 解决Switch只能接收boolean的限制,与Form.Item结合使用最佳\n * ```\n * 1. value 为状态值,不局限于boolean,可以为 [string | number | boolean]\n * 2. checkedValue 选中值\n * 3. unCheckedValue 未选中值\n * 4. 与 Form.Item 结合使用,不再需要配置 valuePropName\n * <Form.Item name=\"fieldName\">\n * <SwitchWrapper checkedValue={2} unCheckedValue={1} />\n * </Form.Item>\n * 5. 可设置tooltip效果数据显示\n * 6. 可设置 serviceConfig 配置服务调用交互\n * ```\n */\nexport const SwitchWrapper = (props: SwitchWrapperProps) => {\n const {\n checkedValue,\n unCheckedValue,\n onChange,\n value,\n tooltipProps,\n tooltipTitle,\n serviceConfig,\n ...otherProps\n } = props;\n const [loading, setLoading] = useState<boolean>();\n const onChangeHandle = hooks.useCallbackRef(async (checked) => {\n const changeValue = checked ? checkedValue : unCheckedValue;\n if (serviceConfig?.onRequest) {\n try {\n setLoading(true);\n await serviceConfig.onRequest(changeValue);\n onChange?.(changeValue);\n void message.success(\n serviceConfig?.message?.success || '状态修改成功!'\n );\n } catch (error: TAny) {\n void message.error(\n error?.message ||\n serviceConfig?.message?.defaultError ||\n '状态修改失败!'\n );\n } finally {\n setLoading(false);\n }\n } else {\n onChange?.(changeValue);\n }\n });\n\n let tipTitle: string | undefined;\n\n if (typeof tooltipTitle === 'function') {\n tipTitle = tooltipTitle(value);\n } else {\n tipTitle = tooltipTitle;\n }\n\n if (tipTitle) {\n return (\n <Tooltip placement=\"top\" {...tooltipProps} title={tipTitle}>\n <Switch\n {...otherProps}\n checked={!isUndefinedOrNull(value) && checkedValue === value}\n onChange={onChangeHandle}\n />\n </Tooltip>\n );\n }\n\n return (\n <Switch\n loading={loading}\n {...otherProps}\n checked={!isUndefinedOrNull(value) && checkedValue === value}\n onChange={onChangeHandle}\n />\n );\n};\n"],"names":["SwitchWrapper","props","checkedValue","unCheckedValue","onChange","value","tooltipProps","tooltipTitle","serviceConfig","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","loading","setLoading","onChangeHandle","_hooks","useCallbackRef","checked","Promise","$return","$error","changeValue","_serviceConfig$messag","_serviceConfig$messag2","onRequest","$Try_1_Finally","$Try_1_Exit","$Try_1_Value","call","$boundEx","bind","$Try_1_Post","$If_2","$Try_1_Catch","error","message","defaultError","resolve","then","$await_3","success","tipTitle","_jsx","Tooltip","_objectSpread","placement","title","children","Switch","isUndefinedOrNull"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"symbol-DcM8okBP.js","sources":["@flatbiz/antd/src/text-symbol-wrapper/symbol.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { type CSSProperties, type ReactElement, useMemo } from 'react';\nimport { classNames } from '@dimjs/utils';\nimport './style.less';\n\nexport type TextSymbolWrapperProps = {\n className?: string;\n style?: CSSProperties;\n /** 内置图标类型 */\n symbolType?: 'required';\n /** 自定义标记符号,优先级大于 symbolType */\n symbol?: ReactNode;\n /** 标记位置,默认:brefore */\n position?: 'before' | 'after';\n /** 显示文本 */\n text?: string | ReactElement;\n symbolStyle?: CSSProperties;\n onSymbolClick?: (event) => void;\n /** 只隐藏符号,不隐藏文案 */\n hiddenSymbol?: boolean;\n /** 图标与文字之间的间距 */\n gap?: number;\n};\n\n/**\n * 为文字添加符号,例如:必填符号\n * ```\n * 例如: <TextSymbolWrapper text={'用户名'} symbolType=\"required\" />\n * ```\n */\nexport const TextSymbolWrapper = (props: TextSymbolWrapperProps) => {\n const gap = props.gap === undefined ? 3 : props.gap;\n const symbol = useMemo(() => {\n if (props.symbol) {\n return props.symbol;\n }\n if (props.symbolType === 'required') {\n return '*';\n }\n return undefined;\n }, [props.symbolType, props.symbol]);\n\n const position = props.position || 'before';\n\n if (props.hiddenSymbol) {\n return (\n <span\n className={classNames('text-symbol-wrapper', props.className)}\n style={props.style}\n >\n {props.text}\n </span>\n );\n }\n\n const cn = classNames(\n 'text-symbol-wrapper',\n { 'tsw-required': props.symbolType },\n props.className\n );\n\n const hasTextSymbolSyle =\n position === 'before' ? { left: -gap } : { right: -gap };\n const noTextSymbolSyle = position === 'before' ? { left: 0 } : { right: 0 };\n const symbolSyle = props.text ? hasTextSymbolSyle : noTextSymbolSyle;\n return (\n <span className={cn} style={props.style}>\n {symbol ? (\n <span\n className={classNames('tsw-symbol', `tsw-symbol-${position}`)}\n style={{\n ...hasTextSymbolSyle,\n ...symbolSyle,\n }}\n onClick={props.onSymbolClick}\n >\n {symbol}\n </span>\n ) : null}\n\n {props.text}\n </span>\n );\n};\n"],"names":["TextSymbolWrapper","props","gap","undefined","symbol","useMemo","symbolType","position","hiddenSymbol","_jsx","className","_classNames","style","children","text","cn","hasTextSymbolSyle","left","right","noTextSymbolSyle","symbolSyle","_jsxs","concat","_objectSpread","onClick","onSymbolClick"],"mappings":";;;;;;;AAwBA;AACA;AACA;AACA;AACA;AACA;IACaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAA6B,EAAK;AAClE,EAAA,IAAMC,GAAG,GAAGD,KAAK,CAACC,GAAG,KAAKC,SAAS,GAAG,CAAC,GAAGF,KAAK,CAACC,GAAG;AACnD,EAAA,IAAME,MAAM,GAAGC,OAAO,CAAC,YAAM;IAC3B,IAAIJ,KAAK,CAACG,MAAM,EAAE;MAChB,OAAOH,KAAK,CAACG,MAAM;AACrB;AACA,IAAA,IAAIH,KAAK,CAACK,UAAU,KAAK,UAAU,EAAE;AACnC,MAAA,OAAO,GAAG;AACZ;AACA,IAAA,OAAOH,SAAS;
|
|
1
|
+
{"version":3,"file":"symbol-DcM8okBP.js","sources":["@flatbiz/antd/src/text-symbol-wrapper/symbol.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { type CSSProperties, type ReactElement, useMemo } from 'react';\nimport { classNames } from '@dimjs/utils';\nimport './style.less';\n\nexport type TextSymbolWrapperProps = {\n className?: string;\n style?: CSSProperties;\n /** 内置图标类型 */\n symbolType?: 'required';\n /** 自定义标记符号,优先级大于 symbolType */\n symbol?: ReactNode;\n /** 标记位置,默认:brefore */\n position?: 'before' | 'after';\n /** 显示文本 */\n text?: string | ReactElement;\n symbolStyle?: CSSProperties;\n onSymbolClick?: (event) => void;\n /** 只隐藏符号,不隐藏文案 */\n hiddenSymbol?: boolean;\n /** 图标与文字之间的间距 */\n gap?: number;\n};\n\n/**\n * 为文字添加符号,例如:必填符号\n * ```\n * 例如: <TextSymbolWrapper text={'用户名'} symbolType=\"required\" />\n * ```\n */\nexport const TextSymbolWrapper = (props: TextSymbolWrapperProps) => {\n const gap = props.gap === undefined ? 3 : props.gap;\n const symbol = useMemo(() => {\n if (props.symbol) {\n return props.symbol;\n }\n if (props.symbolType === 'required') {\n return '*';\n }\n return undefined;\n }, [props.symbolType, props.symbol]);\n\n const position = props.position || 'before';\n\n if (props.hiddenSymbol) {\n return (\n <span\n className={classNames('text-symbol-wrapper', props.className)}\n style={props.style}\n >\n {props.text}\n </span>\n );\n }\n\n const cn = classNames(\n 'text-symbol-wrapper',\n { 'tsw-required': props.symbolType },\n props.className\n );\n\n const hasTextSymbolSyle =\n position === 'before' ? { left: -gap } : { right: -gap };\n const noTextSymbolSyle = position === 'before' ? { left: 0 } : { right: 0 };\n const symbolSyle = props.text ? hasTextSymbolSyle : noTextSymbolSyle;\n return (\n <span className={cn} style={props.style}>\n {symbol ? (\n <span\n className={classNames('tsw-symbol', `tsw-symbol-${position}`)}\n style={{\n ...hasTextSymbolSyle,\n ...symbolSyle,\n }}\n onClick={props.onSymbolClick}\n >\n {symbol}\n </span>\n ) : null}\n\n {props.text}\n </span>\n );\n};\n"],"names":["TextSymbolWrapper","props","gap","undefined","symbol","useMemo","symbolType","position","hiddenSymbol","_jsx","className","_classNames","style","children","text","cn","hasTextSymbolSyle","left","right","noTextSymbolSyle","symbolSyle","_jsxs","concat","_objectSpread","onClick","onSymbolClick"],"mappings":";;;;;;;AAwBA;AACA;AACA;AACA;AACA;AACA;IACaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAA6B,EAAK;AAClE,EAAA,IAAMC,GAAG,GAAGD,KAAK,CAACC,GAAG,KAAKC,SAAS,GAAG,CAAC,GAAGF,KAAK,CAACC,GAAG;AACnD,EAAA,IAAME,MAAM,GAAGC,OAAO,CAAC,YAAM;IAC3B,IAAIJ,KAAK,CAACG,MAAM,EAAE;MAChB,OAAOH,KAAK,CAACG,MAAM;AACrB,IAAA;AACA,IAAA,IAAIH,KAAK,CAACK,UAAU,KAAK,UAAU,EAAE;AACnC,MAAA,OAAO,GAAG;AACZ,IAAA;AACA,IAAA,OAAOH,SAAS;EAClB,CAAC,EAAE,CAACF,KAAK,CAACK,UAAU,EAAEL,KAAK,CAACG,MAAM,CAAC,CAAC;AAEpC,EAAA,IAAMG,QAAQ,GAAGN,KAAK,CAACM,QAAQ,IAAI,QAAQ;EAE3C,IAAIN,KAAK,CAACO,YAAY,EAAE;AACtB,IAAA,oBACEC,GAAA,CAAA,MAAA,EAAA;MACEC,SAAS,EAAEC,UAAA,CAAW,qBAAqB,EAAEV,KAAK,CAACS,SAAS,CAAE;MAC9DE,KAAK,EAAEX,KAAK,CAACW,KAAM;MAAAC,QAAA,EAElBZ,KAAK,CAACa;AAAI,KACP,CAAC;AAEX,EAAA;AAEA,EAAA,IAAMC,EAAE,GAAGJ,UAAA,CACT,qBAAqB,EACrB;IAAE,cAAc,EAAEV,KAAK,CAACK;AAAW,GAAC,EACpCL,KAAK,CAACS,SACR,CAAC;AAED,EAAA,IAAMM,iBAAiB,GACrBT,QAAQ,KAAK,QAAQ,GAAG;AAAEU,IAAAA,IAAI,EAAE,CAACf;AAAI,GAAC,GAAG;AAAEgB,IAAAA,KAAK,EAAE,CAAChB;GAAK;AAC1D,EAAA,IAAMiB,gBAAgB,GAAGZ,QAAQ,KAAK,QAAQ,GAAG;AAAEU,IAAAA,IAAI,EAAE;AAAE,GAAC,GAAG;AAAEC,IAAAA,KAAK,EAAE;GAAG;EAC3E,IAAME,UAAU,GAAGnB,KAAK,CAACa,IAAI,GAAGE,iBAAiB,GAAGG,gBAAgB;AACpE,EAAA,oBACEE,IAAA,CAAA,MAAA,EAAA;AAAMX,IAAAA,SAAS,EAAEK,EAAG;IAACH,KAAK,EAAEX,KAAK,CAACW,KAAM;IAAAC,QAAA,EAAA,CACrCT,MAAM,gBACLK,GAAA,CAAA,MAAA,EAAA;MACEC,SAAS,EAAEC,UAAA,CAAW,YAAY,gBAAAW,MAAA,CAAgBf,QAAQ,CAAE,CAAE;MAC9DK,KAAK,EAAAW,cAAA,CAAAA,cAAA,KACAP,iBAAiB,CAAA,EACjBI,UAAU,CACb;MACFI,OAAO,EAAEvB,KAAK,CAACwB,aAAc;AAAAZ,MAAAA,QAAA,EAE5BT;AAAM,KACH,CAAC,GACL,IAAI,EAEPH,KAAK,CAACa,IAAI;AAAA,GACP,CAAC;AAEX;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DateFormatType, TAny, TNoopDefine, TPlainObject } from '@flatbiz/utils';
|
|
2
2
|
import { ButtonProps, DropdownProps, FormInstance, ModalProps, PopconfirmProps, SpaceProps } from 'antd';
|
|
3
|
-
import { ConfigProviderProps } from 'antd/
|
|
3
|
+
import { ConfigProviderProps } from 'antd/lib/config-provider/index.js';
|
|
4
4
|
import { CSSProperties, ReactElement, ReactNode } from 'react';
|
|
5
5
|
|
|
6
6
|
export type ButtonWrapperProps = Omit<ButtonProps, "onClick" | "color"> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-scrollbar-yqz5FkCz.js","sources":["@flatbiz/antd/src/table-scrollbar/table-scrollbar.tsx"],"sourcesContent":["import {\n cloneElement,\n type ReactNode,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { useCreation, useEventListener, useInViewport, useSize } from 'ahooks';\nimport { Affix } from 'antd';\nimport { get } from '@dimjs/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport './style.less';\nconst { useEffectCustom } = fbaHooks;\n\ntype TableScrollProps = {\n children: ReactNode;\n /**\n * y轴的滚动条\n */\n target?: HTMLElement;\n};\n\nconst getParentNodeScroll = (\n parentNode: HTMLElement | null | undefined\n): HTMLElement | undefined => {\n if (!parentNode) return undefined;\n const computedStyle = getComputedStyle(parentNode);\n if (\n computedStyle.overflowY === 'scroll' ||\n computedStyle.overflowY === 'auto'\n ) {\n return parentNode;\n }\n return getParentNodeScroll(parentNode.parentNode as HTMLElement);\n};\n/**\n * 表格x轴浮动滚动条\n * ```\n * 使用方法\n * <TableScrollbar>\n * <Table/>\n * </TableScrollbar>\n * ```\n */\nexport const TableScrollbar = ({\n children,\n target,\n ...props\n}: TableScrollProps) => {\n const summary: any = get(children as any, 'props.summary');\n return cloneElement(children as any, {\n ...props,\n summary: (...args) => (\n <>\n {summary?.(...args)}\n <ScrollbarSummary target={target} />\n </>\n ),\n });\n};\ntype ScrollbarSummaryProps = {\n target?: HTMLElement;\n};\nconst ScrollbarSummary = ({ target }: ScrollbarSummaryProps) => {\n const refScrollBox = useRef<HTMLDivElement>();\n const refScroll = useRef<HTMLDivElement>();\n // 控制滚动条的显示\n const [show, setShow] = useState<boolean>(false);\n // 获取表格和表格包裹框\n const { table, tableBox } = useCreation(() => {\n const getParentTable = (\n parentNode: HTMLElement | null | undefined\n ): HTMLElement | undefined => {\n if (!parentNode) return undefined;\n if (parentNode.nodeName === 'TABLE') {\n return parentNode;\n }\n return getParentTable(parentNode.parentNode as HTMLElement);\n };\n const table = getParentTable(refScrollBox?.current?.parentElement);\n return {\n table,\n tableBox: table?.parentElement,\n };\n }, [refScrollBox.current]);\n // 表格是否显示\n const [inViewport] = useInViewport(table?.querySelector('tbody'));\n\n // 监听左右滚动框的大小变化\n const size = useSize(tableBox);\n // 获取上下滚动事件的滚动条\n const _target = useCreation(() => {\n if (target) return target;\n return getParentNodeScroll(table) || document.body;\n }, [target, table, size]);\n\n useEffectCustom(() => {\n if (show && refScrollBox.current && refScroll.current) {\n if (refScrollBox.current.clientWidth != tableBox?.clientWidth) {\n refScrollBox.current.style.width = `${tableBox?.clientWidth || 0}px`;\n }\n if (refScroll.current.clientWidth != table?.clientWidth) {\n refScroll.current.style.width = `${table?.clientWidth || 0}px`;\n }\n }\n }, [size, show]);\n // 注册原始滚动条事件\n useEventListener(\n 'scroll',\n ({ target }) => {\n if (refScrollBox.current) {\n refScrollBox.current.scrollLeft = target.scrollLeft;\n }\n },\n { target: () => tableBox }\n );\n // 注册原始自定义滚动条时间\n useEventListener(\n 'scroll',\n ({ target }) => {\n if (tableBox) tableBox.scrollLeft = target.scrollLeft;\n },\n { target: refScrollBox }\n );\n\n const [key, setKey] = useState<number>(0);\n const rootRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n let parentNode = rootRef.current?.parentNode as HTMLElement;\n let inModal = false;\n while (parentNode != null) {\n if (\n parentNode.classList?.contains('ant-modal-content') ||\n parentNode.classList?.contains('ant-drawer-body')\n ) {\n inModal = true;\n break;\n }\n parentNode = parentNode.parentNode as HTMLElement;\n }\n if (inModal) {\n setTimeout(() => {\n setKey(Date.now());\n }, 400);\n } else {\n setKey(Date.now());\n }\n }, []);\n\n return (\n <div className=\"scrollbar-main\" ref={rootRef}>\n {key ? (\n <Affix\n offsetBottom={inViewport ? 13 : 0}\n style={{ opacity: show ? 1 : 0 }}\n onChange={(value) => {\n setShow(!!value);\n }}\n target={() => _target}\n >\n <div ref={refScrollBox as any} className=\"scrollbar-box\">\n <div ref={refScroll as any} style={{ height: 1 }}></div>\n </div>\n </Affix>\n ) : null}\n </div>\n );\n};\n"],"names":["useEffectCustom","fbaHooks","getParentNodeScroll","parentNode","undefined","computedStyle","getComputedStyle","overflowY","TableScrollbar","_ref","children","target","props","_objectWithoutProperties","_excluded","summary","_get","cloneElement","_objectSpread","_len","arguments","length","args","Array","_key","_jsxs","_Fragment","apply","_jsx","ScrollbarSummary","_ref2","refScrollBox","useRef","refScroll","_useState","useState","_useState2","_slicedToArray","show","setShow","_useCreation","useCreation","_refScrollBox$current","getParentTable","nodeName","table","current","parentElement","tableBox","_useInViewport","useInViewport","querySelector","_useInViewport2","inViewport","size","useSize","_target","document","body","clientWidth","style","width","concat","useEventListener","_ref3","scrollLeft","_ref4","_useState3","_useState4","key","setKey","rootRef","useEffect","_rootRef$current","inModal","_parentNode$classList","_parentNode$classList2","classList","contains","setTimeout","Date","now","className","ref","Affix","offsetBottom","opacity","onChange","value","height"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table-scrollbar-yqz5FkCz.js","sources":["@flatbiz/antd/src/table-scrollbar/table-scrollbar.tsx"],"sourcesContent":["import {\n cloneElement,\n type ReactNode,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { useCreation, useEventListener, useInViewport, useSize } from 'ahooks';\nimport { Affix } from 'antd';\nimport { get } from '@dimjs/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport './style.less';\nconst { useEffectCustom } = fbaHooks;\n\ntype TableScrollProps = {\n children: ReactNode;\n /**\n * y轴的滚动条\n */\n target?: HTMLElement;\n};\n\nconst getParentNodeScroll = (\n parentNode: HTMLElement | null | undefined\n): HTMLElement | undefined => {\n if (!parentNode) return undefined;\n const computedStyle = getComputedStyle(parentNode);\n if (\n computedStyle.overflowY === 'scroll' ||\n computedStyle.overflowY === 'auto'\n ) {\n return parentNode;\n }\n return getParentNodeScroll(parentNode.parentNode as HTMLElement);\n};\n/**\n * 表格x轴浮动滚动条\n * ```\n * 使用方法\n * <TableScrollbar>\n * <Table/>\n * </TableScrollbar>\n * ```\n */\nexport const TableScrollbar = ({\n children,\n target,\n ...props\n}: TableScrollProps) => {\n const summary: any = get(children as any, 'props.summary');\n return cloneElement(children as any, {\n ...props,\n summary: (...args) => (\n <>\n {summary?.(...args)}\n <ScrollbarSummary target={target} />\n </>\n ),\n });\n};\ntype ScrollbarSummaryProps = {\n target?: HTMLElement;\n};\nconst ScrollbarSummary = ({ target }: ScrollbarSummaryProps) => {\n const refScrollBox = useRef<HTMLDivElement>();\n const refScroll = useRef<HTMLDivElement>();\n // 控制滚动条的显示\n const [show, setShow] = useState<boolean>(false);\n // 获取表格和表格包裹框\n const { table, tableBox } = useCreation(() => {\n const getParentTable = (\n parentNode: HTMLElement | null | undefined\n ): HTMLElement | undefined => {\n if (!parentNode) return undefined;\n if (parentNode.nodeName === 'TABLE') {\n return parentNode;\n }\n return getParentTable(parentNode.parentNode as HTMLElement);\n };\n const table = getParentTable(refScrollBox?.current?.parentElement);\n return {\n table,\n tableBox: table?.parentElement,\n };\n }, [refScrollBox.current]);\n // 表格是否显示\n const [inViewport] = useInViewport(table?.querySelector('tbody'));\n\n // 监听左右滚动框的大小变化\n const size = useSize(tableBox);\n // 获取上下滚动事件的滚动条\n const _target = useCreation(() => {\n if (target) return target;\n return getParentNodeScroll(table) || document.body;\n }, [target, table, size]);\n\n useEffectCustom(() => {\n if (show && refScrollBox.current && refScroll.current) {\n if (refScrollBox.current.clientWidth != tableBox?.clientWidth) {\n refScrollBox.current.style.width = `${tableBox?.clientWidth || 0}px`;\n }\n if (refScroll.current.clientWidth != table?.clientWidth) {\n refScroll.current.style.width = `${table?.clientWidth || 0}px`;\n }\n }\n }, [size, show]);\n // 注册原始滚动条事件\n useEventListener(\n 'scroll',\n ({ target }) => {\n if (refScrollBox.current) {\n refScrollBox.current.scrollLeft = target.scrollLeft;\n }\n },\n { target: () => tableBox }\n );\n // 注册原始自定义滚动条时间\n useEventListener(\n 'scroll',\n ({ target }) => {\n if (tableBox) tableBox.scrollLeft = target.scrollLeft;\n },\n { target: refScrollBox }\n );\n\n const [key, setKey] = useState<number>(0);\n const rootRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n let parentNode = rootRef.current?.parentNode as HTMLElement;\n let inModal = false;\n while (parentNode != null) {\n if (\n parentNode.classList?.contains('ant-modal-content') ||\n parentNode.classList?.contains('ant-drawer-body')\n ) {\n inModal = true;\n break;\n }\n parentNode = parentNode.parentNode as HTMLElement;\n }\n if (inModal) {\n setTimeout(() => {\n setKey(Date.now());\n }, 400);\n } else {\n setKey(Date.now());\n }\n }, []);\n\n return (\n <div className=\"scrollbar-main\" ref={rootRef}>\n {key ? (\n <Affix\n offsetBottom={inViewport ? 13 : 0}\n style={{ opacity: show ? 1 : 0 }}\n onChange={(value) => {\n setShow(!!value);\n }}\n target={() => _target}\n >\n <div ref={refScrollBox as any} className=\"scrollbar-box\">\n <div ref={refScroll as any} style={{ height: 1 }}></div>\n </div>\n </Affix>\n ) : null}\n </div>\n );\n};\n"],"names":["useEffectCustom","fbaHooks","getParentNodeScroll","parentNode","undefined","computedStyle","getComputedStyle","overflowY","TableScrollbar","_ref","children","target","props","_objectWithoutProperties","_excluded","summary","_get","cloneElement","_objectSpread","_len","arguments","length","args","Array","_key","_jsxs","_Fragment","apply","_jsx","ScrollbarSummary","_ref2","refScrollBox","useRef","refScroll","_useState","useState","_useState2","_slicedToArray","show","setShow","_useCreation","useCreation","_refScrollBox$current","getParentTable","nodeName","table","current","parentElement","tableBox","_useInViewport","useInViewport","querySelector","_useInViewport2","inViewport","size","useSize","_target","document","body","clientWidth","style","width","concat","useEventListener","_ref3","scrollLeft","_ref4","_useState3","_useState4","key","setKey","rootRef","useEffect","_rootRef$current","inModal","_parentNode$classList","_parentNode$classList2","classList","contains","setTimeout","Date","now","className","ref","Affix","offsetBottom","opacity","onChange","value","height"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-cpy2bCpo.js","sources":["@flatbiz/antd/src/tabs-sticky/tabs.tsx"],"sourcesContent":["import {\n type CSSProperties,\n type ReactElement,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useSize } from 'ahooks';\nimport { Affix, type GetProps, Tabs } from 'antd';\nimport './style.less';\n\ntype TabsType = GetProps<typeof Tabs>;\n\nexport type TabsStickyProps = {\n tabsProps: Omit<TabsType, 'tabPosition'>;\n /** tabs头部布局 */\n headerRender?: ReactElement;\n /** 点击tabItem后,tab跳到顶部吸顶效果;默认值true */\n clickTabToTop?: boolean;\n /** 设置tabItem 内容包裹元素的样式 */\n tabItemContentWrapperStyle?: (key: string) => CSSProperties;\n};\n\n/**\n * Tabs吸顶组件\n * ```\n * 1. 组件根节点设置了 height: 100%、overflow: auto;所以外部包裹元素必须要有高度\n * ```\n */\nexport const TabsSticky = (props: TabsStickyProps) => {\n const tabsProps = props.tabsProps;\n\n const [activeKey, setActiveKey] = useState(tabsProps.defaultActiveKey);\n const headerRef = useRef<HTMLDivElement>(null);\n const affixRef = useRef<any>(null);\n const affixedFlagRef = useRef<boolean>();\n\n const headerSize = useSize(headerRef);\n\n const scollNodeRef = useRef<any>(null);\n\n const scollNodeSize = useSize(scollNodeRef);\n const affixRefSize = useSize(affixRef);\n\n useEffect(() => {\n if (tabsProps.activeKey) {\n setActiveKey(tabsProps.activeKey);\n }\n }, [tabsProps.activeKey]);\n\n const onChange = (activeKey) => {\n if (!tabsProps.activeKey) {\n setActiveKey(activeKey);\n }\n tabsProps.onChange?.(activeKey);\n const top = headerSize?.height || 0;\n if (affixedFlagRef.current) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n } else {\n if (props.clickTabToTop !== false) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n }\n }\n };\n\n const minHeight = (scollNodeSize?.height || 0) - (affixRefSize?.height || 0);\n\n const stickyTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n return {\n ...item,\n children: null,\n };\n });\n }, [tabsProps.items]);\n\n const contentTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n const wrapperStyle = props.tabItemContentWrapperStyle?.(item.key);\n return {\n ...item,\n children: (\n <div\n className=\"tabs-sticky-contents-item\"\n style={{\n minHeight,\n ...wrapperStyle,\n }}\n >\n {item.children}\n </div>\n ),\n };\n });\n }, [tabsProps.items, minHeight, props.tabItemContentWrapperStyle]);\n\n return (\n <div ref={scollNodeRef} style={{ height: '100%', overflowY: 'auto' }}>\n <div ref={headerRef}>{props.headerRender}</div>\n <Affix\n offsetTop={0}\n target={() => scollNodeRef.current as HTMLElement}\n onChange={(affixed) => {\n affixedFlagRef.current = affixed;\n }}\n >\n <div ref={affixRef}>\n <Tabs\n {...tabsProps}\n activeKey={activeKey}\n items={stickyTabItems}\n tabBarStyle={{ ...tabsProps.tabBarStyle, margin: 0 }}\n style={{\n backgroundColor: 'var(--block-bg-color)',\n ...tabsProps.style,\n }}\n onChange={onChange}\n />\n </div>\n </Affix>\n <Tabs\n activeKey={activeKey}\n className=\"tabs-sticky-contents\"\n items={contentTabItems}\n />\n </div>\n );\n};\n"],"names":["TabsSticky","props","tabsProps","_useState","useState","defaultActiveKey","_useState2","_slicedToArray","activeKey","setActiveKey","headerRef","useRef","affixRef","affixedFlagRef","headerSize","useSize","scollNodeRef","scollNodeSize","affixRefSize","useEffect","onChange","_tabsProps$onChange","call","top","height","current","_scollNodeRef$current","scrollTo","clickTabToTop","_scollNodeRef$current2","minHeight","stickyTabItems","useMemo","_tabsProps$items","items","map","item","_objectSpread","children","contentTabItems","_tabsProps$items2","_props$tabItemContent","wrapperStyle","tabItemContentWrapperStyle","key","_jsx","className","style","_jsxs","ref","overflowY","headerRender","Affix","offsetTop","target","affixed","Tabs","tabBarStyle","margin","backgroundColor"],"mappings":";;;;;;;;AAwBA;AACA;AACA;AACA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAMC,SAAS,GAAGD,KAAK,CAACC,SAAS;AAEjC,EAAA,IAAAC,SAAA,GAAkCC,QAAQ,CAACF,SAAS,CAACG,gBAAgB,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAA/DK,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,YAAY,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC9B,EAAA,IAAMI,SAAS,GAAGC,MAAM,CAAiB,IAAI,CAAC;AAC9C,EAAA,IAAMC,QAAQ,GAAGD,MAAM,CAAM,IAAI,CAAC;AAClC,EAAA,IAAME,cAAc,GAAGF,MAAM,EAAW;AAExC,EAAA,IAAMG,UAAU,GAAGC,OAAO,CAACL,SAAS,CAAC;AAErC,EAAA,IAAMM,YAAY,GAAGL,MAAM,CAAM,IAAI,CAAC;AAEtC,EAAA,IAAMM,aAAa,GAAGF,OAAO,CAACC,YAAY,CAAC;AAC3C,EAAA,IAAME,YAAY,GAAGH,OAAO,CAACH,QAAQ,CAAC;AAEtCO,EAAAA,SAAS,CAAC,YAAM;IACd,IAAIjB,SAAS,CAACM,SAAS,EAAE;AACvBC,MAAAA,YAAY,CAACP,SAAS,CAACM,SAAS,CAAC;AACnC;AACF,
|
|
1
|
+
{"version":3,"file":"tabs-cpy2bCpo.js","sources":["@flatbiz/antd/src/tabs-sticky/tabs.tsx"],"sourcesContent":["import {\n type CSSProperties,\n type ReactElement,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useSize } from 'ahooks';\nimport { Affix, type GetProps, Tabs } from 'antd';\nimport './style.less';\n\ntype TabsType = GetProps<typeof Tabs>;\n\nexport type TabsStickyProps = {\n tabsProps: Omit<TabsType, 'tabPosition'>;\n /** tabs头部布局 */\n headerRender?: ReactElement;\n /** 点击tabItem后,tab跳到顶部吸顶效果;默认值true */\n clickTabToTop?: boolean;\n /** 设置tabItem 内容包裹元素的样式 */\n tabItemContentWrapperStyle?: (key: string) => CSSProperties;\n};\n\n/**\n * Tabs吸顶组件\n * ```\n * 1. 组件根节点设置了 height: 100%、overflow: auto;所以外部包裹元素必须要有高度\n * ```\n */\nexport const TabsSticky = (props: TabsStickyProps) => {\n const tabsProps = props.tabsProps;\n\n const [activeKey, setActiveKey] = useState(tabsProps.defaultActiveKey);\n const headerRef = useRef<HTMLDivElement>(null);\n const affixRef = useRef<any>(null);\n const affixedFlagRef = useRef<boolean>();\n\n const headerSize = useSize(headerRef);\n\n const scollNodeRef = useRef<any>(null);\n\n const scollNodeSize = useSize(scollNodeRef);\n const affixRefSize = useSize(affixRef);\n\n useEffect(() => {\n if (tabsProps.activeKey) {\n setActiveKey(tabsProps.activeKey);\n }\n }, [tabsProps.activeKey]);\n\n const onChange = (activeKey) => {\n if (!tabsProps.activeKey) {\n setActiveKey(activeKey);\n }\n tabsProps.onChange?.(activeKey);\n const top = headerSize?.height || 0;\n if (affixedFlagRef.current) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n } else {\n if (props.clickTabToTop !== false) {\n scollNodeRef.current?.scrollTo({\n top,\n });\n }\n }\n };\n\n const minHeight = (scollNodeSize?.height || 0) - (affixRefSize?.height || 0);\n\n const stickyTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n return {\n ...item,\n children: null,\n };\n });\n }, [tabsProps.items]);\n\n const contentTabItems = useMemo(() => {\n return tabsProps.items?.map((item) => {\n const wrapperStyle = props.tabItemContentWrapperStyle?.(item.key);\n return {\n ...item,\n children: (\n <div\n className=\"tabs-sticky-contents-item\"\n style={{\n minHeight,\n ...wrapperStyle,\n }}\n >\n {item.children}\n </div>\n ),\n };\n });\n }, [tabsProps.items, minHeight, props.tabItemContentWrapperStyle]);\n\n return (\n <div ref={scollNodeRef} style={{ height: '100%', overflowY: 'auto' }}>\n <div ref={headerRef}>{props.headerRender}</div>\n <Affix\n offsetTop={0}\n target={() => scollNodeRef.current as HTMLElement}\n onChange={(affixed) => {\n affixedFlagRef.current = affixed;\n }}\n >\n <div ref={affixRef}>\n <Tabs\n {...tabsProps}\n activeKey={activeKey}\n items={stickyTabItems}\n tabBarStyle={{ ...tabsProps.tabBarStyle, margin: 0 }}\n style={{\n backgroundColor: 'var(--block-bg-color)',\n ...tabsProps.style,\n }}\n onChange={onChange}\n />\n </div>\n </Affix>\n <Tabs\n activeKey={activeKey}\n className=\"tabs-sticky-contents\"\n items={contentTabItems}\n />\n </div>\n );\n};\n"],"names":["TabsSticky","props","tabsProps","_useState","useState","defaultActiveKey","_useState2","_slicedToArray","activeKey","setActiveKey","headerRef","useRef","affixRef","affixedFlagRef","headerSize","useSize","scollNodeRef","scollNodeSize","affixRefSize","useEffect","onChange","_tabsProps$onChange","call","top","height","current","_scollNodeRef$current","scrollTo","clickTabToTop","_scollNodeRef$current2","minHeight","stickyTabItems","useMemo","_tabsProps$items","items","map","item","_objectSpread","children","contentTabItems","_tabsProps$items2","_props$tabItemContent","wrapperStyle","tabItemContentWrapperStyle","key","_jsx","className","style","_jsxs","ref","overflowY","headerRender","Affix","offsetTop","target","affixed","Tabs","tabBarStyle","margin","backgroundColor"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabs-wrapper-IxpPTX9z.js","sources":["@flatbiz/antd/src/tabs-wrapper/tabs-wrapper.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TabsProps } from 'antd';\nimport { Tabs } from 'antd';\nimport { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { sessionStorageCache } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport './style.less';\n\nexport type TabsWrapperProps = TabsProps & {\n /**\n * Tabs Header 提供 Sticky 效果,默认值:true\n * @deprecated 已废弃 4.3.0版本移除,请使用 isFixed 属性\n */\n isSticky?: boolean;\n /**\n * Tabs Header 提供 Fixed 效果,默认值:true\n */\n isFixed?: boolean;\n /** 是否取消 active 缓存 */\n cancelActiveCache?: boolean;\n activeCacheKey?: string;\n /** 隐藏头部 */\n hiddenTabHeader?: boolean;\n};\n\n/**\n * Tabs 包装组件\n * ```\n * 1. Tabs Header 提供 Sticky 效果,默认值:true\n * 2. 使用时,父级必须要有高度,可置于Flex布局中\n * 3. 默认缓存激活的tab item(activeKey受控操作下缓存无效)\n * 当未设置activeKey,非受控操作时,组件内部会会话缓存activeKey,在刷新时,会显示上次的激活的tab item\n * 缓存Key:如果未设置 activeCacheKey,则使用默认的 cache key(tabs-wrapper-activeKey)\n * 缓存模式:会话缓存,在浏览器关闭后,会清除\n * ```\n */\nexport const TabsWrapper = (props: TabsWrapperProps) => {\n const {\n isSticky = true,\n isFixed = true,\n activeCacheKey,\n cancelActiveCache,\n hiddenTabHeader,\n ...otherProps\n } = props;\n // 是否受控操作\n const isControl = Object.prototype.hasOwnProperty.call(props, 'activeKey');\n const cacheKey = activeCacheKey || 'tabs-wrapper-activeKey';\n const isFixedNew = isUndefined(isFixed) ? isSticky : isFixed;\n\n const onChange = hooks.useCallbackRef((activeKey: string) => {\n if (cancelActiveCache !== true && !isControl) {\n sessionStorageCache.set(cacheKey, { activeKey });\n }\n otherProps.onChange?.(activeKey);\n });\n\n const defaultActiveKey = useMemo(() => {\n if (cancelActiveCache === true || isControl) {\n return props.defaultActiveKey;\n }\n const chcheActiveKey = sessionStorageCache.get(cacheKey)?.activeKey as\n | string\n | undefined;\n return chcheActiveKey || otherProps.defaultActiveKey;\n }, [\n cacheKey,\n cancelActiveCache,\n isControl,\n otherProps.defaultActiveKey,\n props.defaultActiveKey,\n ]);\n\n const className = classNames(\n 'fba-tabs-wrapper',\n {\n 'fba-tabs-wrapper-fixed': isFixedNew,\n 'fba-tabs-wrapper-hidden-header': hiddenTabHeader,\n },\n otherProps.className\n );\n\n return (\n <Tabs\n {...otherProps}\n className={className}\n defaultActiveKey={defaultActiveKey}\n onChange={onChange}\n />\n );\n};\n"],"names":["TabsWrapper","props","_props$isSticky","isSticky","_props$isFixed","isFixed","activeCacheKey","cancelActiveCache","hiddenTabHeader","otherProps","_objectWithoutProperties","_excluded","isControl","Object","prototype","hasOwnProperty","call","cacheKey","isFixedNew","_isUndefined","onChange","_hooks","useCallbackRef","activeKey","_otherProps$onChange","sessionStorageCache","set","defaultActiveKey","useMemo","_sessionStorageCache$","chcheActiveKey","get","className","_classNames","_jsx","Tabs","_objectSpread"],"mappings":";;;;;;;;;;;;AA0BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;AACtD,EAAA,IAAAC,eAAA,GAOID,KAAK,CANPE,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,eAAA,
|
|
1
|
+
{"version":3,"file":"tabs-wrapper-IxpPTX9z.js","sources":["@flatbiz/antd/src/tabs-wrapper/tabs-wrapper.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TabsProps } from 'antd';\nimport { Tabs } from 'antd';\nimport { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { sessionStorageCache } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport './style.less';\n\nexport type TabsWrapperProps = TabsProps & {\n /**\n * Tabs Header 提供 Sticky 效果,默认值:true\n * @deprecated 已废弃 4.3.0版本移除,请使用 isFixed 属性\n */\n isSticky?: boolean;\n /**\n * Tabs Header 提供 Fixed 效果,默认值:true\n */\n isFixed?: boolean;\n /** 是否取消 active 缓存 */\n cancelActiveCache?: boolean;\n activeCacheKey?: string;\n /** 隐藏头部 */\n hiddenTabHeader?: boolean;\n};\n\n/**\n * Tabs 包装组件\n * ```\n * 1. Tabs Header 提供 Sticky 效果,默认值:true\n * 2. 使用时,父级必须要有高度,可置于Flex布局中\n * 3. 默认缓存激活的tab item(activeKey受控操作下缓存无效)\n * 当未设置activeKey,非受控操作时,组件内部会会话缓存activeKey,在刷新时,会显示上次的激活的tab item\n * 缓存Key:如果未设置 activeCacheKey,则使用默认的 cache key(tabs-wrapper-activeKey)\n * 缓存模式:会话缓存,在浏览器关闭后,会清除\n * ```\n */\nexport const TabsWrapper = (props: TabsWrapperProps) => {\n const {\n isSticky = true,\n isFixed = true,\n activeCacheKey,\n cancelActiveCache,\n hiddenTabHeader,\n ...otherProps\n } = props;\n // 是否受控操作\n const isControl = Object.prototype.hasOwnProperty.call(props, 'activeKey');\n const cacheKey = activeCacheKey || 'tabs-wrapper-activeKey';\n const isFixedNew = isUndefined(isFixed) ? isSticky : isFixed;\n\n const onChange = hooks.useCallbackRef((activeKey: string) => {\n if (cancelActiveCache !== true && !isControl) {\n sessionStorageCache.set(cacheKey, { activeKey });\n }\n otherProps.onChange?.(activeKey);\n });\n\n const defaultActiveKey = useMemo(() => {\n if (cancelActiveCache === true || isControl) {\n return props.defaultActiveKey;\n }\n const chcheActiveKey = sessionStorageCache.get(cacheKey)?.activeKey as\n | string\n | undefined;\n return chcheActiveKey || otherProps.defaultActiveKey;\n }, [\n cacheKey,\n cancelActiveCache,\n isControl,\n otherProps.defaultActiveKey,\n props.defaultActiveKey,\n ]);\n\n const className = classNames(\n 'fba-tabs-wrapper',\n {\n 'fba-tabs-wrapper-fixed': isFixedNew,\n 'fba-tabs-wrapper-hidden-header': hiddenTabHeader,\n },\n otherProps.className\n );\n\n return (\n <Tabs\n {...otherProps}\n className={className}\n defaultActiveKey={defaultActiveKey}\n onChange={onChange}\n />\n );\n};\n"],"names":["TabsWrapper","props","_props$isSticky","isSticky","_props$isFixed","isFixed","activeCacheKey","cancelActiveCache","hiddenTabHeader","otherProps","_objectWithoutProperties","_excluded","isControl","Object","prototype","hasOwnProperty","call","cacheKey","isFixedNew","_isUndefined","onChange","_hooks","useCallbackRef","activeKey","_otherProps$onChange","sessionStorageCache","set","defaultActiveKey","useMemo","_sessionStorageCache$","chcheActiveKey","get","className","_classNames","_jsx","Tabs","_objectSpread"],"mappings":";;;;;;;;;;;;AA0BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;AACtD,EAAA,IAAAC,eAAA,GAOID,KAAK,CANPE,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,eAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,eAAA;IAAAE,cAAA,GAMbH,KAAK,CALPI,OAAO;AAAPA,IAAAA,OAAO,GAAAD,cAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,cAAA;IACdE,cAAc,GAIZL,KAAK,CAJPK,cAAc;IACdC,iBAAiB,GAGfN,KAAK,CAHPM,iBAAiB;IACjBC,eAAe,GAEbP,KAAK,CAFPO,eAAe;AACZC,IAAAA,UAAU,GAAAC,wBAAA,CACXT,KAAK,EAAAU,SAAA,CAAA;AACT;AACA,EAAA,IAAMC,SAAS,GAAGC,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACf,KAAK,EAAE,WAAW,CAAC;AAC1E,EAAA,IAAMgB,QAAQ,GAAGX,cAAc,IAAI,wBAAwB;EAC3D,IAAMY,UAAU,GAAGC,WAAA,CAAYd,OAAO,CAAC,GAAGF,QAAQ,GAAGE,OAAO;EAE5D,IAAMe,QAAQ,GAAGC,KAAA,CAAMC,cAAc,CAAC,UAACC,SAAiB,EAAK;AAAA,IAAA,IAAAC,oBAAA;AAC3D,IAAA,IAAIjB,iBAAiB,KAAK,IAAI,IAAI,CAACK,SAAS,EAAE;AAC5Ca,MAAAA,mBAAmB,CAACC,GAAG,CAACT,QAAQ,EAAE;AAAEM,QAAAA,SAAS,EAATA;AAAU,OAAC,CAAC;AAClD,IAAA;AACA,IAAA,CAAAC,oBAAA,GAAAf,UAAU,CAACW,QAAQ,MAAA,IAAA,IAAAI,oBAAA,KAAA,MAAA,IAAnBA,oBAAA,CAAAR,IAAA,CAAAP,UAAU,EAAYc,SAAS,CAAC;AAClC,EAAA,CAAC,CAAC;AAEF,EAAA,IAAMI,gBAAgB,GAAGC,OAAO,CAAC,YAAM;AAAA,IAAA,IAAAC,qBAAA;AACrC,IAAA,IAAItB,iBAAiB,KAAK,IAAI,IAAIK,SAAS,EAAE;MAC3C,OAAOX,KAAK,CAAC0B,gBAAgB;AAC/B,IAAA;AACA,IAAA,IAAMG,cAAc,GAAA,CAAAD,qBAAA,GAAGJ,mBAAmB,CAACM,GAAG,CAACd,QAAQ,CAAC,MAAA,IAAA,IAAAY,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAjCA,qBAAA,CAAmCN,SAE7C;AACb,IAAA,OAAOO,cAAc,IAAIrB,UAAU,CAACkB,gBAAgB;AACtD,EAAA,CAAC,EAAE,CACDV,QAAQ,EACRV,iBAAiB,EACjBK,SAAS,EACTH,UAAU,CAACkB,gBAAgB,EAC3B1B,KAAK,CAAC0B,gBAAgB,CACvB,CAAC;AAEF,EAAA,IAAMK,SAAS,GAAGC,UAAA,CAChB,kBAAkB,EAClB;AACE,IAAA,wBAAwB,EAAEf,UAAU;AACpC,IAAA,gCAAgC,EAAEV;AACpC,GAAC,EACDC,UAAU,CAACuB,SACb,CAAC;EAED,oBACEE,GAAA,CAACC,IAAI,EAAAC,cAAA,CAAAA,cAAA,KACC3B,UAAU,CAAA,EAAA,EAAA,EAAA;AACduB,IAAAA,SAAS,EAAEA,SAAU;AACrBL,IAAAA,gBAAgB,EAAEA,gBAAiB;AACnCP,IAAAA,QAAQ,EAAEA;AAAS,GAAA,CACpB,CAAC;AAEN;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-group-B2oj-CYo.js","sources":["@flatbiz/antd/src/tag-group/tag-group.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport type { SpaceProps } from 'antd';\nimport { Space, Tag } from 'antd';\nimport { fbaHooks } from '../fba-hooks/index.js';\n\ntype TagGroupDataItem = {\n label: string;\n value: string | number;\n color?: string;\n};\n\nexport type TagGroupProps = {\n dataList: TagGroupDataItem[];\n /**\n * 颜色配置数据,例如:{ 1:'red', 2: 'blue'} key值与 dataList中value相同\n */\n colorMap?: Record<string, string>;\n spaceProps?: SpaceProps;\n};\n\n/**\n * Tag 列表显示\n */\nexport const TagGroup: FC<TagGroupProps> = (props) => {\n const theme = fbaHooks.useThemeToken();\n return (\n <Space wrap size={5} {...props.spaceProps}>\n {props.dataList.map((item, index) => {\n const color =\n item.color || props.colorMap?.[item.value] || theme.colorPrimary;\n return (\n <Tag color={color} key={index}>\n {item.label}\n </Tag>\n );\n })}\n </Space>\n );\n};\n"],"names":["TagGroup","props","theme","fbaHooks","useThemeToken","_jsx","Space","_objectSpread","wrap","size","spaceProps","children","dataList","map","item","index","_props$colorMap","color","colorMap","value","colorPrimary","Tag","label"],"mappings":";;;;;;;AAoBA;AACA;AACA;IACaA,QAA2B,GAAG,SAA9BA,QAA2BA,CAAIC,KAAK,EAAK;AACpD,EAAA,IAAMC,KAAK,GAAGC,QAAQ,CAACC,aAAa,EAAE;AACtC,EAAA,oBACEC,GAAA,CAACC,KAAK,EAAAC,cAAA,CAAAA,cAAA,CAAA;IAACC,IAAI,EAAA,IAAA;AAACC,IAAAA,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"tag-group-B2oj-CYo.js","sources":["@flatbiz/antd/src/tag-group/tag-group.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport type { SpaceProps } from 'antd';\nimport { Space, Tag } from 'antd';\nimport { fbaHooks } from '../fba-hooks/index.js';\n\ntype TagGroupDataItem = {\n label: string;\n value: string | number;\n color?: string;\n};\n\nexport type TagGroupProps = {\n dataList: TagGroupDataItem[];\n /**\n * 颜色配置数据,例如:{ 1:'red', 2: 'blue'} key值与 dataList中value相同\n */\n colorMap?: Record<string, string>;\n spaceProps?: SpaceProps;\n};\n\n/**\n * Tag 列表显示\n */\nexport const TagGroup: FC<TagGroupProps> = (props) => {\n const theme = fbaHooks.useThemeToken();\n return (\n <Space wrap size={5} {...props.spaceProps}>\n {props.dataList.map((item, index) => {\n const color =\n item.color || props.colorMap?.[item.value] || theme.colorPrimary;\n return (\n <Tag color={color} key={index}>\n {item.label}\n </Tag>\n );\n })}\n </Space>\n );\n};\n"],"names":["TagGroup","props","theme","fbaHooks","useThemeToken","_jsx","Space","_objectSpread","wrap","size","spaceProps","children","dataList","map","item","index","_props$colorMap","color","colorMap","value","colorPrimary","Tag","label"],"mappings":";;;;;;;AAoBA;AACA;AACA;IACaA,QAA2B,GAAG,SAA9BA,QAA2BA,CAAIC,KAAK,EAAK;AACpD,EAAA,IAAMC,KAAK,GAAGC,QAAQ,CAACC,aAAa,EAAE;AACtC,EAAA,oBACEC,GAAA,CAACC,KAAK,EAAAC,cAAA,CAAAA,cAAA,CAAA;IAACC,IAAI,EAAA,IAAA;AAACC,IAAAA,IAAI,EAAE;GAAE,EAAKR,KAAK,CAACS,UAAU,CAAA,EAAA,EAAA,EAAA;IAAAC,QAAA,EACtCV,KAAK,CAACW,QAAQ,CAACC,GAAG,CAAC,UAACC,IAAI,EAAEC,KAAK,EAAK;AAAA,MAAA,IAAAC,eAAA;MACnC,IAAMC,KAAK,GACTH,IAAI,CAACG,KAAK,KAAA,CAAAD,eAAA,GAAIf,KAAK,CAACiB,QAAQ,cAAAF,eAAA,KAAA,MAAA,GAAA,MAAA,GAAdA,eAAA,CAAiBF,IAAI,CAACK,KAAK,CAAC,CAAA,IAAIjB,KAAK,CAACkB,YAAY;MAClE,oBACEf,GAAA,CAACgB,GAAG,EAAA;AAACJ,QAAAA,KAAK,EAAEA,KAAM;QAAAN,QAAA,EACfG,IAAI,CAACQ;AAAK,OAAA,EADWP,KAEnB,CAAC;IAEV,CAAC;AAAC,GAAA,CACG,CAAC;AAEZ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-list-DrmpuEDJ.js","sources":["@flatbiz/antd/src/tag-list-render/tag-list.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { Fragment, useMemo } from 'react';\nimport { Popover, Tag } from 'antd';\nimport { isUndefinedOrNull, toArray, valueIsEqual } from '@flatbiz/utils';\n\nexport type TagListRenderValue = string | number | boolean;\nexport type TagListRenderDataItem = {\n label: string;\n value: TagListRenderValue;\n color?: string;\n};\n\nexport type TagListRenderProps = {\n dataList: TagListRenderDataItem[];\n /** 颜色配置数据,例如:{ 1:'red', 2: 'blue'} key值与 dataList中value相同 */\n colorMap?: Record<string | number, string>;\n value?: TagListRenderValue | TagListRenderValue[];\n /** 是否强制匹配,默认值false */\n forceMatch?: boolean;\n /** 最大显示Tag数量,超出折叠隐藏 */\n maxShowCount?: number;\n /** 触发maxShowCount后,被折叠的内容是否显示完整tag,默认值:false */\n foldShowAllTag?: boolean;\n /** 所有tag背景匹配此颜色,在colorMap为空、dataList中未配置color的情况下有效果 */\n tagColor?: string;\n /** 未匹配到color时,是否显示Tag效果,默认值:true */\n noColorShowTag?: boolean;\n};\n\n/**\n * 在列表数据dataList中通过value匹配数据,以Tag形式展示\n * ```\n * 1. forceMatch: 是否强制匹配(默认值false)\n * - false: 匹配不到显示value值,\n * - true:匹配不到不显示\n * 2. value 与 dataList中label、value任一相等,都可匹配\n *\n * 用法1:\n * <TagListRender\n * dataList=[{ label: '启用', value: 1 }]\n * colorMap={{ 1:'red', 2: 'blue'}}\n * value={1} />\n * =>\n * <Tag color={'red'}>启用</Tag>\n *\n * 用法2\n * <TagListRender\n * dataList=[{ label: '启用', value: 1. color: 'red' }]\n * value=\"启用\" />\n * =>\n * <Tag color={'red'}>启用</Tag>\n * ```\n */\nexport const TagListRender: FC<TagListRenderProps> = (props) => {\n const valueList = toArray<TagListRenderValue>(props.value);\n const maxShowCount = props.maxShowCount || 0;\n const tagList = useMemo(() => {\n if (isUndefinedOrNull(props.value)) {\n return [];\n }\n return valueList\n .map((value) => {\n const target = props.dataList?.find(\n (item) => valueIsEqual(item.value, value) || item.label === value\n );\n if (target) {\n return {\n label: target.label || target.value,\n color: props.colorMap?.[String(target.value)] || target.color,\n value: value,\n };\n }\n if (props.forceMatch) {\n return undefined;\n }\n return { label: `${value}`, color: undefined, value: value };\n })\n .filter(Boolean) as TagListRenderDataItem[];\n }, [\n props.colorMap,\n props.dataList,\n props.forceMatch,\n props.value,\n valueList,\n ]);\n\n if (tagList.length === 0) {\n return <Fragment>{props.value}</Fragment>;\n }\n\n const newTagList = tagList.slice(0, maxShowCount || tagList.length);\n\n const popoverTagList =\n newTagList.length < tagList.length\n ? props.foldShowAllTag\n ? tagList\n : tagList.slice(maxShowCount, tagList.length)\n : [];\n\n return (\n <Fragment>\n {newTagList.map((item, index) => {\n const color = item.color;\n if (!color && props.noColorShowTag === false) {\n return <Fragment key={index}>{item.label}</Fragment>;\n }\n return (\n <Tag\n color={color}\n style={\n index === newTagList.length - 1\n ? { margin: '0' }\n : { marginRight: 5 }\n }\n key={index}\n >\n {item.label}\n </Tag>\n );\n })}\n {popoverTagList.length > 0 ? (\n <Popover\n content={\n <TagListRender\n {...props}\n value={popoverTagList.map((item) => item.value)}\n dataList={popoverTagList}\n maxShowCount={undefined}\n />\n }\n >\n <Tag color=\"blue\" style={{ marginLeft: 5, cursor: 'pointer' }}>\n ...\n </Tag>\n </Popover>\n ) : null}\n </Fragment>\n );\n};\n\nTagListRender.defaultProps = {\n forceMatch: false,\n};\n"],"names":["TagListRender","props","valueList","toArray","value","maxShowCount","tagList","useMemo","isUndefinedOrNull","map","_props$dataList","target","dataList","find","item","valueIsEqual","label","_props$colorMap","color","colorMap","String","forceMatch","undefined","concat","filter","Boolean","length","_jsx","Fragment","children","newTagList","slice","popoverTagList","foldShowAllTag","_jsxs","index","noColorShowTag","Tag","style","margin","marginRight","Popover","content","_TagListRender","_objectSpread","marginLeft","cursor","defaultProps"],"mappings":";;;;;;;;AA6BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,cAAqC,GAAG,SAAxCA,aAAqCA,CAAIC,KAAK,EAAK;AAC9D,EAAA,IAAMC,SAAS,GAAGC,OAAO,CAAqBF,KAAK,CAACG,KAAK,CAAC;AAC1D,EAAA,IAAMC,YAAY,GAAGJ,KAAK,CAACI,YAAY,IAAI,CAAC;AAC5C,EAAA,IAAMC,OAAO,GAAGC,OAAO,CAAC,YAAM;AAC5B,IAAA,IAAIC,iBAAiB,CAACP,KAAK,CAACG,KAAK,CAAC,EAAE;AAClC,MAAA,OAAO,EAAE;AACX;AACA,IAAA,OAAOF,SAAS,CACbO,GAAG,CAAC,UAACL,KAAK,EAAK;AAAA,MAAA,IAAAM,eAAA;AACd,MAAA,IAAMC,MAAM,GAAA,CAAAD,eAAA,GAAGT,KAAK,CAACW,QAAQ,
|
|
1
|
+
{"version":3,"file":"tag-list-DrmpuEDJ.js","sources":["@flatbiz/antd/src/tag-list-render/tag-list.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { Fragment, useMemo } from 'react';\nimport { Popover, Tag } from 'antd';\nimport { isUndefinedOrNull, toArray, valueIsEqual } from '@flatbiz/utils';\n\nexport type TagListRenderValue = string | number | boolean;\nexport type TagListRenderDataItem = {\n label: string;\n value: TagListRenderValue;\n color?: string;\n};\n\nexport type TagListRenderProps = {\n dataList: TagListRenderDataItem[];\n /** 颜色配置数据,例如:{ 1:'red', 2: 'blue'} key值与 dataList中value相同 */\n colorMap?: Record<string | number, string>;\n value?: TagListRenderValue | TagListRenderValue[];\n /** 是否强制匹配,默认值false */\n forceMatch?: boolean;\n /** 最大显示Tag数量,超出折叠隐藏 */\n maxShowCount?: number;\n /** 触发maxShowCount后,被折叠的内容是否显示完整tag,默认值:false */\n foldShowAllTag?: boolean;\n /** 所有tag背景匹配此颜色,在colorMap为空、dataList中未配置color的情况下有效果 */\n tagColor?: string;\n /** 未匹配到color时,是否显示Tag效果,默认值:true */\n noColorShowTag?: boolean;\n};\n\n/**\n * 在列表数据dataList中通过value匹配数据,以Tag形式展示\n * ```\n * 1. forceMatch: 是否强制匹配(默认值false)\n * - false: 匹配不到显示value值,\n * - true:匹配不到不显示\n * 2. value 与 dataList中label、value任一相等,都可匹配\n *\n * 用法1:\n * <TagListRender\n * dataList=[{ label: '启用', value: 1 }]\n * colorMap={{ 1:'red', 2: 'blue'}}\n * value={1} />\n * =>\n * <Tag color={'red'}>启用</Tag>\n *\n * 用法2\n * <TagListRender\n * dataList=[{ label: '启用', value: 1. color: 'red' }]\n * value=\"启用\" />\n * =>\n * <Tag color={'red'}>启用</Tag>\n * ```\n */\nexport const TagListRender: FC<TagListRenderProps> = (props) => {\n const valueList = toArray<TagListRenderValue>(props.value);\n const maxShowCount = props.maxShowCount || 0;\n const tagList = useMemo(() => {\n if (isUndefinedOrNull(props.value)) {\n return [];\n }\n return valueList\n .map((value) => {\n const target = props.dataList?.find(\n (item) => valueIsEqual(item.value, value) || item.label === value\n );\n if (target) {\n return {\n label: target.label || target.value,\n color: props.colorMap?.[String(target.value)] || target.color,\n value: value,\n };\n }\n if (props.forceMatch) {\n return undefined;\n }\n return { label: `${value}`, color: undefined, value: value };\n })\n .filter(Boolean) as TagListRenderDataItem[];\n }, [\n props.colorMap,\n props.dataList,\n props.forceMatch,\n props.value,\n valueList,\n ]);\n\n if (tagList.length === 0) {\n return <Fragment>{props.value}</Fragment>;\n }\n\n const newTagList = tagList.slice(0, maxShowCount || tagList.length);\n\n const popoverTagList =\n newTagList.length < tagList.length\n ? props.foldShowAllTag\n ? tagList\n : tagList.slice(maxShowCount, tagList.length)\n : [];\n\n return (\n <Fragment>\n {newTagList.map((item, index) => {\n const color = item.color;\n if (!color && props.noColorShowTag === false) {\n return <Fragment key={index}>{item.label}</Fragment>;\n }\n return (\n <Tag\n color={color}\n style={\n index === newTagList.length - 1\n ? { margin: '0' }\n : { marginRight: 5 }\n }\n key={index}\n >\n {item.label}\n </Tag>\n );\n })}\n {popoverTagList.length > 0 ? (\n <Popover\n content={\n <TagListRender\n {...props}\n value={popoverTagList.map((item) => item.value)}\n dataList={popoverTagList}\n maxShowCount={undefined}\n />\n }\n >\n <Tag color=\"blue\" style={{ marginLeft: 5, cursor: 'pointer' }}>\n ...\n </Tag>\n </Popover>\n ) : null}\n </Fragment>\n );\n};\n\nTagListRender.defaultProps = {\n forceMatch: false,\n};\n"],"names":["TagListRender","props","valueList","toArray","value","maxShowCount","tagList","useMemo","isUndefinedOrNull","map","_props$dataList","target","dataList","find","item","valueIsEqual","label","_props$colorMap","color","colorMap","String","forceMatch","undefined","concat","filter","Boolean","length","_jsx","Fragment","children","newTagList","slice","popoverTagList","foldShowAllTag","_jsxs","index","noColorShowTag","Tag","style","margin","marginRight","Popover","content","_TagListRender","_objectSpread","marginLeft","cursor","defaultProps"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-list-select-C8_X2SS-.js","sources":["@flatbiz/antd/src/tag-list-select/tag-list-select.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { Fragment, useMemo } from 'react';\nimport { Tag } from 'antd';\nimport { isUndefinedOrNull, toArray, valueIsEqual } from '@flatbiz/utils';\n\nexport type TagListSelectValue = string | number | boolean;\nexport type TagListSelectDataItem = {\n label: string;\n value: TagListSelectValue;\n color?: string;\n};\n\nexport type TagListSelectProps = {\n dataList: TagListSelectDataItem[];\n /** 颜色配置数据,例如:{ 1:'red', 2: 'blue'} key值与 dataList中value相同 */\n colorMap?: Record<string | number, string>;\n value?: TagListSelectValue | TagListSelectValue[];\n /** 是否强制匹配,默认值false */\n forceMatch?: boolean;\n};\n\n/**\n * 在列表数据中通过value匹配数据,以Tag形式展示\n * @deprecated 已过期,请使用 TagListRender 组件\n * @param props\n * @returns\n * ```\n * 1. forceMatch: 是否强制匹配(默认值false)\n * - false: 匹配不到显示value值,\n * - true:匹配不到不显示\n * 2. value 与 dataList中label、value任一相等,都可匹配\n *\n * 用法1:\n * <TagListSelect\n * dataList=[{ label: '启用', value: 1 }]\n * colorMap={{ 1:'red', 2: 'blue'}}\n * value={1} />\n * =>\n * <Tag color={'red'}>启用</Tag>\n *\n * 用法2\n * <TagListSelect\n * dataList=[{ label: '启用', value: 1. color: 'red' }]\n * value=\"启用\" />\n * =>\n * <Tag color={'red'}>启用</Tag>\n * ```\n */\nexport const TagListSelect: FC<TagListSelectProps> = (props) => {\n const valueList = toArray<TagListSelectValue>(props.value);\n const tagList = useMemo(() => {\n if (isUndefinedOrNull(props.value)) {\n return [];\n }\n return valueList\n .map((value) => {\n const target = props.dataList?.find(\n (item) => valueIsEqual(item.value, value) || item.label === value\n );\n if (target) {\n return {\n label: target.label || target.value,\n color: props.colorMap?.[String(target.value)] || target.color,\n value: value,\n };\n }\n if (props.forceMatch) {\n return undefined;\n }\n return { label: `${value}`, color: undefined, value: value };\n })\n .filter(Boolean) as TagListSelectDataItem[];\n }, [\n props.colorMap,\n props.dataList,\n props.forceMatch,\n props.value,\n valueList,\n ]);\n\n if (tagList.length === 0) {\n return <Fragment>{props.value}</Fragment>;\n }\n\n const hasColor = tagList.find((item) => !!item?.color);\n\n if (hasColor) {\n return (\n <Fragment>\n {tagList.map((item, index) => {\n return (\n <Tag\n color={item.color}\n style={index === tagList.length - 1 ? { margin: '0' } : undefined}\n key={index}\n >\n {item.label}\n </Tag>\n );\n })}\n </Fragment>\n );\n }\n\n return <Fragment>{tagList.map((item) => item.label).join(',')}</Fragment>;\n};\n\nTagListSelect.defaultProps = {\n forceMatch: false,\n};\n"],"names":["TagListSelect","props","valueList","toArray","value","tagList","useMemo","isUndefinedOrNull","map","_props$dataList","target","dataList","find","item","valueIsEqual","label","_props$colorMap","color","colorMap","String","forceMatch","undefined","concat","filter","Boolean","length","_jsx","Fragment","children","hasColor","index","Tag","style","margin","join","defaultProps"],"mappings":";;;;;;;AAqBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,aAAqC,GAAG,SAAxCA,aAAqCA,CAAIC,KAAK,EAAK;AAC9D,EAAA,IAAMC,SAAS,GAAGC,OAAO,CAAqBF,KAAK,CAACG,KAAK,CAAC;AAC1D,EAAA,IAAMC,OAAO,GAAGC,OAAO,CAAC,YAAM;AAC5B,IAAA,IAAIC,iBAAiB,CAACN,KAAK,CAACG,KAAK,CAAC,EAAE;AAClC,MAAA,OAAO,EAAE;AACX;AACA,IAAA,OAAOF,SAAS,CACbM,GAAG,CAAC,UAACJ,KAAK,EAAK;AAAA,MAAA,IAAAK,eAAA;AACd,MAAA,IAAMC,MAAM,GAAA,CAAAD,eAAA,GAAGR,KAAK,CAACU,QAAQ,
|
|
1
|
+
{"version":3,"file":"tag-list-select-C8_X2SS-.js","sources":["@flatbiz/antd/src/tag-list-select/tag-list-select.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { Fragment, useMemo } from 'react';\nimport { Tag } from 'antd';\nimport { isUndefinedOrNull, toArray, valueIsEqual } from '@flatbiz/utils';\n\nexport type TagListSelectValue = string | number | boolean;\nexport type TagListSelectDataItem = {\n label: string;\n value: TagListSelectValue;\n color?: string;\n};\n\nexport type TagListSelectProps = {\n dataList: TagListSelectDataItem[];\n /** 颜色配置数据,例如:{ 1:'red', 2: 'blue'} key值与 dataList中value相同 */\n colorMap?: Record<string | number, string>;\n value?: TagListSelectValue | TagListSelectValue[];\n /** 是否强制匹配,默认值false */\n forceMatch?: boolean;\n};\n\n/**\n * 在列表数据中通过value匹配数据,以Tag形式展示\n * @deprecated 已过期,请使用 TagListRender 组件\n * @param props\n * @returns\n * ```\n * 1. forceMatch: 是否强制匹配(默认值false)\n * - false: 匹配不到显示value值,\n * - true:匹配不到不显示\n * 2. value 与 dataList中label、value任一相等,都可匹配\n *\n * 用法1:\n * <TagListSelect\n * dataList=[{ label: '启用', value: 1 }]\n * colorMap={{ 1:'red', 2: 'blue'}}\n * value={1} />\n * =>\n * <Tag color={'red'}>启用</Tag>\n *\n * 用法2\n * <TagListSelect\n * dataList=[{ label: '启用', value: 1. color: 'red' }]\n * value=\"启用\" />\n * =>\n * <Tag color={'red'}>启用</Tag>\n * ```\n */\nexport const TagListSelect: FC<TagListSelectProps> = (props) => {\n const valueList = toArray<TagListSelectValue>(props.value);\n const tagList = useMemo(() => {\n if (isUndefinedOrNull(props.value)) {\n return [];\n }\n return valueList\n .map((value) => {\n const target = props.dataList?.find(\n (item) => valueIsEqual(item.value, value) || item.label === value\n );\n if (target) {\n return {\n label: target.label || target.value,\n color: props.colorMap?.[String(target.value)] || target.color,\n value: value,\n };\n }\n if (props.forceMatch) {\n return undefined;\n }\n return { label: `${value}`, color: undefined, value: value };\n })\n .filter(Boolean) as TagListSelectDataItem[];\n }, [\n props.colorMap,\n props.dataList,\n props.forceMatch,\n props.value,\n valueList,\n ]);\n\n if (tagList.length === 0) {\n return <Fragment>{props.value}</Fragment>;\n }\n\n const hasColor = tagList.find((item) => !!item?.color);\n\n if (hasColor) {\n return (\n <Fragment>\n {tagList.map((item, index) => {\n return (\n <Tag\n color={item.color}\n style={index === tagList.length - 1 ? { margin: '0' } : undefined}\n key={index}\n >\n {item.label}\n </Tag>\n );\n })}\n </Fragment>\n );\n }\n\n return <Fragment>{tagList.map((item) => item.label).join(',')}</Fragment>;\n};\n\nTagListSelect.defaultProps = {\n forceMatch: false,\n};\n"],"names":["TagListSelect","props","valueList","toArray","value","tagList","useMemo","isUndefinedOrNull","map","_props$dataList","target","dataList","find","item","valueIsEqual","label","_props$colorMap","color","colorMap","String","forceMatch","undefined","concat","filter","Boolean","length","_jsx","Fragment","children","hasColor","index","Tag","style","margin","join","defaultProps"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tag-wrapper-CJsZ8Jvy.js","sources":["@flatbiz/antd/src/tag-wrapper/tag-wrapper.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { TagProps } from 'antd';\nimport { Tag } from 'antd';\nimport { LoadingOutlined } from '@ant-design/icons';\nimport { isPromise } from '@dimjs/lang';\nimport type { TAny } from '@flatbiz/utils';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport './style.less';\n\nexport type TagWrapperProps = Omit<TagProps, 'onClick'> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => Promise<TAny> | void;\n loading?: boolean;\n // 重复点击间隙,单位毫秒 默认值:500\n debounceDuration?: number;\n};\n\n/**\n * 为 Tag 添加 loading 效果\n */\nexport const TagWrapper = (props: TagWrapperProps) => {\n const { loading, children, debounceDuration, style, ...otherProps } = props;\n\n const [innerLoading, setLoading] = useState(false);\n const debounceDurationMew = isUndefinedOrNull(debounceDuration)\n ? 500\n : debounceDuration;\n\n fbaHooks.useEffectCustom(() => {\n if (!isUndefinedOrNull(loading)) {\n setLoading(loading || false);\n }\n }, [loading]);\n\n const onClick = hooks.useDebounceClick((e) => {\n const onClick = props.onClick;\n if (!onClick) {\n return;\n }\n const result = onClick(e);\n if (result && isPromise(result)) {\n setLoading(true);\n result\n .catch((error) => {\n console.error(error);\n })\n .finally(() => {\n setLoading(false);\n });\n }\n }, debounceDurationMew);\n\n return (\n <Tag\n {...otherProps}\n onClick={onClick}\n style={{ cursor: props.onClick ? 'pointer' : 'default', ...style }}\n >\n {innerLoading && (\n <div className=\"tw-center-loading\">\n <LoadingOutlined />\n </div>\n )}\n {innerLoading ? <div style={{ opacity: 0.5 }}>{children}</div> : children}\n </Tag>\n );\n};\n"],"names":["TagWrapper","props","loading","children","debounceDuration","style","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","innerLoading","setLoading","debounceDurationMew","isUndefinedOrNull","fbaHooks","useEffectCustom","onClick","_hooks","useDebounceClick","e","result","_isPromise","catch","error","console","finally","_jsxs","Tag","_objectSpread","cursor","_jsx","className","_LoadingOutlined","opacity"],"mappings":";;;;;;;;;;;;;AAkBA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAQC,OAAO,GAAuDD,KAAK,CAAnEC,OAAO;IAAEC,QAAQ,GAA6CF,KAAK,CAA1DE,QAAQ;IAAEC,gBAAgB,GAA2BH,KAAK,CAAhDG,gBAAgB;IAAEC,KAAK,GAAoBJ,KAAK,CAA9BI,KAAK;AAAKC,IAAAA,UAAU,GAAAC,wBAAA,CAAKN,KAAK,EAAAO,SAAA,CAAA;AAE3E,EAAA,IAAAC,SAAA,GAAmCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA3CI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,UAAU,GAAAH,UAAA,CAAA,CAAA,CAAA;EAC/B,IAAMI,mBAAmB,GAAGC,iBAAiB,CAACZ,gBAAgB,CAAC,GAC3D,GAAG,GACHA,gBAAgB;EAEpBa,QAAQ,CAACC,eAAe,CAAC,YAAM;AAC7B,IAAA,IAAI,CAACF,iBAAiB,CAACd,OAAO,CAAC,EAAE;AAC/BY,MAAAA,UAAU,CAACZ,OAAO,IAAI,KAAK,CAAC;AAC9B;AACF,
|
|
1
|
+
{"version":3,"file":"tag-wrapper-CJsZ8Jvy.js","sources":["@flatbiz/antd/src/tag-wrapper/tag-wrapper.tsx"],"sourcesContent":["import { useState } from 'react';\nimport type { TagProps } from 'antd';\nimport { Tag } from 'antd';\nimport { LoadingOutlined } from '@ant-design/icons';\nimport { isPromise } from '@dimjs/lang';\nimport type { TAny } from '@flatbiz/utils';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport './style.less';\n\nexport type TagWrapperProps = Omit<TagProps, 'onClick'> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => Promise<TAny> | void;\n loading?: boolean;\n // 重复点击间隙,单位毫秒 默认值:500\n debounceDuration?: number;\n};\n\n/**\n * 为 Tag 添加 loading 效果\n */\nexport const TagWrapper = (props: TagWrapperProps) => {\n const { loading, children, debounceDuration, style, ...otherProps } = props;\n\n const [innerLoading, setLoading] = useState(false);\n const debounceDurationMew = isUndefinedOrNull(debounceDuration)\n ? 500\n : debounceDuration;\n\n fbaHooks.useEffectCustom(() => {\n if (!isUndefinedOrNull(loading)) {\n setLoading(loading || false);\n }\n }, [loading]);\n\n const onClick = hooks.useDebounceClick((e) => {\n const onClick = props.onClick;\n if (!onClick) {\n return;\n }\n const result = onClick(e);\n if (result && isPromise(result)) {\n setLoading(true);\n result\n .catch((error) => {\n console.error(error);\n })\n .finally(() => {\n setLoading(false);\n });\n }\n }, debounceDurationMew);\n\n return (\n <Tag\n {...otherProps}\n onClick={onClick}\n style={{ cursor: props.onClick ? 'pointer' : 'default', ...style }}\n >\n {innerLoading && (\n <div className=\"tw-center-loading\">\n <LoadingOutlined />\n </div>\n )}\n {innerLoading ? <div style={{ opacity: 0.5 }}>{children}</div> : children}\n </Tag>\n );\n};\n"],"names":["TagWrapper","props","loading","children","debounceDuration","style","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","innerLoading","setLoading","debounceDurationMew","isUndefinedOrNull","fbaHooks","useEffectCustom","onClick","_hooks","useDebounceClick","e","result","_isPromise","catch","error","console","finally","_jsxs","Tag","_objectSpread","cursor","_jsx","className","_LoadingOutlined","opacity"],"mappings":";;;;;;;;;;;;;AAkBA;AACA;AACA;IACaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAQC,OAAO,GAAuDD,KAAK,CAAnEC,OAAO;IAAEC,QAAQ,GAA6CF,KAAK,CAA1DE,QAAQ;IAAEC,gBAAgB,GAA2BH,KAAK,CAAhDG,gBAAgB;IAAEC,KAAK,GAAoBJ,KAAK,CAA9BI,KAAK;AAAKC,IAAAA,UAAU,GAAAC,wBAAA,CAAKN,KAAK,EAAAO,SAAA,CAAA;AAE3E,EAAA,IAAAC,SAAA,GAAmCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA3CI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,UAAU,GAAAH,UAAA,CAAA,CAAA,CAAA;EAC/B,IAAMI,mBAAmB,GAAGC,iBAAiB,CAACZ,gBAAgB,CAAC,GAC3D,GAAG,GACHA,gBAAgB;EAEpBa,QAAQ,CAACC,eAAe,CAAC,YAAM;AAC7B,IAAA,IAAI,CAACF,iBAAiB,CAACd,OAAO,CAAC,EAAE;AAC/BY,MAAAA,UAAU,CAACZ,OAAO,IAAI,KAAK,CAAC;AAC9B,IAAA;AACF,EAAA,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,IAAMiB,OAAO,GAAGC,KAAA,CAAMC,gBAAgB,CAAC,UAACC,CAAC,EAAK;AAC5C,IAAA,IAAMH,OAAO,GAAGlB,KAAK,CAACkB,OAAO;IAC7B,IAAI,CAACA,OAAO,EAAE;AACZ,MAAA;AACF,IAAA;AACA,IAAA,IAAMI,MAAM,GAAGJ,OAAO,CAACG,CAAC,CAAC;AACzB,IAAA,IAAIC,MAAM,IAAIC,SAAA,CAAUD,MAAM,CAAC,EAAE;MAC/BT,UAAU,CAAC,IAAI,CAAC;AAChBS,MAAAA,MAAM,CACHE,KAAK,CAAC,UAACC,KAAK,EAAK;AAChBC,QAAAA,OAAO,CAACD,KAAK,CAACA,KAAK,CAAC;AACtB,MAAA,CAAC,CAAC,CACDE,OAAO,CAAC,YAAM;QACbd,UAAU,CAAC,KAAK,CAAC;AACnB,MAAA,CAAC,CAAC;AACN,IAAA;EACF,CAAC,EAAEC,mBAAmB,CAAC;EAEvB,oBACEc,IAAA,CAACC,GAAG,EAAAC,cAAA,CAAAA,cAAA,KACEzB,UAAU,CAAA,EAAA,EAAA,EAAA;AACda,IAAAA,OAAO,EAAEA,OAAQ;AACjBd,IAAAA,KAAK,EAAA0B,cAAA,CAAA;AAAIC,MAAAA,MAAM,EAAE/B,KAAK,CAACkB,OAAO,GAAG,SAAS,GAAG;AAAS,KAAA,EAAKd,KAAK,CAAG;IAAAF,QAAA,EAAA,CAElEU,YAAY,iBACXoB,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,mBAAmB;AAAA/B,MAAAA,QAAA,eAChC8B,GAAA,CAAAE,gBAAA,EAAA,EAAkB;AAAC,KAChB,CACN,EACAtB,YAAY,gBAAGoB,GAAA,CAAA,KAAA,EAAA;AAAK5B,MAAAA,KAAK,EAAE;AAAE+B,QAAAA,OAAO,EAAE;OAAM;AAAAjC,MAAAA,QAAA,EAAEA;KAAc,CAAC,GAAGA,QAAQ;AAAA,GAAA,CACtE,CAAC;AAEV;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-overflow-C42UFIyh.js","sources":["@flatbiz/antd/src/text-overflow/overflow-auto.tsx","@flatbiz/antd/src/text-overflow/overflow-length.tsx","@flatbiz/antd/src/text-overflow/overflow-width.tsx","@flatbiz/antd/src/text-overflow/text-overflow.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { useSize } from 'ahooks';\nimport { Tooltip } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type { TextOverflowProps } from './types.js';\nimport './style.less';\n\nexport const OverflowAuto = (props: TextOverflowProps) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const size = useSize(rootRef);\n const parentNodeWidth = size?.width || 0;\n const hideTextRef = useRef<HTMLSpanElement>(null);\n\n const hideTextSize = useSize(hideTextRef);\n\n // 文本宽度是否溢出\n const isTextOverflow = fbaHooks.useMemoCustom(() => {\n if (!hideTextSize?.width || !parentNodeWidth) return false;\n return hideTextSize.width > parentNodeWidth;\n }, [hideTextSize?.width, parentNodeWidth]);\n\n return (\n <div\n className={classNames('text-overflow', {\n 'tow-trigger': props.onClick,\n })}\n ref={rootRef}\n >\n <span className=\"tow-hidden\">\n <span className=\"tow-inner-text\" ref={hideTextRef}>\n {props.text}\n </span>\n </span>\n <Tooltip\n title={isTextOverflow && !props.hideTip ? props.text : undefined}\n >\n <span className=\"tow-content\">\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {props.text}\n </span>\n </span>\n </Tooltip>\n </div>\n );\n};\n","import { useRef } from 'react';\nimport { useSize } from 'ahooks';\nimport { Tooltip } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport type { TextOverflowProps } from './types.js';\n\nexport const OverflowLength = (props: Omit<TextOverflowProps, 'maxWidth'>) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const size = useSize(rootRef);\n const maxLength = props.maxLength as number;\n const parentNodeWidth = size?.width || 0;\n const text = props.text as string;\n const hideTextRef = useRef<HTMLSpanElement>(null);\n\n const hideTextSize = useSize(hideTextRef);\n const needCut = text.length > maxLength;\n\n const cutedTextWidth = hideTextSize?.width || 0;\n\n const showCustomEllipsis = needCut && cutedTextWidth < parentNodeWidth;\n\n const isTextOverflow = parentNodeWidth < cutedTextWidth + 1 || needCut;\n\n const cutValue = text.substring(0, props.maxLength);\n\n return (\n <div\n className={classNames('text-overflow', {\n 'tow-trigger': props.onClick,\n })}\n ref={rootRef}\n >\n <span className=\"tow-hidden\">\n <span className=\"tow-inner-text\" ref={hideTextRef}>\n {cutValue}\n </span>\n </span>\n\n <Tooltip title={isTextOverflow && !props.hideTip ? text : undefined}>\n {showCustomEllipsis ? (\n <span className=\"tow-cut-content\">\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {cutValue}...\n </span>\n </span>\n ) : (\n <span className=\"tow-content\">\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {text}\n </span>\n </span>\n )}\n </Tooltip>\n </div>\n );\n};\n","import { useMemo, useRef } from 'react';\nimport { useSize } from 'ahooks';\nimport { Tooltip } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport type { TextOverflowProps } from './types.js';\n\nexport const OverflowWidth = (props: Omit<TextOverflowProps, 'maxLength'>) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const rootSize = useSize(rootRef);\n const maxWidth = props.maxWidth || 0;\n const hideTextRef = useRef<HTMLSpanElement>(null);\n\n const hideTextSize = useSize(hideTextRef);\n\n const handleResult = useMemo(() => {\n if (!hideTextSize?.width || !rootSize?.width) return undefined;\n if (rootSize.width < maxWidth) {\n if (hideTextSize.width > rootSize.width) {\n return { isTextOverflow: true };\n }\n }\n if (hideTextSize.width < maxWidth) return undefined;\n if (hideTextSize.width > maxWidth) {\n return { isTextOverflow: true, width: maxWidth };\n }\n return undefined;\n }, [hideTextSize?.width, maxWidth]);\n\n const isTextOverflow = handleResult?.isTextOverflow;\n\n return (\n <div\n className={classNames('text-overflow', {\n 'tow-trigger': props.onClick,\n })}\n ref={rootRef}\n >\n <span className=\"tow-hidden\">\n <span className=\"tow-inner-text\" ref={hideTextRef}>\n {props.text}\n </span>\n </span>\n\n <Tooltip\n title={isTextOverflow && !props.hideTip ? props.text : undefined}\n >\n <span className=\"tow-content\" style={{ width: handleResult?.width }}>\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {props.text}\n </span>\n </span>\n </Tooltip>\n </div>\n );\n};\n","import { memo } from 'react';\nimport { isString } from '@dimjs/lang';\nimport { OverflowAuto } from './overflow-auto.jsx';\nimport { OverflowLength } from './overflow-length.jsx';\nimport { OverflowWidth } from './overflow-width.jsx';\nimport type { TextOverflowProps } from './types.js';\nimport './style.less';\n\nconst InnerTextOverflow = (props: TextOverflowProps) => {\n if (props.maxLength && isString(props.text)) {\n return <OverflowLength {...props} />;\n }\n if (props.maxWidth) {\n return <OverflowWidth {...props} />;\n }\n return <OverflowAuto {...props} />;\n};\n\n/**\n * 内容溢出截取,并在尾部添加...,被截取的添加Tooltip显示完整数据\n * ```\n * 控制文本显示三种方式\n * 1. 通过 maxLength 控制超长\n * 2. 通过 maxWidth 控制超长\n * 3. 与父节点宽度比较,控制超长\n * 4. 优先级 maxLength > maxWidth\n *\n * 注意:\n * 1. 当前节点父节点需要添加 overflow-x: hidden;\n * 2. 如果父节点设置flex-shrink会有影响,可复写flex-shrink: initial;\n * 3. 与 Table columns render结合使用,需要配置ellipsis=true\n * 例如:<Table columns={[{\n ...\n render: (value) => {\n return <TextOverflow text={value} />;\n },\n ellipsis: true,\n }]} />\n 4. 与 Table columns render结合使用,如果Table配置了 scroll={{ x: 'max-content' }}后,不能与TextOverflow maxWidth结合使用\n * ```\n */\nexport const TextOverflow = memo(InnerTextOverflow, (pre, next) => {\n if (\n pre.text !== next.text ||\n pre.maxLength !== next.maxLength ||\n pre.maxWidth !== pre.maxWidth\n ) {\n return false;\n }\n return true;\n});\n"],"names":["OverflowAuto","props","rootRef","useRef","size","useSize","parentNodeWidth","width","hideTextRef","hideTextSize","isTextOverflow","fbaHooks","useMemoCustom","_jsxs","className","_classNames","onClick","ref","children","_jsx","text","Tooltip","title","hideTip","undefined","OverflowLength","maxLength","needCut","length","cutedTextWidth","showCustomEllipsis","cutValue","substring","OverflowWidth","rootSize","maxWidth","handleResult","useMemo","style","InnerTextOverflow","_isString","_objectSpread","TextOverflow","memo","pre","next"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"text-overflow-C42UFIyh.js","sources":["@flatbiz/antd/src/text-overflow/overflow-auto.tsx","@flatbiz/antd/src/text-overflow/overflow-length.tsx","@flatbiz/antd/src/text-overflow/overflow-width.tsx","@flatbiz/antd/src/text-overflow/text-overflow.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { useSize } from 'ahooks';\nimport { Tooltip } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type { TextOverflowProps } from './types.js';\nimport './style.less';\n\nexport const OverflowAuto = (props: TextOverflowProps) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const size = useSize(rootRef);\n const parentNodeWidth = size?.width || 0;\n const hideTextRef = useRef<HTMLSpanElement>(null);\n\n const hideTextSize = useSize(hideTextRef);\n\n // 文本宽度是否溢出\n const isTextOverflow = fbaHooks.useMemoCustom(() => {\n if (!hideTextSize?.width || !parentNodeWidth) return false;\n return hideTextSize.width > parentNodeWidth;\n }, [hideTextSize?.width, parentNodeWidth]);\n\n return (\n <div\n className={classNames('text-overflow', {\n 'tow-trigger': props.onClick,\n })}\n ref={rootRef}\n >\n <span className=\"tow-hidden\">\n <span className=\"tow-inner-text\" ref={hideTextRef}>\n {props.text}\n </span>\n </span>\n <Tooltip\n title={isTextOverflow && !props.hideTip ? props.text : undefined}\n >\n <span className=\"tow-content\">\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {props.text}\n </span>\n </span>\n </Tooltip>\n </div>\n );\n};\n","import { useRef } from 'react';\nimport { useSize } from 'ahooks';\nimport { Tooltip } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport type { TextOverflowProps } from './types.js';\n\nexport const OverflowLength = (props: Omit<TextOverflowProps, 'maxWidth'>) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const size = useSize(rootRef);\n const maxLength = props.maxLength as number;\n const parentNodeWidth = size?.width || 0;\n const text = props.text as string;\n const hideTextRef = useRef<HTMLSpanElement>(null);\n\n const hideTextSize = useSize(hideTextRef);\n const needCut = text.length > maxLength;\n\n const cutedTextWidth = hideTextSize?.width || 0;\n\n const showCustomEllipsis = needCut && cutedTextWidth < parentNodeWidth;\n\n const isTextOverflow = parentNodeWidth < cutedTextWidth + 1 || needCut;\n\n const cutValue = text.substring(0, props.maxLength);\n\n return (\n <div\n className={classNames('text-overflow', {\n 'tow-trigger': props.onClick,\n })}\n ref={rootRef}\n >\n <span className=\"tow-hidden\">\n <span className=\"tow-inner-text\" ref={hideTextRef}>\n {cutValue}\n </span>\n </span>\n\n <Tooltip title={isTextOverflow && !props.hideTip ? text : undefined}>\n {showCustomEllipsis ? (\n <span className=\"tow-cut-content\">\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {cutValue}...\n </span>\n </span>\n ) : (\n <span className=\"tow-content\">\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {text}\n </span>\n </span>\n )}\n </Tooltip>\n </div>\n );\n};\n","import { useMemo, useRef } from 'react';\nimport { useSize } from 'ahooks';\nimport { Tooltip } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport type { TextOverflowProps } from './types.js';\n\nexport const OverflowWidth = (props: Omit<TextOverflowProps, 'maxLength'>) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const rootSize = useSize(rootRef);\n const maxWidth = props.maxWidth || 0;\n const hideTextRef = useRef<HTMLSpanElement>(null);\n\n const hideTextSize = useSize(hideTextRef);\n\n const handleResult = useMemo(() => {\n if (!hideTextSize?.width || !rootSize?.width) return undefined;\n if (rootSize.width < maxWidth) {\n if (hideTextSize.width > rootSize.width) {\n return { isTextOverflow: true };\n }\n }\n if (hideTextSize.width < maxWidth) return undefined;\n if (hideTextSize.width > maxWidth) {\n return { isTextOverflow: true, width: maxWidth };\n }\n return undefined;\n }, [hideTextSize?.width, maxWidth]);\n\n const isTextOverflow = handleResult?.isTextOverflow;\n\n return (\n <div\n className={classNames('text-overflow', {\n 'tow-trigger': props.onClick,\n })}\n ref={rootRef}\n >\n <span className=\"tow-hidden\">\n <span className=\"tow-inner-text\" ref={hideTextRef}>\n {props.text}\n </span>\n </span>\n\n <Tooltip\n title={isTextOverflow && !props.hideTip ? props.text : undefined}\n >\n <span className=\"tow-content\" style={{ width: handleResult?.width }}>\n <span className=\"tow-show-text\" onClick={props.onClick}>\n {props.text}\n </span>\n </span>\n </Tooltip>\n </div>\n );\n};\n","import { memo } from 'react';\nimport { isString } from '@dimjs/lang';\nimport { OverflowAuto } from './overflow-auto.jsx';\nimport { OverflowLength } from './overflow-length.jsx';\nimport { OverflowWidth } from './overflow-width.jsx';\nimport type { TextOverflowProps } from './types.js';\nimport './style.less';\n\nconst InnerTextOverflow = (props: TextOverflowProps) => {\n if (props.maxLength && isString(props.text)) {\n return <OverflowLength {...props} />;\n }\n if (props.maxWidth) {\n return <OverflowWidth {...props} />;\n }\n return <OverflowAuto {...props} />;\n};\n\n/**\n * 内容溢出截取,并在尾部添加...,被截取的添加Tooltip显示完整数据\n * ```\n * 控制文本显示三种方式\n * 1. 通过 maxLength 控制超长\n * 2. 通过 maxWidth 控制超长\n * 3. 与父节点宽度比较,控制超长\n * 4. 优先级 maxLength > maxWidth\n *\n * 注意:\n * 1. 当前节点父节点需要添加 overflow-x: hidden;\n * 2. 如果父节点设置flex-shrink会有影响,可复写flex-shrink: initial;\n * 3. 与 Table columns render结合使用,需要配置ellipsis=true\n * 例如:<Table columns={[{\n ...\n render: (value) => {\n return <TextOverflow text={value} />;\n },\n ellipsis: true,\n }]} />\n 4. 与 Table columns render结合使用,如果Table配置了 scroll={{ x: 'max-content' }}后,不能与TextOverflow maxWidth结合使用\n * ```\n */\nexport const TextOverflow = memo(InnerTextOverflow, (pre, next) => {\n if (\n pre.text !== next.text ||\n pre.maxLength !== next.maxLength ||\n pre.maxWidth !== pre.maxWidth\n ) {\n return false;\n }\n return true;\n});\n"],"names":["OverflowAuto","props","rootRef","useRef","size","useSize","parentNodeWidth","width","hideTextRef","hideTextSize","isTextOverflow","fbaHooks","useMemoCustom","_jsxs","className","_classNames","onClick","ref","children","_jsx","text","Tooltip","title","hideTip","undefined","OverflowLength","maxLength","needCut","length","cutedTextWidth","showCustomEllipsis","cutValue","substring","OverflowWidth","rootSize","maxWidth","handleResult","useMemo","style","InnerTextOverflow","_isString","_objectSpread","TextOverflow","memo","pre","next"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-Cv4_lLXu.js","sources":["@flatbiz/antd/src/_utils/constants.ts","@flatbiz/antd/src/_utils/time.ts"],"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 =\n | 'HH:mm:ss'\n | 'HH:mm'\n | 'HH'\n | 'mm:ss'\n | 'mm'\n | 'ss'\n | (string & {});\n","import type { Dayjs } from 'dayjs';\nimport { DayjsDateTypeEnum } from './constants.js';\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 (\n options.minDateTime?.format(DayjsDateTypeEnum.YMD) ===\n current.format(DayjsDateTypeEnum.YMD)\n ) {\n minTimeHour = options.minDateTime.get('hour');\n }\n if (\n options.maxDateTime?.format(DayjsDateTypeEnum.YMD) ===\n current.format(DayjsDateTypeEnum.YMD)\n ) {\n maxTimeHour = options.maxDateTime.get('hour');\n }\n let selectableMinute = range(minTimeHour, maxTimeHour);\n if (options.disabledHourList) {\n selectableMinute = selectableMinute.filter(\n (item) => !options.disabledHourList?.includes(item)\n );\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 (\n options.minDateTime?.format(DayjsDateTypeEnum.YMDH) ===\n current.format(DayjsDateTypeEnum.YMDH)\n ) {\n minTimeMinute = options.minDateTime.get('minute');\n }\n if (\n options.maxDateTime?.format(DayjsDateTypeEnum.YMDH) ===\n current.format(DayjsDateTypeEnum.YMDH)\n ) {\n maxTimeMinute = options.maxDateTime.get('minute');\n }\n let selectableMinute = range(minTimeMinute, maxTimeMinute);\n if (options.disabledMinuteList) {\n selectableMinute = selectableMinute.filter(\n (item) => !options.disabledMinuteList?.includes(item)\n );\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 (\n options.minDateTime?.format(DayjsDateTypeEnum.YMDHm) ===\n current.format(DayjsDateTypeEnum.YMDHm)\n ) {\n minTimeSecond = options.minDateTime.get('second');\n }\n if (\n options.maxDateTime?.format(DayjsDateTypeEnum.YMDHm) ===\n current.format(DayjsDateTypeEnum.YMDHm)\n ) {\n maxTimeSecond = options.maxDateTime.get('second');\n }\n let selectableMinute = range(minTimeSecond, maxTimeSecond);\n if (options.disabledSecondList) {\n selectableMinute = selectableMinute.filter(\n (item) => !options.disabledSecondList?.includes(item)\n );\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":";;
|
|
1
|
+
{"version":3,"file":"time-Cv4_lLXu.js","sources":["@flatbiz/antd/src/_utils/constants.ts","@flatbiz/antd/src/_utils/time.ts"],"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 =\n | 'HH:mm:ss'\n | 'HH:mm'\n | 'HH'\n | 'mm:ss'\n | 'mm'\n | 'ss'\n | (string & {});\n","import type { Dayjs } from 'dayjs';\nimport { DayjsDateTypeEnum } from './constants.js';\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 (\n options.minDateTime?.format(DayjsDateTypeEnum.YMD) ===\n current.format(DayjsDateTypeEnum.YMD)\n ) {\n minTimeHour = options.minDateTime.get('hour');\n }\n if (\n options.maxDateTime?.format(DayjsDateTypeEnum.YMD) ===\n current.format(DayjsDateTypeEnum.YMD)\n ) {\n maxTimeHour = options.maxDateTime.get('hour');\n }\n let selectableMinute = range(minTimeHour, maxTimeHour);\n if (options.disabledHourList) {\n selectableMinute = selectableMinute.filter(\n (item) => !options.disabledHourList?.includes(item)\n );\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 (\n options.minDateTime?.format(DayjsDateTypeEnum.YMDH) ===\n current.format(DayjsDateTypeEnum.YMDH)\n ) {\n minTimeMinute = options.minDateTime.get('minute');\n }\n if (\n options.maxDateTime?.format(DayjsDateTypeEnum.YMDH) ===\n current.format(DayjsDateTypeEnum.YMDH)\n ) {\n maxTimeMinute = options.maxDateTime.get('minute');\n }\n let selectableMinute = range(minTimeMinute, maxTimeMinute);\n if (options.disabledMinuteList) {\n selectableMinute = selectableMinute.filter(\n (item) => !options.disabledMinuteList?.includes(item)\n );\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 (\n options.minDateTime?.format(DayjsDateTypeEnum.YMDHm) ===\n current.format(DayjsDateTypeEnum.YMDHm)\n ) {\n minTimeSecond = options.minDateTime.get('second');\n }\n if (\n options.maxDateTime?.format(DayjsDateTypeEnum.YMDHm) ===\n current.format(DayjsDateTypeEnum.YMDHm)\n ) {\n maxTimeSecond = options.maxDateTime.get('second');\n }\n let selectableMinute = range(minTimeSecond, maxTimeSecond);\n if (options.disabledSecondList) {\n selectableMinute = selectableMinute.filter(\n (item) => !options.disabledSecondList?.includes(item)\n );\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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-picker-wrapper-AQg6UCts.js","sources":["@flatbiz/antd/src/time-picker-wrapper/time-picker-wrapper.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TimePickerProps } from 'antd';\nimport { TimePicker } from 'antd';\nimport dayjs from 'dayjs';\nimport isSameOrAfter from 'dayjs/plugin/isSameOrAfter.js';\nimport isSameOrBefore from 'dayjs/plugin/isSameOrBefore.js';\nimport { hooks } from '@wove/react';\nimport type { TDayjsTimeType } from '../_utils/constants.js';\nimport { DayjsDateTypeEnum, DayjsTimeTypeEnum } from '../_utils/constants.js';\nimport {\n getDisabledHour,\n getDisabledMinute,\n getDisabledSecond,\n} from '../_utils/time.js';\ndayjs.extend(isSameOrBefore);\ndayjs.extend(isSameOrAfter);\n\nexport type TimePickerWrapperProps = Omit<\n TimePickerProps,\n 'value' | 'onChange' | 'format'\n> & {\n value?: string;\n onChange?: (value?: string) => void;\n /**\n * 1. minTime、maxTime设置为 DayjsTimeTypeEnum,默认格式: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/**\n * TimePicker组件包装\n * ```\n * 1. value类型为 string\n * 2. onChange返回类型 string\n * 3. 默认格式化类型 HH:mm:ss\n * 4. 其他格式化类型自定义format\n * 5. 设置disabledTime后,disabledTimeConfig配置将失效\n * ```\n */\nexport const TimePickerWrapper = (props: TimePickerWrapperProps) => {\n const { onChange, disabledTimeConfig, format, ...otherProps } = props;\n const {\n minTime,\n maxTime,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n } = disabledTimeConfig || {};\n\n const customFormat = format || DayjsTimeTypeEnum.Hms;\n\n const onChangeTime = hooks.useCallbackRef(\n (time, timeString: string | string[]) => {\n if (time) {\n onChange?.(timeString as string);\n } else {\n onChange?.(undefined);\n }\n }\n );\n\n const timePickerValue = useMemo(() => {\n const value = props.value;\n if (value) {\n return dayjs(value, customFormat);\n }\n return undefined;\n }, [customFormat, props.value]);\n\n const getDisabledTime: TimePickerProps['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 const showNow = useMemo(() => {\n const now = dayjs();\n return (\n now.isSameOrAfter(dayjs(minTime || '00:00:00', customFormat)) &&\n now.isSameOrBefore(dayjs(maxTime || '23:59:59', customFormat))\n );\n }, [customFormat, maxTime, minTime]);\n\n return (\n <TimePicker\n showNow={showNow}\n disabledTime={getDisabledTime}\n {...otherProps}\n value={timePickerValue}\n onChange={onChangeTime}\n format={customFormat}\n />\n );\n};\n"],"names":["dayjs","extend","isSameOrBefore","isSameOrAfter","TimePickerWrapper","props","onChange","disabledTimeConfig","format","otherProps","_objectWithoutProperties","_excluded","_ref","minTime","maxTime","disabledHourList","disabledMinuteList","disabledSecondList","customFormat","DayjsTimeTypeEnum","Hms","onChangeTime","_hooks","useCallbackRef","time","timeString","undefined","timePickerValue","useMemo","value","getDisabledTime","date","DayjsDateTypeEnum","YMD","options","minDateTime","concat","maxDateTime","disabledHours","getDisabledHour","disabledMinutes","hour","getDisabledMinute","disabledSeconds","minute","getDisabledSecond","showNow","now","_jsx","TimePicker","_objectSpread","disabledTime"],"mappings":";;;;;;;;;;;;;AAcAA,KAAK,CAACC,MAAM,CAACC,cAAc,CAAC;AAC5BF,KAAK,CAACC,MAAM,CAACE,aAAa,CAAC;AAwB3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAA6B,EAAK;AAClE,EAAA,IAAQC,QAAQ,GAAgDD,KAAK,CAA7DC,QAAQ;IAAEC,kBAAkB,GAA4BF,KAAK,CAAnDE,kBAAkB;IAAEC,MAAM,GAAoBH,KAAK,CAA/BG,MAAM;AAAKC,IAAAA,UAAU,GAAAC,wBAAA,CAAKL,KAAK,EAAAM,SAAA,CAAA;AACrE,EAAA,IAAAC,IAAA,GAMIL,kBAAkB,IAAI,EAAE;IAL1BM,OAAO,GAAAD,IAAA,CAAPC,OAAO;IACPC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IACPC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAChBC,kBAAkB,GAAAJ,IAAA,CAAlBI,kBAAkB;IAClBC,kBAAkB,GAAAL,IAAA,CAAlBK,kBAAkB;AAGpB,EAAA,IAAMC,YAAY,GAAGV,MAAM,IAAIW,iBAAiB,CAACC,GAAG;EAEpD,IAAMC,YAAY,GAAGC,KAAA,CAAMC,cAAc,CACvC,UAACC,IAAI,EAAEC,UAA6B,EAAK;AACvC,IAAA,IAAID,IAAI,EAAE;AACRlB,MAAAA,QAAQ,aAARA,QAAQ,KAAA,MAAA,IAARA,QAAQ,CAAGmB,UAAoB,CAAC;AAClC,
|
|
1
|
+
{"version":3,"file":"time-picker-wrapper-AQg6UCts.js","sources":["@flatbiz/antd/src/time-picker-wrapper/time-picker-wrapper.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TimePickerProps } from 'antd';\nimport { TimePicker } from 'antd';\nimport dayjs from 'dayjs';\nimport isSameOrAfter from 'dayjs/plugin/isSameOrAfter.js';\nimport isSameOrBefore from 'dayjs/plugin/isSameOrBefore.js';\nimport { hooks } from '@wove/react';\nimport type { TDayjsTimeType } from '../_utils/constants.js';\nimport { DayjsDateTypeEnum, DayjsTimeTypeEnum } from '../_utils/constants.js';\nimport {\n getDisabledHour,\n getDisabledMinute,\n getDisabledSecond,\n} from '../_utils/time.js';\ndayjs.extend(isSameOrBefore);\ndayjs.extend(isSameOrAfter);\n\nexport type TimePickerWrapperProps = Omit<\n TimePickerProps,\n 'value' | 'onChange' | 'format'\n> & {\n value?: string;\n onChange?: (value?: string) => void;\n /**\n * 1. minTime、maxTime设置为 DayjsTimeTypeEnum,默认格式: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/**\n * TimePicker组件包装\n * ```\n * 1. value类型为 string\n * 2. onChange返回类型 string\n * 3. 默认格式化类型 HH:mm:ss\n * 4. 其他格式化类型自定义format\n * 5. 设置disabledTime后,disabledTimeConfig配置将失效\n * ```\n */\nexport const TimePickerWrapper = (props: TimePickerWrapperProps) => {\n const { onChange, disabledTimeConfig, format, ...otherProps } = props;\n const {\n minTime,\n maxTime,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n } = disabledTimeConfig || {};\n\n const customFormat = format || DayjsTimeTypeEnum.Hms;\n\n const onChangeTime = hooks.useCallbackRef(\n (time, timeString: string | string[]) => {\n if (time) {\n onChange?.(timeString as string);\n } else {\n onChange?.(undefined);\n }\n }\n );\n\n const timePickerValue = useMemo(() => {\n const value = props.value;\n if (value) {\n return dayjs(value, customFormat);\n }\n return undefined;\n }, [customFormat, props.value]);\n\n const getDisabledTime: TimePickerProps['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 const showNow = useMemo(() => {\n const now = dayjs();\n return (\n now.isSameOrAfter(dayjs(minTime || '00:00:00', customFormat)) &&\n now.isSameOrBefore(dayjs(maxTime || '23:59:59', customFormat))\n );\n }, [customFormat, maxTime, minTime]);\n\n return (\n <TimePicker\n showNow={showNow}\n disabledTime={getDisabledTime}\n {...otherProps}\n value={timePickerValue}\n onChange={onChangeTime}\n format={customFormat}\n />\n );\n};\n"],"names":["dayjs","extend","isSameOrBefore","isSameOrAfter","TimePickerWrapper","props","onChange","disabledTimeConfig","format","otherProps","_objectWithoutProperties","_excluded","_ref","minTime","maxTime","disabledHourList","disabledMinuteList","disabledSecondList","customFormat","DayjsTimeTypeEnum","Hms","onChangeTime","_hooks","useCallbackRef","time","timeString","undefined","timePickerValue","useMemo","value","getDisabledTime","date","DayjsDateTypeEnum","YMD","options","minDateTime","concat","maxDateTime","disabledHours","getDisabledHour","disabledMinutes","hour","getDisabledMinute","disabledSeconds","minute","getDisabledSecond","showNow","now","_jsx","TimePicker","_objectSpread","disabledTime"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"time-range-picker-wrapper-C2Y0j-w1.js","sources":["@flatbiz/antd/src/time-range-picker-wrapper/time-range-picker-wrapper.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TimeRangePickerProps } from 'antd';\nimport { TimePicker } from 'antd';\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport { hooks } from '@wove/react';\nimport type { TDayjsTimeType } from '../_utils/constants.js';\nimport { DayjsDateTypeEnum, DayjsTimeTypeEnum } from '../_utils/constants.js';\nimport {\n getDisabledHour,\n getDisabledMinute,\n getDisabledSecond,\n} from '../_utils/time.js';\n\nexport type TimeRangePickerWrapperProps = Omit<\n TimeRangePickerProps,\n 'value' | 'onChange' | 'format'\n> & {\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 {\n minTime,\n maxTime,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n } = disabledTimeConfig || {};\n\n const format = useMemo(() => {\n return props.format || DayjsTimeTypeEnum.Hms;\n }, [props.format]);\n\n const onChangeTime = hooks.useCallbackRef(\n (date, [timeStart, timeEnd]: [string, string]) => {\n if (date) {\n onChange?.([timeStart, timeEnd]);\n } else {\n onChange?.(undefined);\n }\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","_objectWithoutProperties","_excluded","_ref","minTime","maxTime","disabledHourList","disabledMinuteList","disabledSecondList","format","useMemo","DayjsTimeTypeEnum","Hms","onChangeTime","_hooks","useCallbackRef","date","_ref2","_ref3","_slicedToArray","timeStart","timeEnd","undefined","timePickerValue","value","length","dayjs","getDisabledTime","DayjsDateTypeEnum","YMD","options","minDateTime","concat","maxDateTime","disabledHours","getDisabledHour","disabledMinutes","hour","getDisabledMinute","disabledSeconds","minute","getDisabledSecond","_jsx","TimePicker","RangePicker","_objectSpread","disabledTime"],"mappings":";;;;;;;;;;;AAoCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIC,KAAkC,EAAK;AAC5E,EAAA,IAAQC,QAAQ,GAAwCD,KAAK,CAArDC,QAAQ;IAAEC,kBAAkB,GAAoBF,KAAK,CAA3CE,kBAAkB;AAAKC,IAAAA,UAAU,GAAAC,wBAAA,CAAKJ,KAAK,EAAAK,SAAA,CAAA;AAE7D,EAAA,IAAAC,IAAA,GAMIJ,kBAAkB,IAAI,EAAE;IAL1BK,OAAO,GAAAD,IAAA,CAAPC,OAAO;IACPC,OAAO,GAAAF,IAAA,CAAPE,OAAO;IACPC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAChBC,kBAAkB,GAAAJ,IAAA,CAAlBI,kBAAkB;IAClBC,kBAAkB,GAAAL,IAAA,CAAlBK,kBAAkB;AAGpB,EAAA,IAAMC,MAAM,GAAGC,OAAO,CAAC,YAAM;AAC3B,IAAA,OAAOb,KAAK,CAACY,MAAM,IAAIE,iBAAiB,CAACC,GAAG;AAC9C,
|
|
1
|
+
{"version":3,"file":"time-range-picker-wrapper-C2Y0j-w1.js","sources":["@flatbiz/antd/src/time-range-picker-wrapper/time-range-picker-wrapper.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport type { TimeRangePickerProps } from 'antd';\nimport { TimePicker } from 'antd';\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\nimport { hooks } from '@wove/react';\nimport type { TDayjsTimeType } from '../_utils/constants.js';\nimport { DayjsDateTypeEnum, DayjsTimeTypeEnum } from '../_utils/constants.js';\nimport {\n getDisabledHour,\n getDisabledMinute,\n getDisabledSecond,\n} from '../_utils/time.js';\n\nexport type TimeRangePickerWrapperProps = Omit<\n TimeRangePickerProps,\n 'value' | 'onChange' | 'format'\n> & {\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 {\n minTime,\n maxTime,\n disabledHourList,\n disabledMinuteList,\n disabledSecondList,\n } = disabledTimeConfig || {};\n\n const format = useMemo(() => {\n return props.format || DayjsTimeTypeEnum.Hms;\n }, [props.format]);\n\n const onChangeTime = hooks.useCallbackRef(\n (date, [timeStart, timeEnd]: [string, string]) => {\n if (date) {\n onChange?.([timeStart, timeEnd]);\n } else {\n onChange?.(undefined);\n }\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","_objectWithoutProperties","_excluded","_ref","minTime","maxTime","disabledHourList","disabledMinuteList","disabledSecondList","format","useMemo","DayjsTimeTypeEnum","Hms","onChangeTime","_hooks","useCallbackRef","date","_ref2","_ref3","_slicedToArray","timeStart","timeEnd","undefined","timePickerValue","value","length","dayjs","getDisabledTime","DayjsDateTypeEnum","YMD","options","minDateTime","concat","maxDateTime","disabledHours","getDisabledHour","disabledMinutes","hour","getDisabledMinute","disabledSeconds","minute","getDisabledSecond","_jsx","TimePicker","RangePicker","_objectSpread","disabledTime"],"mappings":"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"}
|