@flatbiz/antd 5.0.43 → 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/index.js +1 -1
- package/dist/{button-operate-DprXMhOZ.js → button-operate-BIWXX7to.js} +3 -2
- package/dist/button-operate-BIWXX7to.js.map +1 -0
- package/dist/button-wrapper-DezyMqPx.js.map +1 -1
- package/dist/card-layout-P-Qb5pCT.js.map +1 -1
- package/dist/cascader-wrapper/index.d.ts +1 -1
- package/dist/cascader-wrapper/index.js +2 -2
- package/dist/{cascader-wrapper-BFCjHaa9.js → cascader-wrapper-CMYrmR6L.js} +2 -2
- package/dist/{cascader-wrapper-BFCjHaa9.js.map → cascader-wrapper-CMYrmR6L.js.map} +1 -1
- package/dist/{cell-render-Btk1xTUj.js → cell-render-1gunNiMm.js} +11 -5
- package/dist/cell-render-1gunNiMm.js.map +1 -0
- 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-BbkSnxi9.js → copy-BSlIwnwz.js} +9 -4
- package/dist/copy-BSlIwnwz.js.map +1 -0
- package/dist/copy-wrapper/index.d.ts +15 -4
- package/dist/copy-wrapper/index.js +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-Bn9b0R-o.js → drag-DT_ZyPqJ.js} +2 -2
- package/dist/{drag-Bn9b0R-o.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 +9 -7
- package/dist/drag-editable-table/index.js +11 -8
- package/dist/drag-editable-table/index.js.map +1 -1
- 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-BITwshmb.js → drawer-BfMemZA8.js} +2 -73
- package/dist/drawer-BfMemZA8.js.map +1 -0
- 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.css +1 -1
- package/dist/editable-table/index.d.ts +9 -7
- package/dist/editable-table/index.js +10 -6
- package/dist/editable-table/index.js.map +1 -1
- package/dist/{editable-table-Bsch15kT.js → editable-table-0f-H4DHt.js} +3 -3
- 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-C6y8q2MK.js +77 -0
- package/dist/index-C6y8q2MK.js.map +1 -0
- package/dist/index.d.ts +42 -37
- package/dist/index.js +19 -20
- 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/index.d.ts +1 -1
- package/dist/request-status/index.js +1 -1
- package/dist/{request-status-5M9DP8-J.js → request-status-CTleOQtX.js} +12 -6
- package/dist/request-status-CTleOQtX.js.map +1 -0
- package/dist/resizable-drawer/index.js +3 -2
- package/dist/resizable-drawer/index.js.map +1 -1
- 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-DGXElqt2.js → selector-fu9imgsR.js} +2 -2
- package/dist/{selector-DGXElqt2.js.map → selector-fu9imgsR.js.map} +1 -1
- package/dist/selector-wrapper/index.css +1 -1
- package/dist/selector-wrapper/index.d.ts +4 -1
- package/dist/selector-wrapper/index.js +9 -3
- package/dist/selector-wrapper/index.js.map +1 -1
- package/dist/{selector-wrapper-DfaplVbz.js → selector-wrapper-B5PUm15M.js} +113 -47
- package/dist/selector-wrapper-B5PUm15M.js.map +1 -0
- package/dist/selector-wrapper-search/index.d.ts +5 -1
- package/dist/selector-wrapper-search/index.js +3 -3
- package/dist/{selector-wrapper-search-DG0GPWl6.js → selector-wrapper-search-BMyOMlZl.js} +26 -8
- package/dist/selector-wrapper-search-BMyOMlZl.js.map +1 -0
- package/dist/selector-wrapper-simple/index.d.ts +1 -1
- package/dist/selector-wrapper-simple/index.js +2 -2
- package/dist/{selector-wrapper-simple-BE6H7nX7.js → selector-wrapper-simple-Vbt4cYNm.js} +2 -2
- package/dist/{selector-wrapper-simple-BE6H7nX7.js.map → 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/styles/index.css +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 +7 -2
- package/dist/table-cell-render/index.js +3 -3
- 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-B0OTlda6.js → tag-list-DrmpuEDJ.js} +8 -2
- package/dist/tag-list-DrmpuEDJ.js.map +1 -0
- package/dist/tag-list-render/index.d.ts +2 -0
- package/dist/tag-list-render/index.js +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 +2 -2
- package/dist/tree-modal/index.js +3 -3
- package/dist/tree-modal/index.js.map +1 -1
- package/dist/tree-modal-selector/index.d.ts +2 -2
- package/dist/tree-modal-selector/index.js +3 -3
- package/dist/tree-selector-wrapper/index.d.ts +1 -1
- package/dist/tree-selector-wrapper/index.js +2 -2
- package/dist/tree-wrapper/index.d.ts +2 -2
- package/dist/tree-wrapper/index.js +5 -5
- 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 -7
- package/dist/_commonjsHelpers-nJh5OW6J.js +0 -33
- package/dist/_commonjsHelpers-nJh5OW6J.js.map +0 -1
- package/dist/ai-search/index.css +0 -1
- package/dist/ai-search/index.d.ts +0 -25
- package/dist/ai-search/index.js +0 -39
- package/dist/ai-search/index.js.map +0 -1
- package/dist/ai-search-BuvayoCT.js +0 -161
- package/dist/ai-search-BuvayoCT.js.map +0 -1
- package/dist/button-operate-DprXMhOZ.js.map +0 -1
- package/dist/cell-render-Btk1xTUj.js.map +0 -1
- package/dist/copy-BbkSnxi9.js.map +0 -1
- package/dist/drag-Dxvr0bSy.js.map +0 -1
- package/dist/drag-modal-C3Azghu3.js.map +0 -1
- package/dist/drawer-BITwshmb.js.map +0 -1
- package/dist/editable-table-Bsch15kT.js.map +0 -1
- package/dist/label-value-CcUdtnY1.js.map +0 -1
- package/dist/request-status-5M9DP8-J.js.map +0 -1
- package/dist/selector-wrapper-DfaplVbz.js.map +0 -1
- package/dist/selector-wrapper-search-DG0GPWl6.js.map +0 -1
- package/dist/tag-list-B0OTlda6.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mentions-950t_JC_.js","sources":["@flatbiz/antd/src/mentions-wrapper/utils.ts","@flatbiz/antd/src/mentions-wrapper/mentions.tsx"],"sourcesContent":["import { type OverallKeyWordsPosition } from './types.js';\n\nexport const getOverallKeyWordsPosition = (params: {\n overallKeyWords: string[];\n value?: string;\n}) => {\n if (!params.value || !params.overallKeyWords.length) return [];\n const overallKeyWordsNew = Array.from(new Set(params.overallKeyWords || []));\n const positionItem: OverallKeyWordsPosition[][] = [];\n overallKeyWordsNew.forEach((item) => {\n if (!params.value?.includes(item)) return;\n const newItem = item\n .replace(/\\$/g, '\\\\$')\n .replace(/\\{/g, '\\\\{')\n .replace(/\\}/g, '\\\\}')\n .replace(/\\]/g, '\\\\]')\n .replace(/\\[/g, '\\\\[');\n const regex = new RegExp(newItem, 'g');\n const positions: number[] = [];\n let match;\n while ((match = regex.exec(params.value)) !== null) {\n positions.push(match.index as number);\n }\n const innerList: OverallKeyWordsPosition[] = [];\n positions.forEach((temp) => {\n innerList.push({ start: temp + 1, end: temp + item.length });\n });\n positionItem.push(innerList);\n });\n return positionItem;\n};\n\n/**\n * 判断光标是否处在关键词位置内\n */\nexport const judgmentCursorInKeyWordsPosition = (params: {\n keyWordsPosition: OverallKeyWordsPosition[][];\n cursorPosition: number;\n}) => {\n for (let index = 0; index < params.keyWordsPosition.length; index++) {\n const element = params.keyWordsPosition[index].find((temp) => {\n return (\n params.cursorPosition >= temp.start && params.cursorPosition < temp.end\n );\n });\n if (element) return element;\n }\n return undefined;\n};\n","import {\n forwardRef,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useEventListener } from 'ahooks';\nimport { type MentionProps, Mentions } from 'antd';\nimport { type TAny, toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport {\n getOverallKeyWordsPosition,\n judgmentCursorInKeyWordsPosition,\n} from './utils.js';\n\nexport type MentionsWrapperRef = {\n getInputInstance: () => any;\n};\nexport type MentionsWrapperProps = Omit<\n MentionProps,\n | 'value'\n | 'onChange'\n | 'onClick'\n | 'onCursorChange'\n | 'options'\n | 'id'\n | 'split'\n | 'validateSearch'\n | 'ref'\n | 'prefix'\n> & {\n value?: string;\n onChange?: (value?: string) => void;\n /** 设置列表提示关键字,例如:@、$等 */\n prefix?: string | string[];\n onClick?: (value?: string) => void;\n /** 光标移动回调 */\n onCursorChange?: (position: number) => void;\n /**\n * 输入框内整体关键词列表\n * ```\n * 整体关键词交互\n * 1. 光标可整体移动\n * 2. 光标不会存在关键词内部\n * 3. 删除时,整体删除\n * ```\n */\n options?: string[];\n};\n\n/**\n * 基于Antd Mentions进行二次封装,可实现输入内关键字整体控制,包括光标移动、关键词删除等\n * ```\n * 可实现\n * 1. 控制光标输入\n * 2. 可设置关键词,光标不会出现在关键词内部\n * 3. 可整体删除关键词\n *\n * 应用场景例如:\n * 1. 公式输入\n * (【xx金额1】+【xx金额2】)*2\n * <MentionsWrapper prefix=\"$\" options={['【xx金额1】', '【xx金额2】']}/>\n *\n * 2. 短信模板设置\n * 您的订单号为${订单号},订单交易时间为${订单时间}\n * <MentionsWrapper prefix=\"$\" options={['${订单号}', '${订单时间}']}/>\n *\n * demo:https://fex.qa.tcshuke.com/docs/admin/main/other/widget\n * ```\n *\n */\nexport const MentionsWrapper = forwardRef<\n MentionsWrapperRef,\n MentionsWrapperProps\n>((props: MentionsWrapperProps, ref) => {\n const {\n value,\n onChange,\n onClick,\n onCursorChange,\n onSelect,\n options,\n prefix,\n ...otherProps\n } = props;\n const id = hooks.useId(undefined, 'overall-input');\n const inputInnerRef = useRef<TAny>();\n const [cursorPosition, setCursorPosition] = useState(0);\n const invalidOnChangeRef = useRef(false);\n const valueNew = value || '';\n /** 关键词位置 */\n const overallKeyWordsPosition = useMemo(() => {\n if (options) {\n return getOverallKeyWordsPosition({\n overallKeyWords: options || [],\n value: valueNew,\n });\n }\n return [];\n }, [options, valueNew]);\n\n const getInputInstance = () => {\n return inputInnerRef.current?.textarea;\n };\n\n fbaHooks.useEffectCustom(() => {\n onCursorChange?.(cursorPosition || 0);\n }, [cursorPosition]);\n\n useEventListener(\n 'keydown',\n (ev) => {\n const selectionStart = getInputInstance()?.selectionStart as number;\n const selectionEnd = getInputInstance()?.selectionEnd as number;\n if (['ArrowLeft', 'ArrowRight'].includes(ev.code)) {\n let positionValue = 0;\n if (ev.code === 'ArrowLeft') {\n if (selectionStart - 1 < 0) return;\n positionValue = selectionStart - 1;\n setCursorPosition(positionValue);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: positionValue,\n });\n if (targret) {\n getInputInstance()?.setSelectionRange(targret.start, targret.start);\n }\n } else if (ev.code === 'ArrowRight') {\n if (selectionStart + 1 > valueNew.length) return;\n positionValue = selectionStart + 1;\n setCursorPosition(positionValue);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: positionValue,\n });\n if (targret) {\n getInputInstance()?.setSelectionRange(\n targret.end - 1,\n targret.end - 1\n );\n }\n }\n } else if (ev.code === 'Backspace') {\n /** 选中关键字/关键字+文字 的情况,直接删除 */\n if (selectionStart !== selectionEnd) {\n return;\n }\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: selectionStart - 1,\n });\n if (targret) {\n invalidOnChangeRef.current = true;\n const result =\n valueNew.substring(0, targret.start - 1) +\n valueNew.substring(targret.end);\n setTimeout(() => {\n getInputInstance()?.setSelectionRange(\n targret.start - 1,\n targret.start - 1\n );\n }, 50);\n if (!result) {\n invalidOnChangeRef.current = false;\n }\n onChange?.(result);\n }\n }\n },\n {\n target: () => {\n return document.querySelector(`#${id}`);\n },\n }\n );\n\n useEventListener(\n 'keyup',\n (ev) => {\n const selectionStart = getInputInstance()?.selectionStart || 0;\n if (['ArrowUp', 'ArrowDown'].includes(ev.code)) {\n setCursorPosition(selectionStart);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: selectionStart,\n });\n if (targret) {\n if (selectionStart - targret.start < targret.end - selectionStart) {\n getInputInstance()?.setSelectionRange(\n targret.start - 1,\n targret.start - 1\n );\n } else {\n getInputInstance()?.setSelectionRange(targret.end, targret.end);\n }\n }\n }\n },\n {\n target: () => {\n return document.querySelector(`#${id}`);\n },\n }\n );\n\n const onInputChange = hooks.useCallbackRef((value) => {\n if (otherProps.disabled) return;\n if (invalidOnChangeRef.current) {\n invalidOnChangeRef.current = false;\n return;\n }\n const selectionStart = getInputInstance()?.selectionStart || 0;\n setCursorPosition(selectionStart);\n onChange?.(value);\n });\n\n const onInputClick = hooks.useCallbackRef((event) => {\n const selectionStart = getInputInstance()?.selectionStart || 0;\n setCursorPosition(selectionStart);\n onClick?.(event.target.value);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: selectionStart,\n });\n if (targret) {\n if (selectionStart - targret.start < targret.end - selectionStart) {\n getInputInstance()?.setSelectionRange(\n targret.start - 1,\n targret.start - 1\n );\n } else {\n getInputInstance()?.setSelectionRange(targret.end, targret.end);\n }\n }\n });\n\n const onHandleSelect = (options, prefix) => {\n const addPos: number = options.value?.length || 0;\n setCursorPosition((prePos) => prePos + addPos);\n if (onSelect) {\n onSelect(options, prefix);\n }\n };\n\n const mentionOptions = useMemo(() => {\n const prefixList = toArray<string>(prefix);\n return (\n options?.map((item) => {\n let opValue = item;\n for (let index = 0; index < prefixList.length; index++) {\n const element = prefixList[index];\n if (opValue.startsWith(element)) {\n opValue = opValue.replace(element, '');\n break;\n }\n }\n return { label: opValue, value: opValue };\n }) || []\n );\n }, [options, prefix]);\n\n useImperativeHandle(ref, () => {\n return {\n getInputInstance,\n };\n });\n\n return (\n <Mentions\n notFoundContent={<div>暂无数据</div>}\n rows={3}\n {...otherProps}\n prefix={prefix}\n style={{ width: '100%', ...otherProps.style }}\n id={id}\n value={valueNew}\n ref={inputInnerRef}\n onSelect={onHandleSelect}\n onChange={onInputChange}\n onClick={onInputClick}\n split=\"\"\n validateSearch={(text: string) => {\n if (!mentionOptions.length) return false;\n const target = mentionOptions.find(\n (item) => text.indexOf(item.value) >= 0\n );\n return target && text.length > target.value.length ? false : true;\n }}\n options={mentionOptions}\n />\n );\n});\n"],"names":["getOverallKeyWordsPosition","params","value","overallKeyWords","length","overallKeyWordsNew","Array","from","Set","positionItem","forEach","item","_params$value","includes","newItem","replace","regex","RegExp","positions","match","exec","push","index","innerList","temp","start","end","judgmentCursorInKeyWordsPosition","keyWordsPosition","element","find","cursorPosition","undefined","MentionsWrapper","forwardRef","props","ref","onChange","onClick","onCursorChange","onSelect","options","prefix","otherProps","_objectWithoutProperties","_excluded","id","_hooks","useId","inputInnerRef","useRef","_useState","useState","_useState2","_slicedToArray","setCursorPosition","invalidOnChangeRef","valueNew","overallKeyWordsPosition","useMemo","getInputInstance","_inputInnerRef$curren","current","textarea","fbaHooks","useEffectCustom","useEventListener","ev","_getInputInstance","_getInputInstance2","selectionStart","selectionEnd","code","positionValue","targret","_getInputInstance3","setSelectionRange","_getInputInstance4","result","substring","setTimeout","_getInputInstance5","target","document","querySelector","concat","_getInputInstance6","_getInputInstance7","_getInputInstance8","onInputChange","useCallbackRef","_getInputInstance9","disabled","onInputClick","event","_getInputInstance0","_getInputInstance1","_getInputInstance10","onHandleSelect","_options$value","addPos","prePos","mentionOptions","prefixList","toArray","map","opValue","startsWith","label","useImperativeHandle","_jsx","Mentions","_objectSpread","notFoundContent","children","rows","style","width","split","validateSearch","text","indexOf"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mentions-950t_JC_.js","sources":["@flatbiz/antd/src/mentions-wrapper/utils.ts","@flatbiz/antd/src/mentions-wrapper/mentions.tsx"],"sourcesContent":["import { type OverallKeyWordsPosition } from './types.js';\n\nexport const getOverallKeyWordsPosition = (params: {\n overallKeyWords: string[];\n value?: string;\n}) => {\n if (!params.value || !params.overallKeyWords.length) return [];\n const overallKeyWordsNew = Array.from(new Set(params.overallKeyWords || []));\n const positionItem: OverallKeyWordsPosition[][] = [];\n overallKeyWordsNew.forEach((item) => {\n if (!params.value?.includes(item)) return;\n const newItem = item\n .replace(/\\$/g, '\\\\$')\n .replace(/\\{/g, '\\\\{')\n .replace(/\\}/g, '\\\\}')\n .replace(/\\]/g, '\\\\]')\n .replace(/\\[/g, '\\\\[');\n const regex = new RegExp(newItem, 'g');\n const positions: number[] = [];\n let match;\n while ((match = regex.exec(params.value)) !== null) {\n positions.push(match.index as number);\n }\n const innerList: OverallKeyWordsPosition[] = [];\n positions.forEach((temp) => {\n innerList.push({ start: temp + 1, end: temp + item.length });\n });\n positionItem.push(innerList);\n });\n return positionItem;\n};\n\n/**\n * 判断光标是否处在关键词位置内\n */\nexport const judgmentCursorInKeyWordsPosition = (params: {\n keyWordsPosition: OverallKeyWordsPosition[][];\n cursorPosition: number;\n}) => {\n for (let index = 0; index < params.keyWordsPosition.length; index++) {\n const element = params.keyWordsPosition[index].find((temp) => {\n return (\n params.cursorPosition >= temp.start && params.cursorPosition < temp.end\n );\n });\n if (element) return element;\n }\n return undefined;\n};\n","import {\n forwardRef,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useEventListener } from 'ahooks';\nimport { type MentionProps, Mentions } from 'antd';\nimport { type TAny, toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport {\n getOverallKeyWordsPosition,\n judgmentCursorInKeyWordsPosition,\n} from './utils.js';\n\nexport type MentionsWrapperRef = {\n getInputInstance: () => any;\n};\nexport type MentionsWrapperProps = Omit<\n MentionProps,\n | 'value'\n | 'onChange'\n | 'onClick'\n | 'onCursorChange'\n | 'options'\n | 'id'\n | 'split'\n | 'validateSearch'\n | 'ref'\n | 'prefix'\n> & {\n value?: string;\n onChange?: (value?: string) => void;\n /** 设置列表提示关键字,例如:@、$等 */\n prefix?: string | string[];\n onClick?: (value?: string) => void;\n /** 光标移动回调 */\n onCursorChange?: (position: number) => void;\n /**\n * 输入框内整体关键词列表\n * ```\n * 整体关键词交互\n * 1. 光标可整体移动\n * 2. 光标不会存在关键词内部\n * 3. 删除时,整体删除\n * ```\n */\n options?: string[];\n};\n\n/**\n * 基于Antd Mentions进行二次封装,可实现输入内关键字整体控制,包括光标移动、关键词删除等\n * ```\n * 可实现\n * 1. 控制光标输入\n * 2. 可设置关键词,光标不会出现在关键词内部\n * 3. 可整体删除关键词\n *\n * 应用场景例如:\n * 1. 公式输入\n * (【xx金额1】+【xx金额2】)*2\n * <MentionsWrapper prefix=\"$\" options={['【xx金额1】', '【xx金额2】']}/>\n *\n * 2. 短信模板设置\n * 您的订单号为${订单号},订单交易时间为${订单时间}\n * <MentionsWrapper prefix=\"$\" options={['${订单号}', '${订单时间}']}/>\n *\n * demo:https://fex.qa.tcshuke.com/docs/admin/main/other/widget\n * ```\n *\n */\nexport const MentionsWrapper = forwardRef<\n MentionsWrapperRef,\n MentionsWrapperProps\n>((props: MentionsWrapperProps, ref) => {\n const {\n value,\n onChange,\n onClick,\n onCursorChange,\n onSelect,\n options,\n prefix,\n ...otherProps\n } = props;\n const id = hooks.useId(undefined, 'overall-input');\n const inputInnerRef = useRef<TAny>();\n const [cursorPosition, setCursorPosition] = useState(0);\n const invalidOnChangeRef = useRef(false);\n const valueNew = value || '';\n /** 关键词位置 */\n const overallKeyWordsPosition = useMemo(() => {\n if (options) {\n return getOverallKeyWordsPosition({\n overallKeyWords: options || [],\n value: valueNew,\n });\n }\n return [];\n }, [options, valueNew]);\n\n const getInputInstance = () => {\n return inputInnerRef.current?.textarea;\n };\n\n fbaHooks.useEffectCustom(() => {\n onCursorChange?.(cursorPosition || 0);\n }, [cursorPosition]);\n\n useEventListener(\n 'keydown',\n (ev) => {\n const selectionStart = getInputInstance()?.selectionStart as number;\n const selectionEnd = getInputInstance()?.selectionEnd as number;\n if (['ArrowLeft', 'ArrowRight'].includes(ev.code)) {\n let positionValue = 0;\n if (ev.code === 'ArrowLeft') {\n if (selectionStart - 1 < 0) return;\n positionValue = selectionStart - 1;\n setCursorPosition(positionValue);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: positionValue,\n });\n if (targret) {\n getInputInstance()?.setSelectionRange(targret.start, targret.start);\n }\n } else if (ev.code === 'ArrowRight') {\n if (selectionStart + 1 > valueNew.length) return;\n positionValue = selectionStart + 1;\n setCursorPosition(positionValue);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: positionValue,\n });\n if (targret) {\n getInputInstance()?.setSelectionRange(\n targret.end - 1,\n targret.end - 1\n );\n }\n }\n } else if (ev.code === 'Backspace') {\n /** 选中关键字/关键字+文字 的情况,直接删除 */\n if (selectionStart !== selectionEnd) {\n return;\n }\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: selectionStart - 1,\n });\n if (targret) {\n invalidOnChangeRef.current = true;\n const result =\n valueNew.substring(0, targret.start - 1) +\n valueNew.substring(targret.end);\n setTimeout(() => {\n getInputInstance()?.setSelectionRange(\n targret.start - 1,\n targret.start - 1\n );\n }, 50);\n if (!result) {\n invalidOnChangeRef.current = false;\n }\n onChange?.(result);\n }\n }\n },\n {\n target: () => {\n return document.querySelector(`#${id}`);\n },\n }\n );\n\n useEventListener(\n 'keyup',\n (ev) => {\n const selectionStart = getInputInstance()?.selectionStart || 0;\n if (['ArrowUp', 'ArrowDown'].includes(ev.code)) {\n setCursorPosition(selectionStart);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: selectionStart,\n });\n if (targret) {\n if (selectionStart - targret.start < targret.end - selectionStart) {\n getInputInstance()?.setSelectionRange(\n targret.start - 1,\n targret.start - 1\n );\n } else {\n getInputInstance()?.setSelectionRange(targret.end, targret.end);\n }\n }\n }\n },\n {\n target: () => {\n return document.querySelector(`#${id}`);\n },\n }\n );\n\n const onInputChange = hooks.useCallbackRef((value) => {\n if (otherProps.disabled) return;\n if (invalidOnChangeRef.current) {\n invalidOnChangeRef.current = false;\n return;\n }\n const selectionStart = getInputInstance()?.selectionStart || 0;\n setCursorPosition(selectionStart);\n onChange?.(value);\n });\n\n const onInputClick = hooks.useCallbackRef((event) => {\n const selectionStart = getInputInstance()?.selectionStart || 0;\n setCursorPosition(selectionStart);\n onClick?.(event.target.value);\n const targret = judgmentCursorInKeyWordsPosition({\n keyWordsPosition: overallKeyWordsPosition,\n cursorPosition: selectionStart,\n });\n if (targret) {\n if (selectionStart - targret.start < targret.end - selectionStart) {\n getInputInstance()?.setSelectionRange(\n targret.start - 1,\n targret.start - 1\n );\n } else {\n getInputInstance()?.setSelectionRange(targret.end, targret.end);\n }\n }\n });\n\n const onHandleSelect = (options, prefix) => {\n const addPos: number = options.value?.length || 0;\n setCursorPosition((prePos) => prePos + addPos);\n if (onSelect) {\n onSelect(options, prefix);\n }\n };\n\n const mentionOptions = useMemo(() => {\n const prefixList = toArray<string>(prefix);\n return (\n options?.map((item) => {\n let opValue = item;\n for (let index = 0; index < prefixList.length; index++) {\n const element = prefixList[index];\n if (opValue.startsWith(element)) {\n opValue = opValue.replace(element, '');\n break;\n }\n }\n return { label: opValue, value: opValue };\n }) || []\n );\n }, [options, prefix]);\n\n useImperativeHandle(ref, () => {\n return {\n getInputInstance,\n };\n });\n\n return (\n <Mentions\n notFoundContent={<div>暂无数据</div>}\n rows={3}\n {...otherProps}\n prefix={prefix}\n style={{ width: '100%', ...otherProps.style }}\n id={id}\n value={valueNew}\n ref={inputInnerRef}\n onSelect={onHandleSelect}\n onChange={onInputChange}\n onClick={onInputClick}\n split=\"\"\n validateSearch={(text: string) => {\n if (!mentionOptions.length) return false;\n const target = mentionOptions.find(\n (item) => text.indexOf(item.value) >= 0\n );\n return target && text.length > target.value.length ? false : true;\n }}\n options={mentionOptions}\n />\n );\n});\n"],"names":["getOverallKeyWordsPosition","params","value","overallKeyWords","length","overallKeyWordsNew","Array","from","Set","positionItem","forEach","item","_params$value","includes","newItem","replace","regex","RegExp","positions","match","exec","push","index","innerList","temp","start","end","judgmentCursorInKeyWordsPosition","keyWordsPosition","element","find","cursorPosition","undefined","MentionsWrapper","forwardRef","props","ref","onChange","onClick","onCursorChange","onSelect","options","prefix","otherProps","_objectWithoutProperties","_excluded","id","_hooks","useId","inputInnerRef","useRef","_useState","useState","_useState2","_slicedToArray","setCursorPosition","invalidOnChangeRef","valueNew","overallKeyWordsPosition","useMemo","getInputInstance","_inputInnerRef$curren","current","textarea","fbaHooks","useEffectCustom","useEventListener","ev","_getInputInstance","_getInputInstance2","selectionStart","selectionEnd","code","positionValue","targret","_getInputInstance3","setSelectionRange","_getInputInstance4","result","substring","setTimeout","_getInputInstance5","target","document","querySelector","concat","_getInputInstance6","_getInputInstance7","_getInputInstance8","onInputChange","useCallbackRef","_getInputInstance9","disabled","onInputClick","event","_getInputInstance0","_getInputInstance1","_getInputInstance10","onHandleSelect","_options$value","addPos","prePos","mentionOptions","prefixList","toArray","map","opValue","startsWith","label","useImperativeHandle","_jsx","Mentions","_objectSpread","notFoundContent","children","rows","style","width","split","validateSearch","text","indexOf"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modal-action-kQ60nGCG.js","sources":["@flatbiz/antd/src/modal-action/modal-action.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Fragment, isValidElement, useState } from 'react';\nimport type { TAny } from '@flatbiz/utils';\n\nexport interface ModalActionProps {\n children:\n | ReactElement\n | ((data: { onClose: () => void; open: boolean }) => ReactElement);\n action?:\n | (ReactElement & { onClick?: (e) => void })\n | ((data: {\n onClick: (e) => void;\n onClose: () => void;\n open: boolean;\n }) => ReactElement);\n}\n\n/**\n * 弹框 触发器\n * ```\n * <ModalAction action={<Button type=\"primary\">打开</Button>}>\n * {({ onClose }) => (\n * <Modal onOk={onClose}>xxx</Modal>\n * )}\n * </ModalAction>\n * ```\n */\nexport const ModalAction = (props: ModalActionProps) => {\n const { action, children } = props;\n\n const [open, setOpen] = useState<boolean>(false);\n\n const handleOnClick = async (e: unknown) => {\n if (isValidElement(action)) {\n const { onClick } = action.props;\n if (typeof onClick === 'function') {\n await onClick?.(e);\n }\n }\n setOpen(true);\n };\n\n const onClose = () => {\n setOpen(false);\n };\n const childrenReactElement = isValidElement(children)\n ? children\n : (children as TAny)({ onClose, open });\n\n return (\n <Fragment>\n {isValidElement(action) ? (\n <action.type {...action.props} onClick={handleOnClick} />\n ) : (\n action?.({ onClick: handleOnClick, onClose, open })\n )}\n <childrenReactElement.type\n open={open}\n onClose={onClose}\n onCancel={onClose}\n {...childrenReactElement.props}\n />\n </Fragment>\n );\n};\n"],"names":["ModalAction","props","action","children","_useState","useState","_useState2","_slicedToArray","open","setOpen","handleOnClick","e","Promise","$return","$error","onClick","isValidElement","resolve","then","$await_3","$If_2","call","$boundEx","bind","$If_1","onClose","childrenReactElement","_jsxs","Fragment","_jsx","type","_objectSpread","onCancel"],"mappings":";;;;;;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;AACtD,EAAA,IAAQC,MAAM,GAAeD,KAAK,CAA1BC,MAAM;IAAEC,QAAQ,GAAKF,KAAK,CAAlBE,QAAQ;AAExB,EAAA,IAAAC,SAAA,GAAwBC,QAAQ,CAAU,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCI,IAAAA,IAAI,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,OAAO,GAAAH,UAAA,CAAA,CAAA,CAAA;AAEpB,EAAA,IAAMI,aAAa,GAAG,SAAhBA,aAAaA,CAAUC,CAAU,EAAA;AAAjB,IAAA,OAAA,IAAAC,OAAA,CAAA,UAAAC,OAAA,EAAAC,MAAA,EAAA;AAAA,MAAA,IAAAC,OAAA;AACpB,MAAA,iBAAIC,cAAc,CAACd,MAAM,CAAC,EAAE;AAClBa,QAAAA,OAAO,GAAKb,MAAM,CAACD,KAAK,CAAxBc,OAAO;AACf,QAAA,IAAI,OAAOA,OAAO,KAAK,UAAU,EAAE;AACjC,UAAA,OAAAH,OAAA,CAAAK,OAAA,CAAMF,OAAO,aAAPA,OAAO,KAAA,MAAA,GAAA,MAAA,GAAPA,OAAO,CAAGJ,CAAC,CAAC,CAAA,CAAlBO,IAAkB,CApC1B,UAAAC,QAAA,EAAA;YAAA,IAAI;AAAA,cAAA,OAAJC,KAAA,CAAGC,IAAI,CAAA,IAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"modal-action-kQ60nGCG.js","sources":["@flatbiz/antd/src/modal-action/modal-action.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Fragment, isValidElement, useState } from 'react';\nimport type { TAny } from '@flatbiz/utils';\n\nexport interface ModalActionProps {\n children:\n | ReactElement\n | ((data: { onClose: () => void; open: boolean }) => ReactElement);\n action?:\n | (ReactElement & { onClick?: (e) => void })\n | ((data: {\n onClick: (e) => void;\n onClose: () => void;\n open: boolean;\n }) => ReactElement);\n}\n\n/**\n * 弹框 触发器\n * ```\n * <ModalAction action={<Button type=\"primary\">打开</Button>}>\n * {({ onClose }) => (\n * <Modal onOk={onClose}>xxx</Modal>\n * )}\n * </ModalAction>\n * ```\n */\nexport const ModalAction = (props: ModalActionProps) => {\n const { action, children } = props;\n\n const [open, setOpen] = useState<boolean>(false);\n\n const handleOnClick = async (e: unknown) => {\n if (isValidElement(action)) {\n const { onClick } = action.props;\n if (typeof onClick === 'function') {\n await onClick?.(e);\n }\n }\n setOpen(true);\n };\n\n const onClose = () => {\n setOpen(false);\n };\n const childrenReactElement = isValidElement(children)\n ? children\n : (children as TAny)({ onClose, open });\n\n return (\n <Fragment>\n {isValidElement(action) ? (\n <action.type {...action.props} onClick={handleOnClick} />\n ) : (\n action?.({ onClick: handleOnClick, onClose, open })\n )}\n <childrenReactElement.type\n open={open}\n onClose={onClose}\n onCancel={onClose}\n {...childrenReactElement.props}\n />\n </Fragment>\n );\n};\n"],"names":["ModalAction","props","action","children","_useState","useState","_useState2","_slicedToArray","open","setOpen","handleOnClick","e","Promise","$return","$error","onClick","isValidElement","resolve","then","$await_3","$If_2","call","$boundEx","bind","$If_1","onClose","childrenReactElement","_jsxs","Fragment","_jsx","type","_objectSpread","onCancel"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number-range-DUyTW0V1.js","sources":["@flatbiz/antd/src/number-range-form-item/number-range.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { type GetProps, InputNumber } from 'antd';\nimport {\n isEmptyArray,\n isNotEmptyArray,\n isUndefinedOrNull,\n} from '@flatbiz/utils';\nimport { FlexLayout } from '../flex-layout/flex-layout.jsx';\nimport {\n FormItemWrapper,\n type FormItemWrapperProps,\n} from '../form-item-wrapper/index.js';\nimport type { FormItemNamePath } from '../types/index.js';\n\ntype InputNumberProps = GetProps<typeof InputNumber>;\n\nexport type NumberRangeFormItemProps = Omit<\n FormItemWrapperProps,\n 'name' | 'rules'\n> & {\n minFormItemName: FormItemNamePath;\n maxFormItemName: FormItemNamePath;\n /** 是否必填 */\n required?: boolean;\n /** 必填验证异常文案 */\n requiredRuleMessage?: string | [string, string];\n /** 范围验证异常文案 */\n rangeRuleMessage?: string | [string, string];\n minInputNumberProps?: Omit<InputNumberProps, 'value'>;\n maxInputNumberProps?: Omit<InputNumberProps, 'value'>;\n /** 最小值与最大值输入是否可以相同 */\n isInputEqual?: boolean;\n};\n/**\n * 数字输入范围组件\n */\nexport const NumberRangeFormItem = (props: NumberRangeFormItemProps) => {\n const {\n minFormItemName,\n maxFormItemName,\n required,\n requiredRuleMessage,\n rangeRuleMessage,\n minInputNumberProps,\n maxInputNumberProps,\n isInputEqual,\n ...otherProps\n } = props;\n\n const rangeRuleMessageList = useMemo(() => {\n if (!rangeRuleMessage)\n return ['最小值输入不能超过最大值', '最大值输入不能低于最小值'];\n if (isNotEmptyArray(rangeRuleMessage)) {\n return [rangeRuleMessage[0], rangeRuleMessage[1] || rangeRuleMessage[0]];\n }\n return [rangeRuleMessage, rangeRuleMessage] as string[];\n }, [rangeRuleMessage]);\n\n const requiredRuleMessageList = useMemo(() => {\n if (!requiredRuleMessage || isEmptyArray(requiredRuleMessage)) return [];\n if (isNotEmptyArray(requiredRuleMessage)) {\n return [\n requiredRuleMessage[0],\n requiredRuleMessage[1] || requiredRuleMessage[0],\n ];\n }\n return [requiredRuleMessage, requiredRuleMessage] as string[];\n }, [requiredRuleMessage]);\n\n const minRules = [\n { required: required, message: requiredRuleMessageList[0] || '' },\n ({ getFieldValue }) => ({\n validator(_, value) {\n if (isUndefinedOrNull(value)) {\n return Promise.resolve();\n }\n const maxValue = getFieldValue(maxFormItemName);\n if (isUndefinedOrNull(maxValue)) {\n return Promise.resolve();\n }\n if (isInputEqual) {\n if (value <= maxValue) {\n return Promise.resolve();\n }\n } else {\n if (value < maxValue) {\n return Promise.resolve();\n }\n }\n return Promise.reject(new Error(rangeRuleMessageList[0]));\n },\n }),\n ];\n\n const maxRules = [\n { required: required, message: requiredRuleMessageList[1] || '' },\n ({ getFieldValue }) => ({\n validator(_, value) {\n if (isUndefinedOrNull(value)) {\n return Promise.resolve();\n }\n const minValue = getFieldValue(minFormItemName);\n if (isUndefinedOrNull(minValue)) {\n return Promise.resolve();\n }\n\n if (isInputEqual) {\n if (value >= minValue) {\n return Promise.resolve();\n }\n } else {\n if (value > minValue) {\n return Promise.resolve();\n }\n }\n return Promise.reject(new Error(rangeRuleMessageList[1]));\n },\n }),\n ];\n\n return (\n <FormItemWrapper {...otherProps} required={required}>\n <FlexLayout fullIndex={[0, 1]} direction=\"horizontal\" gap={10}>\n <FormItemWrapper\n name={minFormItemName}\n dependencies={[maxFormItemName]}\n rules={minRules}\n style={{ margin: 0 }}\n >\n <InputNumber\n placeholder=\"请输入\"\n {...minInputNumberProps}\n style={{ width: '100%', ...minInputNumberProps?.style }}\n />\n </FormItemWrapper>\n <FormItemWrapper\n name={maxFormItemName}\n dependencies={[minFormItemName]}\n rules={maxRules}\n style={{ margin: 0 }}\n >\n <InputNumber\n placeholder=\"请输入\"\n {...maxInputNumberProps}\n style={{ width: '100%', ...maxInputNumberProps?.style }}\n />\n </FormItemWrapper>\n </FlexLayout>\n </FormItemWrapper>\n );\n};\n"],"names":["NumberRangeFormItem","props","minFormItemName","maxFormItemName","required","requiredRuleMessage","rangeRuleMessage","minInputNumberProps","maxInputNumberProps","isInputEqual","otherProps","_objectWithoutProperties","_excluded","rangeRuleMessageList","useMemo","isNotEmptyArray","requiredRuleMessageList","isEmptyArray","minRules","message","_ref","getFieldValue","validator","_","value","isUndefinedOrNull","Promise","resolve","maxValue","reject","Error","maxRules","_ref2","minValue","_jsx","FormItemWrapper","_objectSpread","children","_jsxs","FlexLayout","fullIndex","direction","gap","name","dependencies","rules","style","margin","InputNumber","placeholder","width"],"mappings":";;;;;;;;;;;AAiCA;AACA;AACA;IACaA,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,KAA+B,EAAK;AACtE,EAAA,IACEC,eAAe,GASbD,KAAK,CATPC,eAAe;IACfC,eAAe,GAQbF,KAAK,CARPE,eAAe;IACfC,QAAQ,GAONH,KAAK,CAPPG,QAAQ;IACRC,mBAAmB,GAMjBJ,KAAK,CANPI,mBAAmB;IACnBC,gBAAgB,GAKdL,KAAK,CALPK,gBAAgB;IAChBC,mBAAmB,GAIjBN,KAAK,CAJPM,mBAAmB;IACnBC,mBAAmB,GAGjBP,KAAK,CAHPO,mBAAmB;IACnBC,YAAY,GAEVR,KAAK,CAFPQ,YAAY;AACTC,IAAAA,UAAU,GAAAC,wBAAA,CACXV,KAAK,EAAAW,SAAA,CAAA;AAET,EAAA,IAAMC,oBAAoB,GAAGC,OAAO,CAAC,YAAM;IACzC,IAAI,CAACR,gBAAgB,EACnB,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC;AACzC,IAAA,IAAIS,eAAe,CAACT,gBAAgB,CAAC,EAAE;AACrC,MAAA,OAAO,CAACA,gBAAgB,CAAC,CAAC,CAAC,EAAEA,gBAAgB,CAAC,CAAC,CAAC,IAAIA,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAC1E;AACA,IAAA,OAAO,CAACA,gBAAgB,EAAEA,gBAAgB,CAAC;AAC7C,
|
|
1
|
+
{"version":3,"file":"number-range-DUyTW0V1.js","sources":["@flatbiz/antd/src/number-range-form-item/number-range.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { type GetProps, InputNumber } from 'antd';\nimport {\n isEmptyArray,\n isNotEmptyArray,\n isUndefinedOrNull,\n} from '@flatbiz/utils';\nimport { FlexLayout } from '../flex-layout/flex-layout.jsx';\nimport {\n FormItemWrapper,\n type FormItemWrapperProps,\n} from '../form-item-wrapper/index.js';\nimport type { FormItemNamePath } from '../types/index.js';\n\ntype InputNumberProps = GetProps<typeof InputNumber>;\n\nexport type NumberRangeFormItemProps = Omit<\n FormItemWrapperProps,\n 'name' | 'rules'\n> & {\n minFormItemName: FormItemNamePath;\n maxFormItemName: FormItemNamePath;\n /** 是否必填 */\n required?: boolean;\n /** 必填验证异常文案 */\n requiredRuleMessage?: string | [string, string];\n /** 范围验证异常文案 */\n rangeRuleMessage?: string | [string, string];\n minInputNumberProps?: Omit<InputNumberProps, 'value'>;\n maxInputNumberProps?: Omit<InputNumberProps, 'value'>;\n /** 最小值与最大值输入是否可以相同 */\n isInputEqual?: boolean;\n};\n/**\n * 数字输入范围组件\n */\nexport const NumberRangeFormItem = (props: NumberRangeFormItemProps) => {\n const {\n minFormItemName,\n maxFormItemName,\n required,\n requiredRuleMessage,\n rangeRuleMessage,\n minInputNumberProps,\n maxInputNumberProps,\n isInputEqual,\n ...otherProps\n } = props;\n\n const rangeRuleMessageList = useMemo(() => {\n if (!rangeRuleMessage)\n return ['最小值输入不能超过最大值', '最大值输入不能低于最小值'];\n if (isNotEmptyArray(rangeRuleMessage)) {\n return [rangeRuleMessage[0], rangeRuleMessage[1] || rangeRuleMessage[0]];\n }\n return [rangeRuleMessage, rangeRuleMessage] as string[];\n }, [rangeRuleMessage]);\n\n const requiredRuleMessageList = useMemo(() => {\n if (!requiredRuleMessage || isEmptyArray(requiredRuleMessage)) return [];\n if (isNotEmptyArray(requiredRuleMessage)) {\n return [\n requiredRuleMessage[0],\n requiredRuleMessage[1] || requiredRuleMessage[0],\n ];\n }\n return [requiredRuleMessage, requiredRuleMessage] as string[];\n }, [requiredRuleMessage]);\n\n const minRules = [\n { required: required, message: requiredRuleMessageList[0] || '' },\n ({ getFieldValue }) => ({\n validator(_, value) {\n if (isUndefinedOrNull(value)) {\n return Promise.resolve();\n }\n const maxValue = getFieldValue(maxFormItemName);\n if (isUndefinedOrNull(maxValue)) {\n return Promise.resolve();\n }\n if (isInputEqual) {\n if (value <= maxValue) {\n return Promise.resolve();\n }\n } else {\n if (value < maxValue) {\n return Promise.resolve();\n }\n }\n return Promise.reject(new Error(rangeRuleMessageList[0]));\n },\n }),\n ];\n\n const maxRules = [\n { required: required, message: requiredRuleMessageList[1] || '' },\n ({ getFieldValue }) => ({\n validator(_, value) {\n if (isUndefinedOrNull(value)) {\n return Promise.resolve();\n }\n const minValue = getFieldValue(minFormItemName);\n if (isUndefinedOrNull(minValue)) {\n return Promise.resolve();\n }\n\n if (isInputEqual) {\n if (value >= minValue) {\n return Promise.resolve();\n }\n } else {\n if (value > minValue) {\n return Promise.resolve();\n }\n }\n return Promise.reject(new Error(rangeRuleMessageList[1]));\n },\n }),\n ];\n\n return (\n <FormItemWrapper {...otherProps} required={required}>\n <FlexLayout fullIndex={[0, 1]} direction=\"horizontal\" gap={10}>\n <FormItemWrapper\n name={minFormItemName}\n dependencies={[maxFormItemName]}\n rules={minRules}\n style={{ margin: 0 }}\n >\n <InputNumber\n placeholder=\"请输入\"\n {...minInputNumberProps}\n style={{ width: '100%', ...minInputNumberProps?.style }}\n />\n </FormItemWrapper>\n <FormItemWrapper\n name={maxFormItemName}\n dependencies={[minFormItemName]}\n rules={maxRules}\n style={{ margin: 0 }}\n >\n <InputNumber\n placeholder=\"请输入\"\n {...maxInputNumberProps}\n style={{ width: '100%', ...maxInputNumberProps?.style }}\n />\n </FormItemWrapper>\n </FlexLayout>\n </FormItemWrapper>\n );\n};\n"],"names":["NumberRangeFormItem","props","minFormItemName","maxFormItemName","required","requiredRuleMessage","rangeRuleMessage","minInputNumberProps","maxInputNumberProps","isInputEqual","otherProps","_objectWithoutProperties","_excluded","rangeRuleMessageList","useMemo","isNotEmptyArray","requiredRuleMessageList","isEmptyArray","minRules","message","_ref","getFieldValue","validator","_","value","isUndefinedOrNull","Promise","resolve","maxValue","reject","Error","maxRules","_ref2","minValue","_jsx","FormItemWrapper","_objectSpread","children","_jsxs","FlexLayout","fullIndex","direction","gap","name","dependencies","rules","style","margin","InputNumber","placeholder","width"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-fixed-footer-BHBJsfnh.js","sources":["@flatbiz/antd/src/page-fixed-footer/page-fixed-footer.tsx"],"sourcesContent":["import type { CSSProperties, ReactNode } from 'react';\nimport { classNames } from '@dimjs/utils';\nimport './style.less';\n\nexport type PageFixedFooterProps = {\n className?: string;\n style?: CSSProperties;\n children?: ReactNode | ReactNode[];\n hidden?: boolean;\n};\n\nexport const PageFixedFooter = (props: PageFixedFooterProps) => {\n if (props.hidden) {\n return null;\n }\n return (\n <div\n className={classNames('page-fixed-footer', props.className)}\n style={props.style}\n >\n {props.children}\n </div>\n );\n};\n"],"names":["PageFixedFooter","props","hidden","_jsx","className","_classNames","style","children"],"mappings":";;;;;IAWaA,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAA2B,EAAK;EAC9D,IAAIA,KAAK,CAACC,MAAM,EAAE;AAChB,IAAA,OAAO,IAAI;AACb;AACA,EAAA,oBACEC,GAAA,CAAA,KAAA,EAAA;IACEC,SAAS,EAAEC,UAAA,CAAW,mBAAmB,EAAEJ,KAAK,CAACG,SAAS,CAAE;IAC5DE,KAAK,EAAEL,KAAK,CAACK,KAAM;IAAAC,QAAA,EAElBN,KAAK,CAACM;AAAQ,GACZ,CAAC;AAEV;;;;"}
|
|
1
|
+
{"version":3,"file":"page-fixed-footer-BHBJsfnh.js","sources":["@flatbiz/antd/src/page-fixed-footer/page-fixed-footer.tsx"],"sourcesContent":["import type { CSSProperties, ReactNode } from 'react';\nimport { classNames } from '@dimjs/utils';\nimport './style.less';\n\nexport type PageFixedFooterProps = {\n className?: string;\n style?: CSSProperties;\n children?: ReactNode | ReactNode[];\n hidden?: boolean;\n};\n\nexport const PageFixedFooter = (props: PageFixedFooterProps) => {\n if (props.hidden) {\n return null;\n }\n return (\n <div\n className={classNames('page-fixed-footer', props.className)}\n style={props.style}\n >\n {props.children}\n </div>\n );\n};\n"],"names":["PageFixedFooter","props","hidden","_jsx","className","_classNames","style","children"],"mappings":";;;;;IAWaA,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAA2B,EAAK;EAC9D,IAAIA,KAAK,CAACC,MAAM,EAAE;AAChB,IAAA,OAAO,IAAI;AACb,EAAA;AACA,EAAA,oBACEC,GAAA,CAAA,KAAA,EAAA;IACEC,SAAS,EAAEC,UAAA,CAAW,mBAAmB,EAAEJ,KAAK,CAACG,SAAS,CAAE;IAC5DE,KAAK,EAAEL,KAAK,CAACK,KAAM;IAAAC,QAAA,EAElBN,KAAK,CAACM;AAAQ,GACZ,CAAC;AAEV;;;;"}
|
package/dist/pdf/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/pdf/context.ts","@flatbiz/antd/src/pdf/document.tsx","@flatbiz/antd/src/pdf/page.tsx","@flatbiz/antd/src/pdf/index.ts"],"sourcesContent":["import { createCtx } from '@wove/react';\n\ntype CtxProps = {\n getPdfInstance: () => any;\n};\n\nexport const [getCtx, CtxProvider] = createCtx<CtxProps>();\n","import type { ReactElement, ReactNode } from 'react';\nimport { useState } from 'react';\nimport { Result, Spin } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { CtxProvider } from './context.js';\nimport './style.less';\n\ntype PdfProps = {\n pdfUrl: string;\n onLoadError?: (error: any) => void;\n onLoadSuccess?: (pdfInstance: any) => void;\n children: ReactNode;\n error?: ReactElement | ((error) => ReactElement);\n className?: string;\n};\n\nexport const PdfDocument = (props: PdfProps) => {\n const [pdfInstance, setPdfInstance] = useState<any>();\n const [errorInst, setErrorInst] = useState<any>();\n\n fbaHooks.useEffectCustomAsync(async () => {\n const { pdfjsLib } = globalThis as any;\n pdfjsLib.GlobalWorkerOptions.workerSrc =\n '//file.40017.cn/tcsk/react/pdf@3.2.146/pdf.worker.min.js';\n try {\n const loadingTask = pdfjsLib.getDocument({\n url: props.pdfUrl,\n // 避免服务端动态填充的字体不展示\n cMapUrl: 'https://file.40017.cn/tcsk/react/pdf@3.2.146/bcmaps/',\n cMapPacked: true,\n });\n const pdfInstance = await loadingTask.promise;\n setPdfInstance(pdfInstance);\n props.onLoadSuccess?.(pdfInstance);\n } catch (error: any) {\n console.error(error);\n props.onLoadError?.(error);\n setErrorInst(error);\n }\n }, [props.pdfUrl]);\n\n const getPdfInstance = () => {\n return pdfInstance;\n };\n\n if (errorInst) {\n if (props.error) {\n return typeof props.error === 'function'\n ? props.error(errorInst)\n : props.error;\n }\n return (\n <Result\n status=\"error\"\n title=\"PDF加载异常\"\n subTitle={errorInst?.message}\n ></Result>\n );\n }\n\n if (pdfInstance) {\n return (\n <CtxProvider value={{ getPdfInstance }}>\n <div className={classNames('v-pdf-document', props.className)}>\n {props.children}\n </div>\n </CtxProvider>\n );\n }\n\n return (\n <div className=\"v-pdf-document-init-loading\">\n <Spin />\n </div>\n );\n};\n","import type { CSSProperties, ReactNode } from 'react';\nimport { useState } from 'react';\nimport { Spin } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { getCtx } from './context.js';\nimport './style.less';\n\ntype PdfProps = {\n onRenderSuccess?: (pageInstance: any, pdfInstance: any) => void;\n onRenderError?: (error: any, pdfInstance: any) => void;\n /** pdf page宽度,高度根据比例适配 */\n width?: number;\n /** 缩放比例,默认值:1,配置此参数后 width 属性失效,例如:1、0.6、0.8 */\n scale?: number;\n /** pdf页面上下之间的间隙,默认值10 */\n gap?: number;\n /** 页码 */\n pageNumber: number;\n children?: ReactNode;\n onClick?: (e) => void;\n className?: string;\n style?: CSSProperties;\n};\n\nexport const PdfPage = (props: PdfProps) => {\n const ctx = getCtx();\n const pdfInstance = ctx.getPdfInstance();\n const id = hooks.useId(undefined, `v-pdf-page-${props.pageNumber}`);\n const [spinning, setSpinning] = useState(true);\n\n const numPages = pdfInstance.numPages as number;\n\n fbaHooks.useEffectCustom(() => {\n pdfInstance.getPage(props.pageNumber).then(function (page) {\n const scale = props.scale || 1;\n let viewport = page.getViewport({ scale: scale });\n const customWidth = props.width;\n\n const canvas = document.getElementById(id) as any;\n const context = canvas.getContext('2d');\n\n if (customWidth && !props.scale) {\n const ratio = customWidth / viewport.width;\n viewport = page.getViewport({ scale: ratio });\n }\n let cssUnits = window.devicePixelRatio;\n cssUnits = cssUnits <= 1 ? 96 / 72 : cssUnits;\n canvas.width = Math.floor(viewport.width * cssUnits);\n canvas.height = Math.floor(viewport.height * cssUnits);\n\n canvas.style.width = viewport.width + 'px';\n canvas.style.height = viewport.height + 'px';\n\n const renderContext = {\n transform: [cssUnits, 0, 0, cssUnits, 0, 0],\n canvasContext: context,\n viewport: viewport,\n };\n const renderTask = page.render(renderContext);\n renderTask.promise\n .then(function () {\n props.onRenderSuccess?.(\n {\n width: viewport.width,\n height: viewport.height,\n scale: scale,\n pageNumber: props.pageNumber,\n page,\n },\n pdfInstance\n );\n setSpinning(false);\n })\n .catch((error: any) => {\n console.error(error?.message);\n props.onRenderError?.(error, pdfInstance);\n setSpinning(false);\n });\n });\n }, [pdfInstance, props.scale, props.pageNumber]);\n\n const gap = typeof props.gap === 'undefined' ? 10 : props.gap;\n\n const style = numPages !== props.pageNumber ? { marginBottom: gap } : {};\n\n return (\n <div\n className={classNames('v-pdf-page', props.className)}\n style={{\n ...style,\n ...props.style,\n }}\n onClick={props.onClick}\n >\n <Spin spinning={spinning}>\n <canvas id={id}></canvas>\n </Spin>\n {props.children}\n </div>\n );\n};\n","import { PdfDocument } from './document.jsx';\nimport { PdfPage } from './page.jsx';\n\n/**\n * pdf预览\n * ```\n * 使用方式:在cdn.ts中引入 '//file.40017.cn/tcsk/react/pdf@3.2.146/pdf.min.js'\n * Git: https://github.com/mozilla/pdfjs-dist/tree/master\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf-seal\n * ```\n */\nexport const Pdf = {\n Document: PdfDocument,\n Page: PdfPage,\n};\n"],"names":["_createCtx","_createCtx3","_createCtx2","_slicedToArray","getCtx","CtxProvider","PdfDocument","props","_useState","useState","_useState2","pdfInstance","setPdfInstance","_useState3","_useState4","errorInst","setErrorInst","fbaHooks","useEffectCustomAsync","Promise","$return","$error","_ref","pdfjsLib","_props$onLoadSuccess","loadingTask","_pdfInstance","_props$onLoadError","globalThis","GlobalWorkerOptions","workerSrc","$Try_1_Post","$boundEx","$Try_1_Catch","error","console","onLoadError","call","getDocument","url","pdfUrl","cMapUrl","cMapPacked","resolve","promise","then","$await_2","onLoadSuccess","getPdfInstance","_jsx","Result","status","title","subTitle","message","value","children","className","_classNames","Spin","PdfPage","ctx","id","_hooks","useId","undefined","concat","pageNumber","spinning","setSpinning","numPages","useEffectCustom","getPage","page","scale","viewport","getViewport","customWidth","width","canvas","document","getElementById","context","getContext","ratio","cssUnits","window","devicePixelRatio","Math","floor","height","style","renderContext","transform","canvasContext","renderTask","render","_props$onRenderSucces","onRenderSuccess","catch","_props$onRenderError","onRenderError","gap","marginBottom","_jsxs","_objectSpread","onClick","Pdf","Document","Page"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/pdf/context.ts","@flatbiz/antd/src/pdf/document.tsx","@flatbiz/antd/src/pdf/page.tsx","@flatbiz/antd/src/pdf/index.ts"],"sourcesContent":["import { createCtx } from '@wove/react';\n\ntype CtxProps = {\n getPdfInstance: () => any;\n};\n\nexport const [getCtx, CtxProvider] = createCtx<CtxProps>();\n","import type { ReactElement, ReactNode } from 'react';\nimport { useState } from 'react';\nimport { Result, Spin } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { CtxProvider } from './context.js';\nimport './style.less';\n\ntype PdfProps = {\n pdfUrl: string;\n onLoadError?: (error: any) => void;\n onLoadSuccess?: (pdfInstance: any) => void;\n children: ReactNode;\n error?: ReactElement | ((error) => ReactElement);\n className?: string;\n};\n\nexport const PdfDocument = (props: PdfProps) => {\n const [pdfInstance, setPdfInstance] = useState<any>();\n const [errorInst, setErrorInst] = useState<any>();\n\n fbaHooks.useEffectCustomAsync(async () => {\n const { pdfjsLib } = globalThis as any;\n pdfjsLib.GlobalWorkerOptions.workerSrc =\n '//file.40017.cn/tcsk/react/pdf@3.2.146/pdf.worker.min.js';\n try {\n const loadingTask = pdfjsLib.getDocument({\n url: props.pdfUrl,\n // 避免服务端动态填充的字体不展示\n cMapUrl: 'https://file.40017.cn/tcsk/react/pdf@3.2.146/bcmaps/',\n cMapPacked: true,\n });\n const pdfInstance = await loadingTask.promise;\n setPdfInstance(pdfInstance);\n props.onLoadSuccess?.(pdfInstance);\n } catch (error: any) {\n console.error(error);\n props.onLoadError?.(error);\n setErrorInst(error);\n }\n }, [props.pdfUrl]);\n\n const getPdfInstance = () => {\n return pdfInstance;\n };\n\n if (errorInst) {\n if (props.error) {\n return typeof props.error === 'function'\n ? props.error(errorInst)\n : props.error;\n }\n return (\n <Result\n status=\"error\"\n title=\"PDF加载异常\"\n subTitle={errorInst?.message}\n ></Result>\n );\n }\n\n if (pdfInstance) {\n return (\n <CtxProvider value={{ getPdfInstance }}>\n <div className={classNames('v-pdf-document', props.className)}>\n {props.children}\n </div>\n </CtxProvider>\n );\n }\n\n return (\n <div className=\"v-pdf-document-init-loading\">\n <Spin />\n </div>\n );\n};\n","import type { CSSProperties, ReactNode } from 'react';\nimport { useState } from 'react';\nimport { Spin } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { getCtx } from './context.js';\nimport './style.less';\n\ntype PdfProps = {\n onRenderSuccess?: (pageInstance: any, pdfInstance: any) => void;\n onRenderError?: (error: any, pdfInstance: any) => void;\n /** pdf page宽度,高度根据比例适配 */\n width?: number;\n /** 缩放比例,默认值:1,配置此参数后 width 属性失效,例如:1、0.6、0.8 */\n scale?: number;\n /** pdf页面上下之间的间隙,默认值10 */\n gap?: number;\n /** 页码 */\n pageNumber: number;\n children?: ReactNode;\n onClick?: (e) => void;\n className?: string;\n style?: CSSProperties;\n};\n\nexport const PdfPage = (props: PdfProps) => {\n const ctx = getCtx();\n const pdfInstance = ctx.getPdfInstance();\n const id = hooks.useId(undefined, `v-pdf-page-${props.pageNumber}`);\n const [spinning, setSpinning] = useState(true);\n\n const numPages = pdfInstance.numPages as number;\n\n fbaHooks.useEffectCustom(() => {\n pdfInstance.getPage(props.pageNumber).then(function (page) {\n const scale = props.scale || 1;\n let viewport = page.getViewport({ scale: scale });\n const customWidth = props.width;\n\n const canvas = document.getElementById(id) as any;\n const context = canvas.getContext('2d');\n\n if (customWidth && !props.scale) {\n const ratio = customWidth / viewport.width;\n viewport = page.getViewport({ scale: ratio });\n }\n let cssUnits = window.devicePixelRatio;\n cssUnits = cssUnits <= 1 ? 96 / 72 : cssUnits;\n canvas.width = Math.floor(viewport.width * cssUnits);\n canvas.height = Math.floor(viewport.height * cssUnits);\n\n canvas.style.width = viewport.width + 'px';\n canvas.style.height = viewport.height + 'px';\n\n const renderContext = {\n transform: [cssUnits, 0, 0, cssUnits, 0, 0],\n canvasContext: context,\n viewport: viewport,\n };\n const renderTask = page.render(renderContext);\n renderTask.promise\n .then(function () {\n props.onRenderSuccess?.(\n {\n width: viewport.width,\n height: viewport.height,\n scale: scale,\n pageNumber: props.pageNumber,\n page,\n },\n pdfInstance\n );\n setSpinning(false);\n })\n .catch((error: any) => {\n console.error(error?.message);\n props.onRenderError?.(error, pdfInstance);\n setSpinning(false);\n });\n });\n }, [pdfInstance, props.scale, props.pageNumber]);\n\n const gap = typeof props.gap === 'undefined' ? 10 : props.gap;\n\n const style = numPages !== props.pageNumber ? { marginBottom: gap } : {};\n\n return (\n <div\n className={classNames('v-pdf-page', props.className)}\n style={{\n ...style,\n ...props.style,\n }}\n onClick={props.onClick}\n >\n <Spin spinning={spinning}>\n <canvas id={id}></canvas>\n </Spin>\n {props.children}\n </div>\n );\n};\n","import { PdfDocument } from './document.jsx';\nimport { PdfPage } from './page.jsx';\n\n/**\n * pdf预览\n * ```\n * 使用方式:在cdn.ts中引入 '//file.40017.cn/tcsk/react/pdf@3.2.146/pdf.min.js'\n * Git: https://github.com/mozilla/pdfjs-dist/tree/master\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf-seal\n * ```\n */\nexport const Pdf = {\n Document: PdfDocument,\n Page: PdfPage,\n};\n"],"names":["_createCtx","_createCtx3","_createCtx2","_slicedToArray","getCtx","CtxProvider","PdfDocument","props","_useState","useState","_useState2","pdfInstance","setPdfInstance","_useState3","_useState4","errorInst","setErrorInst","fbaHooks","useEffectCustomAsync","Promise","$return","$error","_ref","pdfjsLib","_props$onLoadSuccess","loadingTask","_pdfInstance","_props$onLoadError","globalThis","GlobalWorkerOptions","workerSrc","$Try_1_Post","$boundEx","$Try_1_Catch","error","console","onLoadError","call","getDocument","url","pdfUrl","cMapUrl","cMapPacked","resolve","promise","then","$await_2","onLoadSuccess","getPdfInstance","_jsx","Result","status","title","subTitle","message","value","children","className","_classNames","Spin","PdfPage","ctx","id","_hooks","useId","undefined","concat","pageNumber","spinning","setSpinning","numPages","useEffectCustom","getPage","page","scale","viewport","getViewport","customWidth","width","canvas","document","getElementById","context","getContext","ratio","cssUnits","window","devicePixelRatio","Math","floor","height","style","renderContext","transform","canvasContext","renderTask","render","_props$onRenderSucces","onRenderSuccess","catch","_props$onRenderError","onRenderError","gap","marginBottom","_jsxs","_objectSpread","onClick","Pdf","Document","Page"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-D5AvZAS8.js","sources":["@flatbiz/antd/src/permission/permission.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Fragment } from 'react';\nimport { fbaUtils } from '../fba-utils/fba-utils.js';\n\nexport interface PermissionProps {\n name?: string;\n children?: ReactNode | ReactNode[];\n}\nexport const Permission = (props: PermissionProps) => {\n const permissionList = fbaUtils.getPermissionList();\n if (!props.name || permissionList.includes(props.name)) {\n return <Fragment>{props.children}</Fragment>;\n }\n return null;\n};\n"],"names":["Permission","props","permissionList","fbaUtils","getPermissionList","name","includes","_jsx","Fragment","children"],"mappings":";;;;;;IAQaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAMC,cAAc,GAAGC,QAAQ,CAACC,iBAAiB,EAAE;AACnD,EAAA,IAAI,CAACH,KAAK,CAACI,IAAI,IAAIH,cAAc,CAACI,QAAQ,CAACL,KAAK,CAACI,IAAI,CAAC,EAAE;IACtD,oBAAOE,GAAA,CAACC,QAAQ,EAAA;MAAAC,QAAA,EAAER,KAAK,CAACQ;AAAQ,KAAW,CAAC;AAC9C;AACA,EAAA,OAAO,IAAI;AACb;;;;"}
|
|
1
|
+
{"version":3,"file":"permission-D5AvZAS8.js","sources":["@flatbiz/antd/src/permission/permission.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\nimport { Fragment } from 'react';\nimport { fbaUtils } from '../fba-utils/fba-utils.js';\n\nexport interface PermissionProps {\n name?: string;\n children?: ReactNode | ReactNode[];\n}\nexport const Permission = (props: PermissionProps) => {\n const permissionList = fbaUtils.getPermissionList();\n if (!props.name || permissionList.includes(props.name)) {\n return <Fragment>{props.children}</Fragment>;\n }\n return null;\n};\n"],"names":["Permission","props","permissionList","fbaUtils","getPermissionList","name","includes","_jsx","Fragment","children"],"mappings":";;;;;;IAQaA,UAAU,GAAG,SAAbA,UAAUA,CAAIC,KAAsB,EAAK;AACpD,EAAA,IAAMC,cAAc,GAAGC,QAAQ,CAACC,iBAAiB,EAAE;AACnD,EAAA,IAAI,CAACH,KAAK,CAACI,IAAI,IAAIH,cAAc,CAACI,QAAQ,CAACL,KAAK,CAACI,IAAI,CAAC,EAAE;IACtD,oBAAOE,GAAA,CAACC,QAAQ,EAAA;MAAAC,QAAA,EAAER,KAAK,CAACQ;AAAQ,KAAW,CAAC;AAC9C,EAAA;AACA,EAAA,OAAO,IAAI;AACb;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/pre-defined-class-name/form/index.tsx","@flatbiz/antd/src/pre-defined-class-name/index.ts"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport './style.less';\n/**\n * 使用在Form组件上,预定义form-item label宽度\n */\nexport const formClassName = {\n label_width_70: 'form-label-70',\n label_width_80: 'form-label-80',\n label_width_90: 'form-label-90',\n label_width_100: 'form-label-100',\n label_width_110: 'form-label-110',\n label_width_120: 'form-label-120',\n label_width_130: 'form-label-130',\n label_width_140: 'form-label-140',\n label_width_150: 'form-label-150',\n label_width_160: 'form-label-160',\n label_width_170: 'form-label-170',\n label_width_180: 'form-label-180',\n label_width_190: 'form-label-190',\n label_width_200: 'form-label-200',\n label_width_auto: 'form-label-auto',\n label_align_left: 'form-label-align-left',\n label_align_right: 'form-label-align-right',\n label_value_vertical: 'form-label-value-vertical',\n /** formItem之间的垂直间距为15 */\n formItemGap15: 'form-formitem-gap-15',\n /** formItem之间的垂直间距为8 */\n formItemGap8: 'form-formitem-gap-8',\n /** formItem之间的垂直间距为8 */\n formItemGap5: 'form-formitem-gap-5',\n /** formItem之间的垂直间距为0 */\n formItemGap0: 'form-formitem-gap-0',\n};\n/**\n * 使用在Form.Item组件上,预定义form-item label宽度\n */\nexport const formItemClassName = {\n label_width_70: 'form-item-label-70',\n label_width_80: 'form-item-label-80',\n label_width_90: 'form-item-label-90',\n label_width_100: 'form-item-label-100',\n label_width_110: 'form-item-label-110',\n label_width_120: 'form-item-label-120',\n label_width_130: 'form-item-label-130',\n label_width_140: 'form-item-label-140',\n label_width_150: 'form-item-label-150',\n label_width_160: 'form-item-label-160',\n label_width_170: 'form-item-label-170',\n label_width_180: 'form-item-label-180',\n label_width_190: 'form-item-label-190',\n label_width_200: 'form-item-label-200',\n label_width_auto: 'form-item-label-auto',\n label_align_left: 'form-item-label-align-left',\n label_align_right: 'form-item-label-align-right',\n label_value_vertical: 'form-item-label-value-vertical',\n};\n\nexport type TFormLayoutPreClassNameProps = {\n /**\n * label宽度,Form内部所有FormItem label都生效\n * ```\n * 1. 可设置数值\n * 2. 可设置`auto`自适应\n * ```\n */\n labelWidth?:\n | 'auto'\n | '70'\n | '80'\n | '90'\n | '100'\n | '110'\n | '120'\n | '130'\n | '140'\n | '150'\n | '160'\n | '170'\n | '180'\n | '190'\n | '200';\n /** labelItem 竖直布局 */\n labelItemVertical?: boolean;\n /** label 对齐方式 */\n labelAlign?: 'left' | 'right';\n /** formItem之间竖直间距,默认值:24 */\n formItemGap?: '24' | '15' | '8' | '5' | '0';\n /**\n * className 中可能会包含 preDefinedClassName.form.xx,优先级大于 labelWidth、labelItemVertical、labelAlign、formItemGap\n */\n className?: string;\n};\n\nexport const getFormLayoutClassName = (props: TFormLayoutPreClassNameProps) => {\n const oldClassName = props.className || '';\n let newClassName = '';\n if (props.labelWidth) {\n const regex = /.*form-label-\\d+.*/;\n if (!regex.test(oldClassName)) {\n newClassName = `form-label-${props.labelWidth}`;\n }\n }\n if (props.labelItemVertical) {\n const regex = /.*form-label-value-vertical.*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(newClassName, 'form-label-value-vertical');\n }\n }\n if (props.labelAlign) {\n const regex = /.*form-label-align-(left|right).*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(\n newClassName,\n `form-label-align-${props.labelAlign}`\n );\n }\n }\n if (props.formItemGap) {\n const regex = /.*form-formitem-gap-\\d+.*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(\n newClassName,\n `form-formitem-gap-${props.formItemGap}`\n );\n }\n }\n\n return classNames(newClassName, oldClassName);\n};\n\nexport type TFormItemLayoutPreClassNameProps = {\n /**\n * label宽度,Form内部所有FormItem label都生效\n * ```\n * 1. 可设置数值\n * 2. 可设置`auto`自适应\n * ```\n */\n labelWidth?:\n | 'auto'\n | '70'\n | '80'\n | '90'\n | '100'\n | '110'\n | '120'\n | '130'\n | '140'\n | '150'\n | '160'\n | '170'\n | '180'\n | '190'\n | '200';\n /** labelItem 竖直布局 */\n labelItemVertical?: boolean;\n /** label 对齐方式 */\n labelAlign?: 'left' | 'right';\n /**\n * className 中可能会包含 preDefinedClassName.formItem.xx,优先级大于 labelWidth、labelItemVertical、labelAlign\n */\n className?: string;\n};\n\nexport const getFormItemLayoutClassName = (\n props: TFormItemLayoutPreClassNameProps\n) => {\n const oldClassName = props.className || '';\n let newClassName = '';\n if (props.labelWidth) {\n const regex = /.*form-label-\\d+.*/;\n if (!regex.test(oldClassName)) {\n newClassName = `form-item-label-${props.labelWidth}`;\n }\n }\n if (props.labelItemVertical) {\n const regex = /.*form-item-label-value-vertical.*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(newClassName, 'form-item-label-value-vertical');\n }\n }\n if (props.labelAlign) {\n const regex = /.*form-item-label-align-(left|right).*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(\n newClassName,\n `form-item-label-align-${props.labelAlign}`\n );\n }\n }\n return classNames(newClassName, oldClassName);\n};\n","import {\n formClassName,\n formItemClassName,\n getFormItemLayoutClassName,\n getFormLayoutClassName,\n} from './form/index.jsx';\n\n/**\n * 预定义className\n * ```\n * form: 使用在Form组件上,设置form-item label宽度\n * formItem: 使用在Form.Item组件上,设置form-item label宽度\n * ```\n */\nexport const preDefinedClassName = {\n /**\n * @deprecated,已过期,使用preDefinedClassName.getFormLayoutClassName(...)\n */\n form: formClassName,\n /**\n * @deprecated 已过期,使用preDefinedClassName.getFormItemLayoutClassName(...)\n */\n formItem: formItemClassName,\n /**\n * 获取针对Form下全部label布局的预设className,包括\n * ```\n * 1. formLabel宽度\n * 2. formLabel对齐方式\n * 3. form label value的竖直布局\n * 4. formItem之间的间距\n * ```\n */\n getFormLayoutClassName,\n /**\n * 获取针对单个FormItem label布局的预设className,包括\n * ```\n * 1. formLabel宽度\n * 2. formLabel对齐方式\n * 3. form label value的竖直布局\n * ```\n */\n getFormItemLayoutClassName,\n};\n"],"names":["formClassName","label_width_70","label_width_80","label_width_90","label_width_100","label_width_110","label_width_120","label_width_130","label_width_140","label_width_150","label_width_160","label_width_170","label_width_180","label_width_190","label_width_200","label_width_auto","label_align_left","label_align_right","label_value_vertical","formItemGap15","formItemGap8","formItemGap5","formItemGap0","formItemClassName","getFormLayoutClassName","props","oldClassName","className","newClassName","labelWidth","regex","test","concat","labelItemVertical","_classNames","labelAlign","formItemGap","getFormItemLayoutClassName","preDefinedClassName","form","formItem"],"mappings":";;;;AAEA;AACA;AACA;AACO,IAAMA,aAAa,GAAG;AAC3BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,gBAAgB,EAAE,iBAAiB;AACnCC,EAAAA,gBAAgB,EAAE,uBAAuB;AACzCC,EAAAA,iBAAiB,EAAE,wBAAwB;AAC3CC,EAAAA,oBAAoB,EAAE,2BAA2B;AACjD;AACAC,EAAAA,aAAa,EAAE,sBAAsB;AACrC;AACAC,EAAAA,YAAY,EAAE,qBAAqB;AACnC;AACAC,EAAAA,YAAY,EAAE,qBAAqB;AACnC;AACAC,EAAAA,YAAY,EAAE;AAChB,CAAC;AACD;AACA;AACA;AACO,IAAMC,iBAAiB,GAAG;AAC/BtB,EAAAA,cAAc,EAAE,oBAAoB;AACpCC,EAAAA,cAAc,EAAE,oBAAoB;AACpCC,EAAAA,cAAc,EAAE,oBAAoB;AACpCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,gBAAgB,EAAE,sBAAsB;AACxCC,EAAAA,gBAAgB,EAAE,4BAA4B;AAC9CC,EAAAA,iBAAiB,EAAE,6BAA6B;AAChDC,EAAAA,oBAAoB,EAAE;AACxB,CAAC;AAsCM,IAAMM,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIC,KAAmC,EAAK;AAC7E,EAAA,IAAMC,YAAY,GAAGD,KAAK,CAACE,SAAS,IAAI,EAAE;EAC1C,IAAIC,YAAY,GAAG,EAAE;EACrB,IAAIH,KAAK,CAACI,UAAU,EAAE;IACpB,IAAMC,KAAK,GAAG,oBAAoB;AAClC,IAAA,IAAI,CAACA,KAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,iBAAAI,MAAA,CAAiBP,KAAK,CAACI,UAAU,CAAE;AACjD;AACF;EACA,IAAIJ,KAAK,CAACQ,iBAAiB,EAAE;IAC3B,IAAMH,MAAK,GAAG,+BAA+B;AAC7C,IAAA,IAAI,CAACA,MAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,GAAGM,UAAA,CAAWN,YAAY,EAAE,2BAA2B,CAAC;AACtE;AACF;EACA,IAAIH,KAAK,CAACU,UAAU,EAAE;IACpB,IAAML,OAAK,GAAG,mCAAmC;AACjD,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;MAC7BE,YAAY,GAAGM,UAAA,CACbN,YAAY,EAAA,mBAAA,CAAAI,MAAA,CACQP,KAAK,CAACU,UAAU,CACtC,CAAC;AACH;AACF;EACA,IAAIV,KAAK,CAACW,WAAW,EAAE;IACrB,IAAMN,OAAK,GAAG,2BAA2B;AACzC,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;MAC7BE,YAAY,GAAGM,UAAA,CACbN,YAAY,EAAA,oBAAA,CAAAI,MAAA,CACSP,KAAK,CAACW,WAAW,CACxC,CAAC;AACH;AACF;AAEA,EAAA,OAAOF,UAAA,CAAWN,YAAY,EAAEF,YAAY,CAAC;AAC/C,CAAC;AAoCM,IAAMW,0BAA0B,GAAG,SAA7BA,0BAA0BA,CACrCZ,KAAuC,EACpC;AACH,EAAA,IAAMC,YAAY,GAAGD,KAAK,CAACE,SAAS,IAAI,EAAE;EAC1C,IAAIC,YAAY,GAAG,EAAE;EACrB,IAAIH,KAAK,CAACI,UAAU,EAAE;IACpB,IAAMC,KAAK,GAAG,oBAAoB;AAClC,IAAA,IAAI,CAACA,KAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,sBAAAI,MAAA,CAAsBP,KAAK,CAACI,UAAU,CAAE;AACtD;AACF;EACA,IAAIJ,KAAK,CAACQ,iBAAiB,EAAE;IAC3B,IAAMH,OAAK,GAAG,oCAAoC;AAClD,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,GAAGM,UAAA,CAAWN,YAAY,EAAE,gCAAgC,CAAC;AAC3E;AACF;EACA,IAAIH,KAAK,CAACU,UAAU,EAAE;IACpB,IAAML,OAAK,GAAG,wCAAwC;AACtD,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;MAC7BE,YAAY,GAAGM,UAAA,CACbN,YAAY,EAAA,wBAAA,CAAAI,MAAA,CACaP,KAAK,CAACU,UAAU,CAC3C,CAAC;AACH;AACF;AACA,EAAA,OAAOD,UAAA,CAAWN,YAAY,EAAEF,YAAY,CAAC;AAC/C,CAAC;;ACxLD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMY,mBAAmB,GAAG;AACjC;AACF;AACA;AACEC,EAAAA,IAAI,EAAEvC,aAAa;AACnB;AACF;AACA;AACEwC,EAAAA,QAAQ,EAAEjB,iBAAiB;AAC3B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,sBAAsB,EAAtBA,sBAAsB;AACtB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACEa,EAAAA,0BAA0B,EAA1BA;AACF;;;;"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/pre-defined-class-name/form/index.tsx","@flatbiz/antd/src/pre-defined-class-name/index.ts"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport './style.less';\n/**\n * 使用在Form组件上,预定义form-item label宽度\n */\nexport const formClassName = {\n label_width_70: 'form-label-70',\n label_width_80: 'form-label-80',\n label_width_90: 'form-label-90',\n label_width_100: 'form-label-100',\n label_width_110: 'form-label-110',\n label_width_120: 'form-label-120',\n label_width_130: 'form-label-130',\n label_width_140: 'form-label-140',\n label_width_150: 'form-label-150',\n label_width_160: 'form-label-160',\n label_width_170: 'form-label-170',\n label_width_180: 'form-label-180',\n label_width_190: 'form-label-190',\n label_width_200: 'form-label-200',\n label_width_auto: 'form-label-auto',\n label_align_left: 'form-label-align-left',\n label_align_right: 'form-label-align-right',\n label_value_vertical: 'form-label-value-vertical',\n /** formItem之间的垂直间距为15 */\n formItemGap15: 'form-formitem-gap-15',\n /** formItem之间的垂直间距为8 */\n formItemGap8: 'form-formitem-gap-8',\n /** formItem之间的垂直间距为8 */\n formItemGap5: 'form-formitem-gap-5',\n /** formItem之间的垂直间距为0 */\n formItemGap0: 'form-formitem-gap-0',\n};\n/**\n * 使用在Form.Item组件上,预定义form-item label宽度\n */\nexport const formItemClassName = {\n label_width_70: 'form-item-label-70',\n label_width_80: 'form-item-label-80',\n label_width_90: 'form-item-label-90',\n label_width_100: 'form-item-label-100',\n label_width_110: 'form-item-label-110',\n label_width_120: 'form-item-label-120',\n label_width_130: 'form-item-label-130',\n label_width_140: 'form-item-label-140',\n label_width_150: 'form-item-label-150',\n label_width_160: 'form-item-label-160',\n label_width_170: 'form-item-label-170',\n label_width_180: 'form-item-label-180',\n label_width_190: 'form-item-label-190',\n label_width_200: 'form-item-label-200',\n label_width_auto: 'form-item-label-auto',\n label_align_left: 'form-item-label-align-left',\n label_align_right: 'form-item-label-align-right',\n label_value_vertical: 'form-item-label-value-vertical',\n};\n\nexport type TFormLayoutPreClassNameProps = {\n /**\n * label宽度,Form内部所有FormItem label都生效\n * ```\n * 1. 可设置数值\n * 2. 可设置`auto`自适应\n * ```\n */\n labelWidth?:\n | 'auto'\n | '70'\n | '80'\n | '90'\n | '100'\n | '110'\n | '120'\n | '130'\n | '140'\n | '150'\n | '160'\n | '170'\n | '180'\n | '190'\n | '200';\n /** labelItem 竖直布局 */\n labelItemVertical?: boolean;\n /** label 对齐方式 */\n labelAlign?: 'left' | 'right';\n /** formItem之间竖直间距,默认值:24 */\n formItemGap?: '24' | '15' | '8' | '5' | '0';\n /**\n * className 中可能会包含 preDefinedClassName.form.xx,优先级大于 labelWidth、labelItemVertical、labelAlign、formItemGap\n */\n className?: string;\n};\n\nexport const getFormLayoutClassName = (props: TFormLayoutPreClassNameProps) => {\n const oldClassName = props.className || '';\n let newClassName = '';\n if (props.labelWidth) {\n const regex = /.*form-label-\\d+.*/;\n if (!regex.test(oldClassName)) {\n newClassName = `form-label-${props.labelWidth}`;\n }\n }\n if (props.labelItemVertical) {\n const regex = /.*form-label-value-vertical.*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(newClassName, 'form-label-value-vertical');\n }\n }\n if (props.labelAlign) {\n const regex = /.*form-label-align-(left|right).*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(\n newClassName,\n `form-label-align-${props.labelAlign}`\n );\n }\n }\n if (props.formItemGap) {\n const regex = /.*form-formitem-gap-\\d+.*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(\n newClassName,\n `form-formitem-gap-${props.formItemGap}`\n );\n }\n }\n\n return classNames(newClassName, oldClassName);\n};\n\nexport type TFormItemLayoutPreClassNameProps = {\n /**\n * label宽度,Form内部所有FormItem label都生效\n * ```\n * 1. 可设置数值\n * 2. 可设置`auto`自适应\n * ```\n */\n labelWidth?:\n | 'auto'\n | '70'\n | '80'\n | '90'\n | '100'\n | '110'\n | '120'\n | '130'\n | '140'\n | '150'\n | '160'\n | '170'\n | '180'\n | '190'\n | '200';\n /** labelItem 竖直布局 */\n labelItemVertical?: boolean;\n /** label 对齐方式 */\n labelAlign?: 'left' | 'right';\n /**\n * className 中可能会包含 preDefinedClassName.formItem.xx,优先级大于 labelWidth、labelItemVertical、labelAlign\n */\n className?: string;\n};\n\nexport const getFormItemLayoutClassName = (\n props: TFormItemLayoutPreClassNameProps\n) => {\n const oldClassName = props.className || '';\n let newClassName = '';\n if (props.labelWidth) {\n const regex = /.*form-label-\\d+.*/;\n if (!regex.test(oldClassName)) {\n newClassName = `form-item-label-${props.labelWidth}`;\n }\n }\n if (props.labelItemVertical) {\n const regex = /.*form-item-label-value-vertical.*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(newClassName, 'form-item-label-value-vertical');\n }\n }\n if (props.labelAlign) {\n const regex = /.*form-item-label-align-(left|right).*/;\n if (!regex.test(oldClassName)) {\n newClassName = classNames(\n newClassName,\n `form-item-label-align-${props.labelAlign}`\n );\n }\n }\n return classNames(newClassName, oldClassName);\n};\n","import {\n formClassName,\n formItemClassName,\n getFormItemLayoutClassName,\n getFormLayoutClassName,\n} from './form/index.jsx';\n\n/**\n * 预定义className\n * ```\n * form: 使用在Form组件上,设置form-item label宽度\n * formItem: 使用在Form.Item组件上,设置form-item label宽度\n * ```\n */\nexport const preDefinedClassName = {\n /**\n * @deprecated,已过期,使用preDefinedClassName.getFormLayoutClassName(...)\n */\n form: formClassName,\n /**\n * @deprecated 已过期,使用preDefinedClassName.getFormItemLayoutClassName(...)\n */\n formItem: formItemClassName,\n /**\n * 获取针对Form下全部label布局的预设className,包括\n * ```\n * 1. formLabel宽度\n * 2. formLabel对齐方式\n * 3. form label value的竖直布局\n * 4. formItem之间的间距\n * ```\n */\n getFormLayoutClassName,\n /**\n * 获取针对单个FormItem label布局的预设className,包括\n * ```\n * 1. formLabel宽度\n * 2. formLabel对齐方式\n * 3. form label value的竖直布局\n * ```\n */\n getFormItemLayoutClassName,\n};\n"],"names":["formClassName","label_width_70","label_width_80","label_width_90","label_width_100","label_width_110","label_width_120","label_width_130","label_width_140","label_width_150","label_width_160","label_width_170","label_width_180","label_width_190","label_width_200","label_width_auto","label_align_left","label_align_right","label_value_vertical","formItemGap15","formItemGap8","formItemGap5","formItemGap0","formItemClassName","getFormLayoutClassName","props","oldClassName","className","newClassName","labelWidth","regex","test","concat","labelItemVertical","_classNames","labelAlign","formItemGap","getFormItemLayoutClassName","preDefinedClassName","form","formItem"],"mappings":";;;;AAEA;AACA;AACA;AACO,IAAMA,aAAa,GAAG;AAC3BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,eAAe,EAAE,gBAAgB;AACjCC,EAAAA,gBAAgB,EAAE,iBAAiB;AACnCC,EAAAA,gBAAgB,EAAE,uBAAuB;AACzCC,EAAAA,iBAAiB,EAAE,wBAAwB;AAC3CC,EAAAA,oBAAoB,EAAE,2BAA2B;AACjD;AACAC,EAAAA,aAAa,EAAE,sBAAsB;AACrC;AACAC,EAAAA,YAAY,EAAE,qBAAqB;AACnC;AACAC,EAAAA,YAAY,EAAE,qBAAqB;AACnC;AACAC,EAAAA,YAAY,EAAE;AAChB,CAAC;AACD;AACA;AACA;AACO,IAAMC,iBAAiB,GAAG;AAC/BtB,EAAAA,cAAc,EAAE,oBAAoB;AACpCC,EAAAA,cAAc,EAAE,oBAAoB;AACpCC,EAAAA,cAAc,EAAE,oBAAoB;AACpCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,eAAe,EAAE,qBAAqB;AACtCC,EAAAA,gBAAgB,EAAE,sBAAsB;AACxCC,EAAAA,gBAAgB,EAAE,4BAA4B;AAC9CC,EAAAA,iBAAiB,EAAE,6BAA6B;AAChDC,EAAAA,oBAAoB,EAAE;AACxB,CAAC;AAsCM,IAAMM,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIC,KAAmC,EAAK;AAC7E,EAAA,IAAMC,YAAY,GAAGD,KAAK,CAACE,SAAS,IAAI,EAAE;EAC1C,IAAIC,YAAY,GAAG,EAAE;EACrB,IAAIH,KAAK,CAACI,UAAU,EAAE;IACpB,IAAMC,KAAK,GAAG,oBAAoB;AAClC,IAAA,IAAI,CAACA,KAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,iBAAAI,MAAA,CAAiBP,KAAK,CAACI,UAAU,CAAE;AACjD,IAAA;AACF,EAAA;EACA,IAAIJ,KAAK,CAACQ,iBAAiB,EAAE;IAC3B,IAAMH,MAAK,GAAG,+BAA+B;AAC7C,IAAA,IAAI,CAACA,MAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,GAAGM,UAAA,CAAWN,YAAY,EAAE,2BAA2B,CAAC;AACtE,IAAA;AACF,EAAA;EACA,IAAIH,KAAK,CAACU,UAAU,EAAE;IACpB,IAAML,OAAK,GAAG,mCAAmC;AACjD,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;MAC7BE,YAAY,GAAGM,UAAA,CACbN,YAAY,EAAA,mBAAA,CAAAI,MAAA,CACQP,KAAK,CAACU,UAAU,CACtC,CAAC;AACH,IAAA;AACF,EAAA;EACA,IAAIV,KAAK,CAACW,WAAW,EAAE;IACrB,IAAMN,OAAK,GAAG,2BAA2B;AACzC,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;MAC7BE,YAAY,GAAGM,UAAA,CACbN,YAAY,EAAA,oBAAA,CAAAI,MAAA,CACSP,KAAK,CAACW,WAAW,CACxC,CAAC;AACH,IAAA;AACF,EAAA;AAEA,EAAA,OAAOF,UAAA,CAAWN,YAAY,EAAEF,YAAY,CAAC;AAC/C,CAAC;AAoCM,IAAMW,0BAA0B,GAAG,SAA7BA,0BAA0BA,CACrCZ,KAAuC,EACpC;AACH,EAAA,IAAMC,YAAY,GAAGD,KAAK,CAACE,SAAS,IAAI,EAAE;EAC1C,IAAIC,YAAY,GAAG,EAAE;EACrB,IAAIH,KAAK,CAACI,UAAU,EAAE;IACpB,IAAMC,KAAK,GAAG,oBAAoB;AAClC,IAAA,IAAI,CAACA,KAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,sBAAAI,MAAA,CAAsBP,KAAK,CAACI,UAAU,CAAE;AACtD,IAAA;AACF,EAAA;EACA,IAAIJ,KAAK,CAACQ,iBAAiB,EAAE;IAC3B,IAAMH,OAAK,GAAG,oCAAoC;AAClD,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;AAC7BE,MAAAA,YAAY,GAAGM,UAAA,CAAWN,YAAY,EAAE,gCAAgC,CAAC;AAC3E,IAAA;AACF,EAAA;EACA,IAAIH,KAAK,CAACU,UAAU,EAAE;IACpB,IAAML,OAAK,GAAG,wCAAwC;AACtD,IAAA,IAAI,CAACA,OAAK,CAACC,IAAI,CAACL,YAAY,CAAC,EAAE;MAC7BE,YAAY,GAAGM,UAAA,CACbN,YAAY,EAAA,wBAAA,CAAAI,MAAA,CACaP,KAAK,CAACU,UAAU,CAC3C,CAAC;AACH,IAAA;AACF,EAAA;AACA,EAAA,OAAOD,UAAA,CAAWN,YAAY,EAAEF,YAAY,CAAC;AAC/C,CAAC;;ACxLD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMY,mBAAmB,GAAG;AACjC;AACF;AACA;AACEC,EAAAA,IAAI,EAAEvC,aAAa;AACnB;AACF;AACA;AACEwC,EAAAA,QAAQ,EAAEjB,iBAAiB;AAC3B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,sBAAsB,EAAtBA,sBAAsB;AACtB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACEa,EAAAA,0BAA0B,EAA1BA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-Blwn4lHG.js","sources":["@flatbiz/antd/src/pdf-preview2/preview.tsx"],"sourcesContent":["export type PdfPreview2Props = {\n pdfUrl: string;\n /** 网络环境,inner/内网,outer/外网,默认inner */\n networkEnv?: 'inner' | 'outer';\n};\n/**\n * PDF预览方式2\n * ```\n * 1. 使用 https://web.tcshuke.com/webapps/pdf-preview/index.html 作为载体预览PDF\n * 2. 预览PDF载体git项目:https://gitlab.itcjf.com/statics/pdf-preview\n * 3. networkEnv 设置内网、外网,默认内网\n * ```\n */\nexport const PdfPreview2 = (props: PdfPreview2Props) => {\n const previewSupportMap = {\n inner: 'https://web.tcshuke.com/webapps/pdf-preview/index.html',\n outer: 'https://web.lylend.com/webapps/pdf-preview/index.html',\n };\n\n const networkEnv = props.networkEnv || 'inner';\n\n const previewSupport =\n previewSupportMap[networkEnv] || previewSupportMap.inner;\n\n return (\n <iframe\n src={`${previewSupport}?file=${encodeURIComponent(props.pdfUrl)}`}\n height={'100%'}\n width={'100%'}\n style={{ border: 0 }}\n />\n );\n};\n"],"names":["PdfPreview2","props","previewSupportMap","inner","outer","networkEnv","previewSupport","_jsx","src","concat","encodeURIComponent","pdfUrl","height","width","style","border"],"mappings":";;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;AACtD,EAAA,IAAMC,iBAAiB,GAAG;AACxBC,IAAAA,KAAK,EAAE,wDAAwD;AAC/DC,IAAAA,KAAK,EAAE;GACR;AAED,EAAA,IAAMC,UAAU,GAAGJ,KAAK,CAACI,UAAU,IAAI,OAAO;EAE9C,IAAMC,cAAc,GAClBJ,iBAAiB,CAACG,UAAU,CAAC,IAAIH,iBAAiB,CAACC,KAAK;AAE1D,EAAA,oBACEI,GAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,GAAG,
|
|
1
|
+
{"version":3,"file":"preview-Blwn4lHG.js","sources":["@flatbiz/antd/src/pdf-preview2/preview.tsx"],"sourcesContent":["export type PdfPreview2Props = {\n pdfUrl: string;\n /** 网络环境,inner/内网,outer/外网,默认inner */\n networkEnv?: 'inner' | 'outer';\n};\n/**\n * PDF预览方式2\n * ```\n * 1. 使用 https://web.tcshuke.com/webapps/pdf-preview/index.html 作为载体预览PDF\n * 2. 预览PDF载体git项目:https://gitlab.itcjf.com/statics/pdf-preview\n * 3. networkEnv 设置内网、外网,默认内网\n * ```\n */\nexport const PdfPreview2 = (props: PdfPreview2Props) => {\n const previewSupportMap = {\n inner: 'https://web.tcshuke.com/webapps/pdf-preview/index.html',\n outer: 'https://web.lylend.com/webapps/pdf-preview/index.html',\n };\n\n const networkEnv = props.networkEnv || 'inner';\n\n const previewSupport =\n previewSupportMap[networkEnv] || previewSupportMap.inner;\n\n return (\n <iframe\n src={`${previewSupport}?file=${encodeURIComponent(props.pdfUrl)}`}\n height={'100%'}\n width={'100%'}\n style={{ border: 0 }}\n />\n );\n};\n"],"names":["PdfPreview2","props","previewSupportMap","inner","outer","networkEnv","previewSupport","_jsx","src","concat","encodeURIComponent","pdfUrl","height","width","style","border"],"mappings":";;;;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAIC,KAAuB,EAAK;AACtD,EAAA,IAAMC,iBAAiB,GAAG;AACxBC,IAAAA,KAAK,EAAE,wDAAwD;AAC/DC,IAAAA,KAAK,EAAE;GACR;AAED,EAAA,IAAMC,UAAU,GAAGJ,KAAK,CAACI,UAAU,IAAI,OAAO;EAE9C,IAAMC,cAAc,GAClBJ,iBAAiB,CAACG,UAAU,CAAC,IAAIH,iBAAiB,CAACC,KAAK;AAE1D,EAAA,oBACEI,GAAA,CAAA,QAAA,EAAA;AACEC,IAAAA,GAAG,EAAA,EAAA,CAAAC,MAAA,CAAKH,cAAc,EAAA,QAAA,CAAA,CAAAG,MAAA,CAASC,kBAAkB,CAACT,KAAK,CAACU,MAAM,CAAC,CAAG;AAClEC,IAAAA,MAAM,EAAE,MAAO;AACfC,IAAAA,KAAK,EAAE,MAAO;AACdC,IAAAA,KAAK,EAAE;AAAEC,MAAAA,MAAM,EAAE;AAAE;AAAE,GACtB,CAAC;AAEN;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-DvEwmG2h.js","sources":["@flatbiz/antd/src/pdf-preview/navigation.tsx","@flatbiz/antd/src/pdf-preview/preview.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { generateIntArray } from '@flatbiz/utils';\nimport { Pdf } from '../pdf/index.js';\nimport { RollLocationInView } from '../roll-location-in-view/index.js';\n\ntype NavigationProps = {\n numPages: number;\n activeNumber: number;\n onChangeActiveNumber: (active: number) => void;\n scale?: number;\n navigationWidth?: number;\n pdfPageListHeightScope: number[][];\n pdfContentNodeId: string;\n};\nexport const Navigation = (props: NavigationProps) => {\n const navigationWidth =\n typeof props.navigationWidth === 'undefined' ? 200 : props.navigationWidth;\n return (\n <RollLocationInView\n activeKey={`${props.activeNumber}`}\n behavior=\"auto\"\n style={{ width: navigationWidth }}\n renderList={generateIntArray(1, props.numPages + 1).map((pageNumer) => {\n return {\n activeKey: `${pageNumer}`,\n render: (\n <div\n key={pageNumer}\n className={classNames('v-pdf-preview-navigation-content', {\n 'v-pdf-preview-navigation-active':\n pageNumer === props.activeNumber,\n })}\n >\n <Pdf.Page\n pageNumber={pageNumer}\n gap={0}\n scale={props.scale || 0.2}\n className={classNames('v-pdf-preview-navigation-page')}\n onClick={() => {\n props.onChangeActiveNumber(pageNumer);\n const scroll = document.querySelector(\n `#${props.pdfContentNodeId}`\n ) as HTMLDivElement;\n if (scroll) {\n if (pageNumer === 1) {\n scroll.scrollTo(0, 0);\n } else {\n const top =\n props.pdfPageListHeightScope[pageNumer - 1][0];\n scroll.scrollTo(0, top);\n }\n }\n }}\n ></Pdf.Page>\n\n <div className=\"v-pdf-preview-navigation-pagination\">\n - {pageNumer} -\n </div>\n </div>\n ),\n };\n })}\n />\n );\n};\n","import { useMemo, useRef, useState } from 'react';\nimport { Result } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { generateIntArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Pdf } from '../pdf/index.js';\nimport { Navigation } from './navigation.jsx';\nimport './style.less';\n\nexport type PdfPreviewProps = {\n pdfUrl: string;\n /** 缩放比例,默认值:1 */\n scale?: number;\n className?: string;\n /** 导航pdf,缩放比例,默认值:0.2 */\n navigationScale?: number;\n /** 隐藏导航栏 */\n hiddenNavigation?: boolean;\n /** 导航栏宽度,默认值:200 */\n navigationWidth?: number;\n};\n\n/**\n * pdf预览方式1\n * ```\n * 使用方式:在cdn.ts中引入 '//file.40017.cn/tcsk/react/pdf@3.2.146/pdf.min.js'\n * Git: https://github.com/mozilla/pdfjs-dist/tree/master\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf-seal\n * ```\n */\nexport const PdfPreview = (props: PdfPreviewProps) => {\n const [numPages, setNumPages] = useState(0);\n const dpfDoucmentRef = useRef<HTMLDivElement>(null);\n const [activePagination, setActivePagination] = useState(1);\n const [pdfPageHeight, setPdfPageHeight] = useState(0);\n\n const pageGap = 10;\n\n const onDocumentLoadSuccess = hooks.useCallbackRef((inst) => {\n setNumPages(inst.numPages);\n });\n\n /** 计算 page 在文档流中的高度范围,包含竖直方向间距 */\n const pdfPageListHeightScope = useMemo(() => {\n if (!numPages) return [];\n const pageHeightScopeList: number[][] = [];\n generateIntArray(0, numPages).forEach((item) => {\n if (item === 0) {\n pageHeightScopeList.push([0, pdfPageHeight]);\n } else {\n const x = pdfPageHeight * item + item * pageGap;\n pageHeightScopeList.push([x, x + pdfPageHeight]);\n }\n });\n return pageHeightScopeList;\n }, [numPages, pdfPageHeight]);\n\n const onDocumentCenterScroll = (event) => {\n const scrollTop = event.target.scrollTop;\n const scrollHeight = dpfDoucmentRef.current?.clientHeight as number;\n for (let index = 0; index < pdfPageListHeightScope.length; index++) {\n const element = pdfPageListHeightScope[index];\n if (element[1] - scrollTop >= scrollHeight / 2) {\n setActivePagination(index + 1);\n break;\n }\n }\n };\n\n const pdfContentNodeId = hooks.useId(undefined, 'pdf-content-node');\n\n return (\n <Pdf.Document\n pdfUrl={props.pdfUrl}\n onLoadSuccess={onDocumentLoadSuccess}\n error={\n <Result\n status=\"500\"\n title=\"PDF加载异常\"\n subTitle={`PDF地址:${props.pdfUrl}`}\n />\n }\n className={classNames('v-pdf-preview-document', props.className)}\n >\n {!props.hiddenNavigation ? (\n <div className=\"v-pdf-preview-navigation\">\n <Navigation\n numPages={numPages}\n activeNumber={activePagination}\n onChangeActiveNumber={setActivePagination}\n scale={props.navigationScale}\n navigationWidth={props.navigationWidth}\n pdfPageListHeightScope={pdfPageListHeightScope}\n pdfContentNodeId={pdfContentNodeId}\n />\n </div>\n ) : null}\n\n <div\n className=\"v-pdf-preview-content\"\n onScroll={onDocumentCenterScroll}\n ref={dpfDoucmentRef}\n id={pdfContentNodeId}\n >\n {numPages > 0\n ? generateIntArray(1, numPages + 1).map((item) => {\n return (\n <Pdf.Page\n key={item}\n pageNumber={item}\n scale={props.scale}\n gap={pageGap}\n onRenderSuccess={(node) => {\n const h = Math.floor(node.height);\n setPdfPageHeight(h);\n }}\n style={{ display: 'flex', justifyContent: 'center' }}\n ></Pdf.Page>\n );\n })\n : null}\n </div>\n </Pdf.Document>\n );\n};\n"],"names":["Navigation","props","navigationWidth","_jsx","RollLocationInView","activeKey","concat","activeNumber","behavior","style","width","renderList","generateIntArray","numPages","map","pageNumer","render","_jsxs","className","_classNames","children","Pdf","Page","pageNumber","gap","scale","onClick","onChangeActiveNumber","scroll","document","querySelector","pdfContentNodeId","scrollTo","top","pdfPageListHeightScope","PdfPreview","_useState","useState","_useState2","_slicedToArray","setNumPages","dpfDoucmentRef","useRef","_useState3","_useState4","activePagination","setActivePagination","_useState5","_useState6","pdfPageHeight","setPdfPageHeight","pageGap","onDocumentLoadSuccess","_hooks","useCallbackRef","inst","useMemo","pageHeightScopeList","forEach","item","push","x","onDocumentCenterScroll","event","_dpfDoucmentRef$curre","scrollTop","target","scrollHeight","current","clientHeight","index","length","element","useId","undefined","Document","pdfUrl","onLoadSuccess","error","Result","status","title","subTitle","hiddenNavigation","navigationScale","onScroll","ref","id","onRenderSuccess","node","h","Math","floor","height","display","justifyContent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"preview-DvEwmG2h.js","sources":["@flatbiz/antd/src/pdf-preview/navigation.tsx","@flatbiz/antd/src/pdf-preview/preview.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { generateIntArray } from '@flatbiz/utils';\nimport { Pdf } from '../pdf/index.js';\nimport { RollLocationInView } from '../roll-location-in-view/index.js';\n\ntype NavigationProps = {\n numPages: number;\n activeNumber: number;\n onChangeActiveNumber: (active: number) => void;\n scale?: number;\n navigationWidth?: number;\n pdfPageListHeightScope: number[][];\n pdfContentNodeId: string;\n};\nexport const Navigation = (props: NavigationProps) => {\n const navigationWidth =\n typeof props.navigationWidth === 'undefined' ? 200 : props.navigationWidth;\n return (\n <RollLocationInView\n activeKey={`${props.activeNumber}`}\n behavior=\"auto\"\n style={{ width: navigationWidth }}\n renderList={generateIntArray(1, props.numPages + 1).map((pageNumer) => {\n return {\n activeKey: `${pageNumer}`,\n render: (\n <div\n key={pageNumer}\n className={classNames('v-pdf-preview-navigation-content', {\n 'v-pdf-preview-navigation-active':\n pageNumer === props.activeNumber,\n })}\n >\n <Pdf.Page\n pageNumber={pageNumer}\n gap={0}\n scale={props.scale || 0.2}\n className={classNames('v-pdf-preview-navigation-page')}\n onClick={() => {\n props.onChangeActiveNumber(pageNumer);\n const scroll = document.querySelector(\n `#${props.pdfContentNodeId}`\n ) as HTMLDivElement;\n if (scroll) {\n if (pageNumer === 1) {\n scroll.scrollTo(0, 0);\n } else {\n const top =\n props.pdfPageListHeightScope[pageNumer - 1][0];\n scroll.scrollTo(0, top);\n }\n }\n }}\n ></Pdf.Page>\n\n <div className=\"v-pdf-preview-navigation-pagination\">\n - {pageNumer} -\n </div>\n </div>\n ),\n };\n })}\n />\n );\n};\n","import { useMemo, useRef, useState } from 'react';\nimport { Result } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { generateIntArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Pdf } from '../pdf/index.js';\nimport { Navigation } from './navigation.jsx';\nimport './style.less';\n\nexport type PdfPreviewProps = {\n pdfUrl: string;\n /** 缩放比例,默认值:1 */\n scale?: number;\n className?: string;\n /** 导航pdf,缩放比例,默认值:0.2 */\n navigationScale?: number;\n /** 隐藏导航栏 */\n hiddenNavigation?: boolean;\n /** 导航栏宽度,默认值:200 */\n navigationWidth?: number;\n};\n\n/**\n * pdf预览方式1\n * ```\n * 使用方式:在cdn.ts中引入 '//file.40017.cn/tcsk/react/pdf@3.2.146/pdf.min.js'\n * Git: https://github.com/mozilla/pdfjs-dist/tree/master\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf\n * Demo: https://fex.qa.tcshuke.com/docs/admin/main/file/pdf-seal\n * ```\n */\nexport const PdfPreview = (props: PdfPreviewProps) => {\n const [numPages, setNumPages] = useState(0);\n const dpfDoucmentRef = useRef<HTMLDivElement>(null);\n const [activePagination, setActivePagination] = useState(1);\n const [pdfPageHeight, setPdfPageHeight] = useState(0);\n\n const pageGap = 10;\n\n const onDocumentLoadSuccess = hooks.useCallbackRef((inst) => {\n setNumPages(inst.numPages);\n });\n\n /** 计算 page 在文档流中的高度范围,包含竖直方向间距 */\n const pdfPageListHeightScope = useMemo(() => {\n if (!numPages) return [];\n const pageHeightScopeList: number[][] = [];\n generateIntArray(0, numPages).forEach((item) => {\n if (item === 0) {\n pageHeightScopeList.push([0, pdfPageHeight]);\n } else {\n const x = pdfPageHeight * item + item * pageGap;\n pageHeightScopeList.push([x, x + pdfPageHeight]);\n }\n });\n return pageHeightScopeList;\n }, [numPages, pdfPageHeight]);\n\n const onDocumentCenterScroll = (event) => {\n const scrollTop = event.target.scrollTop;\n const scrollHeight = dpfDoucmentRef.current?.clientHeight as number;\n for (let index = 0; index < pdfPageListHeightScope.length; index++) {\n const element = pdfPageListHeightScope[index];\n if (element[1] - scrollTop >= scrollHeight / 2) {\n setActivePagination(index + 1);\n break;\n }\n }\n };\n\n const pdfContentNodeId = hooks.useId(undefined, 'pdf-content-node');\n\n return (\n <Pdf.Document\n pdfUrl={props.pdfUrl}\n onLoadSuccess={onDocumentLoadSuccess}\n error={\n <Result\n status=\"500\"\n title=\"PDF加载异常\"\n subTitle={`PDF地址:${props.pdfUrl}`}\n />\n }\n className={classNames('v-pdf-preview-document', props.className)}\n >\n {!props.hiddenNavigation ? (\n <div className=\"v-pdf-preview-navigation\">\n <Navigation\n numPages={numPages}\n activeNumber={activePagination}\n onChangeActiveNumber={setActivePagination}\n scale={props.navigationScale}\n navigationWidth={props.navigationWidth}\n pdfPageListHeightScope={pdfPageListHeightScope}\n pdfContentNodeId={pdfContentNodeId}\n />\n </div>\n ) : null}\n\n <div\n className=\"v-pdf-preview-content\"\n onScroll={onDocumentCenterScroll}\n ref={dpfDoucmentRef}\n id={pdfContentNodeId}\n >\n {numPages > 0\n ? generateIntArray(1, numPages + 1).map((item) => {\n return (\n <Pdf.Page\n key={item}\n pageNumber={item}\n scale={props.scale}\n gap={pageGap}\n onRenderSuccess={(node) => {\n const h = Math.floor(node.height);\n setPdfPageHeight(h);\n }}\n style={{ display: 'flex', justifyContent: 'center' }}\n ></Pdf.Page>\n );\n })\n : null}\n </div>\n </Pdf.Document>\n );\n};\n"],"names":["Navigation","props","navigationWidth","_jsx","RollLocationInView","activeKey","concat","activeNumber","behavior","style","width","renderList","generateIntArray","numPages","map","pageNumer","render","_jsxs","className","_classNames","children","Pdf","Page","pageNumber","gap","scale","onClick","onChangeActiveNumber","scroll","document","querySelector","pdfContentNodeId","scrollTo","top","pdfPageListHeightScope","PdfPreview","_useState","useState","_useState2","_slicedToArray","setNumPages","dpfDoucmentRef","useRef","_useState3","_useState4","activePagination","setActivePagination","_useState5","_useState6","pdfPageHeight","setPdfPageHeight","pageGap","onDocumentLoadSuccess","_hooks","useCallbackRef","inst","useMemo","pageHeightScopeList","forEach","item","push","x","onDocumentCenterScroll","event","_dpfDoucmentRef$curre","scrollTop","target","scrollHeight","current","clientHeight","index","length","element","useId","undefined","Document","pdfUrl","onLoadSuccess","error","Result","status","title","subTitle","hiddenNavigation","navigationScale","onScroll","ref","id","onRenderSuccess","node","h","Math","floor","height","display","justifyContent"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-image-BCBOv4h_.js","sources":["@flatbiz/antd/src/dialog-preview-image/preview-image.tsx"],"sourcesContent":["import { Fragment, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { Image } from 'antd';\nimport { isString } from '@dimjs/lang';\nimport type { BodyAppendDivElementProps } from '@flatbiz/utils';\nimport { dom } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\n\nexport type DialogPreviewImageProps = {\n imageUrl: string;\n};\n\nconst ModalRender = (\n props: BodyAppendDivElementProps & DialogPreviewImageProps\n) => {\n const [open, setOpen] = useState(true);\n const elementId = props.elementId;\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (_error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n (window as any)[elementId] = onClose;\n }, [onClose]);\n\n return (\n <Fragment>\n <Image\n wrapperStyle={{ display: 'none' }}\n preview={{\n visible: !!open,\n onVisibleChange: () => setOpen(false),\n afterOpenChange: (visible) => !visible && setOpen(false),\n }}\n src={props.imageUrl}\n />\n </Fragment>\n );\n};\n\n/** 图片预览 */\nexport const dialogPreviewImage = {\n show: (props: DialogPreviewImageProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_preview_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(\n <ModalRender {...props} divElement={divElement} elementId={elementId} />\n );\n return {\n close: () => {\n (window as any)[elementId]?.();\n },\n };\n },\n hiden: () => {\n try {\n const elementId = window['__dialog_preview_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (_error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","_useState","useState","_useState2","_slicedToArray","open","setOpen","elementId","onClose","_hooks","useCallbackRef","window","_error","fbaHooks","useEffectCustom","_jsx","Fragment","children","Image","wrapperStyle","display","preview","visible","onVisibleChange","afterOpenChange","src","imageUrl","dialogPreviewImage","show","_dom$bodyAppendDivEle","dom","bodyAppendDivElement","divElement","root","createRoot","render","_objectSpread","close","_elementId","_ref","call","hiden","_window$elementId","_window","_isString"],"mappings":";;;;;;;;;;;;AAaA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CACfC,KAA0D,EACvD;AACH,EAAA,IAAAC,SAAA,GAAwBC,QAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA/BI,IAAAA,IAAI,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,OAAO,GAAAH,UAAA,CAAA,CAAA,CAAA;AACpB,EAAA,IAAMI,SAAS,GAAGP,KAAK,CAACO,SAAS;AAEjC,EAAA,IAAMC,OAAO,GAAGC,KAAA,CAAMC,cAAc,CAAC,YAAM;IACzC,IAAI;MACF,OAAOC,MAAM,CAACJ,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"preview-image-BCBOv4h_.js","sources":["@flatbiz/antd/src/dialog-preview-image/preview-image.tsx"],"sourcesContent":["import { Fragment, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { Image } from 'antd';\nimport { isString } from '@dimjs/lang';\nimport type { BodyAppendDivElementProps } from '@flatbiz/utils';\nimport { dom } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\n\nexport type DialogPreviewImageProps = {\n imageUrl: string;\n};\n\nconst ModalRender = (\n props: BodyAppendDivElementProps & DialogPreviewImageProps\n) => {\n const [open, setOpen] = useState(true);\n const elementId = props.elementId;\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (_error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n (window as any)[elementId] = onClose;\n }, [onClose]);\n\n return (\n <Fragment>\n <Image\n wrapperStyle={{ display: 'none' }}\n preview={{\n visible: !!open,\n onVisibleChange: () => setOpen(false),\n afterOpenChange: (visible) => !visible && setOpen(false),\n }}\n src={props.imageUrl}\n />\n </Fragment>\n );\n};\n\n/** 图片预览 */\nexport const dialogPreviewImage = {\n show: (props: DialogPreviewImageProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_preview_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(\n <ModalRender {...props} divElement={divElement} elementId={elementId} />\n );\n return {\n close: () => {\n (window as any)[elementId]?.();\n },\n };\n },\n hiden: () => {\n try {\n const elementId = window['__dialog_preview_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (_error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","_useState","useState","_useState2","_slicedToArray","open","setOpen","elementId","onClose","_hooks","useCallbackRef","window","_error","fbaHooks","useEffectCustom","_jsx","Fragment","children","Image","wrapperStyle","display","preview","visible","onVisibleChange","afterOpenChange","src","imageUrl","dialogPreviewImage","show","_dom$bodyAppendDivEle","dom","bodyAppendDivElement","divElement","root","createRoot","render","_objectSpread","close","_elementId","_ref","call","hiden","_window$elementId","_window","_isString"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio-group-wrapper-Dip9OsdR.js","sources":["@flatbiz/antd/src/radio-group-wrapper/radio-group-wrapper.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Radio, Space } from 'antd';\nimport { valueIsEqual } from '@flatbiz/utils';\n\nexport type RadioGroupWrapperValue = string | number | boolean;\n\nexport type RadioGroupWrapperOptionItem = {\n label: string | ReactElement;\n value: RadioGroupWrapperValue;\n disabled?: boolean;\n};\n\nexport type CustomRadioGroupProps = {\n value?: RadioGroupWrapperValue;\n onChange?: (value?: RadioGroupWrapperValue) => void;\n onPreChange?: (value?: RadioGroupWrapperValue) => Promise<void>;\n options: RadioGroupWrapperOptionItem[];\n /** 是否可取消选中,默认:false */\n isCancel?: boolean;\n disabled?: boolean;\n /**方向,默认值 horizontal */\n direction?: 'horizontal' | 'vertical';\n};\n\n/**\n * RadioGroupWrapper 为了解决 RadioGroup 组件不能取消选中问题\n * @param props\n * @returns\n */\nexport const RadioGroupWrapper = (props: CustomRadioGroupProps) => {\n const onChange = async (event) => {\n const value = event.target.value;\n if (props.onPreChange) {\n await props.onPreChange(value);\n }\n props.onChange?.(value);\n };\n const onClick = (event) => {\n if (!props.isCancel) return;\n const value = event.target.value;\n if (valueIsEqual(props.value, value)) {\n props.onChange?.(undefined);\n }\n };\n return (\n <Space size={5} wrap={true} direction={props.direction}>\n {props.options.map((item) => {\n return (\n <Radio\n value={item.value}\n onClick={onClick}\n checked={props.value === item.value}\n key={String(item.value)}\n onChange={onChange}\n disabled={props.disabled || item.disabled}\n >\n {item.label}\n </Radio>\n );\n })}\n </Space>\n );\n};\n"],"names":["RadioGroupWrapper","props","onChange","event","Promise","$return","$error","_props$onChange","value","target","onPreChange","resolve","then","$await_2","$If_1","call","$boundEx","bind","onClick","isCancel","valueIsEqual","_props$onChange2","undefined","_jsx","Space","size","wrap","direction","children","options","map","item","Radio","checked","disabled","label","String"],"mappings":";;;;;;AAwBA;AACA;AACA;AACA;AACA;IACaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAA4B,EAAK;AACjE,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAUC,KAAK,EAAA;AAAZ,IAAA,OAAA,IAAAC,OAAA,CAAA,UAAAC,OAAA,EAAAC,MAAA,EAAA;MAAA,IAAAC,eAAA,EACTC,KAA0B;AAA1BA,MAAAA,KAAK,GAAGL,KAAK,CAACM,MAAM,CAACD,KAAK;MAChC,IAAIP,KAAK,CAACS,WAAW,EAAE;AACrB,QAAA,OAAAN,OAAA,CAAAO,OAAA,CAAMV,KAAK,CAACS,WAAW,CAACF,KAAK,CAAC,CAAA,CAA9BI,IAA8B,CAjCpC,UAAAC,QAAA,EAAA;UAAA,IAAI;AAAA,YAAA,OAAJC,KAAA,CAAGC,IAAI,CAAA,IAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"radio-group-wrapper-Dip9OsdR.js","sources":["@flatbiz/antd/src/radio-group-wrapper/radio-group-wrapper.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Radio, Space } from 'antd';\nimport { valueIsEqual } from '@flatbiz/utils';\n\nexport type RadioGroupWrapperValue = string | number | boolean;\n\nexport type RadioGroupWrapperOptionItem = {\n label: string | ReactElement;\n value: RadioGroupWrapperValue;\n disabled?: boolean;\n};\n\nexport type CustomRadioGroupProps = {\n value?: RadioGroupWrapperValue;\n onChange?: (value?: RadioGroupWrapperValue) => void;\n onPreChange?: (value?: RadioGroupWrapperValue) => Promise<void>;\n options: RadioGroupWrapperOptionItem[];\n /** 是否可取消选中,默认:false */\n isCancel?: boolean;\n disabled?: boolean;\n /**方向,默认值 horizontal */\n direction?: 'horizontal' | 'vertical';\n};\n\n/**\n * RadioGroupWrapper 为了解决 RadioGroup 组件不能取消选中问题\n * @param props\n * @returns\n */\nexport const RadioGroupWrapper = (props: CustomRadioGroupProps) => {\n const onChange = async (event) => {\n const value = event.target.value;\n if (props.onPreChange) {\n await props.onPreChange(value);\n }\n props.onChange?.(value);\n };\n const onClick = (event) => {\n if (!props.isCancel) return;\n const value = event.target.value;\n if (valueIsEqual(props.value, value)) {\n props.onChange?.(undefined);\n }\n };\n return (\n <Space size={5} wrap={true} direction={props.direction}>\n {props.options.map((item) => {\n return (\n <Radio\n value={item.value}\n onClick={onClick}\n checked={props.value === item.value}\n key={String(item.value)}\n onChange={onChange}\n disabled={props.disabled || item.disabled}\n >\n {item.label}\n </Radio>\n );\n })}\n </Space>\n );\n};\n"],"names":["RadioGroupWrapper","props","onChange","event","Promise","$return","$error","_props$onChange","value","target","onPreChange","resolve","then","$await_2","$If_1","call","$boundEx","bind","onClick","isCancel","valueIsEqual","_props$onChange2","undefined","_jsx","Space","size","wrap","direction","children","options","map","item","Radio","checked","disabled","label","String"],"mappings":";;;;;;AAwBA;AACA;AACA;AACA;AACA;IACaA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAA4B,EAAK;AACjE,EAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAUC,KAAK,EAAA;AAAZ,IAAA,OAAA,IAAAC,OAAA,CAAA,UAAAC,OAAA,EAAAC,MAAA,EAAA;MAAA,IAAAC,eAAA,EACTC,KAA0B;AAA1BA,MAAAA,KAAK,GAAGL,KAAK,CAACM,MAAM,CAACD,KAAK;MAChC,IAAIP,KAAK,CAACS,WAAW,EAAE;AACrB,QAAA,OAAAN,OAAA,CAAAO,OAAA,CAAMV,KAAK,CAACS,WAAW,CAACF,KAAK,CAAC,CAAA,CAA9BI,IAA8B,CAjCpC,UAAAC,QAAA,EAAA;UAAA,IAAI;AAAA,YAAA,OAAJC,KAAA,CAAGC,IAAI,CAAA,IAAG,CAAC;UAAH,CAAC,CAAC,OAAAC,QAAA,EAAU;YAAC,OAAOV,MAAA,CAAAU,QAAK,CAAC;AAAA,UAAA;AAAC,QAAA,CAAA,CAAhCC,IAAI,CAAC,IAAI,CAAC,EAAAX,MAAA,CAAA;AAkCT,MAAA;AAAC,MAAA,SAAAQ,KAAAA,GAAA;AACD,QAAA,CAAAP,eAAA,GAAAN,KAAK,CAACC,QAAQ,MAAA,IAAA,IAAAK,eAAA,KAAA,MAAA,IAAdA,eAAA,CAAAQ,IAAA,CAAAd,KAAK,EAAYO,KAAK,CAAC;AAAC,QAAA,OAAAH,OAAA,EAAA;AAAA,MAAA;AAAA,MAAA,OAnC5BS,KAAA,CAAGC,IAAI,CAAA,IAAG,CAAC;AAAA,IAAA,CAAA,CAAA;AAoCR,EAAA,CAAA;AACD,EAAA,IAAMG,OAAO,GAAG,SAAVA,OAAOA,CAAIf,KAAK,EAAK;AACzB,IAAA,IAAI,CAACF,KAAK,CAACkB,QAAQ,EAAE;AACrB,IAAA,IAAMX,KAAK,GAAGL,KAAK,CAACM,MAAM,CAACD,KAAK;IAChC,IAAIY,YAAY,CAACnB,KAAK,CAACO,KAAK,EAAEA,KAAK,CAAC,EAAE;AAAA,MAAA,IAAAa,gBAAA;AACpC,MAAA,CAAAA,gBAAA,GAAApB,KAAK,CAACC,QAAQ,MAAA,IAAA,IAAAmB,gBAAA,KAAA,MAAA,IAAdA,gBAAA,CAAAN,IAAA,CAAAd,KAAK,EAAYqB,SAAS,CAAC;AAC7B,IAAA;EACF,CAAC;EACD,oBACEC,GAAA,CAACC,KAAK,EAAA;AAACC,IAAAA,IAAI,EAAE,CAAE;AAACC,IAAAA,IAAI,EAAE,IAAK;IAACC,SAAS,EAAE1B,KAAK,CAAC0B,SAAU;IAAAC,QAAA,EACpD3B,KAAK,CAAC4B,OAAO,CAACC,GAAG,CAAC,UAACC,IAAI,EAAK;MAC3B,oBACER,GAAA,CAACS,KAAK,EAAA;QACJxB,KAAK,EAAEuB,IAAI,CAACvB,KAAM;AAClBU,QAAAA,OAAO,EAAEA,OAAQ;AACjBe,QAAAA,OAAO,EAAEhC,KAAK,CAACO,KAAK,KAAKuB,IAAI,CAACvB,KAAM;AAEpCN,QAAAA,QAAQ,EAAEA,QAAS;AACnBgC,QAAAA,QAAQ,EAAEjC,KAAK,CAACiC,QAAQ,IAAIH,IAAI,CAACG,QAAS;QAAAN,QAAA,EAEzCG,IAAI,CAACI;AAAK,OAAA,EAJNC,MAAM,CAACL,IAAI,CAACvB,KAAK,CAKjB,CAAC;IAEZ,CAAC;AAAC,GACG,CAAC;AAEZ;;;;"}
|