@kne-components/components-core 0.1.21 → 0.1.22
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 +130 -130
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1151.528279c8.chunk.css +2 -0
- package/build/static/css/{1151.9c9e2a72.chunk.css.map → 1151.528279c8.chunk.css.map} +1 -1
- package/build/static/css/1153.c9977f05.chunk.css +2 -0
- package/build/static/css/1153.c9977f05.chunk.css.map +1 -0
- package/build/static/css/1454.b3aa164f.chunk.css +2 -0
- package/build/static/css/{1454.61280de0.chunk.css.map → 1454.b3aa164f.chunk.css.map} +1 -1
- package/build/static/css/1554.9b7ab073.chunk.css +2 -0
- package/build/static/css/{1554.4f9c7bb4.chunk.css.map → 1554.9b7ab073.chunk.css.map} +1 -1
- package/build/static/css/1932.6c3d5305.chunk.css +2 -0
- package/build/static/css/{1932.35470b32.chunk.css.map → 1932.6c3d5305.chunk.css.map} +1 -1
- package/build/static/css/2503.d029ea66.chunk.css +2 -0
- package/build/static/css/{2503.a6539020.chunk.css.map → 2503.d029ea66.chunk.css.map} +1 -1
- package/build/static/css/2517.a7a3f6d6.chunk.css +2 -0
- package/build/static/css/{2517.507e583e.chunk.css.map → 2517.a7a3f6d6.chunk.css.map} +1 -1
- package/build/static/css/2526.297406dc.chunk.css +2 -0
- package/build/static/css/{2526.150d63dc.chunk.css.map → 2526.297406dc.chunk.css.map} +1 -1
- package/build/static/css/2716.147934de.chunk.css +2 -0
- package/build/static/css/{2716.8d85e7b1.chunk.css.map → 2716.147934de.chunk.css.map} +1 -1
- package/build/static/css/2730.6b980cbd.chunk.css +2 -0
- package/build/static/css/{2730.731ef5b2.chunk.css.map → 2730.6b980cbd.chunk.css.map} +1 -1
- package/build/static/css/2999.a33cce56.chunk.css +2 -0
- package/build/static/css/2999.a33cce56.chunk.css.map +1 -0
- package/build/static/css/3333.3fdd9d8e.chunk.css +2 -0
- package/build/static/css/{3333.845d0858.chunk.css.map → 3333.3fdd9d8e.chunk.css.map} +1 -1
- package/build/static/css/{3843.0c610b17.chunk.css → 3843.a1b48f6e.chunk.css} +2 -2
- package/build/static/css/{3843.0c610b17.chunk.css.map → 3843.a1b48f6e.chunk.css.map} +1 -1
- package/build/static/css/4666.232dafaa.chunk.css +2 -0
- package/build/static/css/{4666.dad81e9f.chunk.css.map → 4666.232dafaa.chunk.css.map} +1 -1
- package/build/static/css/5362.b6cd469b.chunk.css +2 -0
- package/build/static/css/{5362.6f1b9688.chunk.css.map → 5362.b6cd469b.chunk.css.map} +1 -1
- package/build/static/css/5600.53f1aaa7.chunk.css +2 -0
- package/build/static/css/{5600.6aee992a.chunk.css.map → 5600.53f1aaa7.chunk.css.map} +1 -1
- package/build/static/css/5654.4bd7dffc.chunk.css +2 -0
- package/build/static/css/{5654.d0f67cc7.chunk.css.map → 5654.4bd7dffc.chunk.css.map} +1 -1
- package/build/static/css/5846.fa57db37.chunk.css +2 -0
- package/build/static/css/5846.fa57db37.chunk.css.map +1 -0
- package/build/static/css/5868.fdcca2a3.chunk.css +2 -0
- package/build/static/css/5868.fdcca2a3.chunk.css.map +1 -0
- package/build/static/css/{5996.d6ba27b1.chunk.css → 5996.654719b1.chunk.css} +2 -2
- package/build/static/css/{5996.d6ba27b1.chunk.css.map → 5996.654719b1.chunk.css.map} +1 -1
- package/build/static/css/6779.ed5b5575.chunk.css +2 -0
- package/build/static/css/{6779.d7fe5a00.chunk.css.map → 6779.ed5b5575.chunk.css.map} +1 -1
- package/build/static/css/7227.64b335ea.chunk.css +2 -0
- package/build/static/css/{7227.4123d00b.chunk.css.map → 7227.64b335ea.chunk.css.map} +1 -1
- package/build/static/css/8072.fc9b4385.chunk.css +2 -0
- package/build/static/css/8072.fc9b4385.chunk.css.map +1 -0
- package/build/static/css/8148.51337322.chunk.css +2 -0
- package/build/static/css/{8148.ec26c81e.chunk.css.map → 8148.51337322.chunk.css.map} +1 -1
- package/build/static/css/{8725.ceb337ad.chunk.css → 8725.d319a2cb.chunk.css} +2 -2
- package/build/static/css/{8725.ceb337ad.chunk.css.map → 8725.d319a2cb.chunk.css.map} +1 -1
- package/build/static/css/9053.eb93ed2d.chunk.css +2 -0
- package/build/static/css/{9053.71dc14f6.chunk.css.map → 9053.eb93ed2d.chunk.css.map} +1 -1
- package/build/static/css/931.414fc8bb.chunk.css +2 -0
- package/build/static/css/931.414fc8bb.chunk.css.map +1 -0
- package/build/static/css/9390.f2205924.chunk.css +2 -0
- package/build/static/css/{9390.977507bc.chunk.css.map → 9390.f2205924.chunk.css.map} +1 -1
- package/build/static/css/9449.640c0653.chunk.css +2 -0
- package/build/static/css/{9449.c6cdd4a9.chunk.css.map → 9449.640c0653.chunk.css.map} +1 -1
- package/build/static/css/9689.17f95fe5.chunk.css +2 -0
- package/build/static/css/9689.17f95fe5.chunk.css.map +1 -0
- package/build/static/js/{1153.e28eba1e.chunk.js → 1153.cc0f7824.chunk.js} +3 -3
- package/build/static/js/{1153.e28eba1e.chunk.js.map → 1153.cc0f7824.chunk.js.map} +1 -1
- package/build/static/js/{1454.54a6ba93.chunk.js → 1454.c5e94611.chunk.js} +3 -3
- package/build/static/js/{1454.54a6ba93.chunk.js.map → 1454.c5e94611.chunk.js.map} +1 -1
- package/build/static/js/{1554.a5ac35aa.chunk.js → 1554.04484e55.chunk.js} +3 -3
- package/build/static/js/{1554.a5ac35aa.chunk.js.map → 1554.04484e55.chunk.js.map} +1 -1
- package/build/static/js/{1664.8b1a7e8a.chunk.js → 1664.99aacc59.chunk.js} +2 -2
- package/build/static/js/{1664.8b1a7e8a.chunk.js.map → 1664.99aacc59.chunk.js.map} +1 -1
- package/build/static/js/{1932.439db4af.chunk.js → 1932.b7822314.chunk.js} +2 -2
- package/build/static/js/{1932.439db4af.chunk.js.map → 1932.b7822314.chunk.js.map} +1 -1
- package/build/static/js/{2503.cb05f351.chunk.js → 2503.0912d194.chunk.js} +2 -2
- package/build/static/js/{2503.cb05f351.chunk.js.map → 2503.0912d194.chunk.js.map} +1 -1
- package/build/static/js/{2517.35f66254.chunk.js → 2517.b18b1ef8.chunk.js} +2 -2
- package/build/static/js/{2517.35f66254.chunk.js.map → 2517.b18b1ef8.chunk.js.map} +1 -1
- package/build/static/js/{2526.a3e2c8c3.chunk.js → 2526.1b4b5286.chunk.js} +2 -2
- package/build/static/js/{2526.a3e2c8c3.chunk.js.map → 2526.1b4b5286.chunk.js.map} +1 -1
- package/build/static/js/{2716.5edebbcf.chunk.js → 2716.a693ce02.chunk.js} +3 -3
- package/build/static/js/{2716.5edebbcf.chunk.js.map → 2716.a693ce02.chunk.js.map} +1 -1
- package/build/static/js/2730.7ca1e9d0.chunk.js +2 -0
- package/build/static/js/{2730.8883fa89.chunk.js.map → 2730.7ca1e9d0.chunk.js.map} +1 -1
- package/build/static/js/{2999.fa844ce6.chunk.js → 2999.68d616c5.chunk.js} +2 -2
- package/build/static/js/{2999.fa844ce6.chunk.js.map → 2999.68d616c5.chunk.js.map} +1 -1
- package/build/static/js/{3333.fefcc4b8.chunk.js → 3333.b0ea9c2a.chunk.js} +2 -2
- package/build/static/js/{3333.fefcc4b8.chunk.js.map → 3333.b0ea9c2a.chunk.js.map} +1 -1
- package/build/static/js/{36.91c85a3d.chunk.js → 36.0474b62c.chunk.js} +2 -2
- package/build/static/js/{36.91c85a3d.chunk.js.map → 36.0474b62c.chunk.js.map} +1 -1
- package/build/static/js/{3843.73f83506.chunk.js → 3843.0fe26ab6.chunk.js} +2 -2
- package/build/static/js/{3843.73f83506.chunk.js.map → 3843.0fe26ab6.chunk.js.map} +1 -1
- package/build/static/js/{4666.243aacaf.chunk.js → 4666.00fa6e61.chunk.js} +2 -2
- package/build/static/js/{4666.243aacaf.chunk.js.map → 4666.00fa6e61.chunk.js.map} +1 -1
- package/build/static/js/{5362.dca69f87.chunk.js → 5362.54c5fd82.chunk.js} +3 -3
- package/build/static/js/{5362.dca69f87.chunk.js.map → 5362.54c5fd82.chunk.js.map} +1 -1
- package/build/static/js/{5600.f3d2d6ed.chunk.js → 5600.2c45bb5c.chunk.js} +2 -2
- package/build/static/js/{5600.f3d2d6ed.chunk.js.map → 5600.2c45bb5c.chunk.js.map} +1 -1
- package/build/static/js/{5654.e8a32350.chunk.js → 5654.0e258093.chunk.js} +2 -2
- package/build/static/js/{5654.e8a32350.chunk.js.map → 5654.0e258093.chunk.js.map} +1 -1
- package/build/static/js/5846.5cc8dfec.chunk.js +2 -0
- package/build/static/js/5846.5cc8dfec.chunk.js.map +1 -0
- package/build/static/js/{5868.4dfd67db.chunk.js → 5868.dda7e44a.chunk.js} +2 -2
- package/build/static/js/{5868.4dfd67db.chunk.js.map → 5868.dda7e44a.chunk.js.map} +1 -1
- package/build/static/js/{5996.57c96287.chunk.js → 5996.89f2645c.chunk.js} +2 -2
- package/build/static/js/{5996.57c96287.chunk.js.map → 5996.89f2645c.chunk.js.map} +1 -1
- package/build/static/js/{6779.c35a2000.chunk.js → 6779.ff3b85ec.chunk.js} +2 -2
- package/build/static/js/{6779.c35a2000.chunk.js.map → 6779.ff3b85ec.chunk.js.map} +1 -1
- package/build/static/js/{7227.ec0bec00.chunk.js → 7227.aec8ce5b.chunk.js} +3 -3
- package/build/static/js/{7227.ec0bec00.chunk.js.map → 7227.aec8ce5b.chunk.js.map} +1 -1
- package/build/static/js/{7777.4660e5c5.chunk.js → 7777.bc000b32.chunk.js} +2 -2
- package/build/static/js/{7777.4660e5c5.chunk.js.map → 7777.bc000b32.chunk.js.map} +1 -1
- package/build/static/js/{7967.5581b805.chunk.js → 7967.f2590b67.chunk.js} +2 -2
- package/build/static/js/{7967.5581b805.chunk.js.map → 7967.f2590b67.chunk.js.map} +1 -1
- package/build/static/js/{8072.dd431964.chunk.js → 8072.9fb38cfd.chunk.js} +2 -2
- package/build/static/js/8072.9fb38cfd.chunk.js.map +1 -0
- package/build/static/js/{8148.03a8206b.chunk.js → 8148.0c1a61f7.chunk.js} +3 -3
- package/build/static/js/{8148.03a8206b.chunk.js.map → 8148.0c1a61f7.chunk.js.map} +1 -1
- package/build/static/js/{8151.50e6bb94.chunk.js → 8151.5e6b5223.chunk.js} +2 -2
- package/build/static/js/{8151.50e6bb94.chunk.js.map → 8151.5e6b5223.chunk.js.map} +1 -1
- package/build/static/js/{8725.9b7795f5.chunk.js → 8725.2b8cc03c.chunk.js} +2 -2
- package/build/static/js/{8725.9b7795f5.chunk.js.map → 8725.2b8cc03c.chunk.js.map} +1 -1
- package/build/static/js/{9053.5b3f4807.chunk.js → 9053.d015d2b8.chunk.js} +3 -3
- package/build/static/js/{9053.5b3f4807.chunk.js.map → 9053.d015d2b8.chunk.js.map} +1 -1
- package/build/static/js/{931.e843a121.chunk.js → 931.81c99bc9.chunk.js} +2 -2
- package/build/static/js/{931.e843a121.chunk.js.map → 931.81c99bc9.chunk.js.map} +1 -1
- package/build/static/js/{9390.eb4ab7b2.chunk.js → 9390.07cbce72.chunk.js} +2 -2
- package/build/static/js/{9390.eb4ab7b2.chunk.js.map → 9390.07cbce72.chunk.js.map} +1 -1
- package/build/static/js/9449.3dc7ed14.chunk.js +2 -0
- package/build/static/js/{9449.b24d6b3e.chunk.js.map → 9449.3dc7ed14.chunk.js.map} +1 -1
- package/build/static/js/{main.f1119ab2.js → main.9c7e3e42.js} +2 -2
- package/build/static/js/{main.f1119ab2.js.map → main.9c7e3e42.js.map} +1 -1
- package/package.json +1 -1
- package/build/static/css/1151.9c9e2a72.chunk.css +0 -2
- package/build/static/css/1153.b51569b8.chunk.css +0 -2
- package/build/static/css/1153.b51569b8.chunk.css.map +0 -1
- package/build/static/css/1454.61280de0.chunk.css +0 -2
- package/build/static/css/1554.4f9c7bb4.chunk.css +0 -2
- package/build/static/css/1932.35470b32.chunk.css +0 -2
- package/build/static/css/2503.a6539020.chunk.css +0 -2
- package/build/static/css/2517.507e583e.chunk.css +0 -2
- package/build/static/css/2526.150d63dc.chunk.css +0 -2
- package/build/static/css/2716.8d85e7b1.chunk.css +0 -2
- package/build/static/css/2730.731ef5b2.chunk.css +0 -2
- package/build/static/css/2999.9693d5ac.chunk.css +0 -2
- package/build/static/css/2999.9693d5ac.chunk.css.map +0 -1
- package/build/static/css/3333.845d0858.chunk.css +0 -2
- package/build/static/css/4666.dad81e9f.chunk.css +0 -2
- package/build/static/css/5362.6f1b9688.chunk.css +0 -2
- package/build/static/css/5600.6aee992a.chunk.css +0 -2
- package/build/static/css/5654.d0f67cc7.chunk.css +0 -2
- package/build/static/css/5846.e86e3c6e.chunk.css +0 -2
- package/build/static/css/5846.e86e3c6e.chunk.css.map +0 -1
- package/build/static/css/5868.7d59bee4.chunk.css +0 -2
- package/build/static/css/5868.7d59bee4.chunk.css.map +0 -1
- package/build/static/css/6779.d7fe5a00.chunk.css +0 -2
- package/build/static/css/7227.4123d00b.chunk.css +0 -2
- package/build/static/css/8072.8c8806ba.chunk.css +0 -2
- package/build/static/css/8072.8c8806ba.chunk.css.map +0 -1
- package/build/static/css/8148.ec26c81e.chunk.css +0 -2
- package/build/static/css/9053.71dc14f6.chunk.css +0 -2
- package/build/static/css/931.17c4874f.chunk.css +0 -2
- package/build/static/css/931.17c4874f.chunk.css.map +0 -1
- package/build/static/css/9390.977507bc.chunk.css +0 -2
- package/build/static/css/9449.c6cdd4a9.chunk.css +0 -2
- package/build/static/css/9689.1145e4a1.chunk.css +0 -2
- package/build/static/css/9689.1145e4a1.chunk.css.map +0 -1
- package/build/static/js/2730.8883fa89.chunk.js +0 -2
- package/build/static/js/5846.3e2c3d73.chunk.js +0 -2
- package/build/static/js/5846.3e2c3d73.chunk.js.map +0 -1
- package/build/static/js/8072.dd431964.chunk.js.map +0 -1
- package/build/static/js/9449.b24d6b3e.chunk.js +0 -2
- /package/build/static/js/{1153.e28eba1e.chunk.js.LICENSE.txt → 1153.cc0f7824.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1454.54a6ba93.chunk.js.LICENSE.txt → 1454.c5e94611.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1554.a5ac35aa.chunk.js.LICENSE.txt → 1554.04484e55.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{2716.5edebbcf.chunk.js.LICENSE.txt → 2716.a693ce02.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{5362.dca69f87.chunk.js.LICENSE.txt → 5362.54c5fd82.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7227.ec0bec00.chunk.js.LICENSE.txt → 7227.aec8ce5b.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{8148.03a8206b.chunk.js.LICENSE.txt → 8148.0c1a61f7.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{9053.5b3f4807.chunk.js.LICENSE.txt → 9053.d015d2b8.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/5868.4dfd67db.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","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","components/Features/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/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.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","../node_modules/lodash/_arrayAggregator.js","../node_modules/lodash/_baseAggregator.js","../node_modules/lodash/_baseEach.js","../node_modules/lodash/_baseFindIndex.js","../node_modules/lodash/_baseSum.js","../node_modules/lodash/_createAggregator.js","../node_modules/lodash/_createBaseEach.js","../node_modules/lodash/findLastIndex.js","../node_modules/lodash/groupBy.js","../node_modules/lodash/set.js","../node_modules/lodash/sumBy.js","../node_modules/lodash/toInteger.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__B7O0d\",\"scroller-inner\":\"style_scroller-inner__NJSE0__B7O0d\",\"is-moving\":\"style_is-moving__jGuy0__B7O0d\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","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__B7O0d\",\"hidden-container\":\"style_hidden-container__EdySA__B7O0d\",\"hidden-inner\":\"style_hidden-inner__vAN59__B7O0d\"};","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 { useConfirmModal } from \"@components/Modal\";\nimport useResize from \"@common/hooks/useResize\";\nimport pick from \"lodash/pick\";\nimport style from \"./style.module.scss\";\n\nconst ButtonGroup = ({ list, more, compact, ...props }) => {\n const spaceProps = pick(props, [\"size\", \"split\", \"align\", \"style\"]);\n const [showLength, setShowLength] = useState(list.length);\n const confirmModal = useConfirmModal();\n const computedLength = useRefCallback(() => {\n const el = targetRef.current,\n moreEl = moreRef.current,\n widthEl = ref.current;\n\n const buttonEls = el.querySelectorAll(\".button-group-item\");\n if (!buttonEls) {\n return;\n }\n const buttonElLength = buttonEls.length;\n if (buttonEls.length === 0) {\n return;\n }\n const amountWidth = widthEl.clientWidth,\n moreBtnWidth = moreEl.clientWidth,\n spaceWidth = (() => {\n if (compact) {\n return 0;\n }\n\n if ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) > -1) {\n return (\n ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) + 1) * 8\n );\n }\n\n if (Number.isInteger(spaceProps.size)) {\n return spaceProps.size;\n }\n return 8;\n })();\n let targetLength = 0,\n targetWidth = 0,\n buttonWidthList = [].map.call(buttonEls, (el) => el.offsetWidth);\n // 采取先加后减策略\n while (\n amountWidth >=\n targetWidth +\n buttonWidthList[targetLength] +\n targetLength * spaceWidth &&\n targetLength < buttonElLength\n ) {\n targetWidth += buttonWidthList[targetLength];\n targetLength += 1;\n }\n\n while (\n amountWidth <\n targetWidth +\n (targetLength - 1) * spaceWidth +\n (targetLength < buttonElLength ? moreBtnWidth + spaceWidth : 0) &&\n targetLength > 0\n ) {\n targetWidth -= buttonWidthList[targetLength - 1];\n targetLength -= 1;\n }\n\n startTransition(() => {\n setShowLength(targetLength);\n });\n });\n const ref = useResize(computedLength);\n const targetRef = useResize(computedLength);\n const moreRef = useResize(computedLength);\n\n const otherList = list.slice(showLength);\n\n const renderButton = ({ className, confirm, ...props }, index) => {\n const isConfirm = confirm || props.message;\n const CurrentButton = isConfirm ? ConfirmButton : LoadingButton;\n return (\n <CurrentButton\n danger={isConfirm && props.isDelete !== false}\n {...props}\n key={index}\n className={classnames(\"button-group-item\", className)}\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.slice(0, showLength).map(renderButton)}\n {otherList.length > 0 && (\n <Dropdown\n menu={{\n items: otherList.map(\n (\n {\n children,\n confirm,\n message,\n onClick,\n title,\n isDelete,\n okText,\n ...props\n },\n key\n ) => ({\n ...props,\n key,\n label: children,\n onClick: (e) => {\n const isConfirm = confirm || message;\n isConfirm\n ? confirmModal({\n danger: isDelete !== false,\n type: \"confirm\",\n title,\n message: message || \"确定要删除吗?\",\n onOk: onClick,\n okText: okText || (isDelete !== false && \"删除\"),\n })\n : onClick && onClick(e);\n },\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__B7O0d\",\"is-danger\":\"style_is-danger__gxyAB__B7O0d\",\"title\":\"style_title__EEPu2__B7O0d\",\"content\":\"style_content__mZZg5__B7O0d\",\"has-title\":\"style_has-title__5+PEt__B7O0d\"};","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 { useModal } 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 = useModal();\n if (isModal) {\n return (\n <WrappedComponent\n {...props}\n onClick={(e) => {\n const cancelButton = {\n children: cancelText || formatMessage({ id: \"cancel\" }),\n onClick: onCancel,\n };\n const confirmButton = {\n type: \"primary\",\n children: okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" }),\n onClick: () => onClick(e),\n danger: isDelete,\n };\n modal({\n title: title && (\n <Space size={0} className={style[\"title\"]}>\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n {title}\n </Space>\n ),\n getContainer,\n wrapClassName: classnames(style[\"overlay\"], {\n [style[\"is-danger\"]]: isDelete,\n }),\n children: (\n <Space\n size={0}\n className={classnames(style[\"content\"], {\n [style[\"has-title\"]]: title,\n })}\n >\n {!title && (\n <Icon\n className=\"title-icon\"\n type=\"icon-tishi-tianchong\"\n />\n )}\n {message || formatMessage({ id: \"message\" })}\n </Space>\n ),\n footerButtons: showCancel\n ? [cancelButton, confirmButton]\n : [confirmButton],\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 <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\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 && (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n )}\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 };\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","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__B7O0d\",\"state-result-tag\":\"style_state-result-tag__CssDz__B7O0d\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__B7O0d\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__B7O0d\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__B7O0d\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__B7O0d\",\"show-bg\":\"style_show-bg__OcL+R__B7O0d\",\"tag-text\":\"style_tag-text__JHCt+__B7O0d\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__B7O0d\"};","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__B7O0d\",\"is-resize\":\"style_is-resize__ut6RW__B7O0d\",\"is-moving\":\"style_is-moving__BJ9wR__B7O0d\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__B7O0d\",\"is-computed\":\"style_is-computed__B9rIF__B7O0d\",\"options-column\":\"style_options-column__vsPTr__B7O0d\",\"options-btn\":\"style_options-btn__U3uoy__B7O0d\",\"tooltip\":\"style_tooltip__vJlkv__B7O0d\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__B7O0d\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__B7O0d\",\"columns-control\":\"style_columns-control__5-5ZF__B7O0d\",\"columns-control-content\":\"style_columns-control-content__MoeUI__B7O0d\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__B7O0d\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__B7O0d\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__B7O0d\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__B7O0d\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__B7O0d\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__B7O0d\",\"is-drag\":\"style_is-drag__U68aw__B7O0d\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__B7O0d\",\"sortable-drag\":\"style_sortable-drag__K5hWd__B7O0d\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__B7O0d\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__B7O0d\",\"sort-btn\":\"style_sort-btn__KvNLr__B7O0d\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__B7O0d\",\"sort-icon\":\"style_sort-icon__dB85I__B7O0d\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__B7O0d\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__B7O0d\",\"tag\":\"columns_tag__bQZLG__B7O0d\",\"avatar\":\"columns_avatar__SLPI+__B7O0d\",\"hover\":\"columns_hover__oAwHg__B7O0d\",\"primary\":\"columns_primary__6KtaA__B7O0d\",\"loading\":\"columns_loading__gtBay__B7O0d\",\"options\":\"columns_options__WvDZD__B7O0d\"};","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.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","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\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 if (expand) {\n return (\n <DisplayInfo {...api}>\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={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof api.children === \"function\" ? api.children(data) : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem\n type=\"hide-info\"\n primary\n isEmpty={isEmpty}\n emptyRender={emptyRender}\n >\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 { 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\";\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 } = usePreset();\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\";\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],\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 = (\n emptyOf ||\n ((value) => value === \"\" || value === void 0 || value === null)\n )(colValue);\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 }\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,\n //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 fetchParams = useMemo(() => {\n const fetchParams = {};\n if (props.params && Object.keys(props.params).length > 0) {\n fetchParams[\"params\"] = {\n ...props.params,\n [pagination.pageSizeName]: pageSize,\n };\n }\n if (props.data && Object.keys(props.data).length > 0) {\n fetchParams[\"data\"] = {\n ...props.data,\n [pagination.pageSizeName]: pageSize,\n };\n }\n return fetchParams;\n }, [props.params, props.data, pagination.pageSizeName, 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","/**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\nfunction arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayAggregator;\n","var baseEach = require('./_baseEach');\n\n/**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\nfunction baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n}\n\nmodule.exports = baseAggregator;\n","var baseForOwn = require('./_baseForOwn'),\n createBaseEach = require('./_createBaseEach');\n\n/**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\nvar baseEach = createBaseEach(baseForOwn);\n\nmodule.exports = baseEach;\n","/**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n}\n\nmodule.exports = baseFindIndex;\n","/**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\nfunction baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n}\n\nmodule.exports = baseSum;\n","var arrayAggregator = require('./_arrayAggregator'),\n baseAggregator = require('./_baseAggregator'),\n baseIteratee = require('./_baseIteratee'),\n isArray = require('./isArray');\n\n/**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\nfunction createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, baseIteratee(iteratee, 2), accumulator);\n };\n}\n\nmodule.exports = createAggregator;\n","var isArrayLike = require('./isArrayLike');\n\n/**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n}\n\nmodule.exports = createBaseEach;\n","var baseFindIndex = require('./_baseFindIndex'),\n baseIteratee = require('./_baseIteratee'),\n toInteger = require('./toInteger');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\nfunction findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, baseIteratee(predicate, 3), index, true);\n}\n\nmodule.exports = findLastIndex;\n","var baseAssignValue = require('./_baseAssignValue'),\n createAggregator = require('./_createAggregator');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\nvar groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n});\n\nmodule.exports = groupBy;\n","var baseSet = require('./_baseSet');\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nmodule.exports = set;\n","var baseIteratee = require('./_baseIteratee'),\n baseSum = require('./_baseSum');\n\n/**\n * This method is like `_.sum` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the value to be summed.\n * The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Math\n * @param {Array} array The array to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the sum.\n * @example\n *\n * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];\n *\n * _.sumBy(objects, function(o) { return o.n; });\n * // => 20\n *\n * // The `_.property` iteratee shorthand.\n * _.sumBy(objects, 'n');\n * // => 20\n */\nfunction sumBy(array, iteratee) {\n return (array && array.length)\n ? baseSum(array, baseIteratee(iteratee, 2))\n : 0;\n}\n\nmodule.exports = sumBy;\n","var toFinite = require('./toFinite');\n\n/**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\nfunction toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n}\n\nmodule.exports = toInteger;\n"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","_jsx","className","style","left","height","children","classnames","innerLeft","onMouseDown","preventDefault","body","Scroller","_ref2","scroller","getScrollTarget","setScrollerProps","ref","getScrollEl","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","props","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","_jsxs","x","defaultProps","querySelector","getItem","key","target","localStorage","dataType","value","JSON","parse","Number","Boolean","setItem","stringify","ButtonGroup","list","more","compact","spaceProps","pick","showLength","setShowLength","length","confirmModal","useConfirmModal","computedLength","el","targetRef","moreEl","moreRef","widthEl","buttonEls","querySelectorAll","buttonElLength","amountWidth","moreBtnWidth","spaceWidth","indexOf","size","isInteger","targetLength","targetWidth","buttonWidthList","map","call","offsetWidth","startTransition","useResize","otherList","slice","renderButton","index","confirm","isConfirm","message","CurrentButton","ConfirmButton","LoadingButton","_createElement","danger","isDelete","SpaceComponent","Space","Compact","_Fragment","Dropdown","menu","items","_ref3","onClick","title","okText","label","type","onOk","Button","Icon","locale","en-US","zh-CN","withConfirm","WrappedComponent","ConfirmComponent","createWithIntl","moduleName","importMessages","onCancel","disabled","showCancel","cancelText","isModal","placement","formatMessage","useIntl","modal","useModal","cancelButton","id","confirmButton","wrapClassName","footerButtons","Popconfirm","direction","stopPropagation","align","onConfirm","okButtonProps","overlayClassName","getPopupContainer","ConfirmLink","Typography","Link","ConfirmText","Text","baseLoaders","description","EnumLoaderFetch","withFetch","data","getEnumsMap","memoize","enums","Map","concat","keys","EnumLoader","loader","enumsLoader","global","enumsRef","useGlobalContext","prevLocaleRef","async","arguments","params","undefined","name","force","getEnumMap","get","output","toString","isArray","console","warn","set","Promise","all","then","enumMap","values","isNil","Enum","preset","usePreset","_ref4","treeTraverse","func","pId","omit","parentId","parseProfile","profile","profileMap","features","filter","dependencies","some","depId","computedIsPaas","currentId","close","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","systemId","useContext","log","isPass","feature","options","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","icon","ellipsis","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","resolve","colItem","event","finally","DisplayInfo","createWithFetch","api","expand","onExpand","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","avatar","_ref12","Image","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","hidden","sort","a","b","renderColumn","titleText","groupHeader","join","Row","justify","Col","Tooltip","defaultActiveKey","ghost","bordered","header","List","Item","Checkbox","checked","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","renderItem","gutter","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","content","ColumnsControlContent","controllerOpen","tableWidth","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","tablePageServerParams","getDataApi","saveConfig","useDebouncedCallback","setDataFunc","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","isEqual","handlerCancelResize","handlerResize","columnsConfig","rowKey","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","emptyOf","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","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_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","IntlProvider","totalCount","forwardRef","pageSizeKey","toUpperCase","setPageSize","fetchParams","module","exports","array","setter","iteratee","accumulator","baseEach","require","collection","baseForOwn","createBaseEach","predicate","fromIndex","fromRight","arrayAggregator","baseAggregator","baseIteratee","initializer","isArrayLike","eachFunc","iterable","baseFindIndex","toInteger","nativeMax","nativeMin","baseAssignValue","createAggregator","prototype","baseSet","object","path","baseSum","toFinite","remainder"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/5868.dda7e44a.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","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","components/Features/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/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.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","../node_modules/lodash/_arrayAggregator.js","../node_modules/lodash/_baseAggregator.js","../node_modules/lodash/_baseEach.js","../node_modules/lodash/_baseFindIndex.js","../node_modules/lodash/_baseSum.js","../node_modules/lodash/_createAggregator.js","../node_modules/lodash/_createBaseEach.js","../node_modules/lodash/findLastIndex.js","../node_modules/lodash/groupBy.js","../node_modules/lodash/set.js","../node_modules/lodash/sumBy.js","../node_modules/lodash/toInteger.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__+d3Mb\",\"scroller-inner\":\"style_scroller-inner__NJSE0__+d3Mb\",\"is-moving\":\"style_is-moving__jGuy0__+d3Mb\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","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__+d3Mb\",\"hidden-container\":\"style_hidden-container__EdySA__+d3Mb\",\"hidden-inner\":\"style_hidden-inner__vAN59__+d3Mb\"};","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 { useConfirmModal } from \"@components/Modal\";\nimport useResize from \"@common/hooks/useResize\";\nimport pick from \"lodash/pick\";\nimport style from \"./style.module.scss\";\n\nconst ButtonGroup = ({ list, more, compact, ...props }) => {\n const spaceProps = pick(props, [\"size\", \"split\", \"align\", \"style\"]);\n const [showLength, setShowLength] = useState(list.length);\n const confirmModal = useConfirmModal();\n const computedLength = useRefCallback(() => {\n const el = targetRef.current,\n moreEl = moreRef.current,\n widthEl = ref.current;\n\n const buttonEls = el.querySelectorAll(\".button-group-item\");\n if (!buttonEls) {\n return;\n }\n const buttonElLength = buttonEls.length;\n if (buttonEls.length === 0) {\n return;\n }\n const amountWidth = widthEl.clientWidth,\n moreBtnWidth = moreEl.clientWidth,\n spaceWidth = (() => {\n if (compact) {\n return 0;\n }\n\n if ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) > -1) {\n return (\n ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) + 1) * 8\n );\n }\n\n if (Number.isInteger(spaceProps.size)) {\n return spaceProps.size;\n }\n return 8;\n })();\n let targetLength = 0,\n targetWidth = 0,\n buttonWidthList = [].map.call(buttonEls, (el) => el.offsetWidth);\n // 采取先加后减策略\n while (\n amountWidth >=\n targetWidth +\n buttonWidthList[targetLength] +\n targetLength * spaceWidth &&\n targetLength < buttonElLength\n ) {\n targetWidth += buttonWidthList[targetLength];\n targetLength += 1;\n }\n\n while (\n amountWidth <\n targetWidth +\n (targetLength - 1) * spaceWidth +\n (targetLength < buttonElLength ? moreBtnWidth + spaceWidth : 0) &&\n targetLength > 0\n ) {\n targetWidth -= buttonWidthList[targetLength - 1];\n targetLength -= 1;\n }\n\n startTransition(() => {\n setShowLength(targetLength);\n });\n });\n const ref = useResize(computedLength);\n const targetRef = useResize(computedLength);\n const moreRef = useResize(computedLength);\n\n const otherList = list.slice(showLength);\n\n const renderButton = ({ className, confirm, ...props }, index) => {\n const isConfirm = confirm || props.message;\n const CurrentButton = isConfirm ? ConfirmButton : LoadingButton;\n return (\n <CurrentButton\n danger={isConfirm && props.isDelete !== false}\n {...props}\n key={index}\n className={classnames(\"button-group-item\", className)}\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.slice(0, showLength).map(renderButton)}\n {otherList.length > 0 && (\n <Dropdown\n menu={{\n items: otherList.map(\n (\n {\n children,\n confirm,\n message,\n onClick,\n title,\n isDelete,\n okText,\n ...props\n },\n key\n ) => ({\n ...props,\n key,\n label: children,\n onClick: (e) => {\n const isConfirm = confirm || message;\n isConfirm\n ? confirmModal({\n danger: isDelete !== false,\n type: \"confirm\",\n title,\n message: message || \"确定要删除吗?\",\n onOk: onClick,\n okText: okText || (isDelete !== false && \"删除\"),\n })\n : onClick && onClick(e);\n },\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__+d3Mb\",\"is-danger\":\"style_is-danger__gxyAB__+d3Mb\",\"title\":\"style_title__EEPu2__+d3Mb\",\"content\":\"style_content__mZZg5__+d3Mb\",\"has-title\":\"style_has-title__5+PEt__+d3Mb\"};","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 { useModal } 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 = useModal();\n if (isModal) {\n return (\n <WrappedComponent\n {...props}\n onClick={(e) => {\n const cancelButton = {\n children: cancelText || formatMessage({ id: \"cancel\" }),\n onClick: onCancel,\n };\n const confirmButton = {\n type: \"primary\",\n children: okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" }),\n onClick: () => onClick(e),\n danger: isDelete,\n };\n modal({\n title: title && (\n <Space size={0} className={style[\"title\"]}>\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n {title}\n </Space>\n ),\n getContainer,\n wrapClassName: classnames(style[\"overlay\"], {\n [style[\"is-danger\"]]: isDelete,\n }),\n children: (\n <Space\n size={0}\n className={classnames(style[\"content\"], {\n [style[\"has-title\"]]: title,\n })}\n >\n {!title && (\n <Icon\n className=\"title-icon\"\n type=\"icon-tishi-tianchong\"\n />\n )}\n {message || formatMessage({ id: \"message\" })}\n </Space>\n ),\n footerButtons: showCancel\n ? [cancelButton, confirmButton]\n : [confirmButton],\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 <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\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 && (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n )}\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 };\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","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__+d3Mb\",\"state-result-tag\":\"style_state-result-tag__CssDz__+d3Mb\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__+d3Mb\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__+d3Mb\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__+d3Mb\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__+d3Mb\",\"show-bg\":\"style_show-bg__OcL+R__+d3Mb\",\"tag-text\":\"style_tag-text__JHCt+__+d3Mb\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__+d3Mb\"};","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__+d3Mb\",\"is-resize\":\"style_is-resize__ut6RW__+d3Mb\",\"is-moving\":\"style_is-moving__BJ9wR__+d3Mb\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__+d3Mb\",\"is-computed\":\"style_is-computed__B9rIF__+d3Mb\",\"options-column\":\"style_options-column__vsPTr__+d3Mb\",\"options-btn\":\"style_options-btn__U3uoy__+d3Mb\",\"tooltip\":\"style_tooltip__vJlkv__+d3Mb\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__+d3Mb\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__+d3Mb\",\"columns-control\":\"style_columns-control__5-5ZF__+d3Mb\",\"columns-control-content\":\"style_columns-control-content__MoeUI__+d3Mb\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__+d3Mb\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__+d3Mb\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__+d3Mb\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__+d3Mb\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__+d3Mb\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__+d3Mb\",\"is-drag\":\"style_is-drag__U68aw__+d3Mb\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__+d3Mb\",\"sortable-drag\":\"style_sortable-drag__K5hWd__+d3Mb\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__+d3Mb\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__+d3Mb\",\"sort-btn\":\"style_sort-btn__KvNLr__+d3Mb\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__+d3Mb\",\"sort-icon\":\"style_sort-icon__dB85I__+d3Mb\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__+d3Mb\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__+d3Mb\",\"tag\":\"columns_tag__bQZLG__+d3Mb\",\"avatar\":\"columns_avatar__SLPI+__+d3Mb\",\"hover\":\"columns_hover__oAwHg__+d3Mb\",\"primary\":\"columns_primary__6KtaA__+d3Mb\",\"loading\":\"columns_loading__gtBay__+d3Mb\",\"options\":\"columns_options__WvDZD__+d3Mb\"};","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.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","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\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 if (expand) {\n return (\n <DisplayInfo {...api}>\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={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof api.children === \"function\" ? api.children(data) : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem\n type=\"hide-info\"\n primary\n isEmpty={isEmpty}\n emptyRender={emptyRender}\n >\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 { 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\";\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 } = usePreset();\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\";\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],\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 = (\n emptyOf ||\n ((value) => value === \"\" || value === void 0 || value === null)\n )(colValue);\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 }\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,\n //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 fetchParams = useMemo(() => {\n const fetchParams = {};\n if (props.params && Object.keys(props.params).length > 0) {\n fetchParams[\"params\"] = {\n ...props.params,\n [pagination.pageSizeName]: pageSize,\n };\n }\n if (props.data && Object.keys(props.data).length > 0) {\n fetchParams[\"data\"] = {\n ...props.data,\n [pagination.pageSizeName]: pageSize,\n };\n }\n return fetchParams;\n }, [props.params, props.data, pagination.pageSizeName, 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","/**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\nfunction arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayAggregator;\n","var baseEach = require('./_baseEach');\n\n/**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\nfunction baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n}\n\nmodule.exports = baseAggregator;\n","var baseForOwn = require('./_baseForOwn'),\n createBaseEach = require('./_createBaseEach');\n\n/**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\nvar baseEach = createBaseEach(baseForOwn);\n\nmodule.exports = baseEach;\n","/**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n}\n\nmodule.exports = baseFindIndex;\n","/**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\nfunction baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n}\n\nmodule.exports = baseSum;\n","var arrayAggregator = require('./_arrayAggregator'),\n baseAggregator = require('./_baseAggregator'),\n baseIteratee = require('./_baseIteratee'),\n isArray = require('./isArray');\n\n/**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\nfunction createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, baseIteratee(iteratee, 2), accumulator);\n };\n}\n\nmodule.exports = createAggregator;\n","var isArrayLike = require('./isArrayLike');\n\n/**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n}\n\nmodule.exports = createBaseEach;\n","var baseFindIndex = require('./_baseFindIndex'),\n baseIteratee = require('./_baseIteratee'),\n toInteger = require('./toInteger');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\nfunction findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, baseIteratee(predicate, 3), index, true);\n}\n\nmodule.exports = findLastIndex;\n","var baseAssignValue = require('./_baseAssignValue'),\n createAggregator = require('./_createAggregator');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\nvar groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n});\n\nmodule.exports = groupBy;\n","var baseSet = require('./_baseSet');\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nmodule.exports = set;\n","var baseIteratee = require('./_baseIteratee'),\n baseSum = require('./_baseSum');\n\n/**\n * This method is like `_.sum` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the value to be summed.\n * The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Math\n * @param {Array} array The array to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the sum.\n * @example\n *\n * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];\n *\n * _.sumBy(objects, function(o) { return o.n; });\n * // => 20\n *\n * // The `_.property` iteratee shorthand.\n * _.sumBy(objects, 'n');\n * // => 20\n */\nfunction sumBy(array, iteratee) {\n return (array && array.length)\n ? baseSum(array, baseIteratee(iteratee, 2))\n : 0;\n}\n\nmodule.exports = sumBy;\n","var toFinite = require('./toFinite');\n\n/**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\nfunction toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n}\n\nmodule.exports = toInteger;\n"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","_jsx","className","style","left","height","children","classnames","innerLeft","onMouseDown","preventDefault","body","Scroller","_ref2","scroller","getScrollTarget","setScrollerProps","ref","getScrollEl","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","props","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","_jsxs","x","defaultProps","querySelector","getItem","key","target","localStorage","dataType","value","JSON","parse","Number","Boolean","setItem","stringify","ButtonGroup","list","more","compact","spaceProps","pick","showLength","setShowLength","length","confirmModal","useConfirmModal","computedLength","el","targetRef","moreEl","moreRef","widthEl","buttonEls","querySelectorAll","buttonElLength","amountWidth","moreBtnWidth","spaceWidth","indexOf","size","isInteger","targetLength","targetWidth","buttonWidthList","map","call","offsetWidth","startTransition","useResize","otherList","slice","renderButton","index","confirm","isConfirm","message","CurrentButton","ConfirmButton","LoadingButton","_createElement","danger","isDelete","SpaceComponent","Space","Compact","_Fragment","Dropdown","menu","items","_ref3","onClick","title","okText","label","type","onOk","Button","Icon","locale","en-US","zh-CN","withConfirm","WrappedComponent","ConfirmComponent","createWithIntl","moduleName","importMessages","onCancel","disabled","showCancel","cancelText","isModal","placement","formatMessage","useIntl","modal","useModal","cancelButton","id","confirmButton","wrapClassName","footerButtons","Popconfirm","direction","stopPropagation","align","onConfirm","okButtonProps","overlayClassName","getPopupContainer","ConfirmLink","Typography","Link","ConfirmText","Text","baseLoaders","description","EnumLoaderFetch","withFetch","data","getEnumsMap","memoize","enums","Map","concat","keys","EnumLoader","loader","enumsLoader","global","enumsRef","useGlobalContext","prevLocaleRef","async","arguments","params","undefined","name","force","getEnumMap","get","output","toString","isArray","console","warn","set","Promise","all","then","enumMap","values","isNil","Enum","preset","usePreset","_ref4","treeTraverse","func","pId","omit","parentId","parseProfile","profile","profileMap","features","filter","dependencies","some","depId","computedIsPaas","currentId","close","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","systemId","useContext","log","isPass","feature","options","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","icon","ellipsis","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","resolve","colItem","event","finally","DisplayInfo","createWithFetch","api","expand","onExpand","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","avatar","_ref12","Image","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","hidden","sort","a","b","renderColumn","titleText","groupHeader","join","Row","justify","Col","Tooltip","defaultActiveKey","ghost","bordered","header","List","Item","Checkbox","checked","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","renderItem","gutter","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","content","ColumnsControlContent","controllerOpen","tableWidth","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","tablePageServerParams","getDataApi","saveConfig","useDebouncedCallback","setDataFunc","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","isEqual","handlerCancelResize","handlerResize","columnsConfig","rowKey","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","emptyOf","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","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_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","IntlProvider","totalCount","forwardRef","pageSizeKey","toUpperCase","setPageSize","fetchParams","module","exports","array","setter","iteratee","accumulator","baseEach","require","collection","baseForOwn","createBaseEach","predicate","fromIndex","fromRight","arrayAggregator","baseAggregator","baseIteratee","initializer","isArrayLike","eachFunc","iterable","baseFindIndex","toInteger","nativeMax","nativeMin","baseAssignValue","createAggregator","prototype","baseSet","object","path","baseSum","toFinite","remainder"],"sourceRoot":""}
|