@kne-components/components-core 0.2.11 → 0.2.13
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/build/asset-manifest.json +122 -122
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1151.0e0f439d.chunk.css +2 -0
- package/build/static/css/{1151.8a1ea8b2.chunk.css.map → 1151.0e0f439d.chunk.css.map} +1 -1
- package/build/static/css/1153.85f06ccf.chunk.css +2 -0
- package/build/static/css/1153.85f06ccf.chunk.css.map +1 -0
- package/build/static/css/1154.f4f205da.chunk.css +2 -0
- package/build/static/css/1154.f4f205da.chunk.css.map +1 -0
- package/build/static/css/1454.773ade76.chunk.css +2 -0
- package/build/static/css/{1454.597915d6.chunk.css.map → 1454.773ade76.chunk.css.map} +1 -1
- package/build/static/css/1554.378aab07.chunk.css +2 -0
- package/build/static/css/{1554.e0060527.chunk.css.map → 1554.378aab07.chunk.css.map} +1 -1
- package/build/static/css/2503.beef9f54.chunk.css +2 -0
- package/build/static/css/{2503.1c697ec5.chunk.css.map → 2503.beef9f54.chunk.css.map} +1 -1
- package/build/static/css/2517.ad3e2b99.chunk.css +2 -0
- package/build/static/css/{2517.98220b06.chunk.css.map → 2517.ad3e2b99.chunk.css.map} +1 -1
- package/build/static/css/2716.3c6f43fb.chunk.css +2 -0
- package/build/static/css/{2716.2ac76682.chunk.css.map → 2716.3c6f43fb.chunk.css.map} +1 -1
- package/build/static/css/2730.860e390e.chunk.css +2 -0
- package/build/static/css/{2730.2d0cbb3d.chunk.css.map → 2730.860e390e.chunk.css.map} +1 -1
- package/build/static/css/289.b138addc.chunk.css +2 -0
- package/build/static/css/{289.e6c6f1da.chunk.css.map → 289.b138addc.chunk.css.map} +1 -1
- package/build/static/css/3142.13adfc3a.chunk.css +2 -0
- package/build/static/css/{3142.3c249a67.chunk.css.map → 3142.13adfc3a.chunk.css.map} +1 -1
- package/build/static/css/3333.2f52a976.chunk.css +2 -0
- package/build/static/css/3333.2f52a976.chunk.css.map +1 -0
- package/build/static/css/{3843.f8664dd9.chunk.css → 3843.0a0692b4.chunk.css} +2 -2
- package/build/static/css/{3843.f8664dd9.chunk.css.map → 3843.0a0692b4.chunk.css.map} +1 -1
- package/build/static/css/4029.3296f349.chunk.css +2 -0
- package/build/static/css/4029.3296f349.chunk.css.map +1 -0
- package/build/static/css/4265.cc94dd41.chunk.css +2 -0
- package/build/static/css/4265.cc94dd41.chunk.css.map +1 -0
- package/build/static/css/4666.daddc0cc.chunk.css +2 -0
- package/build/static/css/{4666.33e12ff4.chunk.css.map → 4666.daddc0cc.chunk.css.map} +1 -1
- package/build/static/css/5443.35cb414e.chunk.css +2 -0
- package/build/static/css/5443.35cb414e.chunk.css.map +1 -0
- package/build/static/css/5600.ca194700.chunk.css +2 -0
- package/build/static/css/{5600.40c7f8d3.chunk.css.map → 5600.ca194700.chunk.css.map} +1 -1
- package/build/static/css/5873.ba71089f.chunk.css +2 -0
- package/build/static/css/{5873.043a805d.chunk.css.map → 5873.ba71089f.chunk.css.map} +1 -1
- package/build/static/css/{5996.7ccd8080.chunk.css → 5996.d5db9990.chunk.css} +2 -2
- package/build/static/css/{5996.7ccd8080.chunk.css.map → 5996.d5db9990.chunk.css.map} +1 -1
- package/build/static/css/6611.5ee2d32c.chunk.css +2 -0
- package/build/static/css/{6611.132d7bf4.chunk.css.map → 6611.5ee2d32c.chunk.css.map} +1 -1
- package/build/static/css/6779.5644d170.chunk.css +2 -0
- package/build/static/css/{6779.63d0647a.chunk.css.map → 6779.5644d170.chunk.css.map} +1 -1
- package/build/static/css/7121.82a6e5ff.chunk.css +2 -0
- package/build/static/css/{7121.69995c30.chunk.css.map → 7121.82a6e5ff.chunk.css.map} +1 -1
- package/build/static/css/7227.86530a2a.chunk.css +2 -0
- package/build/static/css/{7227.e6a66529.chunk.css.map → 7227.86530a2a.chunk.css.map} +1 -1
- package/build/static/css/8017.30097e6b.chunk.css +2 -0
- package/build/static/css/8017.30097e6b.chunk.css.map +1 -0
- package/build/static/css/{8725.1db6950e.chunk.css → 8725.f7685908.chunk.css} +2 -2
- package/build/static/css/{8725.1db6950e.chunk.css.map → 8725.f7685908.chunk.css.map} +1 -1
- package/build/static/css/931.86e57f64.chunk.css +2 -0
- package/build/static/css/931.86e57f64.chunk.css.map +1 -0
- package/build/static/js/{1106.509a010d.chunk.js → 1106.94b2f66d.chunk.js} +2 -2
- package/build/static/js/{1106.509a010d.chunk.js.map → 1106.94b2f66d.chunk.js.map} +1 -1
- package/build/static/js/{1153.3ca5a153.chunk.js → 1153.084c38bb.chunk.js} +3 -3
- package/build/static/js/{1153.3ca5a153.chunk.js.map → 1153.084c38bb.chunk.js.map} +1 -1
- package/build/static/js/1154.bf6eb17b.chunk.js +2 -0
- package/build/static/js/1154.bf6eb17b.chunk.js.map +1 -0
- package/build/static/js/1454.95cc1e18.chunk.js +3 -0
- package/build/static/js/{1454.b69c4181.chunk.js.map → 1454.95cc1e18.chunk.js.map} +1 -1
- package/build/static/js/1554.3483fb84.chunk.js +3 -0
- package/build/static/js/{1554.22446df8.chunk.js.map → 1554.3483fb84.chunk.js.map} +1 -1
- package/build/static/js/2503.e70ef261.chunk.js +2 -0
- package/build/static/js/{2503.48a98d11.chunk.js.map → 2503.e70ef261.chunk.js.map} +1 -1
- package/build/static/js/2517.618e29cf.chunk.js +2 -0
- package/build/static/js/{2517.12bffb49.chunk.js.map → 2517.618e29cf.chunk.js.map} +1 -1
- package/build/static/js/2716.b8095105.chunk.js +3 -0
- package/build/static/js/{2716.1b7d43b2.chunk.js.map → 2716.b8095105.chunk.js.map} +1 -1
- package/build/static/js/2730.25605c83.chunk.js +2 -0
- package/build/static/js/{2730.705a15e7.chunk.js.map → 2730.25605c83.chunk.js.map} +1 -1
- package/build/static/js/{2814.aafa2a65.chunk.js → 2814.ef0e78ca.chunk.js} +2 -2
- package/build/static/js/{2814.aafa2a65.chunk.js.map → 2814.ef0e78ca.chunk.js.map} +1 -1
- package/build/static/js/{289.c8a6e7a1.chunk.js → 289.e8f67dbf.chunk.js} +2 -2
- package/build/static/js/{289.c8a6e7a1.chunk.js.map → 289.e8f67dbf.chunk.js.map} +1 -1
- package/build/static/js/{3142.f7ddc1fa.chunk.js → 3142.1719d4a1.chunk.js} +2 -2
- package/build/static/js/{3142.f7ddc1fa.chunk.js.map → 3142.1719d4a1.chunk.js.map} +1 -1
- package/build/static/js/3333.2d80e8a4.chunk.js +2 -0
- package/build/static/js/3333.2d80e8a4.chunk.js.map +1 -0
- package/build/static/js/36.c44b9595.chunk.js +2 -0
- package/build/static/js/{36.1c63688d.chunk.js.map → 36.c44b9595.chunk.js.map} +1 -1
- package/build/static/js/{3843.c63f0e22.chunk.js → 3843.e3b94c91.chunk.js} +2 -2
- package/build/static/js/{3843.c63f0e22.chunk.js.map → 3843.e3b94c91.chunk.js.map} +1 -1
- package/build/static/js/4029.b169bb60.chunk.js +2 -0
- package/build/static/js/4029.b169bb60.chunk.js.map +1 -0
- package/build/static/js/4265.b63b8852.chunk.js +2 -0
- package/build/static/js/{4265.15b26581.chunk.js.map → 4265.b63b8852.chunk.js.map} +1 -1
- package/build/static/js/{4666.164a8d3a.chunk.js → 4666.586b40a7.chunk.js} +3 -3
- package/build/static/js/{4666.164a8d3a.chunk.js.map → 4666.586b40a7.chunk.js.map} +1 -1
- package/build/static/js/5443.eb1bd9c6.chunk.js +2 -0
- package/build/static/js/{5443.b66d023b.chunk.js.map → 5443.eb1bd9c6.chunk.js.map} +1 -1
- package/build/static/js/5600.81f2aef6.chunk.js +2 -0
- package/build/static/js/{5600.fbe5fb93.chunk.js.map → 5600.81f2aef6.chunk.js.map} +1 -1
- package/build/static/js/5873.55afd19e.chunk.js +2 -0
- package/build/static/js/{5873.6057b4b5.chunk.js.map → 5873.55afd19e.chunk.js.map} +1 -1
- package/build/static/js/{5996.e6d22e26.chunk.js → 5996.b6b4584c.chunk.js} +2 -2
- package/build/static/js/{5996.e6d22e26.chunk.js.map → 5996.b6b4584c.chunk.js.map} +1 -1
- package/build/static/js/{6569.9f6d9777.chunk.js → 6569.25ee0c69.chunk.js} +2 -2
- package/build/static/js/{6569.9f6d9777.chunk.js.map → 6569.25ee0c69.chunk.js.map} +1 -1
- package/build/static/js/6611.07e270e6.chunk.js +2 -0
- package/build/static/js/{6611.ecbae262.chunk.js.map → 6611.07e270e6.chunk.js.map} +1 -1
- package/build/static/js/6779.c1862ff1.chunk.js +2 -0
- package/build/static/js/{6779.4760144b.chunk.js.map → 6779.c1862ff1.chunk.js.map} +1 -1
- package/build/static/js/{6915.5dc9fc8a.chunk.js → 6915.3738b719.chunk.js} +2 -2
- package/build/static/js/{6915.5dc9fc8a.chunk.js.map → 6915.3738b719.chunk.js.map} +1 -1
- package/build/static/js/7121.10fd060f.chunk.js +2 -0
- package/build/static/js/{7121.2431a18a.chunk.js.map → 7121.10fd060f.chunk.js.map} +1 -1
- package/build/static/js/7227.0aee129e.chunk.js +3 -0
- package/build/static/js/{7227.c271e9d9.chunk.js.map → 7227.0aee129e.chunk.js.map} +1 -1
- package/build/static/js/{7790.531652b1.chunk.js → 7790.e1bcb362.chunk.js} +2 -2
- package/build/static/js/{7790.531652b1.chunk.js.map → 7790.e1bcb362.chunk.js.map} +1 -1
- package/build/static/js/{8017.cd3586a7.chunk.js → 8017.0adb338a.chunk.js} +2 -2
- package/build/static/js/{8017.cd3586a7.chunk.js.map → 8017.0adb338a.chunk.js.map} +1 -1
- package/build/static/js/{8725.b2f9157b.chunk.js → 8725.c77c40ca.chunk.js} +2 -2
- package/build/static/js/{8725.b2f9157b.chunk.js.map → 8725.c77c40ca.chunk.js.map} +1 -1
- package/build/static/js/{931.b6f30988.chunk.js → 931.25d5f1b7.chunk.js} +2 -2
- package/build/static/js/{931.b6f30988.chunk.js.map → 931.25d5f1b7.chunk.js.map} +1 -1
- package/build/static/js/{main.f05b1454.js → main.1547f954.js} +2 -2
- package/build/static/js/{main.f05b1454.js.map → main.1547f954.js.map} +1 -1
- package/package.json +1 -1
- package/build/static/css/1151.8a1ea8b2.chunk.css +0 -2
- package/build/static/css/1153.fec83a9b.chunk.css +0 -2
- package/build/static/css/1153.fec83a9b.chunk.css.map +0 -1
- package/build/static/css/1154.3ac979f0.chunk.css +0 -2
- package/build/static/css/1154.3ac979f0.chunk.css.map +0 -1
- package/build/static/css/1454.597915d6.chunk.css +0 -2
- package/build/static/css/1554.e0060527.chunk.css +0 -2
- package/build/static/css/2503.1c697ec5.chunk.css +0 -2
- package/build/static/css/2517.98220b06.chunk.css +0 -2
- package/build/static/css/2716.2ac76682.chunk.css +0 -2
- package/build/static/css/2730.2d0cbb3d.chunk.css +0 -2
- package/build/static/css/289.e6c6f1da.chunk.css +0 -2
- package/build/static/css/3142.3c249a67.chunk.css +0 -2
- package/build/static/css/3333.e42b3e6f.chunk.css +0 -2
- package/build/static/css/3333.e42b3e6f.chunk.css.map +0 -1
- package/build/static/css/4029.78a7d783.chunk.css +0 -2
- package/build/static/css/4029.78a7d783.chunk.css.map +0 -1
- package/build/static/css/4265.1ec41793.chunk.css +0 -2
- package/build/static/css/4265.1ec41793.chunk.css.map +0 -1
- package/build/static/css/4666.33e12ff4.chunk.css +0 -2
- package/build/static/css/5443.28a016be.chunk.css +0 -2
- package/build/static/css/5443.28a016be.chunk.css.map +0 -1
- package/build/static/css/5600.40c7f8d3.chunk.css +0 -2
- package/build/static/css/5873.043a805d.chunk.css +0 -2
- package/build/static/css/6611.132d7bf4.chunk.css +0 -2
- package/build/static/css/6779.63d0647a.chunk.css +0 -2
- package/build/static/css/7121.69995c30.chunk.css +0 -2
- package/build/static/css/7227.e6a66529.chunk.css +0 -2
- package/build/static/css/8017.cbd72a3a.chunk.css +0 -2
- package/build/static/css/8017.cbd72a3a.chunk.css.map +0 -1
- package/build/static/css/931.fc2017c7.chunk.css +0 -2
- package/build/static/css/931.fc2017c7.chunk.css.map +0 -1
- package/build/static/js/1154.dd461e4f.chunk.js +0 -2
- package/build/static/js/1154.dd461e4f.chunk.js.map +0 -1
- package/build/static/js/1454.b69c4181.chunk.js +0 -3
- package/build/static/js/1554.22446df8.chunk.js +0 -3
- package/build/static/js/2503.48a98d11.chunk.js +0 -2
- package/build/static/js/2517.12bffb49.chunk.js +0 -2
- package/build/static/js/2716.1b7d43b2.chunk.js +0 -3
- package/build/static/js/2730.705a15e7.chunk.js +0 -2
- package/build/static/js/3333.ed36409c.chunk.js +0 -2
- package/build/static/js/3333.ed36409c.chunk.js.map +0 -1
- package/build/static/js/36.1c63688d.chunk.js +0 -2
- package/build/static/js/4029.909eb89b.chunk.js +0 -2
- package/build/static/js/4029.909eb89b.chunk.js.map +0 -1
- package/build/static/js/4265.15b26581.chunk.js +0 -2
- package/build/static/js/5443.b66d023b.chunk.js +0 -2
- package/build/static/js/5600.fbe5fb93.chunk.js +0 -2
- package/build/static/js/5873.6057b4b5.chunk.js +0 -2
- package/build/static/js/6611.ecbae262.chunk.js +0 -2
- package/build/static/js/6779.4760144b.chunk.js +0 -2
- package/build/static/js/7121.2431a18a.chunk.js +0 -2
- package/build/static/js/7227.c271e9d9.chunk.js +0 -3
- /package/build/static/js/{1153.3ca5a153.chunk.js.LICENSE.txt → 1153.084c38bb.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1454.b69c4181.chunk.js.LICENSE.txt → 1454.95cc1e18.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1554.22446df8.chunk.js.LICENSE.txt → 1554.3483fb84.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{2716.1b7d43b2.chunk.js.LICENSE.txt → 2716.b8095105.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{4666.164a8d3a.chunk.js.LICENSE.txt → 4666.586b40a7.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7227.c271e9d9.chunk.js.LICENSE.txt → 7227.0aee129e.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/2814.aafa2a65.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/ButtonGroup/style.module.scss?7e95","components/ButtonGroup/index.js","components/ConfirmButton/locale/index.js","webpack://@kne-components/components-core/./src/components/ConfirmButton/style.module.scss?9447","components/ConfirmButton/index.js","components/Enum/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"width-container\":\"style_width-container__JfEbg__Fo22-\",\"hidden-container\":\"style_hidden-container__EdySA__Fo22-\",\"hidden-inner\":\"style_hidden-inner__vAN59__Fo22-\",\"menu-list\":\"style_menu-list__VDttR__Fo22-\",\"btn-item\":\"style_btn-item__mp5MQ__Fo22-\"};","import { startTransition, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { Button, Dropdown, Space } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport ConfirmButton from \"@components/ConfirmButton\";\nimport useResize from \"@common/hooks/useResize\";\nimport pick from \"lodash/pick\";\nimport style from \"./style.module.scss\";\nimport memoize from \"lodash/memoize\";\n\nconst areaWidthComputed = memoize(\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n const spaceWidth = (() => {\n if (compact) {\n return 0;\n }\n\n if ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) > -1) {\n return ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) + 1) * 8;\n }\n\n if (Number.isInteger(spaceProps.size)) {\n return spaceProps.size;\n }\n return 8;\n })();\n\n let targetLength = 0,\n targetWidth = 0;\n\n // 采取先加后减策略\n while (\n amountWidth >=\n targetWidth +\n buttonWidthList[targetLength] +\n targetLength * spaceWidth &&\n targetLength < buttonWidthList.length\n ) {\n targetWidth += buttonWidthList[targetLength];\n targetLength += 1;\n }\n\n while (\n amountWidth <\n targetWidth +\n (targetLength - 1) * spaceWidth +\n (targetLength < buttonWidthList.length\n ? moreBtnWidth + spaceWidth\n : 0) &&\n targetLength > 0\n ) {\n targetWidth -= buttonWidthList[targetLength - 1];\n targetLength -= 1;\n }\n\n return targetLength;\n },\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n return `${amountWidth}${moreBtnWidth}${buttonWidthList.join(\n \",\"\n )}${Object.values(spaceProps).join(\",\")}${compact && compact.toString()}`;\n }\n);\n\nconst ButtonGroup = ({ list, more, compact, ...props }) => {\n const spaceProps = pick(props, [\"size\", \"split\", \"align\", \"style\"]);\n const [showLength, setShowLength] = useState(list.length && 1);\n const computedLength = useRefCallback(() => {\n const el = targetRef.current,\n moreEl = moreRef.current,\n widthEl = ref.current;\n if (!el) {\n return;\n }\n\n const buttonEls = el.querySelectorAll(\".button-group-item\");\n if (!buttonEls) {\n return;\n }\n if (buttonEls.length === 0) {\n return;\n }\n\n const amountWidth = widthEl.clientWidth,\n moreBtnWidth = moreEl.clientWidth,\n buttonWidthList = [].map.call(buttonEls, (el) => el.offsetWidth);\n const targetLength = areaWidthComputed({\n amountWidth,\n moreBtnWidth,\n buttonWidthList,\n spaceProps,\n compact,\n });\n startTransition(() => {\n setShowLength(targetLength);\n });\n });\n const ref = useResize(computedLength);\n const targetRef = useResize(computedLength);\n const moreRef = useResize(computedLength);\n const otherList = list.slice(showLength);\n\n const renderButton = (renderItem, index, isDropdown) => {\n if (typeof renderItem === \"function\") {\n return renderItem({\n key: index,\n className: classnames(\"button-group-item\", style[\"btn-item\"]),\n isDropdown,\n });\n }\n const { className, confirm, buttonComponent, ...props } = renderItem;\n const isConfirm = confirm || props.message;\n const CurrentButton = isConfirm\n ? ConfirmButton\n : buttonComponent || LoadingButton;\n\n return (\n <CurrentButton\n danger={isConfirm && props.isDelete !== false}\n {...Object.assign(\n {},\n props,\n isConfirm && (props.isModal || isDropdown)\n ? {\n isModal: true,\n }\n : {}\n )}\n key={index}\n className={classnames(\n \"button-group-item\",\n style[\"btn-item\"],\n className\n )}\n />\n );\n };\n\n const SpaceComponent = compact ? Space.Compact : Space;\n\n return (\n <>\n <div className={style[\"width-container\"]} ref={ref} />\n <div className={style[\"hidden-container\"]}>\n <div className={style[\"hidden-inner\"]} ref={moreRef}>\n {more}\n </div>\n <div className={style[\"hidden-inner\"]} ref={targetRef}>\n <SpaceComponent {...spaceProps}>\n {list.map(renderButton)}\n </SpaceComponent>\n </div>\n </div>\n <SpaceComponent {...spaceProps}>\n {list\n .slice(0, showLength)\n .map((item, index) => renderButton(item, index, false))}\n {otherList.length > 0 && (\n <Dropdown\n overlayClassName={style[\"menu-list\"]}\n menu={{\n items: otherList.map((item, index) => {\n return {\n key: index,\n label: renderButton(item, index, true),\n };\n }),\n }}\n >\n {more}\n </Dropdown>\n )}\n </SpaceComponent>\n </>\n );\n};\n\nButtonGroup.defaultProps = {\n more: (\n <Button>\n 更多\n <Icon type=\"icon-arrow-thin-down\" />\n </Button>\n ),\n};\n\nexport default ButtonGroup;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"overlay\":\"style_overlay__99t5t__Fo22-\",\"is-danger\":\"style_is-danger__gxyAB__Fo22-\",\"title\":\"style_title__EEPu2__Fo22-\",\"content\":\"style_content__mZZg5__Fo22-\",\"has-title\":\"style_has-title__5+PEt__Fo22-\"};","import React from \"react\";\nimport { Button, Popconfirm, Space, Typography } from \"antd\";\nimport importMessages from \"./locale\";\nimport Icon from \"@components/Icon\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport { useConfirmModal } from \"@components/Modal\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nexport const withConfirm = (WrappedComponent) => {\n const ConfirmComponent = createWithIntl({\n moduleName: \"ConfirmButton\",\n importMessages,\n })(\n ({\n title,\n message,\n isDelete = true,\n onClick,\n onCancel,\n disabled,\n showCancel,\n cancelText,\n isModal,\n okText,\n placement,\n getContainer,\n ...props\n }) => {\n const { formatMessage } = useIntl({ moduleName: \"ConfirmButton\" });\n const modal = useConfirmModal();\n if (isModal) {\n return (\n <WrappedComponent\n {...props}\n disabled={disabled}\n onClick={(e) => {\n modal({\n type: \"confirm\",\n title: title,\n getContainer,\n danger: isDelete,\n confirmType: isDelete ? \"warning\" : \"info\",\n message: message || formatMessage({ id: \"message\" }),\n okText: okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" }),\n cancelText: cancelText || formatMessage({ id: \"cancel\" }),\n onCancel,\n onOk: onClick,\n });\n }}\n />\n );\n }\n return (\n <Popconfirm\n title={\n <Space\n direction=\"vertical\"\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n {title && (\n <Space size={0} align=\"start\" className={style[\"title\"]}>\n {isDelete && (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n )}\n {title}\n </Space>\n )}\n <Space\n size={0}\n align=\"start\"\n className={classnames(style[\"content\"], {\n [style[\"has-title\"]]: title,\n })}\n >\n {!title && isDelete ? (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n ) : null}\n {message || formatMessage({ id: \"message\" })}\n </Space>\n </Space>\n }\n placement={placement}\n onConfirm={onClick}\n okButtonProps={{\n danger: isDelete,\n }}\n onCancel={onCancel}\n overlayClassName={classnames(style[\"overlay\"], {\n [style[\"is-danger\"]]: isDelete,\n })}\n getPopupContainer={getContainer}\n disabled={disabled}\n showCancel={showCancel}\n cancelText={cancelText}\n okText={\n okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" })\n }\n >\n <WrappedComponent {...props} disabled={disabled} />\n </Popconfirm>\n );\n }\n );\n\n ConfirmComponent.defaultProps = {\n isModal: false,\n showCancel: true,\n };\n\n return ConfirmComponent;\n};\n\nexport const ConfirmLink = withConfirm(Typography.Link);\nexport const ConfirmText = withConfirm(Typography.Text);\n\nexport default withConfirm(Button);\n","import { useRef } from \"react\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\nimport memoize from \"lodash/memoize\";\nimport isNil from \"lodash/isNil\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\nconst EnumLoaderFetch = withFetch(({ data, children }) => {\n return typeof children === \"function\"\n ? children(data)\n : children || data?.description;\n});\n\nconst getEnumsMap = memoize((enums) => {\n return new Map(\n baseLoaders.concat(\n Object.keys(Object.assign({}, enums)).map((key) => [key, enums[key]])\n )\n );\n});\n\nconst EnumLoader = ({ loader: enumsLoader, ...props }) => {\n const {\n global: { enumsRef },\n } = useGlobalContext();\n const prevLocaleRef = useRef(null);\n return (\n <EnumLoaderFetch\n {...props}\n loader={async (...args) => {\n const enums = getEnumsMap(await enumsLoader(...args));\n const { params } = args[0];\n const { moduleName, name, force, locale } = params;\n\n const getEnumMap = async (moduleName) => {\n return (\n (() => {\n return (\n force !== true &&\n prevLocaleRef.current === locale &&\n enumsRef.current.get(moduleName)\n );\n })() ||\n (await (async () => {\n const loader = enums.get(moduleName);\n const output = await (async () => {\n if (typeof loader === \"function\") {\n return new Map(\n (await loader({ locale })).map((item) => {\n return [item.value.toString(), item];\n })\n );\n }\n if (Array.isArray(loader)) {\n return new Map(\n loader.map((item) => [item.value.toString(), item])\n );\n }\n if (typeof loader === \"object\") {\n return new Map(\n Object.keys(loader).map((key) => [\n key.toString(),\n loader[key],\n ])\n );\n }\n console.warn(\"枚举值loader的设置可能不正确\");\n return new Map();\n })();\n enumsRef.current.set(moduleName, output);\n prevLocaleRef.current = locale;\n return output;\n })())\n );\n };\n if (Array.isArray(moduleName)) {\n return await Promise.all(\n moduleName.map((target) =>\n getEnumMap(target).then((enumMap) => Array.from(enumMap.values()))\n )\n );\n }\n\n const enumMap = await getEnumMap(moduleName);\n if (!isNil(name)) {\n return enumMap.get(name.toString());\n }\n return Array.from(enumMap.values());\n }}\n />\n );\n};\n\nconst Enum = ({ moduleName, name, force, children, ...props }) => {\n const preset = usePreset();\n return (\n <EnumLoader\n {...props}\n params={{\n moduleName,\n locale: preset?.locale,\n enums: preset?.enums,\n name,\n force,\n }}\n loader={({ params }) => params.enums}\n >\n {children}\n </EnumLoader>\n );\n};\n\nEnum.defaultProps = {\n force: false,\n};\n\nexport default Enum;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__Fo22-\",\"state-result-tag\":\"style_state-result-tag__CssDz__Fo22-\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__Fo22-\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__Fo22-\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__Fo22-\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__Fo22-\",\"show-bg\":\"style_show-bg__OcL+R__Fo22-\",\"tag-text\":\"style_tag-text__JHCt+__Fo22-\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__Fo22-\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__Fo22-\",\"is-resize\":\"style_is-resize__ut6RW__Fo22-\",\"is-moving\":\"style_is-moving__BJ9wR__Fo22-\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__Fo22-\",\"is-computed\":\"style_is-computed__B9rIF__Fo22-\",\"options-column\":\"style_options-column__vsPTr__Fo22-\",\"options-btn\":\"style_options-btn__U3uoy__Fo22-\",\"tooltip\":\"style_tooltip__vJlkv__Fo22-\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__Fo22-\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__Fo22-\",\"columns-control\":\"style_columns-control__5-5ZF__Fo22-\",\"columns-control-content\":\"style_columns-control-content__MoeUI__Fo22-\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__Fo22-\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__Fo22-\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__Fo22-\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__Fo22-\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__Fo22-\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__Fo22-\",\"is-drag\":\"style_is-drag__U68aw__Fo22-\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__Fo22-\",\"sortable-drag\":\"style_sortable-drag__K5hWd__Fo22-\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__Fo22-\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__Fo22-\",\"sort-btn\":\"style_sort-btn__KvNLr__Fo22-\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__Fo22-\",\"sort-icon\":\"style_sort-icon__dB85I__Fo22-\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__Fo22-\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__Fo22-\",\"tag\":\"columns_tag__bQZLG__Fo22-\",\"avatar\":\"columns_avatar__SLPI+__Fo22-\",\"hover\":\"columns_hover__oAwHg__Fo22-\",\"primary\":\"columns_primary__6KtaA__Fo22-\",\"loading\":\"columns_loading__gtBay__Fo22-\",\"options\":\"columns_options__WvDZD__Fo22-\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({ columns, name, controllerOpen, tableWidth }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !isEqual(record[column.name], prevRecord[column.name])\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport memoize from \"lodash/memoize\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = memoize(render);\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: item,\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","areaWidthComputed","memoize","_ref","amountWidth","moreBtnWidth","buttonWidthList","spaceProps","compact","spaceWidth","indexOf","size","isInteger","targetLength","targetWidth","length","_ref2","concat","join","Object","values","toString","ButtonGroup","_ref3","list","more","props","pick","showLength","setShowLength","useState","computedLength","useRefCallback","el","targetRef","current","moreEl","moreRef","widthEl","ref","buttonEls","querySelectorAll","clientWidth","map","call","offsetWidth","startTransition","useResize","otherList","slice","renderButton","renderItem","index","isDropdown","className","classnames","style","confirm","buttonComponent","isConfirm","message","CurrentButton","ConfirmButton","LoadingButton","_createElement","danger","isDelete","assign","isModal","SpaceComponent","Space","Compact","_jsxs","_Fragment","children","_jsx","item","Dropdown","overlayClassName","menu","items","label","defaultProps","Button","Icon","type","locale","en-US","zh-CN","withConfirm","WrappedComponent","ConfirmComponent","createWithIntl","moduleName","importMessages","title","onClick","onCancel","disabled","showCancel","cancelText","okText","placement","getContainer","formatMessage","useIntl","modal","useConfirmModal","confirmType","id","onOk","Popconfirm","direction","stopPropagation","align","onConfirm","okButtonProps","getPopupContainer","ConfirmLink","Typography","Link","ConfirmText","Text","baseLoaders","description","EnumLoaderFetch","withFetch","data","getEnumsMap","enums","Map","keys","EnumLoader","loader","enumsLoader","global","enumsRef","useGlobalContext","prevLocaleRef","useRef","async","arguments","params","undefined","name","force","getEnumMap","get","output","Array","isArray","console","warn","set","Promise","all","then","enumMap","from","isNil","Enum","preset","usePreset","_ref4","tagTypeEnum","default","skill","color","borderColor","result","filterResult","success","progress","info","other","StateTag","showBorder","text","showBackground","filterName","tagColor","useMemo","_tagTypeEnum$type","_tagTypeEnum$type2","Tag","background","border","width","filter","hidden","icon","ellipsis","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","columnTypes","date","render","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","_ref11","omit","avatar","_ref12","Image","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","options","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","Row","justify","Col","Tooltip","defaultActiveKey","ghost","bordered","header","List","Item","Checkbox","checked","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","forEach","col","handlerColumnsChange","animation","delayOnTouchStart","delay","preventDefault","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","gutter","storageKey","getDataApi","setDataFunc","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","content","ColumnsControlContent","controllerOpen","tableWidth","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","useEffect","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","onMouseDown","clientX","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","isEqual","handlerCancelResize","handlerResize","document","documentElement","addEventListener","removeEventListener","columnsConfig","rowKey","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","targetRender","itemKey","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","Table","getScrollEl","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","scroller","getScrollTarget","querySelector","AntdTable","x","_len","args","_key","pageData","FeaturesColumnsConfig","Features","TablePageInner","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","featureId","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","totalCount","forwardRef","pageSizeKey","toUpperCase","setPageSize","fetchParams"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/2814.ef0e78ca.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/ButtonGroup/style.module.scss?7e95","components/ButtonGroup/index.js","components/ConfirmButton/locale/index.js","webpack://@kne-components/components-core/./src/components/ConfirmButton/style.module.scss?9447","components/ConfirmButton/index.js","components/Enum/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"width-container\":\"style_width-container__JfEbg__vpO+I\",\"hidden-container\":\"style_hidden-container__EdySA__vpO+I\",\"hidden-inner\":\"style_hidden-inner__vAN59__vpO+I\",\"menu-list\":\"style_menu-list__VDttR__vpO+I\",\"btn-item\":\"style_btn-item__mp5MQ__vpO+I\"};","import { startTransition, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { Button, Dropdown, Space } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport ConfirmButton from \"@components/ConfirmButton\";\nimport useResize from \"@common/hooks/useResize\";\nimport pick from \"lodash/pick\";\nimport style from \"./style.module.scss\";\nimport memoize from \"lodash/memoize\";\n\nconst areaWidthComputed = memoize(\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n const spaceWidth = (() => {\n if (compact) {\n return 0;\n }\n\n if ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) > -1) {\n return ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) + 1) * 8;\n }\n\n if (Number.isInteger(spaceProps.size)) {\n return spaceProps.size;\n }\n return 8;\n })();\n\n let targetLength = 0,\n targetWidth = 0;\n\n // 采取先加后减策略\n while (\n amountWidth >=\n targetWidth +\n buttonWidthList[targetLength] +\n targetLength * spaceWidth &&\n targetLength < buttonWidthList.length\n ) {\n targetWidth += buttonWidthList[targetLength];\n targetLength += 1;\n }\n\n while (\n amountWidth <\n targetWidth +\n (targetLength - 1) * spaceWidth +\n (targetLength < buttonWidthList.length\n ? moreBtnWidth + spaceWidth\n : 0) &&\n targetLength > 0\n ) {\n targetWidth -= buttonWidthList[targetLength - 1];\n targetLength -= 1;\n }\n\n return targetLength;\n },\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n return `${amountWidth}${moreBtnWidth}${buttonWidthList.join(\n \",\"\n )}${Object.values(spaceProps).join(\",\")}${compact && compact.toString()}`;\n }\n);\n\nconst ButtonGroup = ({ list, more, compact, ...props }) => {\n const spaceProps = pick(props, [\"size\", \"split\", \"align\", \"style\"]);\n const [showLength, setShowLength] = useState(list.length && 1);\n const computedLength = useRefCallback(() => {\n const el = targetRef.current,\n moreEl = moreRef.current,\n widthEl = ref.current;\n if (!el) {\n return;\n }\n\n const buttonEls = el.querySelectorAll(\".button-group-item\");\n if (!buttonEls) {\n return;\n }\n if (buttonEls.length === 0) {\n return;\n }\n\n const amountWidth = widthEl.clientWidth,\n moreBtnWidth = moreEl.clientWidth,\n buttonWidthList = [].map.call(buttonEls, (el) => el.offsetWidth);\n const targetLength = areaWidthComputed({\n amountWidth,\n moreBtnWidth,\n buttonWidthList,\n spaceProps,\n compact,\n });\n startTransition(() => {\n setShowLength(targetLength);\n });\n });\n const ref = useResize(computedLength);\n const targetRef = useResize(computedLength);\n const moreRef = useResize(computedLength);\n const otherList = list.slice(showLength);\n\n const renderButton = (renderItem, index, isDropdown) => {\n if (typeof renderItem === \"function\") {\n return renderItem({\n key: index,\n className: classnames(\"button-group-item\", style[\"btn-item\"]),\n isDropdown,\n });\n }\n const { className, confirm, buttonComponent, ...props } = renderItem;\n const isConfirm = confirm || props.message;\n const CurrentButton = isConfirm\n ? ConfirmButton\n : buttonComponent || LoadingButton;\n\n return (\n <CurrentButton\n danger={isConfirm && props.isDelete !== false}\n {...Object.assign(\n {},\n props,\n isConfirm && (props.isModal || isDropdown)\n ? {\n isModal: true,\n }\n : {}\n )}\n key={index}\n className={classnames(\n \"button-group-item\",\n style[\"btn-item\"],\n className\n )}\n />\n );\n };\n\n const SpaceComponent = compact ? Space.Compact : Space;\n\n return (\n <>\n <div className={style[\"width-container\"]} ref={ref} />\n <div className={style[\"hidden-container\"]}>\n <div className={style[\"hidden-inner\"]} ref={moreRef}>\n {more}\n </div>\n <div className={style[\"hidden-inner\"]} ref={targetRef}>\n <SpaceComponent {...spaceProps}>\n {list.map(renderButton)}\n </SpaceComponent>\n </div>\n </div>\n <SpaceComponent {...spaceProps}>\n {list\n .slice(0, showLength)\n .map((item, index) => renderButton(item, index, false))}\n {otherList.length > 0 && (\n <Dropdown\n overlayClassName={style[\"menu-list\"]}\n menu={{\n items: otherList.map((item, index) => {\n return {\n key: index,\n label: renderButton(item, index, true),\n };\n }),\n }}\n >\n {more}\n </Dropdown>\n )}\n </SpaceComponent>\n </>\n );\n};\n\nButtonGroup.defaultProps = {\n more: (\n <Button>\n 更多\n <Icon type=\"icon-arrow-thin-down\" />\n </Button>\n ),\n};\n\nexport default ButtonGroup;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"overlay\":\"style_overlay__99t5t__vpO+I\",\"is-danger\":\"style_is-danger__gxyAB__vpO+I\",\"title\":\"style_title__EEPu2__vpO+I\",\"content\":\"style_content__mZZg5__vpO+I\",\"has-title\":\"style_has-title__5+PEt__vpO+I\"};","import React from \"react\";\nimport { Button, Popconfirm, Space, Typography } from \"antd\";\nimport importMessages from \"./locale\";\nimport Icon from \"@components/Icon\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport { useConfirmModal } from \"@components/Modal\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nexport const withConfirm = (WrappedComponent) => {\n const ConfirmComponent = createWithIntl({\n moduleName: \"ConfirmButton\",\n importMessages,\n })(\n ({\n title,\n message,\n isDelete = true,\n onClick,\n onCancel,\n disabled,\n showCancel,\n cancelText,\n isModal,\n okText,\n placement,\n getContainer,\n ...props\n }) => {\n const { formatMessage } = useIntl({ moduleName: \"ConfirmButton\" });\n const modal = useConfirmModal();\n if (isModal) {\n return (\n <WrappedComponent\n {...props}\n disabled={disabled}\n onClick={(e) => {\n modal({\n type: \"confirm\",\n title: title,\n getContainer,\n danger: isDelete,\n confirmType: isDelete ? \"warning\" : \"info\",\n message: message || formatMessage({ id: \"message\" }),\n okText: okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" }),\n cancelText: cancelText || formatMessage({ id: \"cancel\" }),\n onCancel,\n onOk: onClick,\n });\n }}\n />\n );\n }\n return (\n <Popconfirm\n title={\n <Space\n direction=\"vertical\"\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n {title && (\n <Space size={0} align=\"start\" className={style[\"title\"]}>\n {isDelete && (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n )}\n {title}\n </Space>\n )}\n <Space\n size={0}\n align=\"start\"\n className={classnames(style[\"content\"], {\n [style[\"has-title\"]]: title,\n })}\n >\n {!title && isDelete ? (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n ) : null}\n {message || formatMessage({ id: \"message\" })}\n </Space>\n </Space>\n }\n placement={placement}\n onConfirm={onClick}\n okButtonProps={{\n danger: isDelete,\n }}\n onCancel={onCancel}\n overlayClassName={classnames(style[\"overlay\"], {\n [style[\"is-danger\"]]: isDelete,\n })}\n getPopupContainer={getContainer}\n disabled={disabled}\n showCancel={showCancel}\n cancelText={cancelText}\n okText={\n okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" })\n }\n >\n <WrappedComponent {...props} disabled={disabled} />\n </Popconfirm>\n );\n }\n );\n\n ConfirmComponent.defaultProps = {\n isModal: false,\n showCancel: true,\n };\n\n return ConfirmComponent;\n};\n\nexport const ConfirmLink = withConfirm(Typography.Link);\nexport const ConfirmText = withConfirm(Typography.Text);\n\nexport default withConfirm(Button);\n","import { useRef } from \"react\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\nimport memoize from \"lodash/memoize\";\nimport isNil from \"lodash/isNil\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\nconst EnumLoaderFetch = withFetch(({ data, children }) => {\n return typeof children === \"function\"\n ? children(data)\n : children || data?.description;\n});\n\nconst getEnumsMap = memoize((enums) => {\n return new Map(\n baseLoaders.concat(\n Object.keys(Object.assign({}, enums)).map((key) => [key, enums[key]])\n )\n );\n});\n\nconst EnumLoader = ({ loader: enumsLoader, ...props }) => {\n const {\n global: { enumsRef },\n } = useGlobalContext();\n const prevLocaleRef = useRef(null);\n return (\n <EnumLoaderFetch\n {...props}\n loader={async (...args) => {\n const enums = getEnumsMap(await enumsLoader(...args));\n const { params } = args[0];\n const { moduleName, name, force, locale } = params;\n\n const getEnumMap = async (moduleName) => {\n return (\n (() => {\n return (\n force !== true &&\n prevLocaleRef.current === locale &&\n enumsRef.current.get(moduleName)\n );\n })() ||\n (await (async () => {\n const loader = enums.get(moduleName);\n const output = await (async () => {\n if (typeof loader === \"function\") {\n return new Map(\n (await loader({ locale })).map((item) => {\n return [item.value.toString(), item];\n })\n );\n }\n if (Array.isArray(loader)) {\n return new Map(\n loader.map((item) => [item.value.toString(), item])\n );\n }\n if (typeof loader === \"object\") {\n return new Map(\n Object.keys(loader).map((key) => [\n key.toString(),\n loader[key],\n ])\n );\n }\n console.warn(\"枚举值loader的设置可能不正确\");\n return new Map();\n })();\n enumsRef.current.set(moduleName, output);\n prevLocaleRef.current = locale;\n return output;\n })())\n );\n };\n if (Array.isArray(moduleName)) {\n return await Promise.all(\n moduleName.map((target) =>\n getEnumMap(target).then((enumMap) => Array.from(enumMap.values()))\n )\n );\n }\n\n const enumMap = await getEnumMap(moduleName);\n if (!isNil(name)) {\n return enumMap.get(name.toString());\n }\n return Array.from(enumMap.values());\n }}\n />\n );\n};\n\nconst Enum = ({ moduleName, name, force, children, ...props }) => {\n const preset = usePreset();\n return (\n <EnumLoader\n {...props}\n params={{\n moduleName,\n locale: preset?.locale,\n enums: preset?.enums,\n name,\n force,\n }}\n loader={({ params }) => params.enums}\n >\n {children}\n </EnumLoader>\n );\n};\n\nEnum.defaultProps = {\n force: false,\n};\n\nexport default Enum;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__vpO+I\",\"state-result-tag\":\"style_state-result-tag__CssDz__vpO+I\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__vpO+I\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__vpO+I\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__vpO+I\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__vpO+I\",\"show-bg\":\"style_show-bg__OcL+R__vpO+I\",\"tag-text\":\"style_tag-text__JHCt+__vpO+I\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__vpO+I\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__vpO+I\",\"is-resize\":\"style_is-resize__ut6RW__vpO+I\",\"is-moving\":\"style_is-moving__BJ9wR__vpO+I\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__vpO+I\",\"is-computed\":\"style_is-computed__B9rIF__vpO+I\",\"options-column\":\"style_options-column__vsPTr__vpO+I\",\"options-btn\":\"style_options-btn__U3uoy__vpO+I\",\"tooltip\":\"style_tooltip__vJlkv__vpO+I\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__vpO+I\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__vpO+I\",\"columns-control\":\"style_columns-control__5-5ZF__vpO+I\",\"columns-control-content\":\"style_columns-control-content__MoeUI__vpO+I\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__vpO+I\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__vpO+I\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__vpO+I\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__vpO+I\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__vpO+I\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__vpO+I\",\"is-drag\":\"style_is-drag__U68aw__vpO+I\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__vpO+I\",\"sortable-drag\":\"style_sortable-drag__K5hWd__vpO+I\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__vpO+I\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__vpO+I\",\"sort-btn\":\"style_sort-btn__KvNLr__vpO+I\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__vpO+I\",\"sort-icon\":\"style_sort-icon__dB85I__vpO+I\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__vpO+I\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__vpO+I\",\"tag\":\"columns_tag__bQZLG__vpO+I\",\"avatar\":\"columns_avatar__SLPI+__vpO+I\",\"hover\":\"columns_hover__oAwHg__vpO+I\",\"primary\":\"columns_primary__6KtaA__vpO+I\",\"loading\":\"columns_loading__gtBay__vpO+I\",\"options\":\"columns_options__WvDZD__vpO+I\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({ columns, name, controllerOpen, tableWidth }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !isEqual(record[column.name], prevRecord[column.name])\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport memoize from \"lodash/memoize\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = memoize(render);\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: item,\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","areaWidthComputed","memoize","_ref","amountWidth","moreBtnWidth","buttonWidthList","spaceProps","compact","spaceWidth","indexOf","size","isInteger","targetLength","targetWidth","length","_ref2","concat","join","Object","values","toString","ButtonGroup","_ref3","list","more","props","pick","showLength","setShowLength","useState","computedLength","useRefCallback","el","targetRef","current","moreEl","moreRef","widthEl","ref","buttonEls","querySelectorAll","clientWidth","map","call","offsetWidth","startTransition","useResize","otherList","slice","renderButton","renderItem","index","isDropdown","className","classnames","style","confirm","buttonComponent","isConfirm","message","CurrentButton","ConfirmButton","LoadingButton","_createElement","danger","isDelete","assign","isModal","SpaceComponent","Space","Compact","_jsxs","_Fragment","children","_jsx","item","Dropdown","overlayClassName","menu","items","label","defaultProps","Button","Icon","type","locale","en-US","zh-CN","withConfirm","WrappedComponent","ConfirmComponent","createWithIntl","moduleName","importMessages","title","onClick","onCancel","disabled","showCancel","cancelText","okText","placement","getContainer","formatMessage","useIntl","modal","useConfirmModal","confirmType","id","onOk","Popconfirm","direction","stopPropagation","align","onConfirm","okButtonProps","getPopupContainer","ConfirmLink","Typography","Link","ConfirmText","Text","baseLoaders","description","EnumLoaderFetch","withFetch","data","getEnumsMap","enums","Map","keys","EnumLoader","loader","enumsLoader","global","enumsRef","useGlobalContext","prevLocaleRef","useRef","async","arguments","params","undefined","name","force","getEnumMap","get","output","Array","isArray","console","warn","set","Promise","all","then","enumMap","from","isNil","Enum","preset","usePreset","_ref4","tagTypeEnum","default","skill","color","borderColor","result","filterResult","success","progress","info","other","StateTag","showBorder","text","showBackground","filterName","tagColor","useMemo","_tagTypeEnum$type","_tagTypeEnum$type2","Tag","background","border","width","filter","hidden","icon","ellipsis","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","columnTypes","date","render","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","_ref11","omit","avatar","_ref12","Image","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","options","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","Row","justify","Col","Tooltip","defaultActiveKey","ghost","bordered","header","List","Item","Checkbox","checked","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","forEach","col","handlerColumnsChange","animation","delayOnTouchStart","delay","preventDefault","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","gutter","storageKey","getDataApi","setDataFunc","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","content","ColumnsControlContent","controllerOpen","tableWidth","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","useEffect","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","onMouseDown","clientX","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","isEqual","handlerCancelResize","handlerResize","document","documentElement","addEventListener","removeEventListener","columnsConfig","rowKey","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","targetRender","itemKey","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","Table","getScrollEl","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","scroller","getScrollTarget","querySelector","AntdTable","x","_len","args","_key","pageData","FeaturesColumnsConfig","Features","TablePageInner","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","featureId","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","totalCount","forwardRef","pageSizeKey","toUpperCase","setPageSize","fetchParams"],"sourceRoot":""}
|