@kne-components/components-core 0.3.23 → 0.3.25
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 +101 -101
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1248.67931b10.chunk.css +2 -0
- package/build/static/css/{1248.420f95be.chunk.css.map → 1248.67931b10.chunk.css.map} +1 -1
- package/build/static/css/1559.7b8768bb.chunk.css +2 -0
- package/build/static/css/1559.7b8768bb.chunk.css.map +1 -0
- package/build/static/css/196.8c09be8b.chunk.css +2 -0
- package/build/static/css/196.8c09be8b.chunk.css.map +1 -0
- package/build/static/css/{1996.ad6ff799.chunk.css → 1996.211ac13b.chunk.css} +2 -2
- package/build/static/css/{1996.ad6ff799.chunk.css.map → 1996.211ac13b.chunk.css.map} +1 -1
- package/build/static/css/206.fcad2b2a.chunk.css +2 -0
- package/build/static/css/{206.3b192e68.chunk.css.map → 206.fcad2b2a.chunk.css.map} +1 -1
- package/build/static/css/2309.a68da376.chunk.css +2 -0
- package/build/static/css/2309.a68da376.chunk.css.map +1 -0
- package/build/static/css/2630.d4c9ee14.chunk.css +2 -0
- package/build/static/css/2630.d4c9ee14.chunk.css.map +1 -0
- package/build/static/css/2716.fcbeceb6.chunk.css +2 -0
- package/build/static/css/{2716.22bb4fae.chunk.css.map → 2716.fcbeceb6.chunk.css.map} +1 -1
- package/build/static/css/2765.ce93154a.chunk.css +2 -0
- package/build/static/css/2765.ce93154a.chunk.css.map +1 -0
- package/build/static/css/{3771.a69d0a04.chunk.css → 3771.a75832db.chunk.css} +2 -2
- package/build/static/css/{3771.a69d0a04.chunk.css.map → 3771.a75832db.chunk.css.map} +1 -1
- package/build/static/css/{3790.c883c3e8.chunk.css → 3790.f182dca9.chunk.css} +2 -2
- package/build/static/css/{3790.c883c3e8.chunk.css.map → 3790.f182dca9.chunk.css.map} +1 -1
- package/build/static/css/{4010.30ee21c7.chunk.css → 4010.579f87a0.chunk.css} +2 -2
- package/build/static/css/4010.579f87a0.chunk.css.map +1 -0
- package/build/static/css/{4277.cf236e3f.chunk.css → 4277.dcdff215.chunk.css} +2 -2
- package/build/static/css/{4277.cf236e3f.chunk.css.map → 4277.dcdff215.chunk.css.map} +1 -1
- package/build/static/css/5422.a46cc205.chunk.css +2 -0
- package/build/static/css/{5422.3fba146d.chunk.css.map → 5422.a46cc205.chunk.css.map} +1 -1
- package/build/static/css/{6763.60886b75.chunk.css → 6763.b640b8ab.chunk.css} +2 -2
- package/build/static/css/{6763.60886b75.chunk.css.map → 6763.b640b8ab.chunk.css.map} +1 -1
- package/build/static/css/6980.06771633.chunk.css +12 -0
- package/build/static/css/{6980.565a5873.chunk.css.map → 6980.06771633.chunk.css.map} +1 -1
- package/build/static/css/7227.ec5d25fb.chunk.css +2 -0
- package/build/static/css/{7227.f4fd739b.chunk.css.map → 7227.ec5d25fb.chunk.css.map} +1 -1
- package/build/static/css/{760.b6f1ffe9.chunk.css → 760.2465a5e0.chunk.css} +2 -2
- package/build/static/css/{760.b6f1ffe9.chunk.css.map → 760.2465a5e0.chunk.css.map} +1 -1
- package/build/static/css/8278.9e1f3b06.chunk.css +2 -0
- package/build/static/css/{8278.ae2486d0.chunk.css.map → 8278.9e1f3b06.chunk.css.map} +1 -1
- package/build/static/css/{8593.1131ec48.chunk.css → 8593.2b6148ba.chunk.css} +2 -2
- package/build/static/css/{8593.1131ec48.chunk.css.map → 8593.2b6148ba.chunk.css.map} +1 -1
- package/build/static/css/9119.624f3f8d.chunk.css +2 -0
- package/build/static/css/{9119.806ab331.chunk.css.map → 9119.624f3f8d.chunk.css.map} +1 -1
- package/build/static/css/9556.dadf736a.chunk.css +2 -0
- package/build/static/css/{9556.60bfb7c6.chunk.css.map → 9556.dadf736a.chunk.css.map} +1 -1
- package/build/static/css/9772.7d2ae4ee.chunk.css +2 -0
- package/build/static/css/{9772.40db844e.chunk.css.map → 9772.7d2ae4ee.chunk.css.map} +1 -1
- package/build/static/js/{1248.e04383c7.chunk.js → 1248.09f57a8e.chunk.js} +3 -3
- package/build/static/js/{1248.e04383c7.chunk.js.map → 1248.09f57a8e.chunk.js.map} +1 -1
- package/build/static/js/{196.cb3c0c0f.chunk.js → 196.fd24ea9b.chunk.js} +1 -1
- package/build/static/js/1996.af00b183.chunk.js +2 -0
- package/build/static/js/{1996.977f3d73.chunk.js.map → 1996.af00b183.chunk.js.map} +1 -1
- package/build/static/js/{206.4fca34c5.chunk.js → 206.8a2f2de2.chunk.js} +2 -2
- package/build/static/js/{206.4fca34c5.chunk.js.map → 206.8a2f2de2.chunk.js.map} +1 -1
- package/build/static/js/2084.e6825fae.chunk.js +2 -0
- package/build/static/js/2084.e6825fae.chunk.js.map +1 -0
- package/build/static/js/2309.1bfa9aa6.chunk.js +2 -0
- package/build/static/js/{2309.1942d3a5.chunk.js.map → 2309.1bfa9aa6.chunk.js.map} +1 -1
- package/build/static/js/2630.c82c6dca.chunk.js +2 -0
- package/build/static/js/{2630.fae65a5f.chunk.js.map → 2630.c82c6dca.chunk.js.map} +1 -1
- package/build/static/js/{2716.db48e70e.chunk.js → 2716.644519c6.chunk.js} +3 -3
- package/build/static/js/{2716.db48e70e.chunk.js.map → 2716.644519c6.chunk.js.map} +1 -1
- package/build/static/js/3735.b66b9f08.chunk.js +2 -0
- package/build/static/js/3735.b66b9f08.chunk.js.map +1 -0
- package/build/static/js/{3771.b35db118.chunk.js → 3771.0a40e214.chunk.js} +2 -2
- package/build/static/js/{3771.b35db118.chunk.js.map → 3771.0a40e214.chunk.js.map} +1 -1
- package/build/static/js/{3790.7fe81760.chunk.js → 3790.da31c709.chunk.js} +2 -2
- package/build/static/js/{3790.7fe81760.chunk.js.map → 3790.da31c709.chunk.js.map} +1 -1
- package/build/static/js/3856.e385fe24.chunk.js +2 -0
- package/build/static/js/3856.e385fe24.chunk.js.map +1 -0
- package/build/static/js/4277.3e65cd72.chunk.js +2 -0
- package/build/static/js/{4277.5999c2e5.chunk.js.map → 4277.3e65cd72.chunk.js.map} +1 -1
- package/build/static/js/4474.0bf10705.chunk.js +2 -0
- package/build/static/js/4474.0bf10705.chunk.js.map +1 -0
- package/build/static/js/{5422.e9ae0d22.chunk.js → 5422.b9e41056.chunk.js} +2 -2
- package/build/static/js/{5422.e9ae0d22.chunk.js.map → 5422.b9e41056.chunk.js.map} +1 -1
- package/build/static/js/6116.1d428c3f.chunk.js +2 -0
- package/build/static/js/6116.1d428c3f.chunk.js.map +1 -0
- package/build/static/js/6763.905b0cbf.chunk.js +2 -0
- package/build/static/js/{6763.22216403.chunk.js.map → 6763.905b0cbf.chunk.js.map} +1 -1
- package/build/static/js/{6980.d67616cd.chunk.js → 6980.b188f436.chunk.js} +2 -2
- package/build/static/js/6980.b188f436.chunk.js.map +1 -0
- package/build/static/js/{7227.2044244e.chunk.js → 7227.dba68e64.chunk.js} +3 -3
- package/build/static/js/{7227.2044244e.chunk.js.map → 7227.dba68e64.chunk.js.map} +1 -1
- package/build/static/js/{760.f16a43aa.chunk.js → 760.75823b64.chunk.js} +2 -2
- package/build/static/js/{760.f16a43aa.chunk.js.map → 760.75823b64.chunk.js.map} +1 -1
- package/build/static/js/8278.a280389c.chunk.js +2 -0
- package/build/static/js/8278.a280389c.chunk.js.map +1 -0
- package/build/static/js/8593.cbbcd335.chunk.js +2 -0
- package/build/static/js/{8593.f380ac2a.chunk.js.map → 8593.cbbcd335.chunk.js.map} +1 -1
- package/build/static/js/8985.58ef32fd.chunk.js +2 -0
- package/build/static/js/8985.58ef32fd.chunk.js.map +1 -0
- package/build/static/js/9119.920424d3.chunk.js +2 -0
- package/build/static/js/{9119.cc873032.chunk.js.map → 9119.920424d3.chunk.js.map} +1 -1
- package/build/static/js/9556.d33bd444.chunk.js +3 -0
- package/build/static/js/{9556.283ac73f.chunk.js.map → 9556.d33bd444.chunk.js.map} +1 -1
- package/build/static/js/{9772.21874f13.chunk.js → 9772.3dc17a4a.chunk.js} +2 -2
- package/build/static/js/{9772.21874f13.chunk.js.map → 9772.3dc17a4a.chunk.js.map} +1 -1
- package/build/static/js/main.b9f5f79d.js +2 -0
- package/build/static/js/main.b9f5f79d.js.map +1 -0
- package/package.json +3 -3
- package/build/static/css/1248.420f95be.chunk.css +0 -2
- package/build/static/css/1559.10a05420.chunk.css +0 -2
- package/build/static/css/1559.10a05420.chunk.css.map +0 -1
- package/build/static/css/196.9a790e32.chunk.css +0 -2
- package/build/static/css/196.9a790e32.chunk.css.map +0 -1
- package/build/static/css/206.3b192e68.chunk.css +0 -2
- package/build/static/css/2309.d47b23b4.chunk.css +0 -2
- package/build/static/css/2309.d47b23b4.chunk.css.map +0 -1
- package/build/static/css/2630.e3e8f1f9.chunk.css +0 -2
- package/build/static/css/2630.e3e8f1f9.chunk.css.map +0 -1
- package/build/static/css/2716.22bb4fae.chunk.css +0 -2
- package/build/static/css/2765.41472873.chunk.css +0 -2
- package/build/static/css/2765.41472873.chunk.css.map +0 -1
- package/build/static/css/4010.30ee21c7.chunk.css.map +0 -1
- package/build/static/css/5422.3fba146d.chunk.css +0 -2
- package/build/static/css/6980.565a5873.chunk.css +0 -12
- package/build/static/css/7227.f4fd739b.chunk.css +0 -2
- package/build/static/css/8278.ae2486d0.chunk.css +0 -2
- package/build/static/css/9119.806ab331.chunk.css +0 -2
- package/build/static/css/9556.60bfb7c6.chunk.css +0 -2
- package/build/static/css/9772.40db844e.chunk.css +0 -2
- package/build/static/js/1996.977f3d73.chunk.js +0 -2
- package/build/static/js/2084.a0409a1c.chunk.js +0 -2
- package/build/static/js/2084.a0409a1c.chunk.js.map +0 -1
- package/build/static/js/2309.1942d3a5.chunk.js +0 -2
- package/build/static/js/2630.fae65a5f.chunk.js +0 -2
- package/build/static/js/3735.f7e99525.chunk.js +0 -2
- package/build/static/js/3735.f7e99525.chunk.js.map +0 -1
- package/build/static/js/3856.308647b4.chunk.js +0 -2
- package/build/static/js/3856.308647b4.chunk.js.map +0 -1
- package/build/static/js/4277.5999c2e5.chunk.js +0 -2
- package/build/static/js/4474.a13d3bee.chunk.js +0 -2
- package/build/static/js/4474.a13d3bee.chunk.js.map +0 -1
- package/build/static/js/6116.298a91a4.chunk.js +0 -2
- package/build/static/js/6116.298a91a4.chunk.js.map +0 -1
- package/build/static/js/6763.22216403.chunk.js +0 -2
- package/build/static/js/6980.d67616cd.chunk.js.map +0 -1
- package/build/static/js/8278.223ea344.chunk.js +0 -2
- package/build/static/js/8278.223ea344.chunk.js.map +0 -1
- package/build/static/js/8593.f380ac2a.chunk.js +0 -2
- package/build/static/js/8985.efc93c05.chunk.js +0 -2
- package/build/static/js/8985.efc93c05.chunk.js.map +0 -1
- package/build/static/js/9119.cc873032.chunk.js +0 -2
- package/build/static/js/9556.283ac73f.chunk.js +0 -3
- package/build/static/js/main.9ecd33da.js +0 -2
- package/build/static/js/main.9ecd33da.js.map +0 -1
- /package/build/static/js/{1248.e04383c7.chunk.js.LICENSE.txt → 1248.09f57a8e.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{2716.db48e70e.chunk.js.LICENSE.txt → 2716.644519c6.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7227.2044244e.chunk.js.LICENSE.txt → 7227.dba68e64.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{9556.283ac73f.chunk.js.LICENSE.txt → 9556.d33bd444.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/2309.1942d3a5.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js","../node_modules/lodash/_createAggregator.js","../node_modules/lodash/findLastIndex.js","common/utils/localStorage.js","../node_modules/lodash/_baseAggregator.js","../node_modules/lodash/groupBy.js","../node_modules/lodash/sumBy.js","../node_modules/lodash/_baseEach.js","components/Enum/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","components/Features/index.js","../node_modules/lodash/set.js","../node_modules/lodash/_baseFindIndex.js","../node_modules/lodash/_createBaseEach.js","../node_modules/lodash/_arrayAggregator.js","../node_modules/lodash/toInteger.js","../node_modules/lodash/_baseSum.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__4FixO\",\"is-resize\":\"style_is-resize__ut6RW__4FixO\",\"is-moving\":\"style_is-moving__BJ9wR__4FixO\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__4FixO\",\"is-computed\":\"style_is-computed__B9rIF__4FixO\",\"options-column\":\"style_options-column__vsPTr__4FixO\",\"options-btn\":\"style_options-btn__U3uoy__4FixO\",\"tooltip\":\"style_tooltip__vJlkv__4FixO\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__4FixO\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__4FixO\",\"columns-control\":\"style_columns-control__5-5ZF__4FixO\",\"columns-control-content\":\"style_columns-control-content__MoeUI__4FixO\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__4FixO\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__4FixO\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__4FixO\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__4FixO\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__4FixO\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__4FixO\",\"is-drag\":\"style_is-drag__U68aw__4FixO\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__4FixO\",\"sortable-drag\":\"style_sortable-drag__K5hWd__4FixO\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__4FixO\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__4FixO\",\"sort-btn\":\"style_sort-btn__KvNLr__4FixO\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__4FixO\",\"sort-icon\":\"style_sort-icon__dB85I__4FixO\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__4FixO\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__4FixO\",\"scroller-inner\":\"style_scroller-inner__NJSE0__4FixO\",\"is-moving\":\"style_is-moving__jGuy0__4FixO\"};","import {createPortal} from \"react-dom\";\nimport {useEffect, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport {getScrollEl} from '../../utils/importantContainer';\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 && 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(scrollerProps.hasScroller ? (<div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left, width: scrollerProps.width, 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, left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>) : null, getContainer() || document.body);\n};\n\nconst Scroller = ({\n className, scroller = true, getScrollTarget = getScrollEl, children\n }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0, width: 0, innerLeft: 0, innerWidth: 0, height: 0, 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 = typeof scroller === \"object\" && typeof scroller.getContainer === \"function\" ? scroller.getContainer : () => 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 = scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth = (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft = (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: scrollEl.scrollWidth - scrollEl.clientWidth > 0 && (container === document.documentElement ? top + height - container.offsetHeight > 0 && top < container.offsetHeight : top < containerRect.top + containerRect.height && 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 (<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\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__4FixO\",\"tag\":\"columns_tag__bQZLG__4FixO\",\"avatar\":\"columns_avatar__SLPI+__4FixO\",\"hover\":\"columns_hover__oAwHg__4FixO\",\"primary\":\"columns_primary__6KtaA__4FixO\",\"loading\":\"columns_loading__gtBay__4FixO\",\"options\":\"columns_options__WvDZD__4FixO\"};","import {Button} from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\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 (<div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({className, ...props}) => Object.assign({}, props, {\n className: classnames(className, \"btn-no-padding\", style[\"options-btn\"]), type: \"link\",\n }))}\n more={<Button\n icon={<Icon type=\"icon-gengduo2\"/>}\n className=\"btn-no-padding\"\n type=\"link\"\n />}\n />\n </div>);\n};\n\nconst Options = ({list, ...props}) => {\n if (typeof list === \"function\") {\n return (<Fetch\n loader={list}\n render={({data}) => {\n return <OptionsList {...props} list={data}/>;\n }}\n />);\n }\n return <OptionsList {...props} list={list}/>;\n};\n\nexport default Options;\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 rootClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\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 (<div\n style={Object.assign({}, style, {\"--max-width\": width + \"px\"})}\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[type], isEmpty ? null : {\n [columnsStyle[\"hover\"]]: hover, [columnsStyle[\"primary\"]]: primary, [columnsStyle[\"loading\"]]: loading,\n })}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(onClick({item, colItem: colValue, event: e})).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty ? emptyRender({type, item, hover, primary, children}) : children}\n </div>);\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import {startTransition, useEffect, useMemo, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport {Col, Popover, Row} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport {usePreset} from \"@components/Global\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({title, columns, config, setConfig}) => {\n const [open, setOpen] = useState(false);\n return (<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 rootClassName={style[\"columns-control-overlay\"]}\n content={<ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(newConfig, (result, value, key) => {\n result[key] = Object.assign({}, config[key], pick(value, [\"visible\", \"rank\"]));\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\nconst useTableConfig = ({\n columns, name, controllerOpen, tableWidth, rowKey,\n }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const {tableServerApis: presetTableServerApis} = usePreset();\n const tableServerApis = presetTableServerApis ? presetTableServerApis : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target = typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const {send} = useFetch(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 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 !(get(config, `${col.name}.visible`) === false || (get(config, `${col.name}.visible`) !== true && col.hidden === true));\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (get(config, `${item.name}.rank`, 0) + (item.fixed === \"left\" ? -10000 : 0) + (item.fixed === \"right\" ? 10000 : 0));\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(visibleColumns, ({\n type, name\n }) => get(config, `${name}.width`) || (columnTypes[type] || columnTypes['other']).width);\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({width, index}) => {\n return lastNotOptionsColumnIndex === index ? width + Math.max(tableWidth - totalWidth - 2, 0) : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (<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 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\", title: (<TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\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(Math.max(get(config, `${name}.width`) || width, min), max);\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 const itemKey = typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey = typeof rowKey === \"function\" ? rowKey(prevRecord) : prevRecord[rowKey];\n return (currentMoveColumnIndexRef.current === null || currentMoveColumnIndexRef.current === index || column.type === \"hideInfo\" || !(itemKey === prevItemKey && isEqual(record[column.name], prevRecord[column.name])));\n },\n title: (<>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) && resizeBarRender(Object.assign({}, targetColumn, {width: realWidth}), index)}\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 (currentMoveColumnIndexRef.current === null || currentMoveColumnRef.current === null) {\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(\"mouseup\", handlerCancelResize, true);\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.removeEventListener(\"mousemove\", handlerResize, true);\n };\n }, [resize]);\n\n return {\n visibleColumns, currentMoveColumnIndex, resizeBarRender, columnsConfig: config, totalWidth, 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 get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({rowKey, renderProps}) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback((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 {\n render, width, min, max\n } = Object.assign({}, columnTypes[type] || columnTypes['other'], type === \"hideInfo\" && !isNil(expandInfo) && pick(columnTypes[expandType] || columnTypes['other'], [\"width\", \"min\", \"max\"]));\n const targetRender = 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 = typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign({}, col, typeof col.render === \"function\" ? col.render({\n ...columnRenderPropsRef.current, name, target: item,\n }) : {});\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, 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 = colProps.hasOwnProperty(\"valueOf\") && typeof colProps.valueOf === \"function\" ? colProps.valueOf(item, Object.assign({}, columnRenderPropsRef.current, {\n name,\n }, disableColItem ? {targetRender: targetRenderWithProps} : {})) : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n });\n\n return {\n expandInfo, 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 as getScrollElDefault} 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 = getScrollElDefault,\n sticky = false,\n stickyOffset = \"var(--nav-height)\",\n pagination = false,\n columnRenderProps = {},\n rowKey = \"id\",\n dataSource,\n controllerOpen = true,\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((el) => {\n setTableWidth(el.clientWidth);\n }, {isDebounce: true});\n const {expandInfo, computedColumnProps} = useColumnTypeProps({\n rowKey, renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns, controllerOpen, name, computedColumnProps, tableWidth, rowKey,\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, expandInfo, columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (<>\n {target.title}\n {sortRender({\n name: col.name, single: typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth, columnsConfig,\n });\n }\n\n return target;\n });\n }, [visibleColumns, tableWidth, columnsConfig, expandInfo, rowKey, controllerOpen, computedColumnProps, computedColumnConfigProps, sortRender,]);\n\n const {columns: groupColumns, hasGroupHeader} = useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback && onTablePropsReadyCallback({\n columns, groupColumns, dataSource, visibleColumns,\n });\n }, [onTablePropsReadyCallback, groupColumns, dataSource, columns, visibleColumns,]);\n\n return (<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 && (<Scroller\n className=\"table-page-scroller\"\n scroller={{getContainer: getScrollEl}}\n getScrollTarget={(el) => {\n return (el.querySelector(\".ant-table-body\") || el.querySelector(\".ant-table-content\"));\n }}\n >\n <AntdTable\n {...props}\n sticky={sticky ? {\n getContainer: getScrollEl,\n } : false}\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign({}, {x: Math.max(tableWidth, totalWidth)}, scroll)}\n pagination={pagination}\n summary={typeof summary === \"function\" ? (current, ...args) => {\n return summary(Object.assign({}, {pageData: current}, {columns: groupColumns}), ...args);\n } : null}\n />\n </Scroller>)}\n </div>);\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 (<Features id={id}>\n {({options}) => 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 </Features>);\n }\n return children({columns});\n};\n\nconst TablePageInner = withFetch(({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat = (data) => {\n return {\n list: data.pageData, total: data.totalCount,\n };\n },\n className,\n featureId,\n columns,\n getColumns,\n pagination = {},\n columnRenderProps = {},\n summary,\n sticky = true,\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, pagination: pagination.open ? {\n total: formatData.total,\n showTotal: (total) => (<>\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 current: get(requestParams, [pagination.paramsType, pagination.currentName], 1),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange ? pagination.onChange : (page, size) => {\n if (page !== get(requestParams, [pagination.paramsType, pagination.currentName], 1)) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page, [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange && pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n } : false,\n };\n\n return (<IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({columns}) => (<Table\n {...Object.assign({}, props, tableProps)}\n sticky={sticky}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps, requestParams, fetchProps, data,\n }}\n summary={typeof summary === \"function\" ? (...args) => {\n return summary(Object.assign({}, {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n }, ...args));\n } : null}\n />)}\n </FeaturesColumnsConfig>\n </IntlProvider>);\n});\n\nconst TablePage = forwardRef(({pagination, ...props}, ref) => {\n pagination = Object.assign({}, {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n }, pagination);\n const pageSizeKey = `${(props.name || \"common\").toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(localStorage.getItem(pageSizeKey) || pagination.pageSize);\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (<TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize, onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />);\n});\n\nexport default TablePage;\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 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","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","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 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 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 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","import { preset } from \"@kne/react-enum\";\nimport transform from \"lodash/transform\";\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\npreset({\n base: transform(\n baseLoaders,\n (result, value) => {\n result[value[0]] = value[1];\n },\n {}\n ),\n});\n\nexport { default } from \"@kne/react-enum\";\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__4FixO\",\"state-result-tag\":\"style_state-result-tag__CssDz__4FixO\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__4FixO\",\"event-tag\":\"style_event-tag__cg6SE__4FixO\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__4FixO\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__4FixO\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__4FixO\",\"show-bg\":\"style_show-bg__OcL+R__4FixO\",\"tag-text\":\"style_tag-text__JHCt+__4FixO\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__4FixO\"};","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\", 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 = false,\n text = \"\",\n type = \"default\",\n showBackground = true,\n className,\n filterName,\n ...props\n }) => {\n const tagColor = useMemo(() => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }), [type]);\n\n return (<Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(style[\"state-tag-wrapper\"], type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\")}\n align=\"center\"\n size={4}\n >\n {filterName ? (<span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>) : 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(style[\"state-tag\"], className, type === \"result\" ? style[\"state-result-tag\"] : \"\", type === \"skill\" ? style[\"state-skill-tag\"] : \"\", style[`state-tag-${type}`], showBackground ? style[\"show-bg\"] : \"\", showBorder ? style[\"show-border\"] : \"\", props?.onClick ? style[\"event-tag\"] : \"\")}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>);\n};\n\nexport default StateTag;\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","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","/**\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","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","/**\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 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","/**\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"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","_objectWithoutProperties","_excluded","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","_ref2","scroller","getScrollTarget","getScrollEl","setScrollerProps","ref","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","_objectSpread","x","OptionsList","list","ButtonGroup","filter","hidden","map","type","more","Button","icon","Icon","_ref3","_excluded2","Fetch","loader","render","_ref4","data","ellipsis","Typography","Text","tooltip","rootClassName","isEmpty","emptyRender","hover","primary","onClick","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","value","emptyOf","isArray","length","values","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","ColItem","Ellipsis","other","_ref15","_excluded13","columnTypes","date","dayjs","isValid","format","min","max","dateShort","dateRange","_excluded3","datetime","hideSecond","_excluded4","serialNumber","_ref5","_excluded5","serialNumberShort","_ref6","_excluded6","user","_ref7","_excluded7","userName","_ref8","_excluded8","contacts","_ref9","_excluded9","tag","_ref0","_excluded0","isEnum","Enum","name","moduleName","force","_ref1","description","StateTag","omit","text","avatar","_ref10","_excluded1","Image","Avatar","size","singleRow","_ref11","_excluded10","hideInfo","HideInfoComponent","mainInfo","_ref12","_excluded11","_ref13","_excluded12","options","_ref14","sensitiveInfo","_ref16","_excluded14","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","useMemo","transform","groupBy","fixed","get","concat","result","key","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","align","justify","Col","Tooltip","LoadingButton","async","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","set","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","localStorage","getItem","setDataFunc","setItem","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","usePreset","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","target","startTransition","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","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","Map","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","getScrollElDefault","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","querySelector","AntdTable","_len","arguments","args","_key","pageData","locale","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","withFetch","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","total","totalCount","featureId","getColumns","handlerDataFormat","formatData","tableProps","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","importMessages","Table","forwardRef","pageSizeKey","toUpperCase","setPageSize","params","fetchParams","arrayAggregator","require","baseAggregator","baseIteratee","module","exports","setter","initializer","collection","iteratee","func","accumulator","baseFindIndex","toInteger","nativeMax","nativeMin","array","predicate","fromIndex","undefined","dataType","JSON","parse","Number","Boolean","stringify","baseEach","baseAssignValue","createAggregator","prototype","call","baseSum","baseForOwn","createBaseEach","preset","base","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","danger","info","showBorder","showBackground","filterName","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","Space","Tag","background","border","treeTraverse","pId","parentId","parseProfile","memoize","profile","profileMap","output","features","keys","dependencies","some","depId","computedIsPaas","currentId","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","systemId","useContext","console","log","isPass","feature","baseSet","object","path","fromRight","isArrayLike","eachFunc","iterable","toFinite","remainder"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/2309.1bfa9aa6.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js","../node_modules/lodash/_createAggregator.js","../node_modules/lodash/findLastIndex.js","common/utils/localStorage.js","../node_modules/lodash/_baseAggregator.js","../node_modules/lodash/groupBy.js","../node_modules/lodash/sumBy.js","../node_modules/lodash/_baseEach.js","components/Enum/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","components/Features/index.js","../node_modules/lodash/set.js","../node_modules/lodash/_baseFindIndex.js","../node_modules/lodash/_createBaseEach.js","../node_modules/lodash/_arrayAggregator.js","../node_modules/lodash/toInteger.js","../node_modules/lodash/_baseSum.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__kw4DA\",\"is-resize\":\"style_is-resize__ut6RW__kw4DA\",\"is-moving\":\"style_is-moving__BJ9wR__kw4DA\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__kw4DA\",\"is-computed\":\"style_is-computed__B9rIF__kw4DA\",\"options-column\":\"style_options-column__vsPTr__kw4DA\",\"options-btn\":\"style_options-btn__U3uoy__kw4DA\",\"tooltip\":\"style_tooltip__vJlkv__kw4DA\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__kw4DA\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__kw4DA\",\"columns-control\":\"style_columns-control__5-5ZF__kw4DA\",\"columns-control-content\":\"style_columns-control-content__MoeUI__kw4DA\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__kw4DA\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__kw4DA\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__kw4DA\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__kw4DA\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__kw4DA\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__kw4DA\",\"is-drag\":\"style_is-drag__U68aw__kw4DA\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__kw4DA\",\"sortable-drag\":\"style_sortable-drag__K5hWd__kw4DA\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__kw4DA\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__kw4DA\",\"sort-btn\":\"style_sort-btn__KvNLr__kw4DA\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__kw4DA\",\"sort-icon\":\"style_sort-icon__dB85I__kw4DA\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__kw4DA\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__kw4DA\",\"scroller-inner\":\"style_scroller-inner__NJSE0__kw4DA\",\"is-moving\":\"style_is-moving__jGuy0__kw4DA\"};","import {createPortal} from \"react-dom\";\nimport {useEffect, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport {getScrollEl} from '../../utils/importantContainer';\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 && 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(scrollerProps.hasScroller ? (<div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left, width: scrollerProps.width, 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, left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>) : null, getContainer() || document.body);\n};\n\nconst Scroller = ({\n className, scroller = true, getScrollTarget = getScrollEl, children\n }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0, width: 0, innerLeft: 0, innerWidth: 0, height: 0, 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 = typeof scroller === \"object\" && typeof scroller.getContainer === \"function\" ? scroller.getContainer : () => 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 = scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth = (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft = (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: scrollEl.scrollWidth - scrollEl.clientWidth > 0 && (container === document.documentElement ? top + height - container.offsetHeight > 0 && top < container.offsetHeight : top < containerRect.top + containerRect.height && 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 (<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\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__kw4DA\",\"tag\":\"columns_tag__bQZLG__kw4DA\",\"avatar\":\"columns_avatar__SLPI+__kw4DA\",\"hover\":\"columns_hover__oAwHg__kw4DA\",\"primary\":\"columns_primary__6KtaA__kw4DA\",\"loading\":\"columns_loading__gtBay__kw4DA\",\"options\":\"columns_options__WvDZD__kw4DA\"};","import {Button} from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\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 (<div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({className, ...props}) => Object.assign({}, props, {\n className: classnames(className, \"btn-no-padding\", style[\"options-btn\"]), type: \"link\",\n }))}\n more={<Button\n icon={<Icon type=\"icon-gengduo2\"/>}\n className=\"btn-no-padding\"\n type=\"link\"\n />}\n />\n </div>);\n};\n\nconst Options = ({list, ...props}) => {\n if (typeof list === \"function\") {\n return (<Fetch\n loader={list}\n render={({data}) => {\n return <OptionsList {...props} list={data}/>;\n }}\n />);\n }\n return <OptionsList {...props} list={list}/>;\n};\n\nexport default Options;\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 rootClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\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 (<div\n style={Object.assign({}, style, {\"--max-width\": width + \"px\"})}\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[type], isEmpty ? null : {\n [columnsStyle[\"hover\"]]: hover, [columnsStyle[\"primary\"]]: primary, [columnsStyle[\"loading\"]]: loading,\n })}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(onClick({item, colItem: colValue, event: e})).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty ? emptyRender({type, item, hover, primary, children}) : children}\n </div>);\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import {startTransition, useEffect, useMemo, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport {Col, Popover, Row} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport {usePreset} from \"@components/Global\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({title, columns, config, setConfig}) => {\n const [open, setOpen] = useState(false);\n return (<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 rootClassName={style[\"columns-control-overlay\"]}\n content={<ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(newConfig, (result, value, key) => {\n result[key] = Object.assign({}, config[key], pick(value, [\"visible\", \"rank\"]));\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\nconst useTableConfig = ({\n columns, name, controllerOpen, tableWidth, rowKey,\n }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const {tableServerApis: presetTableServerApis} = usePreset();\n const tableServerApis = presetTableServerApis ? presetTableServerApis : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target = typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const {send} = useFetch(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 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 !(get(config, `${col.name}.visible`) === false || (get(config, `${col.name}.visible`) !== true && col.hidden === true));\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (get(config, `${item.name}.rank`, 0) + (item.fixed === \"left\" ? -10000 : 0) + (item.fixed === \"right\" ? 10000 : 0));\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(visibleColumns, ({\n type, name\n }) => get(config, `${name}.width`) || (columnTypes[type] || columnTypes['other']).width);\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({width, index}) => {\n return lastNotOptionsColumnIndex === index ? width + Math.max(tableWidth - totalWidth - 2, 0) : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (<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 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\", title: (<TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\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(Math.max(get(config, `${name}.width`) || width, min), max);\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 const itemKey = typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey = typeof rowKey === \"function\" ? rowKey(prevRecord) : prevRecord[rowKey];\n return (currentMoveColumnIndexRef.current === null || currentMoveColumnIndexRef.current === index || column.type === \"hideInfo\" || !(itemKey === prevItemKey && isEqual(record[column.name], prevRecord[column.name])));\n },\n title: (<>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) && resizeBarRender(Object.assign({}, targetColumn, {width: realWidth}), index)}\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 (currentMoveColumnIndexRef.current === null || currentMoveColumnRef.current === null) {\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(\"mouseup\", handlerCancelResize, true);\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.removeEventListener(\"mousemove\", handlerResize, true);\n };\n }, [resize]);\n\n return {\n visibleColumns, currentMoveColumnIndex, resizeBarRender, columnsConfig: config, totalWidth, 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 get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({rowKey, renderProps}) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback((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 {\n render, width, min, max\n } = Object.assign({}, columnTypes[type] || columnTypes['other'], type === \"hideInfo\" && !isNil(expandInfo) && pick(columnTypes[expandType] || columnTypes['other'], [\"width\", \"min\", \"max\"]));\n const targetRender = 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 = typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign({}, col, typeof col.render === \"function\" ? col.render({\n ...columnRenderPropsRef.current, name, target: item,\n }) : {});\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, 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 = colProps.hasOwnProperty(\"valueOf\") && typeof colProps.valueOf === \"function\" ? colProps.valueOf(item, Object.assign({}, columnRenderPropsRef.current, {\n name,\n }, disableColItem ? {targetRender: targetRenderWithProps} : {})) : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n });\n\n return {\n expandInfo, 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 as getScrollElDefault} 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 = getScrollElDefault,\n sticky = false,\n stickyOffset = \"var(--nav-height)\",\n pagination = false,\n columnRenderProps = {},\n rowKey = \"id\",\n dataSource,\n controllerOpen = true,\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((el) => {\n setTableWidth(el.clientWidth);\n }, {isDebounce: true});\n const {expandInfo, computedColumnProps} = useColumnTypeProps({\n rowKey, renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns, controllerOpen, name, computedColumnProps, tableWidth, rowKey,\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, expandInfo, columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (<>\n {target.title}\n {sortRender({\n name: col.name, single: typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth, columnsConfig,\n });\n }\n\n return target;\n });\n }, [visibleColumns, tableWidth, columnsConfig, expandInfo, rowKey, controllerOpen, computedColumnProps, computedColumnConfigProps, sortRender,]);\n\n const {columns: groupColumns, hasGroupHeader} = useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback && onTablePropsReadyCallback({\n columns, groupColumns, dataSource, visibleColumns,\n });\n }, [onTablePropsReadyCallback, groupColumns, dataSource, columns, visibleColumns,]);\n\n return (<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 && (<Scroller\n className=\"table-page-scroller\"\n scroller={{getContainer: getScrollEl}}\n getScrollTarget={(el) => {\n return (el.querySelector(\".ant-table-body\") || el.querySelector(\".ant-table-content\"));\n }}\n >\n <AntdTable\n {...props}\n sticky={sticky ? {\n getContainer: getScrollEl,\n } : false}\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign({}, {x: Math.max(tableWidth, totalWidth)}, scroll)}\n pagination={pagination}\n summary={typeof summary === \"function\" ? (current, ...args) => {\n return summary(Object.assign({}, {pageData: current}, {columns: groupColumns}), ...args);\n } : null}\n />\n </Scroller>)}\n </div>);\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 (<Features id={id}>\n {({options}) => 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 </Features>);\n }\n return children({columns});\n};\n\nconst TablePageInner = withFetch(({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat = (data) => {\n return {\n list: data.pageData, total: data.totalCount,\n };\n },\n className,\n featureId,\n columns,\n getColumns,\n pagination = {},\n columnRenderProps = {},\n summary,\n sticky = true,\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, pagination: pagination.open ? {\n total: formatData.total,\n showTotal: (total) => (<>\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 current: get(requestParams, [pagination.paramsType, pagination.currentName], 1),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange ? pagination.onChange : (page, size) => {\n if (page !== get(requestParams, [pagination.paramsType, pagination.currentName], 1)) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page, [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange && pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n } : false,\n };\n\n return (<IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({columns}) => (<Table\n {...Object.assign({}, props, tableProps)}\n sticky={sticky}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps, requestParams, fetchProps, data,\n }}\n summary={typeof summary === \"function\" ? (...args) => {\n return summary(Object.assign({}, {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n }, ...args));\n } : null}\n />)}\n </FeaturesColumnsConfig>\n </IntlProvider>);\n});\n\nconst TablePage = forwardRef(({pagination, ...props}, ref) => {\n pagination = Object.assign({}, {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n }, pagination);\n const pageSizeKey = `${(props.name || \"common\").toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(localStorage.getItem(pageSizeKey) || pagination.pageSize);\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (<TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize, onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />);\n});\n\nexport default TablePage;\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 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","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","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 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 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 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","import { preset } from \"@kne/react-enum\";\nimport transform from \"lodash/transform\";\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\npreset({\n base: transform(\n baseLoaders,\n (result, value) => {\n result[value[0]] = value[1];\n },\n {}\n ),\n});\n\nexport { default } from \"@kne/react-enum\";\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__kw4DA\",\"state-result-tag\":\"style_state-result-tag__CssDz__kw4DA\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__kw4DA\",\"event-tag\":\"style_event-tag__cg6SE__kw4DA\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__kw4DA\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__kw4DA\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__kw4DA\",\"show-bg\":\"style_show-bg__OcL+R__kw4DA\",\"tag-text\":\"style_tag-text__JHCt+__kw4DA\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__kw4DA\"};","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\", 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 = false,\n text = \"\",\n type = \"default\",\n showBackground = true,\n className,\n filterName,\n ...props\n }) => {\n const tagColor = useMemo(() => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }), [type]);\n\n return (<Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(style[\"state-tag-wrapper\"], type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\")}\n align=\"center\"\n size={4}\n >\n {filterName ? (<span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>) : 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(style[\"state-tag\"], className, type === \"result\" ? style[\"state-result-tag\"] : \"\", type === \"skill\" ? style[\"state-skill-tag\"] : \"\", style[`state-tag-${type}`], showBackground ? style[\"show-bg\"] : \"\", showBorder ? style[\"show-border\"] : \"\", props?.onClick ? style[\"event-tag\"] : \"\")}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>);\n};\n\nexport default StateTag;\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","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","/**\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","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","/**\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 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","/**\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"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","_objectWithoutProperties","_excluded","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","_ref2","scroller","getScrollTarget","getScrollEl","setScrollerProps","ref","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","_objectSpread","x","OptionsList","list","ButtonGroup","filter","hidden","map","type","more","Button","icon","Icon","_ref3","_excluded2","Fetch","loader","render","_ref4","data","ellipsis","Typography","Text","tooltip","rootClassName","isEmpty","emptyRender","hover","primary","onClick","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","value","emptyOf","isArray","length","values","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","ColItem","Ellipsis","other","_ref15","_excluded13","columnTypes","date","dayjs","isValid","format","min","max","dateShort","dateRange","_excluded3","datetime","hideSecond","_excluded4","serialNumber","_ref5","_excluded5","serialNumberShort","_ref6","_excluded6","user","_ref7","_excluded7","userName","_ref8","_excluded8","contacts","_ref9","_excluded9","tag","_ref0","_excluded0","isEnum","Enum","name","moduleName","force","_ref1","description","StateTag","omit","text","avatar","_ref10","_excluded1","Image","Avatar","size","singleRow","_ref11","_excluded10","hideInfo","HideInfoComponent","mainInfo","_ref12","_excluded11","_ref13","_excluded12","options","_ref14","sensitiveInfo","_ref16","_excluded14","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","useMemo","transform","groupBy","fixed","get","concat","result","key","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","align","justify","Col","Tooltip","LoadingButton","async","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","set","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","localStorage","getItem","setDataFunc","setItem","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","usePreset","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","target","startTransition","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","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","Map","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","getScrollElDefault","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","querySelector","AntdTable","_len","arguments","args","_key","pageData","locale","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","withFetch","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","total","totalCount","featureId","getColumns","handlerDataFormat","formatData","tableProps","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","importMessages","Table","forwardRef","pageSizeKey","toUpperCase","setPageSize","params","fetchParams","arrayAggregator","require","baseAggregator","baseIteratee","module","exports","setter","initializer","collection","iteratee","func","accumulator","baseFindIndex","toInteger","nativeMax","nativeMin","array","predicate","fromIndex","undefined","dataType","JSON","parse","Number","Boolean","stringify","baseEach","baseAssignValue","createAggregator","prototype","call","baseSum","baseForOwn","createBaseEach","preset","base","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","danger","info","showBorder","showBackground","filterName","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","Space","Tag","background","border","treeTraverse","pId","parentId","parseProfile","memoize","profile","profileMap","output","features","keys","dependencies","some","depId","computedIsPaas","currentId","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","systemId","useContext","console","log","isPass","feature","baseSet","object","path","fromRight","isArrayLike","eachFunc","iterable","toFinite","remainder"],"sourceRoot":""}
|