@kne-components/components-core 0.2.76 → 0.2.78
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 +103 -103
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/{1045.560ae715.chunk.css → 1045.15456b96.chunk.css} +2 -2
- package/build/static/css/{1045.560ae715.chunk.css.map → 1045.15456b96.chunk.css.map} +1 -1
- package/build/static/css/1046.b3d37b38.chunk.css +2 -0
- package/build/static/css/{1046.94a23cff.chunk.css.map → 1046.b3d37b38.chunk.css.map} +1 -1
- package/build/static/css/1153.847753f6.chunk.css +2 -0
- package/build/static/css/{1153.48f404cb.chunk.css.map → 1153.847753f6.chunk.css.map} +1 -1
- package/build/static/css/1554.8431956e.chunk.css +2 -0
- package/build/static/css/{1554.5d981cc2.chunk.css.map → 1554.8431956e.chunk.css.map} +1 -1
- package/build/static/css/2716.65bcadc5.chunk.css +2 -0
- package/build/static/css/{2716.1f1fc277.chunk.css.map → 2716.65bcadc5.chunk.css.map} +1 -1
- package/build/static/css/374.728bf9f6.chunk.css +12 -0
- package/build/static/css/{374.19e3f788.chunk.css.map → 374.728bf9f6.chunk.css.map} +1 -1
- package/build/static/css/3834.009579a7.chunk.css +2 -0
- package/build/static/css/{3834.f5d5a602.chunk.css.map → 3834.009579a7.chunk.css.map} +1 -1
- package/build/static/css/3900.fce2cf5d.chunk.css +2 -0
- package/build/static/css/{3900.cdfb90b7.chunk.css.map → 3900.fce2cf5d.chunk.css.map} +1 -1
- package/build/static/css/4194.67dffd7a.chunk.css +2 -0
- package/build/static/css/{4194.79deec85.chunk.css.map → 4194.67dffd7a.chunk.css.map} +1 -1
- package/build/static/css/4602.1cf456c5.chunk.css +2 -0
- package/build/static/css/{4602.0cd507c4.chunk.css.map → 4602.1cf456c5.chunk.css.map} +1 -1
- package/build/static/css/4666.4c86aa1c.chunk.css +2 -0
- package/build/static/css/{4666.19be337a.chunk.css.map → 4666.4c86aa1c.chunk.css.map} +1 -1
- package/build/static/css/{5371.f63c8c53.chunk.css → 5371.d3b11007.chunk.css} +2 -2
- package/build/static/css/{5371.f63c8c53.chunk.css.map → 5371.d3b11007.chunk.css.map} +1 -1
- package/build/static/css/5807.cc1e0d54.chunk.css +2 -0
- package/build/static/css/{5807.394a44b3.chunk.css.map → 5807.cc1e0d54.chunk.css.map} +1 -1
- package/build/static/css/5965.51d9c994.chunk.css +2 -0
- package/build/static/css/{5965.7cd4be86.chunk.css.map → 5965.51d9c994.chunk.css.map} +1 -1
- package/build/static/css/{624.2af9fcc1.chunk.css → 624.fa8a9ddd.chunk.css} +2 -2
- package/build/static/css/{624.2af9fcc1.chunk.css.map → 624.fa8a9ddd.chunk.css.map} +1 -1
- package/build/static/css/6756.7d09856c.chunk.css +2 -0
- package/build/static/css/{6756.2e5636e7.chunk.css.map → 6756.7d09856c.chunk.css.map} +1 -1
- package/build/static/css/7227.017f6e22.chunk.css +2 -0
- package/build/static/css/{7227.32fda2eb.chunk.css.map → 7227.017f6e22.chunk.css.map} +1 -1
- package/build/static/css/{7253.25e2e965.chunk.css → 7253.e44aa3dc.chunk.css} +2 -2
- package/build/static/css/{7253.25e2e965.chunk.css.map → 7253.e44aa3dc.chunk.css.map} +1 -1
- package/build/static/css/7277.e7ebd36d.chunk.css +2 -0
- package/build/static/css/{7277.f11f2389.chunk.css.map → 7277.e7ebd36d.chunk.css.map} +1 -1
- package/build/static/css/{7334.1117e798.chunk.css → 7334.e3029add.chunk.css} +2 -2
- package/build/static/css/{7334.1117e798.chunk.css.map → 7334.e3029add.chunk.css.map} +1 -1
- package/build/static/css/{7866.75e34e44.chunk.css → 7866.308e9441.chunk.css} +2 -2
- package/build/static/css/{7866.75e34e44.chunk.css.map → 7866.308e9441.chunk.css.map} +1 -1
- package/build/static/css/{8503.ced236c0.chunk.css → 8503.e79f8f83.chunk.css} +2 -2
- package/build/static/css/{8503.ced236c0.chunk.css.map → 8503.e79f8f83.chunk.css.map} +1 -1
- package/build/static/js/1045.5a022879.chunk.js +2 -0
- package/build/static/js/{1045.cbe65297.chunk.js.map → 1045.5a022879.chunk.js.map} +1 -1
- package/build/static/js/{1046.8907af00.chunk.js → 1046.38336132.chunk.js} +2 -2
- package/build/static/js/{1046.8907af00.chunk.js.map → 1046.38336132.chunk.js.map} +1 -1
- package/build/static/js/{1153.7a57cdf9.chunk.js → 1153.a0c5ddca.chunk.js} +3 -3
- package/build/static/js/{1153.7a57cdf9.chunk.js.map → 1153.a0c5ddca.chunk.js.map} +1 -1
- package/build/static/js/{1333.53f5ef76.chunk.js → 1333.16688e57.chunk.js} +3 -3
- package/build/static/js/{1333.53f5ef76.chunk.js.map → 1333.16688e57.chunk.js.map} +1 -1
- package/build/static/js/1554.50233e73.chunk.js +3 -0
- package/build/static/js/{1554.70060f3b.chunk.js.map → 1554.50233e73.chunk.js.map} +1 -1
- package/build/static/js/1797.a705ecf7.chunk.js +3 -0
- package/build/static/js/{1797.a5322bfc.chunk.js.LICENSE.txt → 1797.a705ecf7.chunk.js.LICENSE.txt} +1 -1
- package/build/static/js/1797.a705ecf7.chunk.js.map +1 -0
- package/build/static/js/{196.f9dad417.chunk.js → 196.c2482520.chunk.js} +1 -1
- package/build/static/js/2716.85d4f88d.chunk.js +3 -0
- package/build/static/js/{2716.a1f6d720.chunk.js.map → 2716.85d4f88d.chunk.js.map} +1 -1
- package/build/static/js/{3375.57b89437.chunk.js → 3375.6dff7db2.chunk.js} +2 -2
- package/build/static/js/3375.6dff7db2.chunk.js.map +1 -0
- package/build/static/js/{374.f3ab13d1.chunk.js → 374.b5ead39e.chunk.js} +2 -2
- package/build/static/js/374.b5ead39e.chunk.js.map +1 -0
- package/build/static/js/3834.a7e6f8e7.chunk.js +2 -0
- package/build/static/js/{3834.60580996.chunk.js.map → 3834.a7e6f8e7.chunk.js.map} +1 -1
- package/build/static/js/3856.e36be6a5.chunk.js +2 -0
- package/build/static/js/{3856.7e1e170e.chunk.js.map → 3856.e36be6a5.chunk.js.map} +1 -1
- package/build/static/js/3900.4423cc1a.chunk.js +2 -0
- package/build/static/js/{3900.5476f255.chunk.js.map → 3900.4423cc1a.chunk.js.map} +1 -1
- package/build/static/js/4194.03b9d3f0.chunk.js +2 -0
- package/build/static/js/4194.03b9d3f0.chunk.js.map +1 -0
- package/build/static/js/4602.700ed48b.chunk.js +2 -0
- package/build/static/js/4602.700ed48b.chunk.js.map +1 -0
- package/build/static/js/{4666.14624afe.chunk.js → 4666.29a26832.chunk.js} +3 -3
- package/build/static/js/{4666.14624afe.chunk.js.map → 4666.29a26832.chunk.js.map} +1 -1
- package/build/static/js/5371.cc617a95.chunk.js +2 -0
- package/build/static/js/{5371.f2970153.chunk.js.map → 5371.cc617a95.chunk.js.map} +1 -1
- package/build/static/js/{5807.64607efa.chunk.js → 5807.86a7f9b6.chunk.js} +2 -2
- package/build/static/js/{5807.64607efa.chunk.js.map → 5807.86a7f9b6.chunk.js.map} +1 -1
- package/build/static/js/5965.a966a815.chunk.js +2 -0
- package/build/static/js/5965.a966a815.chunk.js.map +1 -0
- package/build/static/js/6213.ba62f884.chunk.js +2 -0
- package/build/static/js/6213.ba62f884.chunk.js.map +1 -0
- package/build/static/js/{624.55290385.chunk.js → 624.a44edefa.chunk.js} +2 -2
- package/build/static/js/{624.55290385.chunk.js.map → 624.a44edefa.chunk.js.map} +1 -1
- package/build/static/js/6900.ff5558a4.chunk.js +2 -0
- package/build/static/js/6900.ff5558a4.chunk.js.map +1 -0
- package/build/static/js/7227.580f36aa.chunk.js +3 -0
- package/build/static/js/{7227.37efe1a0.chunk.js.map → 7227.580f36aa.chunk.js.map} +1 -1
- package/build/static/js/7253.a3e2cb54.chunk.js +2 -0
- package/build/static/js/{7253.951b8db9.chunk.js.map → 7253.a3e2cb54.chunk.js.map} +1 -1
- package/build/static/js/7277.29d19f4b.chunk.js +2 -0
- package/build/static/js/{7277.a131b1bc.chunk.js.map → 7277.29d19f4b.chunk.js.map} +1 -1
- package/build/static/js/7334.28da9b4d.chunk.js +2 -0
- package/build/static/js/{7334.17c6a220.chunk.js.map → 7334.28da9b4d.chunk.js.map} +1 -1
- package/build/static/js/{7866.37a80caf.chunk.js → 7866.9386aaaf.chunk.js} +2 -2
- package/build/static/js/{7866.37a80caf.chunk.js.map → 7866.9386aaaf.chunk.js.map} +1 -1
- package/build/static/js/8503.81831c53.chunk.js +2 -0
- package/build/static/js/{8503.ba53f994.chunk.js.map → 8503.81831c53.chunk.js.map} +1 -1
- package/build/static/js/main.cb513b34.js +2 -0
- package/build/static/js/{main.ef08d24b.js.map → main.cb513b34.js.map} +1 -1
- package/package.json +2 -2
- package/build/static/css/1046.94a23cff.chunk.css +0 -2
- package/build/static/css/1153.48f404cb.chunk.css +0 -2
- package/build/static/css/1554.5d981cc2.chunk.css +0 -2
- package/build/static/css/2716.1f1fc277.chunk.css +0 -2
- package/build/static/css/374.19e3f788.chunk.css +0 -12
- package/build/static/css/3834.f5d5a602.chunk.css +0 -2
- package/build/static/css/3900.cdfb90b7.chunk.css +0 -2
- package/build/static/css/4194.79deec85.chunk.css +0 -2
- package/build/static/css/4602.0cd507c4.chunk.css +0 -2
- package/build/static/css/4666.19be337a.chunk.css +0 -2
- package/build/static/css/5807.394a44b3.chunk.css +0 -2
- package/build/static/css/5965.7cd4be86.chunk.css +0 -2
- package/build/static/css/6756.2e5636e7.chunk.css +0 -2
- package/build/static/css/7227.32fda2eb.chunk.css +0 -2
- package/build/static/css/7277.f11f2389.chunk.css +0 -2
- package/build/static/js/1045.cbe65297.chunk.js +0 -2
- package/build/static/js/1554.70060f3b.chunk.js +0 -3
- package/build/static/js/1797.a5322bfc.chunk.js +0 -3
- package/build/static/js/1797.a5322bfc.chunk.js.map +0 -1
- package/build/static/js/2716.a1f6d720.chunk.js +0 -3
- package/build/static/js/3375.57b89437.chunk.js.map +0 -1
- package/build/static/js/374.f3ab13d1.chunk.js.map +0 -1
- package/build/static/js/3834.60580996.chunk.js +0 -2
- package/build/static/js/3856.7e1e170e.chunk.js +0 -2
- package/build/static/js/3900.5476f255.chunk.js +0 -2
- package/build/static/js/4194.5560c9c7.chunk.js +0 -2
- package/build/static/js/4194.5560c9c7.chunk.js.map +0 -1
- package/build/static/js/4602.4da35976.chunk.js +0 -2
- package/build/static/js/4602.4da35976.chunk.js.map +0 -1
- package/build/static/js/5371.f2970153.chunk.js +0 -2
- package/build/static/js/5965.987db1bf.chunk.js +0 -2
- package/build/static/js/5965.987db1bf.chunk.js.map +0 -1
- package/build/static/js/6213.4a765459.chunk.js +0 -2
- package/build/static/js/6213.4a765459.chunk.js.map +0 -1
- package/build/static/js/6900.683b756c.chunk.js +0 -2
- package/build/static/js/6900.683b756c.chunk.js.map +0 -1
- package/build/static/js/7227.37efe1a0.chunk.js +0 -3
- package/build/static/js/7253.951b8db9.chunk.js +0 -2
- package/build/static/js/7277.a131b1bc.chunk.js +0 -2
- package/build/static/js/7334.17c6a220.chunk.js +0 -2
- package/build/static/js/8503.ba53f994.chunk.js +0 -2
- package/build/static/js/main.ef08d24b.js +0 -2
- /package/build/static/js/{1153.7a57cdf9.chunk.js.LICENSE.txt → 1153.a0c5ddca.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1333.53f5ef76.chunk.js.LICENSE.txt → 1333.16688e57.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1554.70060f3b.chunk.js.LICENSE.txt → 1554.50233e73.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{2716.a1f6d720.chunk.js.LICENSE.txt → 2716.85d4f88d.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{4666.14624afe.chunk.js.LICENSE.txt → 4666.29a26832.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7227.37efe1a0.chunk.js.LICENSE.txt → 7227.580f36aa.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/3900.5476f255.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","common/utils/localStorage.js","components/Enum/index.js","components/Features/index.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/context.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","webpack://@kne-components/components-core/./src/common/components/TreeField/style.module.scss?bcd6","common/components/TreeField/index.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/TablePage.js","components/Layout/StateBarPage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__jnrpB\",\"scroller-inner\":\"style_scroller-inner__NJSE0__jnrpB\",\"is-moving\":\"style_is-moving__jGuy0__jnrpB\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","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","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__jnrpB\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__jnrpB\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__jnrpB\",\"filter-title\":\"style_filter-title__PlIpS__jnrpB\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__jnrpB\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__jnrpB\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__jnrpB\",\"filter-line\":\"style_filter-line__E+cRh__jnrpB\",\"clean-btn\":\"style_clean-btn__oSEvm__jnrpB\",\"filter-item\":\"style_filter-item__Q2ncE__jnrpB\",\"un-expand\":\"style_un-expand__4PFY8__jnrpB\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__jnrpB\",\"filter-label\":\"style_filter-label__qu26i__jnrpB\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__jnrpB\",\"option\":\"style_option__rd5Qo__jnrpB\",\"is-active\":\"style_is-active__OArQI__jnrpB\",\"is-visited\":\"style_is-visited__gZ5ni__jnrpB\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__jnrpB\",\"filter-item-label\":\"style_filter-item-label__C781J__jnrpB\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__jnrpB\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__jnrpB\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__jnrpB\",\"filter-tag\":\"style_filter-tag__dUGfu__jnrpB\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__jnrpB\",\"pop-util-content\":\"style_pop-util-content__bx5zP__jnrpB\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__jnrpB\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__jnrpB\",\"pop-util-text\":\"style_pop-util-text__pzeUy__jnrpB\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__jnrpB\",\"filter-item-text\":\"style_filter-item-text__MA8tU__jnrpB\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__jnrpB\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__jnrpB\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__jnrpB\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__jnrpB\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__jnrpB\",\"range-picker\":\"style_range-picker__c6ngq__jnrpB\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__jnrpB\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__jnrpB\",\"filter-advanced\":\"style_filter-advanced__4cyDy__jnrpB\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__jnrpB\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__jnrpB\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__jnrpB\"};","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 { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport { useState } from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport { Col, Row, Space } from \"antd\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({ list, children }) => {\n const { value, onChange } = useContext();\n return (\n <div className={style[\"filter-line\"]}>\n {list.map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value\n ? get(value.get(props?.name), \"value\")\n : props?.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: props?.name,\n label: props?.label,\n value,\n })\n : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (\n <ComponentItem\n {...Object.assign({}, item.props, {\n key: item.key || item.props.name || index,\n value: value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange,\n })}\n />\n );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({\n className,\n list,\n displayLine,\n label,\n extra,\n children,\n}) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {label || (\n <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />\n )}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (\n <Space\n size={4}\n className={classnames(\n style[\"filter-item\"],\n style[\"option\"]\n )}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>\n ) : null}\n </Line>\n ))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (\n <>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>\n )}\n </Line>\n ))}\n </div>\n </Space>\n </IntlProvider>\n );\n};\n\nFilterLines.defaultProps = {\n displayLine: 1,\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import { Provider } from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useMemo } from \"react\";\nimport { isNotEmpty } from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport { IntlProvider } from \"@components/Intl\";\n\nconst FilterOuter = ({ children, className, ...props }) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n <div className={classnames(style[\"filter\"], className)}>\n {children({ props, value, onChange })}\n </div>\n </Provider>\n </IntlProvider>\n );\n};\n\nFilterOuter.defaultProps = {\n defaultValue: [],\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = (props) => {\n return (\n <FilterOuter {...props}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nFilter.defaultProps = {\n defaultValue: [],\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import { useState } from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem =\n (WrappedComponent) =>\n ({ value, onChange, interceptor, label, ...props }) => {\n const [open, setOpen] = useState(false);\n return (\n <FilterItem label={label} open={open} active={isNotEmpty(value)}>\n <WrappedComponent\n allowClear={false}\n {...props}\n className={style[\"filter-item-inner\"]}\n value={\n typeof interceptor?.input === \"function\"\n ? interceptor.input(value)\n : value\n }\n onChange={\n typeof interceptor?.output === \"function\"\n ? (...args) => onChange(interceptor.output(...args))\n : onChange\n }\n valueType=\"all\"\n onOpenChange={setOpen}\n />\n </FilterItem>\n );\n };\n\nexport default withFieldItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"scroll-loader\":\"style_scroll-loader__Rcuti__jnrpB\",\"is-popup\":\"style_is-popup__pCRv2__jnrpB\"};","import SelectInnerInput from \"@common/components/SelectInnerInput\";\nimport { useMemo, useRef } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Space, Tree } from \"antd\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport get from \"lodash/get\";\nimport omit from \"lodash/omit\";\nimport memoize from \"lodash/memoize\";\n\nconst useSelectInnerContext = SelectInnerInput.useContext;\n\nconst TreeFieldInner = ({ value: selected, setValue: setSelect, size }) => {\n const { fetchApi, props } = useSelectInnerContext();\n const dataFormat = useRefCallback(props.dataFormat);\n const { single, isPopup, searchPlaceholder, ...others } = props;\n const fieldNamesRef = useRef(props.fieldNames);\n fieldNamesRef.current = props.fieldNames;\n const fetchData = fetchApi.data;\n const { treeData } = useMemo(\n () =>\n dataFormat(fetchData, {\n fieldNames: fieldNamesRef.current,\n }),\n [dataFormat, fetchData]\n );\n\n return (\n <Space direction=\"vertical\" size={16}>\n <SimpleBar\n className={classnames(style[\"scroll-loader\"], {\n [style[\"is-popup\"]]: props.isPopup,\n })}\n >\n <Tree\n {...omit(others, [\"value\", \"valueType\", \"children\", \"dataFormat\"])}\n size={size}\n checkable={!single}\n treeData={treeData}\n onCheck={setSelect}\n checkedKeys={selected}\n onSelect={\n single\n ? setSelect\n : (selectKeys) => {\n const selectKey = selectKeys[0];\n if (selectKey === void 0) {\n return;\n }\n setSelect((current) => {\n const newCurrent = current.slice(0);\n const index = newCurrent.indexOf(selectKey);\n if (index > -1) {\n newCurrent.splice(index, 1);\n } else {\n newCurrent.push(selectKey);\n }\n return newCurrent;\n });\n }\n }\n selectedKeys={single ? selected : undefined}\n />\n </SimpleBar>\n </Space>\n );\n};\n\nconst TreeField = ({ maxLength, dataFormat, ...props }) => {\n return (\n <SelectInnerInput\n {...props}\n dataFormat={(data) => {\n return dataFormat(data, { fieldNames: props.fieldNames });\n }}\n >\n {({ value, setValue }) => {\n return (\n <TreeFieldInner size={maxLength} value={value} setValue={setValue} />\n );\n }}\n </SelectInnerInput>\n );\n};\n\nTreeField.defaultProps = {\n searchPlaceholder: \"搜索\",\n maxLength: Number.MAX_VALUE,\n size: \"middle\",\n isPopup: true,\n checkStrictly: false,\n dataFormat: (data, { fieldNames }) => {\n const treeToList = memoize((nodeList, { fieldNames }) => {\n const list = [];\n const core = (nodeList) => {\n if (!(Array.isArray(nodeList) && nodeList.length > 0)) {\n return;\n }\n nodeList.forEach((node) => {\n const value = node[get(fieldNames, \"key\", \"key\")],\n label = node[get(fieldNames, \"title\", \"title\")],\n children = node[get(fieldNames, \"children\", \"children\")];\n list.push({ id: value, value, label });\n core(children);\n });\n };\n core(nodeList);\n return list;\n });\n\n return {\n treeData: data,\n list: treeToList(data, { fieldNames }),\n };\n },\n};\n\nexport default TreeField;\n","import { useState, useMemo } from \"react\";\nimport { Button, Col, Popover, Row } from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport { FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n onChange,\n children,\n}) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (\n <Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n overlayClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={\n <span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({ value: state, onChange: setState })}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>\n }\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label} />\n </span>\n </Popover>\n );\n};\n\nPopoverItem.defaultProps = {\n placeholder: \"请选择\",\n placement: \"bottomLeft\",\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input, InputNumber, Space } from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport { useIntl } from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({ id: \"over\" }, { count: range[0], unit });\n }\n if (isNumber(range[1])) {\n return formatMessage({ id: \"lessThan\" }, { count: range[1], unit });\n }\n })(range),\n value: [range[0] || null, range[1] || null],\n };\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Space.Compact>\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [target, get(value, \"value[1]\")],\n unit,\n formatMessage\n )\n );\n }}\n />\n <Input\n style={{\n width: 30,\n borderLeft: 0,\n borderRight: 0,\n pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [get(value, \"value[0]\"), target],\n unit,\n formatMessage\n )\n );\n }}\n />\n {unit && (\n <Input\n style={{\n width: 50,\n borderLeft: 0,\n }}\n value={unit}\n disabled\n />\n )}\n </Space.Compact>\n )}\n </PopoverItem>\n );\n};\n\nInputFilterItem.defaultProps = {\n onValidate: (value) => {\n const range = get(value, \"value\");\n return !(\n range &&\n isNumber(range[0]) &&\n isNumber(range[1]) &&\n range[1] < range[0]\n );\n },\n};\n\nexport default InputFilterItem;\n","import { DatePicker } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(\n ({ value, onChange, picker, ...props }) => {\n return (\n <DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n value &&\n onChange({\n label:\n picker !== \"date\"\n ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}`\n : value.format(format),\n value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />\n );\n }\n);\n\nDatePickerFilterItem.defaultProps = \"date\";\n\nexport default DatePickerFilterItem;\n","import { DatePicker, Flex } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, header, ...props }) => {\n return (\n <Flex vertical>\n {typeof header === \"function\" ? header({ value, onChange }) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n value={\n value &&\n Array.isArray(value.value) &&\n value.value.length === 2 &&\n value.value.map((item) => dayjs(item))\n }\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n onChange({\n label: value.map((item) => item.format(format)).join(\"~\"),\n value: value.map((item) => new Date(item.valueOf())),\n });\n }}\n />\n </Flex>\n );\n }\n);\n\nexport default DateRangePickerFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\nimport dayjs from \"dayjs\";\n\nconst TypeDateRangePickerFilterItem = ({\n label,\n value,\n onChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n onValidate={(item) => {\n const value = item?.value;\n return (\n value?.type && Array.isArray(value?.value) && value.value.length === 2\n );\n }}\n >\n {({ value, onChange }) => (\n <TypeDateRangePickerField\n {...props}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\")}\n onChange={(pickerValue) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n const value = pickerValue?.value || [];\n onChange({\n label: (() => {\n if (value[0] && !value[1]) {\n return `${dayjs(value[0]).format(format)}以后`;\n }\n if (!value[0] && value[1]) {\n return `${dayjs(value[1]).format(format)}以前`;\n }\n if (value[0] && value[1]) {\n return `${dayjs(value[0]).format(format)}~${dayjs(\n value[1]\n ).format(format)}`;\n }\n return \"\";\n })(),\n value: pickerValue,\n });\n }}\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default TypeDateRangePickerFilterItem;\n","import { FormattedMessage } from \"@components/Intl\";\nimport withFieldItem from \"../withFieldItem\";\nimport AdvancedSelectField, {\n UserField,\n} from \"@common/components/AdvancedSelectField\";\nimport SuperSelectField, {\n SuperSelectTableListField,\n SuperSelectUserField,\n} from \"@common/components/SuperSelectField\";\nimport FunctionSelectField from \"@common/components/FunctionSelectField\";\nimport AddressSelectField from \"@common/components/AddressSelectField\";\nimport IndustrySelectField from \"@common/components/IndustrySelectField\";\nimport CascaderField from \"@common/components/CascaderField\";\nimport TreeField from \"@common/components/TreeField\";\nimport InputFilterItemField from \"./InputFilterItem\";\nimport NumberRangeFilterItemField from \"./NumberRangeFilterItem\";\n\nconst withInputDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{ label }}\n >\n {(text) => {\n return (\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n );\n }}\n </FormattedMessage>\n );\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(\n SuperSelectTableListField\n);\nexport const SuperSelectUserFilterItem = withFieldItem(SuperSelectUserField);\nexport const UserFilterItem = withFieldItem(UserField);\nexport const FunctionSelectFilterItem = withFieldItem(FunctionSelectField);\nexport const IndustrySelectFilterItem = withFieldItem(IndustrySelectField);\n\nexport const CityFilterItem = withFieldItem(AddressSelectField);\n\nexport const CascaderFilterItem = withFieldItem(CascaderField);\n\nexport const TreeFilterItem = withFieldItem(TreeField);\nexport const InputFilterItem =\n withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(\n NumberRangeFilterItemField\n);\n\nexport { default as DatePickerFilterItem } from \"./DatePickerFilterItem\";\nexport { default as DateRangePickerFilterItem } from \"./DateRangePickerFilterItem\";\nexport { default as TypeDateRangePickerFilterItem } from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import { SearchInput as SearchInputField } from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\n\nconst SearchInput = withFilterValue(({ label, onChange, value, ...props }) => {\n return (\n <SearchInputField\n {...props}\n placeholder={`请输入${label}`}\n value={value?.value || \"\"}\n onSearch={(value) => {\n onChange({ label: value, value });\n }}\n />\n );\n});\n\nexport default SearchInput;\n","import { App, Tag } from \"antd\";\nimport AddressSelectField, {\n getLabelForLocal,\n withAddressApi,\n} from \"@common/components/AddressSelectField\";\nimport { FormattedMessage, useIntl } from \"@components/Intl\";\nimport { usePreset } from \"@components/Global\";\nimport { useMemo } from \"react\";\nimport style from \"../../style.module.scss\";\n\nconst { CheckableTag } = Tag;\n\nconst CityFilterItemInner = ({\n value,\n onChange,\n single,\n maxLength,\n addressApi,\n ...props\n}) => {\n const { message } = App.useApp();\n const { locale } = usePreset();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const { code } = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: code, label: name } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: code, label: name })\n : (() => {\n const index = newValue.findIndex(\n ({ value }) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({ code }) =>\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({ value }) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const { city } = addressApi.getCity(value);\n return { value: city?.code, label: city?.name };\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nCityFilterItemInner.defaultProps = {\n single: false,\n maxLength: 5,\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import { Tag, App } from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport { useIntl } from \"@components/Intl\";\n\nconst { CheckableTag } = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single,\n maxLength,\n items,\n custom,\n}) => {\n const { message } = App.useApp();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <>\n {items.map(({ label, value: itemValue }) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({ value }) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: itemValue, label } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: itemValue, label })\n : (() => {\n const index = newValue.find(({ value }) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nListFilterItem.defaultProps = {\n single: false,\n maxLength: 5,\n items: [],\n};\n\nexport default ListFilterItem;\n","import { Input, Space, Button } from \"antd\";\nimport { useState, useEffect, useRef } from \"react\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport { useIntl } from \"@components/Intl\";\n\nconst InputFilterItem = ({ value, label, onChange, ...props }) => {\n const propsValue = value?.value;\n const [inputValue, setInputValue] = useState(propsValue || \"\");\n const [active, setActive] = useState(false);\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const searchHandler = () => {\n onChange(inputValue ? { label: inputValue, value: inputValue } : null);\n };\n const ref = useSimulationBlur(() => {\n setActive(false);\n searchHandler();\n });\n const inputValueRef = useRef(\"\");\n inputValueRef.current = inputValue;\n\n useEffect(() => {\n if (propsValue !== inputValueRef.current) {\n setInputValue(propsValue);\n }\n }, [propsValue]);\n return (\n <span ref={ref}>\n <Space.Compact>\n <Input\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n {...props}\n size=\"small\"\n value={inputValue}\n onFocus={() => {\n setActive(true);\n }}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n onPressEnter={searchHandler}\n />\n {active && (\n <Button size=\"small\" type=\"primary\" onClick={searchHandler}>\n {formatMessage({ id: \"search\" })}\n </Button>\n )}\n </Space.Compact>\n </span>\n );\n};\n\nexport default InputFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\n","import FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport { useContext as useFilter } from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nexport default Filter;\nexport { fields, getFilterValue, useFilter, withFilterValue, SearchInput };\nexport { default as AdvancedFilter, advancedFields } from \"./AdvancedFilter\";\nexport { default as FilterValueDisplay } from \"./FilterValueDisplay\";\nexport { default as FilterItem } from \"./FilterItem\";\nexport { default as FilterLines } from \"./FilterLines\";\nexport { default as PopoverItem } from \"./PopoverItem\";\nexport { default as withFieldItem } from \"./withFieldItem\";\nexport { default as FilterItemContainer } from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__jnrpB\",\"inner\":\"style_inner__bMKeU__jnrpB\",\"content\":\"style_content__xTfWZ__jnrpB\",\"link\":\"style_link__93j7O__jnrpB\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n menuFixed: true,\n menuCloseButton: true,\n backgroundColor: null,\n header: null,\n headerHeight: 0,\n headerFixed: true,\n headerInfo: null,\n backUrl: null,\n title: null,\n titleExtra: null,\n titleLeftExtra: null,\n noMargin: false,\n noPadding: false,\n optionFooterHeight: 0,\n option: null,\n optionWidth: \"400px\",\n optionNoPadding: false,\n optionFixed: true,\n optionFooter: null,\n};\n\nexport const context = createContext({});\n\nexport const { Provider, Consumer } = context;\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport default context;\n","// extracted by mini-css-extract-plugin\nexport default {\"layout\":\"style_layout__k+lxR__jnrpB\",\"page-content\":\"style_page-content__4XeN8__jnrpB\",\"page-main\":\"style_page-main__P0yEF__jnrpB\",\"page-main-content\":\"style_page-main-content__1OVPN__jnrpB\",\"table-page\":\"style_table-page__JkbLf__jnrpB\",\"helper-guide\":\"style_helper-guide__vzw4z__jnrpB\",\"page-outer\":\"style_page-outer__2a6iH__jnrpB\",\"no-margin\":\"style_no-margin__S6caT__jnrpB\",\"page-menu\":\"style_page-menu__CZSa9__jnrpB\",\"closed\":\"style_closed__hmnft__jnrpB\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__jnrpB\",\"page-menu-main\":\"style_page-menu-main__OXg2M__jnrpB\",\"page-option-main\":\"style_page-option-main__LyfT3__jnrpB\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__jnrpB\",\"page-option\":\"style_page-option__diS2S__jnrpB\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__jnrpB\",\"page-option-footer\":\"style_page-option-footer__d7xE0__jnrpB\",\"fixed-container\":\"style_fixed-container__1VZwY__jnrpB\",\"is-fixed\":\"style_is-fixed__1aQhp__jnrpB\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__jnrpB\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__jnrpB\",\"page-title\":\"style_page-title__zw-Fd__jnrpB\",\"page-title-text\":\"style_page-title-text__Rj4RC__jnrpB\",\"no-padding\":\"style_no-padding__V7Dwy__jnrpB\",\"page-header\":\"style_page-header__a813p__jnrpB\",\"page-header-info\":\"style_page-header-info__cMrZR__jnrpB\",\"layout-menu\":\"style_layout-menu__yiab0__jnrpB\",\"sub-menu\":\"style_sub-menu__dyqK7__jnrpB\",\"no-collapsed\":\"style_no-collapsed__76h8W__jnrpB\",\"has-not-children\":\"style_has-not-children__fnjRK__jnrpB\",\"table-page-top\":\"style_table-page-top__bt1l9__jnrpB\",\"error-component\":\"style_error-component__HvghB__jnrpB\",\"state-bar-page\":\"style_state-bar-page__+aUM4__jnrpB\",\"back-icon\":\"style_back-icon__79v2G__jnrpB\"};","import style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst FixedContainer = ({ className, isFixed, children }) => {\n if (isFixed) {\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"],\n {\n [style[\"is-fixed\"]]: isFixed,\n }\n )}\n >\n {children}\n </div>\n );\n }\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"]\n )}\n >\n {children}\n </div>\n );\n};\n\nexport default FixedContainer;\n","import { Button, Col } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"../style.module.scss\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport Icon from \"@components/Icon\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport { useLocation } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport isNotEmpty from \"@utils/isNotEmpty\";\nimport localStorage from \"@utils/localStorage\";\nimport { useMemo } from \"react\";\n\nconst pageMenuOpenKey = \"CORE_PAGE_MENU_OPEN_KEY\";\n\nexport const useMenuOpen = () => {\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n return useMemo(() => {\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n return isNotEmpty(get(pageResult, pathModuleName))\n ? get(pageResult, pathModuleName)\n : true;\n }, [pathModuleName]);\n};\n\nconst Menu = () => {\n const { pageProps, setPageProps } = useContext();\n const { menu, menuOpen, menuWidth, menuFixed, menuCloseButton } = pageProps;\n\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n\n return menu ? (\n <Col\n className={classnames(style[\"page-menu\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{ \"--width\": menuWidth }}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar className={style[\"page-menu-main\"]}>{menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], {\n [style[\"is-fixed\"]]: menuFixed,\n })}\n isFixed={menuFixed}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n icon={\n menuOpen ? (\n <Icon type=\"icon-arrow-bold-left\" />\n ) : (\n <Icon type=\"icon-arrow-bold-right\" />\n )\n }\n onClick={() => {\n setPageProps({ menuOpen: !pageProps.menuOpen });\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n pageResult[pathModuleName] = !pageProps.menuOpen;\n localStorage.setItem(pageMenuOpenKey, pageResult);\n setPageProps({ menuOpen: !pageProps.menuOpen });\n }}\n />\n </FixedContainer>\n ) : null}\n </Col>\n ) : null;\n};\n\nexport default Menu;\n","import { defaultProps, useContext } from \"../context\";\nimport isEqual from \"lodash/isEqual\";\nimport { useEffect, useRef } from \"react\";\nimport { Result } from \"antd\";\nimport Features from \"@components/Features\";\nimport { useMenuOpen } from \"./Menu\";\n\nconst PageInner = ({ children, isPass, ...props }) => {\n const { setPageProps } = useContext();\n const propsRef = useRef(null);\n const localMenuOpen = useMenuOpen();\n const localMenuOpenRef = useRef(localMenuOpen);\n localMenuOpenRef.current = localMenuOpen;\n useEffect(() => {\n if (!isEqual(propsRef.current, props)) {\n propsRef.current = props;\n /**\n * 解决两个页面都用header时,menuButton产生的跳动问题:如果下一个页面有header,\n * headerHeight由其header组件自己更新,不再统一重置为0。\n * optionFooter同理\n * */\n const targetProps = Object.assign(\n {},\n defaultProps,\n props,\n typeof localMenuOpenRef.current === \"boolean\"\n ? { menuOpen: localMenuOpenRef.current }\n : {}\n );\n if (targetProps.header && targetProps.headerHeight === 0) {\n delete targetProps[\"headerHeight\"];\n }\n if (targetProps.optionFooter && targetProps.optionFooterHeight === 0) {\n delete targetProps[\"optionFooter\"];\n }\n setPageProps(targetProps);\n }\n }, [props, setPageProps]);\n\n if (isPass === false) {\n return <Result status=\"403\" subTitle=\"暂未开放此功能\" />;\n }\n\n return children;\n};\n\nconst Page = ({ featureId, name, openFeatures, ...props }) => {\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({ isPass }) => <PageInner {...props} key={name} isPass={isPass} />}\n </Features>\n );\n }\n return <PageInner {...props} key={name} />;\n};\n\nPage.defaultProps = defaultProps;\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import { Col, Row, Space } from \"antd\";\nimport { useNavigate } from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({ title, filter, titleExtra, titleLeftExtra, backUrl }) => {\n const navigator = useNavigate();\n if (filter) {\n return (\n <Filter className={style[\"page-title\"]} {...filter} extra={titleExtra} />\n );\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (\n <Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col>\n <Space>\n {title ? (\n <div className={style[\"page-title-text\"]}>\n {backUrl ? (\n <Space>\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\" />\n </span>\n <span>{title}</span>\n </Space>\n ) : (\n title\n )}\n </div>\n ) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Space>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>\n );\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import { Alert, Button, Col, Layout as AntdLayout, Row } from \"antd\";\nimport { useCallback, useEffect, useState } from \"react\";\nimport { defaultProps, Provider } from \"./context\";\nimport Navigation, { navigationHeight } from \"@components/Navigation\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport ReactErrorBoundary from \"@kne/react-error-boundary\";\nimport { Header, HeaderInfo, Menu, Option, PageTitle } from \"./Page\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport { usePermissions } from \"../Permissions\";\n\nconst { Content } = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nconst Layout = ({ children, theme, navigation }) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const { permissions } = usePermissions();\n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n\n return (\n <AntdLayout\n className={style[\"layout\"]}\n style={Object.assign(\n {},\n {\n \"--nav-height\": navigationHeight + \"px\",\n \"--nav-height-base\": \"var(--nav-height)\",\n \"--scroll-left\": -scrollLeft + \"px\",\n },\n theme\n )}\n >\n {navigation && (\n <ErrorBoundary>\n <Navigation\n permissions={permissions}\n {...navigation}\n onChange={(path) => {\n navigation?.onChange && navigation.onChange(path);\n }}\n />\n </ErrorBoundary>\n )}\n <ErrorBoundary>\n <Content className={style[\"layout-content-wrap\"]}>\n <Provider value={{ pageProps, setPageProps }}>\n <ErrorBoundary>\n <Header />\n </ErrorBoundary>\n <ErrorBoundary>\n <HeaderInfo />\n </ErrorBoundary>\n <ErrorBoundary>\n <Row\n className={classnames(pageProps.className, style[\"page-outer\"])}\n wrap={false}\n style={{\n \"--nav-height\": `calc(${\n pageProps.headerFixed ? pageProps.headerHeight : 0\n }px + var(--nav-height-base))`,\n \"--nav-only-height\": `var(--nav-height-base)`,\n }}\n >\n <ErrorBoundary>\n <Menu />\n </ErrorBoundary>\n <Col\n className={classnames(style[\"page-content\"], {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })}\n flex={1}\n style={{ \"--background-color\": pageProps.backgroundColor }}\n >\n <div className={style[\"page-main\"]}>\n <ErrorBoundary>\n <PageTitle\n title={pageProps.title}\n backUrl={pageProps.backUrl}\n filter={pageProps.filter}\n titleExtra={pageProps.titleExtra}\n titleLeftExtra={pageProps.titleLeftExtra}\n />\n </ErrorBoundary>\n <div\n className={classnames(style[\"page-main-content\"], {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={style[\"helper-guide-page\"]}\n name={pageProps.helperGuideName}\n />\n )}\n {children}\n </ErrorBoundary>\n </div>\n </div>\n </Col>\n <ErrorBoundary>\n <Option />\n </ErrorBoundary>\n </Row>\n </ErrorBoundary>\n </Provider>\n </Content>\n </ErrorBoundary>\n </AntdLayout>\n );\n};\n\nLayout.defaultProps = {\n navigation: {},\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__jnrpB\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__jnrpB\",\"no-start-icon\":\"style_no-start-icon__LnC1S__jnrpB\",\"has-children\":\"style_has-children__m9tce__jnrpB\",\"has-children-node\":\"style_has-children-node__2bhEB__jnrpB\",\"is-root\":\"style_is-root__4hhOc__jnrpB\",\"title\":\"style_title__+Hcar__jnrpB\",\"active\":\"style_active__WU49K__jnrpB\",\"no-collapse\":\"style_no-collapse__aIZBM__jnrpB\",\"title-content\":\"style_title-content__cQXpK__jnrpB\",\"loading\":\"style_loading__1pU4P__jnrpB\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Spin } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport { useCallback, useEffect, useMemo } from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport { useFetch } from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {},\n nodeMapping = [];\n const traversal = (children, options) => {\n const { parentKey, depth } = Object.assign(\n {\n parentKey: \"root\",\n depth: 0,\n paths: [],\n },\n options\n );\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${\n item.key ||\n `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`\n }`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey,\n depth: depth + 1,\n });\n childrenKeys[currentKey] &&\n childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey,\n parentKey,\n depth,\n children: children,\n originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return { items: traversal(items), childrenKeys, nodeMapping };\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren =\n (Array.isArray(children) && children.length > 0) || fetchOptions;\n const { refresh, isLoading } = useFetch(\n Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions,\n onRequestSuccess: (data) => {\n onLoad(data);\n },\n })\n );\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (\n <div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\" />\n </div>\n );\n }\n };\n return (\n <Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && <Icon type={iconType} />}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (\n <Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />\n )}\n </div>\n {renderChildren()}\n </div>\n </Permissions>\n );\n};\n\nconst Menu = ({ className, allowCollapsed, pathMatch, ...props }) => {\n const { pathname, search } = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\",\n defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue(props, {\n defaultValue: \"defaultItems\",\n value: \"items\",\n onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems,\n defaultOpenKeys,\n links,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems,\n childrenKeys,\n nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false,\n hasChildren = false;\n const links = [],\n defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType) {\n hasStartIcon = true;\n }\n node.path && links.push({ path: node.path, key });\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys,\n links,\n items: targetItems,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({ path }) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, { pathname, search });\n }\n return (\n ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) ||\n ensureSlash(pathname + search) === ensureSlash(path)\n );\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1679367216639,\n className: \"icon\",\n viewBox: \"0 0 1030 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 1696,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 201.171875,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.479711 385.587015v293.958522l258.791705 146.528403 258.791704-146.528403V385.587015l-251.127142-145.62669L252.479711 385.587015z\",\n fill: \"#FFFFFF\",\n opacity: 0.1,\n \"p-id\": 1697\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M778.629396 405.875564A20.739405 20.739405 0 0 1 766.456267 405.875564l-39.675383-21.641119a22.091975 22.091975 0 0 1 21.190261-39.224526l39.675383 21.190261a22.542831 22.542831 0 0 1-10.820559 42.380523z m-518.485122-6.76285a22.542831 22.542831 0 0 1-19.837691-12.173129 22.091975 22.091975 0 0 1 9.918845-30.207394l40.12624-20.739405a22.993688 22.993688 0 0 1 30.207394 9.918846 22.542831 22.542831 0 0 1-9.918846 30.207394L270.513977 396.858431a20.739405 20.739405 0 0 1-10.369703 2.254283z m399.909829-57.258792a22.542831 22.542831 0 0 1-10.820559-2.705139l-39.675383-21.190262a22.993688 22.993688 0 0 1-9.017133-30.65825 22.091975 22.091975 0 0 1 30.207394-9.017133l39.675383 21.190261a22.542831 22.542831 0 0 1-10.369702 42.380523z m-279.531109-4.057709a22.542831 22.542831 0 0 1-9.918846-45.085663l40.12624-20.288548a22.542831 22.542831 0 0 1 30.207394 9.467989 22.993688 22.993688 0 0 1-9.918846 33.814247l-40.12624 20.288548a20.739405 20.739405 0 0 1-10.369702 1.803427zM541.027953 277.381425a19.386835 19.386835 0 0 1-10.820559-2.70514L519.837692 270.618575l-8.566276 4.508567a22.542831 22.542831 0 0 1-20.288549-40.577097l18.935979-9.017132a23.895401 23.895401 0 0 1 20.739405 0l21.190261 11.722272a22.091975 22.091975 0 0 1 9.017133 30.207394 22.091975 22.091975 0 0 1-19.837692 9.918846z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1698\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1002.70514 289.554554a24.346258 24.346258 0 0 1-9.918846 0L513.074842 47.895401 33.814247 287.300271a22.542831 22.542831 0 0 1-30.207394-10.369703 22.993688 22.993688 0 0 1 9.918846-30.207394L503.155996 2.358882a22.993688 22.993688 0 0 1 20.288549 0l489.179441 244.364292a22.542831 22.542831 0 0 1-9.918846 45.085663z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1699\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.085663 762.052299a22.542831 22.542831 0 0 1-9.918846-40.577096l81.154193-39.675383A22.542831 22.542831 0 0 1 135.256988 721.475203l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.017132 0.901713z m889.540126-14.427412a24.346258 24.346258 0 0 1-9.918846 0l-80.703336-40.577096a22.542831 22.542831 0 0 1-10.369703-30.207394 22.091975 22.091975 0 0 1 30.207394-9.918846l80.703337 40.12624a22.542831 22.542831 0 0 1-9.918846 42.831379zM206.943192 683.15239a23.444545 23.444545 0 0 1-20.288548-12.623986 22.993688 22.993688 0 0 1 10.369702-30.207394l81.154193-39.675383a22.993688 22.993688 0 0 1 30.207394 10.369702 22.542831 22.542831 0 0 1-10.369702 30.207394l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.918846 2.254284z m566.275924-16.230839a26.600541 26.600541 0 0 1-9.918845 0l-80.703337-40.577097a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918845l80.703337 40.126239a22.993688 22.993688 0 0 1 9.918846 30.207395 22.542831 22.542831 0 0 1-20.288549 10.369702z m-405.770965-62.669071a22.091975 22.091975 0 0 1-20.288548-12.623986 22.542831 22.542831 0 0 1 13.525699-30.207394l81.154193-39.224527a22.542831 22.542831 0 0 1 30.207394 10.369703 22.091975 22.091975 0 0 1-10.369702 29.756537l-81.154193 39.675384a26.600541 26.600541 0 0 1-11.271416 2.254283z m242.560866-18.034265a19.837692 19.837692 0 0 1-9.918846-2.254284l-80.703336-40.577096a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918846l80.703337 40.12624a23.444545 23.444545 0 0 1 9.918845 30.658251 22.542831 22.542831 0 0 1-18.485121 12.173129z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1700\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.173129 1024a24.346258 24.346258 0 0 1-9.918846-2.254283L12.623986 783.242561a22.993688 22.993688 0 0 1-12.623986-20.288548V273.774572a23.444545 23.444545 0 0 1 10.820559-19.386835 21.641118 21.641118 0 0 1 21.641118 0l479.711452 238.954012L991.884581 253.486023a21.641118 21.641118 0 0 1 21.641118 0 23.444545 23.444545 0 0 1 10.820559 19.386835v490.081155a22.993688 22.993688 0 0 1-12.623986 20.288548l-490.081154 238.503156a22.542831 22.542831 0 0 1-9.467989 2.254283zM45.085663 748.526601l467.087466 225.428313 467.087466-225.428313V310.293959l-454.914337 225.428313a22.542831 22.542831 0 0 1-22.091975 0L45.085663 310.293959z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1701\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M511.722272 1020.393147a22.542831 22.542831 0 0 1-22.542831-22.542831V526.254283a22.542831 22.542831 0 0 1 45.085663 0v471.596033a22.542831 22.542831 0 0 1-22.542832 22.542831z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1702\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.623986 841.853922a18.935978 18.935978 0 0 1-9.918846-2.254283l-266.005411-128.043282a22.091975 22.091975 0 0 1-11.271415-20.288548V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832V676.38954l243.913435 117.222723 243.462579-117.222723V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832v307.48422a22.542831 22.542831 0 0 1-12.623986 20.288548l-266.00541 128.043282a19.837692 19.837692 0 0 1-11.722272 2.254283z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1703\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgFavicon);\nexport default __webpack_public_path__ + \"static/media/favicon.477a5bb996fd5b367fe0dddc29f67824.svg\";\nexport { ForwardRef as ReactComponent };","const importMessages = (locale) => {\n return ({\n 'en-US': () => import('./en-US'), 'zh-CN': () => import('./zh-CN')\n })[locale]();\n};\n\nexport default importMessages;","// extracted by mini-css-extract-plugin\nexport default {\"navigation-wrap\":\"style_navigation-wrap__VF8x2__jnrpB\",\"navigation\":\"style_navigation__60RrS__jnrpB\",\"is-fixed\":\"style_is-fixed__kHFWj__jnrpB\",\"navigation-logo\":\"style_navigation-logo__q9qHu__jnrpB\",\"logo\":\"style_logo__lB9RC__jnrpB\",\"navigation-list\":\"style_navigation-list__EYtkg__jnrpB\",\"navigation-options\":\"style_navigation-options__0BdJU__jnrpB\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__jnrpB\",\"more-icon\":\"style_more-icon__gNMnt__jnrpB\"};","import { Col, Layout, Menu, Row, Space } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport logo from \"./favicon.svg\";\nimport Image from \"@components/Image\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst { Header } = Layout;\n\nexport const navigationHeight = 48;\n\nconst SetTitle = ({ name, mapping, defaultTitle }) => {\n const propsRef = useRef({\n mapping,\n defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({ onReady }) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = ({\n permissions,\n list,\n headerLogo,\n rightOptions,\n isFixed,\n showIndex,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base,\n onChange,\n className,\n}) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({ key, ...others }) => [key, others]));\n }, [list]);\n const navigate = useNavigate();\n const location = useLocation();\n const navigationRef = useRef();\n const resizeObserverRef = useRef(null);\n const [nameLabel, setNameLabel] = useState(\"更多\");\n const [ready, setReady] = useState(false);\n const pathModuleName = location.pathname\n .replace(new RegExp(`^${base}`), \"\")\n .split(\"/\")[1];\n const name = pathModuleName\n ? get(\n Array.from(mapping.entries()).find(([name, { path, permission }]) => {\n const _path =\n typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }),\n \"[0]\"\n )\n : \"home\";\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom =\n navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel =\n mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(\n navigationRef.current,\n mutationObserverInitConfig\n );\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex\n ? {\n label: indexLabel || (\n <FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\" />\n ),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n }\n : false;\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (\n <SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\n />\n )}\n </FormattedMessage>\n <div className={classnames(style[\"navigation-wrap\"], className)}>\n <Header\n className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}\n >\n <Row justify=\"space-around\" wrap={false}>\n <Col\n className={classnames(\n \"navigation-logo\",\n style[\"navigation-logo\"]\n )}\n >\n <Image\n className={classnames(style[\"logo\"])}\n src={logo}\n alt=\"logo\"\n {...headerLogo}\n />\n </Col>\n <Col\n ref={navigationRef}\n flex={1}\n className={classnames(\n \"navigation-list\",\n style[\"navigation-list\"]\n )}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\" />\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, { permission }]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, { title, path, permission }]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__jnrpB\"};","import { createElement } from \"react\";\nimport { Result, Tooltip } from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\n\nexport const computedIsPass = ({ permissions, request }) => {\n return Array.isArray(request) && request.length > 0\n ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1)\n : true;\n};\n\nexport const usePermissions = () => {\n const { global } = useGlobalContext();\n const { permissions, permissionsPath } = usePreset();\n return {\n permissions:\n global.permissions ||\n permissions ||\n (permissionsPath && get(global, permissionsPath)) ||\n [],\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__jnrpB\",\"has-children\":\"style_has-children__oQDqU__jnrpB\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__jnrpB\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__jnrpB\",\"tab-step-control\":\"style_tab-step-control__EQaCl__jnrpB\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__jnrpB\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__jnrpB\",\"state-result-tag\":\"style_state-result-tag__CssDz__jnrpB\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__jnrpB\",\"event-tag\":\"style_event-tag__cg6SE__jnrpB\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__jnrpB\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__jnrpB\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__jnrpB\",\"show-bg\":\"style_show-bg__OcL+R__jnrpB\",\"tag-text\":\"style_tag-text__JHCt+__jnrpB\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__jnrpB\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\",\n props?.onClick ? style[\"event-tag\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__jnrpB\",\"is-resize\":\"style_is-resize__ut6RW__jnrpB\",\"is-moving\":\"style_is-moving__BJ9wR__jnrpB\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__jnrpB\",\"is-computed\":\"style_is-computed__B9rIF__jnrpB\",\"options-column\":\"style_options-column__vsPTr__jnrpB\",\"options-btn\":\"style_options-btn__U3uoy__jnrpB\",\"tooltip\":\"style_tooltip__vJlkv__jnrpB\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__jnrpB\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__jnrpB\",\"columns-control\":\"style_columns-control__5-5ZF__jnrpB\",\"columns-control-content\":\"style_columns-control-content__MoeUI__jnrpB\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__jnrpB\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__jnrpB\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__jnrpB\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__jnrpB\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__jnrpB\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__jnrpB\",\"is-drag\":\"style_is-drag__U68aw__jnrpB\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__jnrpB\",\"sortable-drag\":\"style_sortable-drag__K5hWd__jnrpB\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__jnrpB\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__jnrpB\",\"sort-btn\":\"style_sort-btn__KvNLr__jnrpB\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__jnrpB\",\"sort-icon\":\"style_sort-icon__dB85I__jnrpB\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__jnrpB\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__jnrpB\",\"tag\":\"columns_tag__bQZLG__jnrpB\",\"avatar\":\"columns_avatar__SLPI+__jnrpB\",\"hover\":\"columns_hover__oAwHg__jnrpB\",\"primary\":\"columns_primary__6KtaA__jnrpB\",\"loading\":\"columns_loading__gtBay__jnrpB\",\"options\":\"columns_options__WvDZD__jnrpB\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n 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\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n 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 =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n 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,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","_jsx","className","style","left","height","children","classnames","innerLeft","onMouseDown","preventDefault","body","Scroller","_ref2","scroller","getScrollTarget","setScrollerProps","ref","getScrollEl","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","props","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","_jsxs","x","defaultProps","querySelector","getItem","key","target","localStorage","dataType","value","JSON","parse","Number","Boolean","setItem","stringify","preset","base","transform","description","result","treeTraverse","data","func","pId","isArray","omit","parentId","id","parseProfile","memoize","profile","profileMap","output","Map","set","features","keys","filter","get","dependencies","length","some","depId","computedIsPaas","currentId","indexOf","close","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","usePreset","systemId","type","useContext","console","log","isPass","feature","options","locale","en-US","zh-CN","useReactContext","Line","list","onChange","map","index","name","label","ComponentItem","FilterLines","displayLine","extra","hasMore","isExpand","setIsExpand","IntlProvider","importMessages","moduleName","Space","align","size","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","slice","onClick","Icon","_Fragment","filterValue","extraExpand","StateTag","filterName","text","join","closable","onClose","newValue","splice","Button","FilterOuter","valueBase","useControlValue","useMemo","isNotEmpty","newFilterValue","clone","delete","values","defaultValue","Filter","others","FilterValueDisplay","open","active","WrappedComponent","interceptor","setOpen","FilterItem","allowClear","input","arguments","valueType","onOpenChange","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","dataFormat","single","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","direction","SimpleBar","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","push","selectedKeys","undefined","TreeField","maxLength","_ref3","MAX_VALUE","checkStrictly","_ref4","treeToList","nodeList","_ref5","core","node","PopoverItem","onValidate","overlayClassName","placement","state","setState","disabled","Popover","trigger","content","stopPropagation","gutter","placeholder","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","InputFilterItem","useIntl","Compact","InputNumber","borderLeft","borderRight","pointerEvents","DatePickerFilterItem","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","header","Flex","vertical","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","onSearch","CheckableTag","Tag","CityFilterItemInner","addressApi","message","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","checked","find","findIndex","error","_ref6","getCityValue","getCity","withAddressApi","ListFilterItem","items","custom","itemValue","isEqual","fields","propsValue","inputValue","setInputValue","setActive","searchHandler","useSimulationBlur","inputValueRef","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","more","MoreFilterLines","advancedFields","getFilterValue","useFilter","SearchInput","Enum","colorful","url","Typography","Link","href","menu","menuOpen","menuWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","title","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","Consumer","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","useLocation","pathname","split","FixedContainer","icon","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","targetProps","Result","status","subTitle","Page","featureId","openFeatures","Features","_createElement","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","callback","MutationObserver","subtree","childList","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","navigation","setScrollLeft","_setPageProps","permissions","usePermissions","useCallback","handlerScroll","Navigation","path","PageTitle","helperGuideName","HelperGuide","Permissions","forwardRef","page","topArea","tableData","setTableData","PermissionsPage","Table","onRequestSuccess","stateBar","StateBar","MenuItem","iconType","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","refresh","isLoading","useFetch","auto","Spin","pathMatch","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","newOpenKeys","defaultItems","SetTitle","mapping","defaultTitle","MenuReady","onReady","ready","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","setTimeout","Image","src","logo","alt","mode","_ref7","_path","computedIsPass","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","Tooltip","createElement","stateOption","isInner","Tabs","animated","tab","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","info","other","showBorder","showBackground","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","background","border","ButtonGroup","hidden","ellipsis","Text","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","columnTypes","date","render","isValid","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","serialNumberShort","user","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","force","_ref11","avatar","_ref12","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","onConfirm","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","LoadingButton","async","defaultActiveKey","ghost","bordered","List","Item","Checkbox","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","prefix","dataSource","renderItem","storageKey","getDataApi","loader","setDataFunc","TableConfig","setConfig","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","startTransition","send","cache","isLocal","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","targetHeader","otherHeader","currentGroup","startIndex","groupColumn","hasGroupHeader","sortArrayToMap","setSort","mapSort","setMapSort","newSort","targetValue","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_len","args","_key","pageData","FeaturesColumnsConfig","TablePageInner","withFetch","requestParams","fetchProps","isComplete","setData","loadMore","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","paramsType","currentName","pageSize","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","totalCount","pageSizeKey","toUpperCase","setPageSize","params","fetchParams"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/3900.4423cc1a.chunk.js","mappings":"sOACA,SAAgB,SAAW,+BAA+B,iBAAiB,qCAAqC,YAAY,iC,eCK5H,MAAMA,EAAYC,IAAmD,IAAlD,SAAEC,EAAQ,aAAEC,KAAiBC,GAAeH,EAC7D,MAAMI,GAAWC,EAAAA,EAAAA,QAAO,IACjBC,EAAQC,IAAaC,EAAAA,EAAAA,WAAS,GAC/BC,GAAYJ,EAAAA,EAAAA,QAAOC,GACzBG,EAAUC,QAAUJ,EACpB,MAAMK,GAAcN,EAAAA,EAAAA,QAAOJ,GAC3BU,EAAYD,QAAUT,EACtB,MAAMW,GAAWP,EAAAA,EAAAA,QAAO,GAmBxB,OAlBAO,EAASF,QAAUP,EAAcU,MAAQV,EAAcW,YAEvDC,EAAAA,EAAAA,YAAU,KACR,MAAMC,EAAeC,IACnBR,EAAUC,SACRC,EAAYD,QAAQE,EAASF,SAAWO,EAAEC,QAAUd,EAASM,UAC/DN,EAASM,QAAUO,EAAEC,OAAO,EAExBC,EAAYA,KAChBZ,GAAU,EAAM,EAIlB,OAFAa,SAASC,iBAAiB,YAAaL,GAAa,GACpDI,SAASC,iBAAiB,UAAWF,GAAW,GACzC,KACLC,SAASE,oBAAoB,YAAaN,GAAa,GACvDI,SAASE,oBAAoB,UAAWH,GAAW,EAAK,CACzD,GACA,KACII,EAAAA,EAAAA,cACLpB,EAAcqB,aACZC,EAAAA,EAAAA,KAAA,OACEC,UAAWC,EAAgB,SAC3BA,MAAO,CACLC,KAAMzB,EAAcyB,KACpBf,MAAOV,EAAcU,MACrBgB,OAAQ,IACRC,UAEFL,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IAAWJ,EAAM,kBAAmB,CAC7C,CAACA,EAAM,cAAerB,IAExBqB,MAAO,CACLd,MAAOV,EAAcW,WACrBc,KAAMzB,EAAc6B,WAEtBC,YAAchB,IACZA,EAAEiB,iBACF9B,EAASM,QAAUO,EAAEC,QACrBX,GAAU,EAAK,MAInB,KACJL,KAAkBkB,SAASe,KAC5B,EAGGC,EAAWC,IAAyD,IAAxD,UAAEX,EAAS,SAAEY,EAAQ,gBAAEC,EAAe,SAAET,GAAUO,EAClE,MAAOlC,EAAeqC,IAAoBhC,EAAAA,EAAAA,UAAS,CACjDoB,KAAM,EACNf,MAAO,EACPmB,UAAW,EACXlB,WAAY,EACZe,OAAQ,EACRL,aAAa,IAETiB,GAAMpC,EAAAA,EAAAA,QAAO,MACbqC,EAAcC,KAAe,IAC1BF,EAAI/B,SAAW6B,EAAgBE,EAAI/B,WAEtCR,GAAeG,EAAAA,EAAAA,UA8DrB,OA5DAH,EAAaQ,QACS,kBAAb4B,GAA0D,oBAA1BA,EAASpC,aAC5CoC,EAASpC,aACT,IAAM,MACZa,EAAAA,EAAAA,YAAU,KACR,MAAM6B,EAAY1C,EAAaQ,WAAaU,SAASyB,gBACrD,IAAIC,EACJ,MAAMC,EAAWA,KACf,IAAKD,EACH,OAEF,MAAM,KAAElB,EAAI,MAAEf,EAAK,IAAEmC,EAAG,OAAEnB,GAAWiB,EAASG,wBACxCC,EACJJ,EAASK,aAAeL,EAASM,cAAgB,GAC7CtC,EACHD,EAAQiC,EAASO,YAAeP,EAASQ,YAAc,EACpDtB,EACHc,EAASS,WAAaT,EAASO,YAAeP,EAASQ,YAAc,EAClEE,EAAgBZ,EAAUK,wBAEhCT,GAAkBiB,GACTC,OAAOC,OAAO,CAAC,EAAGF,EAAO,CAC9B7B,OACAf,QACAmB,YACAlB,aACAe,OAAQqB,EACR1B,YACEsB,EAASQ,YAAcR,EAASO,YAAc,IAC7CT,IAAcxB,SAASyB,gBACpBG,EAAMnB,EAASe,EAAUO,aAAe,GACxCH,EAAMJ,EAAUO,aAChBH,EAAMQ,EAAcR,IAAMQ,EAAc3B,QACxCmB,EAAMnB,EAAS2B,EAAcR,IAAMQ,EAAc3B,WAEzD,EAEE+B,EAAiB,IAAIC,eAAed,GAkB1C,OAjB0B,IAAIc,gBAAe,KAC3Cf,EAAWJ,IACNI,IAGLc,EAAeE,aACff,IACAgB,MAAMC,KAAKlB,EAAShB,UAAUmC,SAASC,IACrCN,EAAeO,QAAQD,EAAK,IAE9BpB,EAASzB,iBAAiB,SAAU0B,GAAS,IAG7BoB,QAAQ1B,EAAI/B,SAE9B0D,OAAO/C,iBAAiB,SAAU0B,GAClCH,EAAUvB,iBAAiB,SAAU0B,GAC9B,KACLqB,OAAO9C,oBAAoB,SAAUyB,GACrCH,EAAUtB,oBAAoB,SAAUyB,EAAS,CAClD,GACA,CAACL,IACCJ,GAIH+B,EAAAA,EAAAA,MAAA,OACE3C,UAAWK,IAAWJ,EAAM,kBAAmBD,GAC/Ce,IAAKA,EACLd,MAAO,CACL,wBAAsC,OAAbxB,QAAa,IAAbA,GAAAA,EAAeqB,YAAc,OAAS,OAC/DM,SAAA,CAEDA,GACDL,EAAAA,EAAAA,KAAC1B,EAAS,IACJI,EACJD,aAAcA,EAAaQ,QAC3BT,SAAWqE,IACQ5B,IACRa,YAAce,CAAC,OAhBvBxC,CAmBD,EAIVM,EAASmC,aAAe,CACtBjC,UAAU,EACVC,gBAAiBA,IAAMnB,SAASoD,cAAc,+BAGhD,S,mCCtKA,MA4BA,EA5BqB,CACnBC,QAAUC,IACR,MAAMC,EAASP,OAAOQ,aAAaH,QAAQC,GAC3C,IACE,MAAM,SAAEG,EAAQ,MAAEC,GAAUC,KAAKC,MAAML,GACvC,GAAiB,WAAbE,GAAmC,SAAVC,EAC3B,OAAO,KAET,GAAiB,cAAbD,EACF,OAEF,MAAiB,WAAbA,EACKI,OAAOH,GAEC,YAAbD,EACKK,QAAQJ,GAEVA,CACT,CAAE,MAAO7D,GACP,OAAO,IACT,GAEFkE,QAASA,CAACT,EAAKI,KACb,MAAMD,SAAkBC,EACxBV,OAAOQ,aAAaO,QAAQT,EAAKK,KAAKK,UAAU,CAAEP,WAAUC,UAAS,E,+KCiGzEO,EAAAA,EAAAA,QAAO,CACLC,KAAMC,IAvHY,CAClB,CACE,SACA,IAAM,CACJ,CAAET,MAAO,IAAKU,YAAa,UAC3B,CACEV,MAAO,IACPU,YAAa,YAInB,CACE,UACA,IAAM,CACJ,CAAEA,YAAa,eAAMV,MAAO,KAC5B,CACEU,YAAa,eACbV,MAAO,OAIb,CACE,UACA,IAAM,CACJ,CAAEU,YAAa,SAAKV,MAAO,KAC3B,CACEU,YAAa,SACbV,MAAO,OAIb,CACE,YACA,IAAM,CACJ,CAAEU,YAAa,2BAAQV,MAAO,4BAC9B,CACEU,YAAa,2BACbV,MAAO,4BAET,CAAEU,YAAa,eAAMV,MAAO,gBAC5B,CACEU,YAAa,2BACbV,MAAO,8BAIb,CACE,iBACA,IAAM,CACJ,CACEA,MAAO,EACPU,YAAa,gBAEf,CACEV,MAAO,EACPU,YAAa,gBAEf,CACEV,MAAO,EACPU,YAAa,gBAEf,CACEV,MAAO,EACPU,YAAa,gBAEf,CACEV,MAAO,EACPU,YAAa,sBAEf,CACEV,MAAO,EACPU,YAAa,wBAInB,CACE,aACA,IAAM,CACJ,CACEA,YAAa,eACbV,MAAO,IAET,CACEU,YAAa,eACbV,MAAO,IAET,CACEU,YAAa,eACbV,MAAO,IAET,CACEU,YAAa,eACbV,MAAO,IAET,CACEU,YAAa,eACbV,MAAO,IAET,CACEU,YAAa,iCACbV,MAAO,IAET,CACEU,YAAa,iCACbV,MAAO,IAET,CACEU,YAAa,qBACbV,MAAO,IAET,CACEU,YAAa,2BACbV,MAAO,SASX,CAACW,EAAQX,KACPW,EAAOX,EAAM,IAAMA,EAAM,EAAE,GAE7B,CAAC,I,qKCzHL,MAAMY,EAAeA,CAACC,EAAMC,EAAMC,KAC3BF,IAGD5B,MAAM+B,QAAQH,GAChBA,EAAK1B,SAASC,IACZwB,EAAaxB,EAAM0B,EAAMC,EAAI,KAIjCD,EAAKlC,OAAOC,OAAO,CAAC,EAAGoC,IAAKJ,EAAM,CAAC,aAAc,CAAEK,SAAUH,KAC7DH,EAAaC,EAAK7D,SAAU8D,EAAMC,EAAMA,EAAM,IAAMF,EAAKM,GAAKN,EAAKM,KAAG,EAGlEC,EAAeC,KAASC,IAC5B,MAAMC,EAAa,MACjB,MAAMC,EAAS,IAAIC,IAInB,OAHAb,EAAaU,GAAUlC,IACrBoC,EAAOE,IAAItC,EAAK8B,SAAW9B,EAAK8B,SAAW,IAAM9B,EAAK+B,GAAK/B,EAAK+B,GAAI/B,EAAK,IAEpEoC,CACR,EANkB,GAQbG,EAAW,CAAEJ,GACVtC,MAAMC,KAAKqC,EAAWK,QAAQC,QAAQV,IAC3C,MAAM/B,EAAOmC,EAAWO,IAAIX,GAC5B,QACElC,MAAM+B,QAAQ5B,EAAK2C,eACnB3C,EAAK2C,aAAaC,OAAS,GAC3B5C,EAAK2C,aAAaE,MAAMC,IACdX,EAAWO,IAAIX,KAE1B,IATY,CAWdI,GAEH,MAAO,CAAED,UAASK,WAAUJ,aAAY,IAYpCY,EAAiBA,CAACC,EAASlH,KAAgC,IAA9B,WAAEqG,EAAU,SAAEI,GAAUzG,EACzD,MAAM2E,EAAS0B,EAAWO,IAAIM,GAC9B,OACmC,IAAjCT,EAASU,QAAQD,KACA,IAAjBvC,EAAOyC,OACPR,IAAIjC,EAAQ,eAAgB,IAAI0C,OAAOpB,IACrC,MAAMqB,EAAqBjB,EAAWO,IAAIM,GAC1C,OAAOT,EAASU,QAAQlB,IAAO,IAAkC,IAA7BqB,EAAmBF,KAAc,GACrE,EAIAG,GAAUC,EAAAA,EAAAA,eAAc,OAExB,SAAEC,GAAaF,EAERG,EAAkBzB,IAC7B,MAAM,SAAEQ,EAAQ,QAAEL,EAAO,WAAEC,EAAU,MAAEsB,GA1BrBC,MAClB,MAAMvC,GAASwC,EAAAA,EAAAA,cACT,QAAEzB,EAAO,MAAEuB,GAAUf,IAAIvB,EAAQ,WAAY,CACjDsC,OAAO,EACPvB,QAAS,CAAC,IAEZ,OAAO1C,OAAOC,OAAO,CAAC,EAAGuC,EAAaE,GAAU,CAAEuB,SAAQ,EAoBTC,GAC3CE,EAA4B,WAAjB1B,EAAQ2B,KAAoB3B,EAAQH,GAAK,OACpDD,GAAWgC,EAAAA,EAAAA,YAAWT,GACtBL,EAAYlB,EAAWA,EAAW,IAAMC,EAAK6B,EAAW,IAAM7B,EAYpE,OAXAlF,EAAAA,EAAAA,YAAU,KACJ0F,GAAYA,EAASK,OAAS,GAAKa,GACrCM,QAAQC,IACN,eAAehB,aAAqBD,EAAeC,EAAW,CAC5DT,WACAJ,iBAEFA,EAAWO,IAAIM,GAEnB,GACC,CAACT,EAAUJ,EAAYsB,EAAOT,IAC1B,CACLiB,SACIlC,GAAMQ,GAAYA,EAASK,OAAS,IACtCG,EAAeC,EAAW,CAAET,WAAUJ,eACxCa,YACAkB,QAAS/B,EAAWO,IAAIM,GACzB,EAoBH,EAjBiB7E,IAAuB,IAAtB,GAAE4D,EAAE,SAAEnE,GAAUO,EAChC,MAAM,OAAE8F,EAAM,QAAEC,EAAO,UAAElB,GAAcQ,EAAezB,GACtD,OACExE,EAAAA,EAAAA,KAACgG,EAAQ,CAAC3C,MAAOoC,EAAUpF,SACJ,oBAAbA,EACJA,EAAS,CACPqG,SACAE,QAASF,EACLvB,IAAIwB,EAAS,WACbxB,IAAIwB,EAAS,mBACjBlB,cAEFiB,GAAUrG,GACL,C,2uCC3Gf,SAAgB,OAAS,6BAA6B,mBAAmB,uCAAuC,0BAA0B,8CAA8C,eAAe,mCAAmC,sBAAsB,0CAA0C,kBAAkB,sCAAsC,iBAAiB,qCAAqC,cAAc,kCAAkC,YAAY,gCAAgC,cAAc,kCAAkC,YAAY,gCAAgC,qBAAqB,yCAAyC,eAAe,mCAAmC,mBAAmB,uCAAuC,OAAS,6BAA6B,YAAY,gCAAgC,aAAa,iCAAiC,mBAAmB,uCAAuC,oBAAoB,wCAAwC,oBAAoB,wCAAwC,kBAAkB,sCAAsC,kBAAkB,sCAAsC,aAAa,iCAAiC,mBAAmB,uCAAuC,mBAAmB,uCAAuC,mBAAmB,uCAAuC,kBAAkB,sCAAsC,gBAAgB,oCAAoC,oBAAoB,wCAAwC,mBAAmB,uCAAuC,2BAA2B,+CAA+C,qBAAqB,yCAAyC,4BAA4B,gDAAgD,iCAAiC,qDAAqD,2BAA2B,+CAA+C,eAAe,mCAAmC,uBAAuB,2CAA2C,yBAAyB,6CAA6C,kBAAkB,sCAAsC,6BAA6B,iDAAiD,mCAAmC,uDAAuD,uBAAuB,4C,0BCD/3E,MAOA,EAPwBwG,IACf,CACL,QAASC,IAAM,gCACf,QAASC,IAAM,iCACfF,MCFSf,GAAUC,EAAAA,EAAAA,eAAc,CAAC,IAEzB,SAAEC,GAAaF,EAEfS,EAAaA,KAAMS,EAAAA,EAAAA,YAAgBlB,G,mCCIhD,MAAMmB,EAAO1I,IAAyB,IAAxB,KAAE2I,EAAI,SAAE7G,GAAU9B,EAC9B,MAAM,MAAE8E,EAAK,SAAE8D,GAAaZ,IAC5B,OACE3D,EAAAA,EAAAA,MAAA,OAAK3C,UAAWC,EAAM,eAAeG,SAAA,CAClC6G,EAAKE,KAAI,CAAC3E,EAAM4E,KACf,GAAoB,oBAAT5E,EACT,OAAOA,GAAMT,IACJ,CACLqF,QACAhE,MAAOA,EACH8B,IAAI9B,EAAM8B,IAAS,OAALnD,QAAK,IAALA,OAAK,EAALA,EAAOsF,MAAO,SACvB,OAALtF,QAAK,IAALA,OAAK,EAALA,EAAOqB,MACX8D,SAAUA,EACL9D,GACC8D,EAAS,CACPG,KAAW,OAALtF,QAAK,IAALA,OAAK,EAALA,EAAOsF,KACbC,MAAY,OAALvF,QAAK,IAALA,OAAK,EAALA,EAAOuF,MACdlE,UAEC,OAALrB,QAAK,IAALA,OAAK,EAALA,EAAOmF,aAIjB,MAAMK,EAAgB/E,EAAK6D,KAC3B,OACEtG,EAAAA,EAAAA,KAACwH,EAAa,IACRvF,OAAOC,OAAO,CAAC,EAAGO,EAAKT,MAAO,CAChCiB,IAAKR,EAAKQ,KAAOR,EAAKT,MAAMsF,MAAQD,EACpChE,MAAOA,EACH8B,IAAI9B,EAAM8B,IAAI1C,EAAKT,MAAMsF,MAAO,SAChC7E,EAAKT,MAAMqB,MACf8D,SAAUA,EACL9D,GACC8D,EAAS,CACPG,KAAM7E,EAAKT,MAAMsF,KACjBC,MAAO9E,EAAKT,MAAMuF,MAClBlE,UAEJZ,EAAKT,MAAMmF,YAEjB,IAGL9G,IACG,EAIJoH,EAAc7G,IAOb,IAPc,UACnBX,EAAS,KACTiH,EAAI,YACJQ,EAAW,MACXH,EAAK,MACLI,EAAK,SACLtH,GACDO,EACC,MAAMgH,EAAUV,EAAK7B,OAASqC,GACvBG,EAAUC,IAAe/I,EAAAA,EAAAA,WAAS,GAEzC,OACE6D,EAAAA,EAAAA,MAACmF,EAAAA,aAAY,CAACC,eAAgBA,EAAgBC,WAAW,SAAQ5H,SAAA,EAC/DuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CACJjI,UAAWK,IAAWJ,EAAM,gBAAiBD,GAC7CkI,MAAM,MACNC,KAAM,GAAG/H,SAAA,EAETL,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAM,gBAAgBG,SACpCkH,IACCvH,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,aACHyD,WAAW,SACXK,eAAe,oBAIrB1F,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACC,QAAQ,gBAAgBC,MAAM,EAAON,MAAM,MAAK9H,SAAA,EACnDL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAACzI,UAAWC,EAAM,eAAgByI,KAAM,EAAEtI,SAC3C6G,EAAK0B,MAAM,EAAGlB,GAAaN,KAAI,CAAC3E,EAAM4E,KACrCrH,EAAAA,EAAAA,KAACiH,EAAI,CAAaC,KAAMzE,EAAKpC,SAC1BuH,IAAwB,IAAbC,GAAsBR,IAAUK,EAAc,GACxD9E,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CACJE,KAAM,EACNnI,UAAWK,IACTJ,EAAM,eACNA,EAAc,QAEhB2I,QAASA,KACPf,GAAazE,IAAWA,GAAM,EAC9BhD,SAAA,EAEFL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,WACHyD,WAAW,SACXK,eAAe,kBAEjBtI,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CACH7I,UAAWC,EAAM,2BACjBoG,KAAK,4BAGP,MAtBKe,QA0BfrH,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,SAAEsH,WAGV3H,EAAAA,EAAAA,KAACkI,EAAAA,MAAK,CACJjI,UAAWK,IAAWJ,EAAM,gBAAiB,qBAC7CiI,MAAM,SACNC,KAAM,GAAG/H,SAERA,KAEHuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CACJjI,UAAWK,IAAWJ,EAAM,gBAAiB,oBAAqB,CAChE,CAACA,EAAM,0BAA2B0H,GAAWC,KAE/CM,MAAM,MACNC,KAAM,GAAG/H,SAAA,EAETL,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAM,gBAAgBG,UACrCL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,WACHyD,WAAW,SACXK,eAAe,oBAGnBtI,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,eAAeG,SAClC6G,EAAK0B,MAAMlB,GAAaN,KAAI,CAAC3E,EAAM4E,KAClCrH,EAAAA,EAAAA,KAACiH,EAAI,CAAaC,KAAMzE,EAAKpC,SAC1BgH,IAAUH,EAAK7B,OAASqC,EAAc,IACrC9E,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,EACEL,EAAAA,EAAAA,KAACkI,EAAAA,MAAK,CACJE,KAAM,EACNnI,UAAWK,IAAWJ,EAAM,qBAAqBG,UAEjDuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CACJE,KAAM,EACNnI,UAAWK,IACTJ,EAAc,OACdA,EAAM,gBACNG,SAAA,EAEFL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,eACHyD,WAAW,SACXK,eAAe,kBAEjBtI,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CACH7I,UAAWC,EAAM,2BACjBoG,KAAK,6BAIXtG,EAAAA,EAAAA,KAACkI,EAAAA,MAAK,CACJE,KAAM,EACNnI,UAAWK,IAAWJ,EAAM,cAC5B2I,QAASA,KACPf,GAAazE,IAAWA,GAAM,EAC9BhD,UAEFuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CACJE,KAAM,EACNnI,UAAWK,IACTJ,EAAc,OACdA,EAAM,gBACNG,SAAA,EAEFL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,eACHyD,WAAW,SACXK,eAAe,kBAEjBtI,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CACH7I,UAAWC,EAAM,2BACjBoG,KAAK,gCA9CNe,YAwDJ,EAInBI,EAAY3E,aAAe,CACzB4E,YAAa,GAGf,U,eCrMA,MAsEA,EAtE2BnJ,IAAoD,IAAjD8E,MAAO2F,EAAW,YAAEC,EAAW,SAAE9B,GAAU5I,EACvE,OACEyB,EAAAA,EAAAA,KAAC+H,EAAAA,aAAY,CAACC,eAAgBA,EAAgBC,WAAW,SAAQ5H,UAC/DuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAACjI,UAAWC,EAAM,gBAAiBiI,MAAM,MAAMC,KAAM,GAAG/H,SAAA,EAC5DL,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAM,gBAAgBG,UACrCL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,eACHyD,WAAW,SACXK,eAAe,gCAIjB1F,EAAAA,EAAAA,MAAA,OAAK3C,UAAWC,EAAM,eAAeG,SAAA,CAClC2I,EAAY5B,KAAI,CAAAxG,EAAyByG,KAAW,IAAnC,KAAEC,EAAI,MAAEC,EAAK,MAAElE,GAAOzC,EACtC,OACEZ,EAAAA,EAAAA,KAACkJ,EAAAA,QAAQ,CAEP5C,KAAK,eACL6C,WAAY5B,EACZ6B,KACE9G,MAAM+B,QAAQhB,GACVA,EACG+D,KAAK3E,GACGA,EAAK8E,QAEb8B,KAAK,UACRhG,EAAMkE,MAEZ+B,UAAQ,EACRC,QAASA,KACP,MAAMC,EAAWR,EAAYJ,MAAM,GACnCY,EAASC,OAAOpC,EAAO,GACvBF,EAASqC,EAAS,GAhBflC,EAkBL,KAGN1E,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAACE,KAAM,EAAGnI,UAAWK,IAAWJ,EAAM,qBAAqBG,SAAA,CAC9D4I,GACDjJ,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CAACtB,KAAK,QAAO/H,UAClBL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,eACHyD,WAAW,SACXK,eAAe,mCAIrB1F,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAACE,KAAM,EAAGnI,UAAWK,IAAWJ,EAAM,cAAcG,SAAA,CACvD4I,GACDjJ,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CACLtB,KAAK,QACLS,QAASA,KACP1B,EAAS,GAAG,EACZ9G,UAEFL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,eACHyD,WAAW,SACXK,eAAe,yCAQd,E,uDC9DnB,MAAMqB,EAAcpL,IAAwC,IAAvC,SAAE8B,EAAQ,UAAEJ,KAAc+B,GAAOzD,EACpD,MAAOqL,EAAWzC,GAAY0C,IAAgB7H,GAExCqB,GAAQyG,EAAAA,EAAAA,UAAQ,IACbF,EAAU1E,QAAQzC,IAASsH,EAAAA,EAAAA,YAAWtH,EAAKY,UACjD,CAACuG,IAEEZ,GAAcc,EAAAA,EAAAA,UAAQ,IACnB,IAAIhF,IAAIzB,EAAM+D,KAAK3E,GAAS,CAACA,EAAK6E,KAAM7E,OAC9C,CAACY,IAEJ,OACErD,EAAAA,EAAAA,KAAC+H,EAAAA,aAAY,CAACE,WAAW,SAASD,eAAgBA,EAAe3H,UAC/DL,EAAAA,EAAAA,KAACgG,EAAQ,CACP3C,MAAO,CACLA,MAAO2F,EACP7B,SAAW1E,IACT,MAAMuH,EAAiBC,IAAMjB,GAC7BvG,EAAKY,MACD2G,EAAejF,IAAItC,EAAK6E,KAAM7E,GAC9BuH,EAAeE,OAAOzH,EAAK6E,MACvB,OAARH,QAAQ,IAARA,GAAAA,EAAW7E,MAAMC,KAAKyH,EAAeG,UAAU,GAEjD9J,UAEFL,EAAAA,EAAAA,KAAA,OAAKC,UAAWK,IAAWJ,EAAc,OAAGD,GAAWI,SACpDA,EAAS,CAAE2B,QAAOqB,QAAO8D,kBAGjB,EAInBwC,EAAY7G,aAAe,CACzBsH,aAAc,IAGhB,UC5CMC,EAAUrI,IAEZhC,EAAAA,EAAAA,KAAC2J,EAAW,IAAK3H,EAAK3B,SACnB9B,IAAiC,IAAhC,MAAEyD,EAAK,MAAEqB,EAAK,SAAE8D,GAAU5I,EAC1B,MAAM,YAAE0K,KAAgBqB,GAAWtI,EACnC,OACEY,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,EACEL,EAAAA,EAAAA,KAACyH,EAAW,IAAK6C,IAChBjH,GAASA,EAAMgC,OAAS,IACvBrF,EAAAA,EAAAA,KAACuK,EAAkB,CACjBlH,MAAOA,EACP8D,SAAUA,EACV8B,YAAaA,MAGhB,IAOboB,EAAOvH,aAAe,CACpBsH,aAAc,IAGhB,U,eCzBA,MAsBA,EAtBmB7L,IAAwC,IAAvC,KAAEiM,EAAI,OAAEC,EAAM,MAAElD,EAAK,SAAElH,GAAU9B,EACnD,OACEyB,EAAAA,EAAAA,KAACkI,EAAAA,MAAK,CAACjI,UAAWC,EAAM,oBAAoBG,UAC1CuC,EAAAA,EAAAA,MAAA,OACE3C,UAAWK,IAAWJ,EAAM,eAAgB,CAC1C,CAACA,EAAM,cAAeuK,EACtB,CAACvK,EAAM,eAAgBsK,IACtBnK,SAAA,EAEHuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAACjI,UAAWC,EAAM,qBAAsBkI,KAAM,EAAE/H,SAAA,EACpDL,EAAAA,EAAAA,KAAA,OAAAK,SAAMkH,KACNvH,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CACH7I,UAAWC,EAAM,oBACjBoG,KAAK,2BAGTtG,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,qBAAqBG,SAAEA,QAEzC,ECSZ,EA1BGqK,GACDnM,IAAwD,IAAvD,MAAE8E,EAAK,SAAE8D,EAAQ,YAAEwD,EAAW,MAAEpD,KAAUvF,GAAOzD,EAChD,MAAOiM,EAAMI,IAAW7L,EAAAA,EAAAA,WAAS,GACjC,OACEiB,EAAAA,EAAAA,KAAC6K,EAAU,CAACtD,MAAOA,EAAOiD,KAAMA,EAAMC,QAAQV,EAAAA,EAAAA,GAAW1G,GAAOhD,UAC9DL,EAAAA,EAAAA,KAAC0K,EAAgB,CACfI,YAAY,KACR9I,EACJ/B,UAAWC,EAAM,qBACjBmD,MACgC,oBAAZ,OAAXsH,QAAW,IAAXA,OAAW,EAAXA,EAAaI,OAChBJ,EAAYI,MAAM1H,GAClBA,EAEN8D,SACiC,oBAAb,OAAXwD,QAAW,IAAXA,OAAW,EAAXA,EAAa9F,QAChB,kBAAasC,EAASwD,EAAY9F,UAAOmG,WAAS,EAClD7D,EAEN8D,UAAU,MACVC,aAAcN,KAEL,E,qGC3BnB,QAAgC,oCAAhC,EAA+E,+B,sDCU/E,MAAMO,EAAwBC,EAAAA,EAAiB7E,WAEzC8E,EAAiB9M,IAAqD,IAAlD8E,MAAOiI,EAAUC,SAAUC,EAAS,KAAEpD,GAAM7J,EACpE,MAAM,SAAEkN,EAAQ,MAAEzJ,GAAUmJ,IACtBO,EAAaxK,IAAec,EAAM0J,aAClC,OAAEC,EAAM,QAAEC,EAAO,kBAAEC,KAAsBvB,GAAWtI,EACpD8J,GAAgBlN,EAAAA,EAAAA,QAAOoD,EAAM+J,YACnCD,EAAc7M,QAAU+C,EAAM+J,WAC9B,MAAMC,EAAYP,EAASvH,MACrB,SAAE+H,IAAanC,EAAAA,EAAAA,UACnB,IACE4B,EAAWM,EAAW,CACpBD,WAAYD,EAAc7M,WAE9B,CAACyM,EAAYM,IAGf,OACEhM,EAAAA,EAAAA,KAACkI,EAAAA,MAAK,CAACgE,UAAU,WAAW9D,KAAM,GAAG/H,UACnCL,EAAAA,EAAAA,KAACmM,EAAAA,EAAS,CACRlM,UAAWK,IAAWJ,EAAwB,CAC5C,CAACA,GAAoB8B,EAAM4J,UAC1BvL,UAEHL,EAAAA,EAAAA,KAACoM,EAAAA,KAAI,IACC9H,IAAKgG,EAAQ,CAAC,QAAS,YAAa,WAAY,eACpDlC,KAAMA,EACNiE,WAAYV,EACZM,SAAUA,EACVK,QAASd,EACTe,YAAajB,EACbkB,SACEb,EACIH,EACCiB,IACC,MAAMC,EAAYD,EAAW,QACX,IAAdC,GAGJlB,GAAWvM,IACT,MAAM0N,EAAa1N,EAAQ2J,MAAM,GAC3BvB,EAAQsF,EAAWjH,QAAQgH,GAMjC,OALIrF,GAAS,EACXsF,EAAWlD,OAAOpC,EAAO,GAEzBsF,EAAWC,KAAKF,GAEXC,CAAU,GACjB,EAGVE,aAAclB,EAASL,OAAWwB,OAGhC,EAINC,EAAYnM,IAA0C,IAAzC,UAAEoM,EAAS,WAAEtB,KAAe1J,GAAOpB,EACpD,OACEZ,EAAAA,EAAAA,KAACoL,EAAAA,EAAgB,IACXpJ,EACJ0J,WAAaxH,GACJwH,EAAWxH,EAAM,CAAE6H,WAAY/J,EAAM+J,aAC5C1L,SAED4M,IAA0B,IAAzB,MAAE5J,EAAK,SAAEkI,GAAU0B,EACnB,OACEjN,EAAAA,EAAAA,KAACqL,EAAc,CAACjD,KAAM4E,EAAW3J,MAAOA,EAAOkI,SAAUA,GAAY,GAGxD,EAIvBwB,EAAUjK,aAAe,CACvB+I,kBAAmB,eACnBmB,UAAWxJ,OAAO0J,UAClB9E,KAAM,SACNwD,SAAS,EACTuB,eAAe,EACfzB,WAAYA,CAACxH,EAAIkJ,KAAsB,IAApB,WAAErB,GAAYqB,EAC/B,MAAMC,EAAa3I,KAAQ,CAAC4I,EAAQC,KAAsB,IAApB,WAAExB,GAAYwB,EAClD,MAAMrG,EAAO,GACPsG,EAAQF,IACNhL,MAAM+B,QAAQiJ,IAAaA,EAASjI,OAAS,GAGnDiI,EAAS9K,SAASiL,IAChB,MAAMpK,EAAQoK,EAAKtI,IAAI4G,EAAY,MAAO,QACxCxE,EAAQkG,EAAKtI,IAAI4G,EAAY,QAAS,UACtC1L,EAAWoN,EAAKtI,IAAI4G,EAAY,WAAY,aAC9C7E,EAAK0F,KAAK,CAAEpI,GAAInB,EAAOA,QAAOkE,UAC9BiG,EAAKnN,EAAS,GACd,EAGJ,OADAmN,EAAKF,GACEpG,CAAI,IAGb,MAAO,CACL+E,SAAU/H,EACVgD,KAAMmG,EAAWnJ,EAAM,CAAE6H,eAC1B,GAIL,WC9GM2B,GAAcnP,IASb,IATc,MACnB8E,EAAK,MACLkE,EAAK,WACLoG,EAAU,iBACVC,EAAgB,UAChBC,EAAS,aACT3C,EAAY,SACZ/D,EAAQ,SACR9G,GACD9B,EACC,MAAOuP,EAAOC,IAAYhP,EAAAA,EAAAA,UAASsE,IAC5BmH,EAAMI,IAAW7L,EAAAA,EAAAA,WAAS,GAC3BiP,GAAWlE,EAAAA,EAAAA,UAAQ,IAChB6D,IAAeA,EAAWG,IAChC,CAACH,EAAYG,IAChB,OACE9N,EAAAA,EAAAA,KAACiO,EAAAA,QAAO,CACNzD,KAAMA,EACN0D,QAAQ,QACRL,UAAWA,EACXD,iBAAkBtN,IAAWJ,EAAM,oBAAqB0N,GACxD1C,aAAeV,IACbI,EAAQJ,GACRuD,EAAS1K,GACT6H,GAAgBA,EAAaV,EAAK,EAEpC2D,SACEvL,EAAAA,EAAAA,MAAA,QACEiG,QAAUrJ,IACRA,EAAE4O,iBAAiB,EACnB/N,SAAA,EAEFL,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,oBAAoBG,SACvCA,EAAS,CAAEgD,MAAOyK,EAAO3G,SAAU4G,OAEtCnL,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACtI,UAAWC,EAAM,mBAAoBsI,QAAQ,MAAM6F,OAAQ,EAAEhO,SAAA,EAChEL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFL,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CACLtB,KAAK,QACLS,QAASA,KACP+B,GAAQ,GACRM,GAAgBA,GAAa,EAAM,EACnC7K,UAEFL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,aACHyD,WAAW,SACXK,eAAe,sBAIrBtI,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFL,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CACLtB,KAAK,QACL9B,KAAK,UACL0H,SAAUA,EACVnF,QAASA,KACP+B,GAAQ,GACRM,GAAgBA,GAAa,GAC7B/D,GAAYA,EAAS2G,EAAM,EAC3BzN,UAEFL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,gBACHyD,WAAW,SACXK,eAAe,2BAM1BjI,UAEDL,EAAAA,EAAAA,KAAA,QAAAK,UACEL,EAAAA,EAAAA,KAAC6K,EAAU,CAACL,KAAMA,EAAMC,QAAQV,EAAAA,EAAAA,GAAW1G,GAAQkE,MAAOA,OAEpD,EAIdmG,GAAY5K,aAAe,CACzBwL,YAAa,qBACbT,UAAW,cAGb,YCnDA,GArCwBtP,IAUjB,IAVkB,MACvBgJ,EAAK,MACLlE,EAAK,SACL8D,EAAQ,YACRmH,EAAW,WACXX,EAAU,iBACVC,EAAgB,UAChBC,EAAS,aACT3C,KACGlJ,GACJzD,EACC,OACEyB,EAAAA,EAAAA,KAAC0N,GAAW,CACVnG,MAAOA,EACPlE,MAAOA,EACP8D,SAAUA,EACJwG,aAAYC,mBAAkBC,YAAW3C,eAAY7K,SAE1DO,IAAA,IAAC,MAAEyC,EAAK,SAAE8D,GAAUvG,EAAA,OACnBZ,EAAAA,EAAAA,KAACuO,EAAAA,MAAK,IACAvM,EACJsM,YAAaA,GAAe,qBAAM/G,IAClCtH,UAAWC,EAAM,oBACjBmD,MAAO8B,IAAI9B,EAAO,QAAS,IAC3B8D,SAAW3H,GACT2H,EACE3H,EAAE0D,OAAOG,MACL,CAAEkE,MAAO/H,EAAE0D,OAAOG,MAAOA,MAAO7D,EAAE0D,OAAOG,OACzC,OAGR,GAEQ,E,2BC9BlB,MAAMmL,GAAsBA,CAACC,EAAOC,EAAMC,IACnCC,KAASH,EAAM,KAAQG,KAASH,EAAM,IAIpC,CACLlH,MAAO,CAAEkH,GACHG,KAASH,EAAM,KAAOG,KAASH,EAAM,IAChC,GAAGA,EAAM,MAAMA,EAAM,KAAKC,GAAQ,KAEvCE,KAASH,EAAM,IACVE,EAAc,CAAEnK,GAAI,QAAU,CAAEqK,MAAOJ,EAAM,GAAIC,SAEtDE,KAASH,EAAM,IACVE,EAAc,CAAEnK,GAAI,YAAc,CAAEqK,MAAOJ,EAAM,GAAIC,cAD9D,EAPK,CAUJD,GACHpL,MAAO,CAACoL,EAAM,IAAM,KAAMA,EAAM,IAAM,OAf/B,KAmBLK,GAAkBvQ,IAWjB,IAXkB,MACvBgJ,EAAK,MACLlE,EAAK,SACL8D,EAAQ,YACRmH,EAAW,WACXX,EAAU,iBACVC,EAAgB,UAChBC,EAAS,aACT3C,EAAY,KACZwD,KACG1M,GACJzD,EACC,MAAM,cAAEoQ,IAAkBI,EAAAA,EAAAA,SAAQ,CAAE9G,WAAY,WAChD,OACEjI,EAAAA,EAAAA,KAAC0N,GAAW,CACVnG,MAAOA,EACPlE,MAAOA,EACP8D,SAAUA,EACJwG,aAAYC,mBAAkBC,YAAW3C,eAAY7K,SAE1DO,IAAA,IAAC,MAAEyC,EAAK,SAAE8D,GAAUvG,EAAA,OACnBgC,EAAAA,EAAAA,MAACsF,EAAAA,MAAM8G,QAAO,CAAA3O,SAAA,EACZL,EAAAA,EAAAA,KAACiP,EAAAA,YAAW,IACNjN,EACJsM,YACEA,GAAe,GAAGK,EAAc,CAAEnK,GAAI,kBAAmB+C,IAE3DtH,UAAWC,EAAM,4BACjBmD,MAAO8B,IAAI9B,EAAO,WAAY,IAC9B8D,SAAWjE,IACTiE,EACEqH,GACE,CAACtL,EAAQiC,IAAI9B,EAAO,aACpBqL,EACAC,GAEH,KAGL3O,EAAAA,EAAAA,KAACuO,EAAAA,MAAK,CACJrO,MAAO,CACLd,MAAO,GACP8P,WAAY,EACZC,YAAa,EACbC,cAAe,QAEjBd,YAAY,IACZN,UAAQ,KAEVhO,EAAAA,EAAAA,KAACiP,EAAAA,YAAW,IACNjN,EACJsM,YACEA,GAAe,GAAGK,EAAc,CAAEnK,GAAI,kBAAmB+C,IAE3DtH,UAAWC,EAAM,4BACjBmD,MAAO8B,IAAI9B,EAAO,WAAY,IAC9B8D,SAAWjE,IACTiE,EACEqH,GACE,CAACrJ,IAAI9B,EAAO,YAAaH,GACzBwL,EACAC,GAEH,IAGJD,IACC1O,EAAAA,EAAAA,KAACuO,EAAAA,MAAK,CACJrO,MAAO,CACLd,MAAO,GACP8P,WAAY,GAEd7L,MAAOqL,EACPV,UAAQ,MAGE,GAEN,EAIlBc,GAAgBhM,aAAe,CAC7B6K,WAAatK,IACX,MAAMoL,EAAQtJ,IAAI9B,EAAO,SACzB,QACEoL,GACAG,KAASH,EAAM,KACfG,KAASH,EAAM,KACfA,EAAM,GAAKA,EAAM,GAClB,GAIL,Y,2BCvHA,MAAMY,GAAuBC,GAC3B/Q,IAA4C,IAA3C,MAAE8E,EAAK,SAAE8D,EAAQ,OAAEoI,KAAWvN,GAAOzD,EACpC,OACEyB,EAAAA,EAAAA,KAACwP,EAAAA,WAAU,IACLxN,EACJuN,OAAQA,EACRlM,MAAOA,GAASoM,KAAMpM,EAAMA,OAC5B8D,SAAW9D,IACT,MAAM,OAAEqM,GAAWzN,OAAOC,OAAO,CAAEwN,OAAQ,cAAgB1N,GAC3DqB,GACE8D,EAAS,CACPI,MACa,SAAXgI,EACI,GAAGlM,EAAMsM,QAAQJ,GAAQG,OAAOA,MAAWrM,EACxCuM,MAAML,GACNG,OAAOA,KACVrM,EAAMqM,OAAOA,GACnBrM,MAAO,IAAIwM,KAAKxM,EAAMsM,QAAQJ,GAAQO,YACtC,GAEN,IAKRT,GAAqBvM,aAAe,OAEpC,YCAA,GA3BkCwM,GAChC/Q,IAA4C,IAA3C,MAAE8E,EAAK,SAAE8D,EAAQ,OAAE4I,KAAW/N,GAAOzD,EACpC,OACEqE,EAAAA,EAAAA,MAACoN,EAAAA,KAAI,CAACC,UAAQ,EAAA5P,SAAA,CACO,oBAAX0P,EAAwBA,EAAO,CAAE1M,QAAO8D,aAAc4I,GAC9D/P,EAAAA,EAAAA,KAACwP,EAAAA,WAAWU,YAAW,IACjBlO,EACJmO,WAAY,EAAC,GAAO,GACpB9M,MACEA,GACAf,MAAM+B,QAAQhB,EAAMA,QACG,IAAvBA,EAAMA,MAAMgC,QACZhC,EAAMA,MAAM+D,KAAK3E,GAASgN,KAAMhN,KAElC0E,SAAW9D,IACT,MAAM,OAAEqM,GAAWzN,OAAOC,OAAO,CAAEwN,OAAQ,cAAgB1N,GAC3DmF,EAAS,CACPI,MAAOlE,EAAM+D,KAAK3E,GAASA,EAAKiN,OAAOA,KAASrG,KAAK,KACrDhG,MAAOA,EAAM+D,KAAK3E,GAAS,IAAIoN,KAAKpN,EAAKqN,cACzC,MAGD,I,gBCpBb,MAkDA,GAlDsCvR,IAK/B,IALgC,MACrCgJ,EAAK,MACLlE,EAAK,SACL8D,KACGnF,GACJzD,EACC,OACEyB,EAAAA,EAAAA,KAAC0N,GAAW,CACVnG,MAAOA,EACPlE,MAAOA,EACP8D,SAAUA,EACVwG,WAAalL,IACX,MAAMY,EAAY,OAAJZ,QAAI,IAAJA,OAAI,EAAJA,EAAMY,MACpB,OACO,OAALA,QAAK,IAALA,OAAK,EAALA,EAAOiD,OAAQhE,MAAM+B,QAAa,OAALhB,QAAK,IAALA,OAAK,EAALA,EAAOA,QAAiC,IAAvBA,EAAMA,MAAMgC,MAAY,EAExEhF,SAEDO,IAAA,IAAC,MAAEyC,EAAK,SAAE8D,GAAUvG,EAAA,OACnBZ,EAAAA,EAAAA,KAACoQ,GAAAA,EAAwB,IACnBpO,EACJ/B,UAAWC,EAAM,oBACjBmD,MAAO8B,IAAI9B,EAAO,SAClB8D,SAAWkJ,IACT,MAAM,OAAEX,GAAWzN,OAAOC,OAAO,CAAEwN,OAAQ,cAAgB1N,GACrDqB,GAAmB,OAAXgN,QAAW,IAAXA,OAAW,EAAXA,EAAahN,QAAS,GACpC8D,EAAS,CACPI,MACMlE,EAAM,KAAOA,EAAM,GACd,GAAGoM,KAAMpM,EAAM,IAAIqM,OAAOA,kBAE9BrM,EAAM,IAAMA,EAAM,GACd,GAAGoM,KAAMpM,EAAM,IAAIqM,OAAOA,iBAE/BrM,EAAM,IAAMA,EAAM,GACb,GAAGoM,KAAMpM,EAAM,IAAIqM,OAAOA,MAAWD,KAC1CpM,EAAM,IACNqM,OAAOA,KAEJ,GAETrM,MAAOgN,GACP,GAEJ,GAEQ,ECnCZC,GACH5F,GACDnM,IAAA,IAAC,YAAE+P,EAAW,MAAE/G,KAAUvF,GAAOzD,EAAA,OAE7ByB,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,0BACHyD,WAAW,SACXkC,OAAQ,CAAE5C,SAAQlH,SAEhB+I,IAEEpJ,EAAAA,EAAAA,KAAC0K,EAAgB,IACX1I,EACJuF,MAAOA,EACP+G,YAAaA,GAAelF,KAIjB,EAGZmH,GAA2BjB,EAAckB,EAAAA,IACzCC,GAAwBnB,EAAcoB,EAAAA,IACtCC,GAAiCrB,EAC5CsB,EAAAA,IAEWC,GAA4BvB,EAAcwB,EAAAA,IAC1CC,GAAiBzB,EAAc0B,EAAAA,IAC/BC,GAA2B3B,EAAc4B,EAAAA,GACzCC,GAA2B7B,EAAc8B,EAAAA,GAEzCC,GAAiB/B,EAAcgC,EAAAA,IAE/BC,GAAqBjC,EAAckC,EAAAA,IAEnCC,GAAiBnC,EAAcvC,IAC/B+B,GACXwB,GAA4BoB,IACjBC,GAAwBrB,GACnCsB,I,2BCtDF,MAYA,GAZwB5I,GACflF,KACLkF,GACA,CAAChF,EAAMzF,KAAuB,IAArB,KAAE+I,EAAI,MAAEjE,GAAO9E,EACtByF,EAAOsD,GAAQhF,MAAM+B,QAAQhB,GACzBA,EAAM+D,KAAIxG,IAAA,IAAC,MAAEyC,GAAOzC,EAAA,OAAKyC,CAAK,IACzB,OAALA,QAAK,IAALA,OAAK,EAALA,EAAOA,KAAK,GAElB,CAAC,GCgBL,GAvByBqH,GAChBnM,IAAgC,IAA/B,KAAE+I,EAAI,MAAEC,KAAUvF,GAAOzD,EAC/B,MAAM,MAAE8E,EAAK,SAAE8D,GAAaZ,IAC5B,OACEvG,EAAAA,EAAAA,KAAC0K,EAAgB,IACX1I,EACJuF,MAAOA,EACPJ,SACEA,EACK9D,GACC8D,EAAS,CACPG,OACAC,QACAlE,UAEJrB,EAAMmF,SAEZ9D,MAAOA,EAAQ8B,IAAI9B,EAAM8B,IAAImC,GAAO,SAAWtF,EAAMqB,OACrD,ECLR,GAboBwO,IAAgBtT,IAA2C,IAA1C,MAAEgJ,EAAK,SAAEJ,EAAQ,MAAE9D,KAAUrB,GAAOzD,EACvE,OACEyB,EAAAA,EAAAA,KAAC8R,EAAAA,YAAgB,IACX9P,EACJsM,YAAa,qBAAM/G,IACnBlE,OAAY,OAALA,QAAK,IAALA,OAAK,EAALA,EAAOA,QAAS,GACvB0O,SAAW1O,IACT8D,EAAS,CAAEI,MAAOlE,EAAOA,SAAQ,GAEnC,I,gBCFN,MAAM,aAAE2O,IAAiBC,EAAAA,IAEnBC,GAAsB3T,IAOrB,IAPsB,MAC3B8E,EAAK,SACL8D,EAAQ,OACRwE,EAAM,UACNqB,EAAS,WACTmF,KACGnQ,GACJzD,EACC,MAAM,QAAE6T,GAAYC,EAAAA,IAAIC,UAClB,OAAEzL,IAAWT,EAAAA,GAAAA,cACb,cAAEuI,IAAkBI,EAAAA,EAAAA,SAAQ,CAAE9G,WAAY,WAC1CsK,GAAWzI,EAAAA,EAAAA,UAAQ,IAChBqI,EAAWK,qBACjB,CAACL,IACJ,OACEvP,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,CACGkS,EAASnL,KAAKqL,IACb,MAAM,KAAEC,GAASD,EACXnL,GAAOqL,EAAAA,EAAAA,IAAiBF,EAAM5L,GACpC,OACE7G,EAAAA,EAAAA,KAACgS,GAAY,CAEX5J,KAAK,QACLwK,QACEjH,GACS,OAALtI,QAAK,IAALA,OAAK,EAALA,EAAOA,SAAUqP,KACdrP,GAAS,IAAIwP,MAAKjS,IAAA,IAAC,MAAEyC,GAAOzC,EAAA,OAAKyC,IAAUqP,CAAI,IAExDvL,SAAWyL,IACT,GAAIjH,EAEF,YADAxE,EAASyL,EAAU,CAAEvP,MAAOqP,EAAMnL,MAAOD,GAAS,MAGpD,MAAMkC,GAAYnG,GAAS,IAAIuF,MAAM,GACrCgK,EACIpJ,EAASoD,KAAK,CAAEvJ,MAAOqP,EAAMnL,MAAOD,IACpC,MACE,MAAMD,EAAQmC,EAASsJ,WACrB7F,IAAA,IAAC,MAAE5J,GAAO4J,EAAA,OAAK5J,IAAUqP,CAAI,IAE/BlJ,EAASC,OAAOpC,EAAO,EACxB,EALD,GAMAmC,EAASnE,OAAS2H,EACpBoF,EAAQW,MACNpE,EACE,CAAEnK,GAAI,oBACN,CAAEqK,MAAO7B,KAKf7F,EAASqC,EAAS,EAClBnJ,SAEDiH,GAjCIoL,EAkCQ,KAGnB9P,EAAAA,EAAAA,MAACoP,GAAY,CACX/R,UAAWC,EAAM,8BACjBkI,KAAK,QACLwK,SACGjH,EAAc,OAALtI,QAAK,IAALA,OAAK,EAALA,EAAOA,OAAa,OAALA,QAAK,IAALA,OAAK,EAALA,EAAOA,QAASA,EAAMA,MAAMgC,OAAS,KAC7DkN,EAASM,MAAKzF,IAAA,IAAC,KAAEsF,GAAMtF,EAAA,OACtBzB,GACS,OAALtI,QAAK,IAALA,OAAK,EAALA,EAAOA,SAAUqP,KACdrP,GAAS,IAAIwP,MAAKtF,IAAA,IAAC,MAAElK,GAAOkK,EAAA,OAAKlK,IAAUqP,CAAI,GAAC,IAE1DrS,SAAA,EAEDL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAI,YACJyD,WAAW,SACXK,eAAe,kBAEjBtI,EAAAA,EAAAA,KAACsR,EAAAA,GAAkB,IACbtP,EACJ/B,UAAWC,EAAM,oCACjB8M,UAAWA,EACX3J,MACEsI,EAAc,OAALtI,QAAK,IAALA,OAAK,EAALA,EAAOA,OAASA,GAAS,IAAI+D,KAAI4L,IAAA,IAAC,MAAE3P,GAAO2P,EAAA,OAAK3P,CAAK,IAEhEsI,OAAQA,EACRxE,SAAU,SAAC9D,GACT,MAAM4P,EAAgB5P,IACpB,MAAM,KAAEoP,GAASN,EAAWe,QAAQ7P,GACpC,MAAO,CAAEA,MAAW,OAAJoP,QAAI,IAAJA,OAAI,EAAJA,EAAMC,KAAMnL,MAAW,OAAJkL,QAAI,IAAJA,OAAI,EAAJA,EAAMnL,KAAM,EAEjDH,EACEwE,EACIsH,EAAa5P,GACbA,EAAM+D,KAAK/D,GAAU4P,EAAa5P,KAE1C,SAGH,EAGP6O,GAAoBpP,aAAe,CACjC6I,QAAQ,EACRqB,UAAW,GAEb,MACA,IADuBmG,EAAAA,EAAAA,IAAejB,I,2BC9GtC,MAAQF,aAAa,IAAIC,EAAAA,IACnBmB,GAAiB7U,IAQhB,IARiB,MACtB8E,EAAK,SACL8D,EAAQ,MACRI,EAAK,OACLoE,EAAM,UACNqB,EAAS,MACTqG,EAAK,OACLC,GACD/U,EACC,MAAM,QAAE6T,GAAYC,EAAAA,IAAIC,UAClB,cAAE3D,IAAkBI,EAAAA,EAAAA,SAAQ,CAAE9G,WAAY,WAChD,OACErF,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,CACGgT,EAAMjM,KAAIxG,IAAkC,IAAjC,MAAE2G,EAAOlE,MAAOkQ,GAAW3S,EACrC,OACEZ,EAAAA,EAAAA,KAACgS,GAAY,CAEX5J,KAAK,QACLwK,QACEjH,EACI6H,KAAQD,EAAgB,OAALlQ,QAAK,IAALA,OAAK,EAALA,EAAOA,UACvBA,GAAS,IAAIwP,MAAK5F,IAAA,IAAC,MAAE5J,GAAO4J,EAAA,OAAKuG,KAAQD,EAAWlQ,EAAM,IAEnE8D,SAAWyL,IACT,GAAIjH,EAEF,YADAxE,EAASyL,EAAU,CAAEvP,MAAOkQ,EAAWhM,SAAU,MAGnD,MAAMiC,GAAYnG,GAAS,IAAIuF,MAAM,GACrCgK,EACIpJ,EAASoD,KAAK,CAAEvJ,MAAOkQ,EAAWhM,UAClC,MACE,MAAMF,EAAQmC,EAASqJ,MAAKzF,IAAA,IAAC,MAAE/J,GAAO+J,EAAA,OACpCoG,KAAQD,EAAWlQ,EAAM,IAE3BmG,EAASC,OAAOpC,EAAO,EACxB,EALD,GAMAmC,EAASnE,OAAS2H,EACpBoF,EAAQW,MACNpE,EACE,CAAEnK,GAAI,oBACN,CAAEqK,MAAO7B,KAKf7F,EAASqC,EAAS,EAClBnJ,SAEDkH,GAjCIA,EAkCQ,IAGlB+L,GACC,MACE,MAAM9L,EAAgBvF,OAAOkI,OAAOsJ,GAAQZ,MACzCpQ,GAASA,IAAS6Q,EAAOhN,OAE5B,OAAKkB,GAIHxH,EAAAA,EAAAA,KAACwH,EAAa,IACR8L,EAAOtR,MACXqB,MAAOA,EACPiL,YAAa,GAAGK,EAAc,CAAEnK,GAAI,kBAAmB+C,IACvDJ,SAAUA,IAPL,IAUV,EAfD,KAgBD,EAIPiM,GAAetQ,aAAe,CAC5B6I,QAAQ,EACRqB,UAAW,EACXqG,MAAO,IAGT,Y,2BCjFA,MCCA,GAFe,CAAEhC,eAAc,GAAE+B,eAAc,GAAEtE,gBDCzBvQ,IAA2C,IAA1C,MAAE8E,EAAK,MAAEkE,EAAK,SAAEJ,KAAanF,GAAOzD,EAC3D,MAAMmV,EAAkB,OAALrQ,QAAK,IAALA,OAAK,EAALA,EAAOA,OACnBsQ,EAAYC,IAAiB7U,EAAAA,EAAAA,UAAS2U,GAAc,KACpDjJ,EAAQoJ,IAAa9U,EAAAA,EAAAA,WAAS,IAC/B,cAAE4P,IAAkBI,EAAAA,EAAAA,SAAQ,CAAE9G,WAAY,WAC1C6L,EAAgBA,KACpB3M,EAASwM,EAAa,CAAEpM,MAAOoM,EAAYtQ,MAAOsQ,GAAe,KAAK,EAElE3S,EAAM+S,MAAkB,KAC5BF,GAAU,GACVC,GAAe,IAEXE,GAAgBpV,EAAAA,EAAAA,QAAO,IAQ7B,OAPAoV,EAAc/U,QAAU0U,GAExBrU,EAAAA,EAAAA,YAAU,KACJoU,IAAeM,EAAc/U,SAC/B2U,EAAcF,EAChB,GACC,CAACA,KAEF1T,EAAAA,EAAAA,KAAA,QAAMgB,IAAKA,EAAIX,UACbuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAM8G,QAAO,CAAA3O,SAAA,EACZL,EAAAA,EAAAA,KAACuO,EAAAA,MAAK,CACJD,YAAa,GAAGK,EAAc,CAAEnK,GAAI,kBAAmB+C,OACnDvF,EACJoG,KAAK,QACL/E,MAAOsQ,EACPM,QAASA,KACPJ,GAAU,EAAK,EAEjB1M,SAAW3H,IACToU,EAAcpU,EAAE0D,OAAOG,MAAM,EAE/B6Q,aAAcJ,IAEfrJ,IACCzK,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CAACtB,KAAK,QAAQ9B,KAAK,UAAUuC,QAASiL,EAAczT,SACxDsO,EAAc,CAAEnK,GAAI,iBAItB,GEpCLyC,GAAO1I,IAAe,IAAd,KAAE2I,GAAM3I,EACpB,MAAM,MAAE8E,EAAK,SAAE8D,GAAaZ,IAC5B,OACEvG,EAAAA,EAAAA,KAACgQ,EAAAA,KAAI,CAACmE,IAAK,EAAE9T,SACV6G,EAAKE,KAAI,CAAC3E,EAAM4E,KACf,MAAMG,EAAgB/E,EAAK6D,KAC3B,OACE1D,EAAAA,EAAAA,MAACoN,EAAAA,KAAI,CACHmE,IAAK,GAELhM,MAAM,SAAQ9H,SAAA,EAEduC,EAAAA,EAAAA,MAAA,OAAK3C,UAAWC,EAAM,gBAAgBG,SAAA,CAAEoC,EAAKT,MAAMuF,MAAM,QACzDvH,EAAAA,EAAAA,KAACgQ,EAAAA,KAAI,CAACvH,MAAM,EAAMN,MAAM,SAAQ9H,UAC9BL,EAAAA,EAAAA,KAACwH,EAAa,IACR/E,EAAKT,MACTqB,MACEA,EACI8B,IAAI9B,EAAM8B,IAAI1C,EAAKT,MAAMsF,MAAO,SAChC7E,EAAKT,MAAMqB,MAEjB8D,SACEA,EACK9D,GACC8D,EAAS,CACPG,KAAM7E,EAAKT,MAAMsF,KACjBC,MAAO9E,EAAKT,MAAMuF,MAClBlE,UAEJZ,EAAKT,MAAMmF,eApBhB1E,EAAKQ,KAAOR,EAAKT,MAAMsF,MAAQD,EAwB/B,KAGN,EAIL+M,IAAiBC,EAAAA,EAAAA,gBAAe,CAAErM,eAAc,EAAEC,WAAY,UAA7CoM,EACpBrS,IACC,MAAM,cAAE2M,IAAkBI,EAAAA,EAAAA,SAAQ,CAAE9G,WAAY,WAChD,OACEjI,EAAAA,EAAAA,KAAC2J,EAAW,IAAK3H,EAAK3B,SACnBO,IAAiC,IAAhC,MAAEyC,EAAK,SAAE8D,EAAQ,MAAEnF,GAAOpB,EAC1B,MAAM,KAAEsG,EAAI,KAAEoN,GAAStS,EACvB,OACEY,EAAAA,EAAAA,MAAA,OAAAvC,SAAA,EACEuC,EAAAA,EAAAA,MAACoN,EAAAA,KAAI,CAACmE,IAAK,EAAGlE,UAAQ,EAAChQ,UAAWC,EAAM,mBAAmBG,SAAA,CACxD6G,EAAKE,KAAI,CAAC3E,EAAM4E,KACRrH,EAAAA,EAAAA,KAACiH,GAAI,CAAaC,KAAMzE,GAAb4E,KAEnBiN,IACCtU,EAAAA,EAAAA,KAACuU,EAAe,CACdtU,UAAWC,EAAM,wBACjBqH,MAAO,GAAGoH,EAAc,CAAEnK,GAAI,gBAC9B0C,KAAM,CAACoN,QAIZjR,GAASA,EAAMgC,OAAS,IACvBrF,EAAAA,EAAAA,KAACuK,EAAkB,CAAClH,MAAOA,EAAO8D,SAAUA,MAE1C,GAGE,IAKpBiN,GAAeX,OAASe,GACxB,YChFA,GAJ4BjW,IAA6B,IAA5B,SAAE8B,KAAa2B,GAAOzD,EACjD,OAAO8B,EAAS2B,EAAM,ECMxBqI,EAAOoJ,OAASA,EAChBpJ,EAAOoK,eAAiBA,GACxBpK,EAAOqK,UAAYA,EACnBrK,EAAOsK,YAAcA,GACrBtK,EAAOwH,gBAAkBA,GACzB,U,gDCZA,MAOA,EAPwBhL,IACf,CACL,QAASC,IAAM,+BACf,QAASC,IAAM,iCACfF,M,yDCHJ,QAA+B,mCAA/B,EAA0E,4BAA1E,EAAgH,8BAAhH,EAAqJ,2B,0BCOrJ,MAgCA,EAhCoBtI,IAA0B,IAAzB,KAAE+I,EAAI,UAAErH,GAAW1B,EACtC,OACEyB,EAAAA,EAAAA,KAAC+H,EAAAA,aAAY,CAACC,eAAgBA,EAAgBC,WAAW,cAAa5H,UACpEL,EAAAA,EAAAA,KAAC4U,EAAAA,QAAI,CAAC3M,WAAW,cAAcX,KAAMA,EAAKjH,SACtC6D,GAEEA,GACAA,EAAKb,QACHrD,EAAAA,EAAAA,KAAA,OAAKC,UAAWK,IAAWJ,EAAuBD,GAAWI,UAC3DuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAACjI,UAAWC,EAAeG,SAAA,EAC/BL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAAC+L,UAAQ,EAACvO,KAAK,8BACpBtG,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAiBG,SAAE6D,EAAKiK,UACxCjK,EAAK4Q,MACJlS,EAAAA,EAAAA,MAACmS,EAAAA,WAAWC,KAAI,CACd/U,UAAWC,EACX+U,KAAM/Q,EAAK4Q,IACX5R,OAAO,SAAQ7C,SAAA,CAChB,4BAECL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,wCASd,C,6KClCZ,MAAMxD,EAAe,CAC1BoS,KAAM,KACNhQ,OAAQ,KACRiQ,UAAU,EACVC,UAAW,QACXC,WAAW,EACXC,iBAAiB,EACjBC,gBAAiB,KACjBxF,OAAQ,KACRyF,aAAc,EACdC,aAAa,EACbC,WAAY,KACZC,QAAS,KACTC,MAAO,KACPC,WAAY,KACZC,eAAgB,KAChBC,UAAU,EACVC,WAAW,EACXC,mBAAoB,EACpBC,OAAQ,KACRC,YAAa,QACbC,iBAAiB,EACjBC,aAAa,EACbC,aAAc,MAGHxQ,GAAUC,EAAAA,EAAAA,eAAc,CAAC,IAEzB,SAAEC,EAAQ,SAAEuQ,GAAazQ,EAEzBS,EAAaA,KACjBS,EAAAA,EAAAA,YAAgBlB,G,wFChCzB,SAAgB,OAAS,6BAA6B,eAAe,mCAAmC,YAAY,gCAAgC,oBAAoB,wCAAwC,aAAa,iCAAiC,eAAe,mCAAmC,aAAa,iCAAiC,YAAY,gCAAgC,YAAY,gCAAgC,OAAS,6BAA6B,kBAAkB,sCAAsC,iBAAiB,qCAAqC,mBAAmB,uCAAuC,uBAAuB,2CAA2C,cAAc,kCAAkC,oBAAoB,wCAAwC,qBAAqB,yCAAyC,kBAAkB,sCAAsC,WAAW,+BAA+B,sBAAsB,0CAA0C,gBAAgB,oCAAoC,aAAa,iCAAiC,kBAAkB,sCAAsC,aAAa,iCAAiC,cAAc,kCAAkC,mBAAmB,uCAAuC,cAAc,kCAAkC,WAAW,+BAA+B,eAAe,mCAAmC,mBAAmB,uCAAuC,iBAAiB,qCAAqC,kBAAkB,sCAAsC,iBAAiB,qCAAqC,YAAY,iC,eCE1rD,MA8BA,EA9BuBvH,IAAuC,IAAtC,UAAE0B,EAAS,QAAEuW,EAAO,SAAEnW,GAAU9B,EACtD,OAAIiY,GAEAxW,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IACTL,EACA,kBACAC,EAAM,mBACN,CACE,CAACA,EAAM,aAAcsW,IAEvBnW,SAEDA,KAKLL,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IACTL,EACA,kBACAC,EAAM,oBACNG,SAEDA,GACG,E,+EChBV,MAAMoW,EAAkB,0BAgExB,EAnDaC,KACX,MAAM,UAAEC,EAAS,aAAEC,GAAiBrQ,KAC9B,KAAE2O,EAAI,SAAEC,EAAQ,UAAEC,EAAS,UAAEC,EAAS,gBAAEC,GAAoBqB,EAG5DE,GADWC,EAAAA,EAAAA,eACeC,SAASC,MAAM,KAAK,GAEpD,OAAO9B,GACLtS,EAAAA,EAAAA,MAAC8F,EAAAA,IAAG,CACFzI,UAAWK,IAAWJ,EAAM,aAAc,CACxC,CAACA,EAAc,SAAKiV,IAEtBjV,MAAO,CAAE,UAAWkV,GAAY/U,SAAA,EAEhCL,EAAAA,EAAAA,KAACiX,EAAc,CAAChX,UAAWC,EAAM,mBAAoBsW,QAASnB,EAAUhV,UACtEL,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,wBAAwBG,UAC5CL,EAAAA,EAAAA,KAACmM,EAAAA,EAAS,CAAClM,UAAWC,EAAM,kBAAkBG,SAAE6U,QAGnDI,GACCtV,EAAAA,EAAAA,KAACiX,EAAc,CACbhX,UAAWK,IAAWJ,EAAM,uBAAwB,CAClD,CAACA,EAAM,aAAcmV,IAEvBmB,QAASnB,EAAUhV,UAEnBL,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CACLzJ,UAAWK,IAAWJ,EAAM,iBAAkB,CAC5C,CAACA,EAAc,SAAKiV,IAEtB+B,KACE/B,GACEnV,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,0BAEXtG,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,0BAGfuC,QAASA,KACP+N,EAAa,CAAEzB,UAAWwB,EAAUxB,WACpC,MAAMgC,EAAahU,EAAAA,EAAaH,QAAQyT,IAAoB,CAAC,EAC7DU,EAAWN,IAAmBF,EAAUxB,SACxChS,EAAAA,EAAaO,QAAQ+S,EAAiBU,GACtCP,EAAa,CAAEzB,UAAWwB,EAAUxB,UAAW,MAInD,QAEJ,IAAI,ECnEJiC,EAAY7Y,IAAqC,IAApC,SAAE8B,EAAQ,OAAEqG,KAAW1E,GAAOzD,EAC/C,MAAM,aAAEqY,GAAiBrQ,IACnB8Q,GAAWzY,EAAAA,EAAAA,QAAO,MAClB0Y,EDKmBC,MACzB,MACMV,GADWC,EAAAA,EAAAA,eACeC,SAASC,MAAM,KAAK,GACpD,OAAOlN,EAAAA,EAAAA,UAAQ,KACb,MAAMqN,EAAahU,EAAAA,EAAaH,QAAQyT,IAAoB,CAAC,EAC7D,QAAO1M,EAAAA,EAAAA,GAAW5E,IAAIgS,EAAYN,KAC9B1R,IAAIgS,EAAYN,EACZ,GACP,CAACA,GAAgB,ECbEU,GAChBC,GAAmB5Y,EAAAA,EAAAA,QAAO0Y,GA4BhC,OA3BAE,EAAiBvY,QAAUqY,GAC3BhY,EAAAA,EAAAA,YAAU,KACR,IAAKkU,IAAQ6D,EAASpY,QAAS+C,GAAQ,CACrCqV,EAASpY,QAAU+C,EAMnB,MAAMyV,EAAcxV,OAAOC,OACzB,CAAC,EACDY,EACAd,EACoC,mBAA7BwV,EAAiBvY,QACpB,CAAEkW,SAAUqC,EAAiBvY,SAC7B,CAAC,GAEHwY,EAAY1H,QAAuC,IAA7B0H,EAAYjC,qBAC7BiC,EAA0B,aAE/BA,EAAYnB,cAAmD,IAAnCmB,EAAYxB,2BACnCwB,EAA0B,aAEnCb,EAAaa,EACf,IACC,CAACzV,EAAO4U,KAEI,IAAXlQ,GACK1G,EAAAA,EAAAA,KAAC0X,EAAAA,OAAM,CAACC,OAAO,MAAMC,SAAS,+CAGhCvX,CAAQ,EAGXwX,EAAOjX,IAAkD,IAAjD,UAAEkX,EAAS,KAAExQ,EAAI,aAAEyQ,KAAiB/V,GAAOpB,EACvD,OAAqB,IAAjBmX,GAEA/X,EAAAA,EAAAA,KAACgY,EAAAA,QAAQ,CAACxT,GAAI8C,EAAKjH,SAChB4M,IAAA,IAAC,OAAEvG,GAAQuG,EAAA,OAAKgL,EAAAA,EAAAA,eAACb,EAAS,IAAKpV,EAAOiB,IAAKqE,EAAMZ,OAAQA,GAAU,KAInEuR,EAAAA,EAAAA,eAACb,EAAS,IAAKpV,EAAOiB,IAAKqE,GAAQ,EAG5CuQ,EAAK/U,aAAeA,EAEpB,UC3CA,EAdcvE,IAA+D,IAA9D,QAAEiY,EAAO,UAAE0B,EAAS,aAAEC,EAAY,SAAEhR,KAAanF,GAAOzD,EACrE,OAAKiY,GAIHxW,EAAAA,EAAAA,KAACoY,EAAAA,MAAS,IACJpW,EACJkW,UAAW1U,OAAO6U,UAAUH,GAAaA,EAAY,GAAMA,EAC3DC,aAAcA,EACdhR,SAAUA,KAPLnH,EAAAA,EAAAA,KAAA,UAASgC,GAQd,ECiBN,EALwBpB,IAA8B,IAA7B,UAAE0X,KAActW,GAAOpB,EAC9C,MAAMI,EAtBmBzC,KAAoB,IAAnB,UAAE+Z,GAAW/Z,EACvC,MAAM,aAAEqY,GAAiBrQ,IACnBvF,GAAMpC,EAAAA,EAAAA,QAAO,MAgBnB,OAfA2Z,EAAAA,EAAAA,kBAAgB,KACd,MAAMC,EAAWA,KACf5B,EAAa,CACX,CAAC0B,GAAYtX,EAAI/B,QAAQyC,cACzB,EAGJ8W,IACA,MAAMrW,EAAiB,IAAIsW,iBAAiBD,GAE5C,OADArW,EAAeO,QAAQ1B,EAAI/B,QAAS,CAAEyZ,SAAS,EAAMC,WAAW,IACzD,KACLxW,EAAeE,YAAY,CAC5B,GACA,CAACuU,EAAc0B,IAEXtX,CAAG,EAIE4X,CAAmB,CAAEN,cACjC,OAAOtY,EAAAA,EAAAA,KAAA,UAASgC,EAAOhB,IAAKA,GAAO,ECNrC,EAde6X,KACb,MAAM,UAAElC,GAAcpQ,KAChB,OAAEwJ,EAAM,YAAE0F,GAAgBkB,EAChC,OAAO5G,GACL/P,EAAAA,EAAAA,KAAC8Y,EAAK,CACJtC,QAASf,EACTxV,UAAWC,EAAM,eACjBgY,UAAWa,EAAAA,iBAAiB1Y,UAE5BL,EAAAA,EAAAA,KAACgZ,EAAe,CAACV,UAAU,eAAcjY,SAAE0P,MAE3C,IAAI,ECEV,EAdmBkJ,KACjB,MAAM,UAAEtC,GAAcpQ,KAChB,WAAEmP,GAAeiB,EACjBuC,GAAgBta,EAAAA,EAAAA,QAAO,MAC7B,OAAO8W,GACL1V,EAAAA,EAAAA,KAAA,OACEgB,IAAKkY,EACLjZ,UAAWK,IAAWJ,EAAM,oBAAqB,oBAAoBG,SAEpEqV,IAED,IAAI,E,eCVV,MAyCA,EAzCkBnX,IAA6D,IAA5D,MAAEqX,EAAK,OAAE1Q,EAAM,WAAE2Q,EAAU,eAAEC,EAAc,QAAEH,GAASpX,EACvE,MAAM4a,GAAYC,EAAAA,EAAAA,eAClB,OAAIlU,GAEAlF,EAAAA,EAAAA,KAACqK,EAAAA,QAAM,CAACpK,UAAWC,EAAM,iBAAmBgF,EAAQyC,MAAOkO,IAGzDD,GAASE,GAAkBD,GAI/BjT,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACC,QAAQ,gBAAgBL,MAAM,SAASlI,UAAWC,EAAM,cAAcG,SAAA,EACzEL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFuC,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAAA7H,SAAA,CACHuV,GACC5V,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,mBAAmBG,SACtCsV,GACC/S,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAAA7H,SAAA,EACJL,EAAAA,EAAAA,KAAA,QACEC,UAAWC,EAAM,aACjB2I,QAASA,KACPsQ,EAAUxD,EAAQ,EAClBtV,UAEFL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,4BAEbtG,EAAAA,EAAAA,KAAA,QAAAK,SAAOuV,OAGTA,IAGF,KACHE,GAAkC,WAGvC9V,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,SAAEwV,OA5BD,IA6BD,ECMV,EAzCewD,KACb,MAAM,UAAE1C,GAAcpQ,KAChB,OACJ2P,EAAM,YACNC,EAAW,YACXE,EAAW,aACXC,EAAY,mBACZL,EAAkB,gBAClBG,GACEO,EACJ,OAAOT,GACLlW,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CACFzI,UAAWK,IAAWJ,EAAM,eAAgB,eAC5CA,MAAO,CACL,UAAWiW,EACX,gBAAiBF,EAAqB,MACtC5V,UAEFuC,EAAAA,EAAAA,MAACqU,EAAc,CACbhX,UAAWC,EAAM,qBACjBsW,QAASH,EAAYhW,SAAA,EAErBL,EAAAA,EAAAA,KAACmM,EAAAA,EAAS,CACRlM,UAAWK,IAAWJ,EAAM,oBAAqB,oBACjDA,MAAO,CAAEoZ,QAASlD,EAAkB,MAAQ,wBAAyB/V,SAEpE6V,IAEFI,GACCtW,EAAAA,EAAAA,KAACgZ,EAAe,CACd/Y,UAAWC,EAAM,sBACjBoY,UAAU,qBAAoBjY,UAE9BL,EAAAA,EAAAA,KAACkI,EAAAA,MAAK,CAACC,MAAM,SAAQ9H,SAAEiW,MAEvB,UAGN,IAAI,E,0BClCV,MAAM,QAAEiD,GAAYC,EAAAA,OAEdC,EAAiBA,KAEnBzZ,EAAAA,EAAAA,KAAC0Z,EAAAA,MAAK,CACJtH,QAAQ,+GACRuH,UAAQ,EACRrT,KAAK,QACLsT,QACE5Z,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CAACtB,KAAK,QAAQyR,QAAM,EAAChR,QAASA,IAAMlG,OAAOmX,SAASC,SAAS1Z,SAAC,mBAQvE2Z,EAAiBhY,IACdhC,EAAAA,EAAAA,KAACia,EAAAA,EAAkB,IAAKjY,EAAOkY,eAAgBT,IAGlDU,EAAS5b,IAAsC,IAArC,SAAE8B,EAAQ,MAAE+Z,EAAK,WAAEC,GAAY9b,EAC7C,MAAOuD,EAAYwY,IAAiBvb,EAAAA,EAAAA,UAAS,IACtC4X,EAAW4D,IAAiBxb,EAAAA,EAAAA,UAASkD,OAAOC,OAAO,CAAC,EAAGY,KACxD,YAAE0X,IAAgBC,EAAAA,EAAAA,kBAClB7D,GAAe8D,EAAAA,EAAAA,cAAarX,GACzBkX,GAAe5D,GACb1U,OAAOC,OAAO,CAAC,EAAGyU,EAAWtT,MAErC,IAYH,OAXA/D,EAAAA,EAAAA,YAAU,KACR,MAAM+B,GAAWJ,EAAAA,EAAAA,KACX0Z,EAAgBA,KACpBL,EAAcjZ,EAASS,WAAW,EAGpC,OADAT,EAASzB,iBAAiB,SAAU+a,GAC7B,KACLtZ,EAASxB,oBAAoB,SAAU8a,EAAc,CACtD,GACA,KAGD/X,EAAAA,EAAAA,MAAC4W,EAAAA,OAAU,CACTvZ,UAAWC,EAAc,OACzBA,MAAO+B,OAAOC,OACZ,CAAC,EACD,CACE,eAAgB6W,EAAAA,iBAAmB,KACnC,oBAAqB,oBACrB,iBAAkBjX,EAAa,MAEjCsY,GACA/Z,SAAA,CAEDga,IACCra,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAAC4a,EAAAA,QAAU,CACTJ,YAAaA,KACTH,EACJlT,SAAW0T,KACC,OAAVR,QAAU,IAAVA,OAAU,EAAVA,EAAYlT,WAAYkT,EAAWlT,SAAS0T,EAAK,OAKzD7a,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAACuZ,EAAO,CAACtZ,UAAWC,EAAM,uBAAuBG,UAC/CuC,EAAAA,EAAAA,MAACoD,EAAQ,CAAC3C,MAAO,CAAEsT,YAAWC,gBAAevW,SAAA,EAC3CL,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAAC6Y,EAAM,OAET7Y,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAACiZ,EAAU,OAEbjZ,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZuC,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CACFtI,UAAWK,IAAWqW,EAAU1W,UAAWC,EAAM,eACjDuI,MAAM,EACNvI,MAAO,CACL,eAAgB,QACdyW,EAAUlB,YAAckB,EAAUnB,aAAe,gCAEnD,oBAAqB,0BACrBnV,SAAA,EAEFL,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAAC0W,EAAI,OAEP1W,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CACFzI,UAAWK,IAAWJ,EAAM,gBAAiB,CAC3C,CAACA,EAAM,cAAeyW,EAAUZ,WAElCpN,KAAM,EACNzI,MAAO,CAAE,qBAAsByW,EAAUpB,iBAAkBlV,UAE3DuC,EAAAA,EAAAA,MAAA,OAAK3C,UAAWC,EAAM,aAAaG,SAAA,EACjCL,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAAC8a,EAAS,CACRlF,MAAOe,EAAUf,MACjBD,QAASgB,EAAUhB,QACnBzQ,OAAQyR,EAAUzR,OAClB2Q,WAAYc,EAAUd,WACtBC,eAAgBa,EAAUb,oBAG9B9V,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IAAWJ,EAAM,qBAAsB,CAChD,CAACA,EAAM,eAAgByW,EAAUX,YAChC3V,UAEHuC,EAAAA,EAAAA,MAACoX,EAAa,CAAA3Z,SAAA,CACXsW,EAAUoE,kBACT/a,EAAAA,EAAAA,KAACgb,EAAAA,QAAW,CACV/a,UAAWC,EAAM,qBACjBoH,KAAMqP,EAAUoE,kBAGnB1a,aAKTL,EAAAA,EAAAA,KAACga,EAAa,CAAA3Z,UACZL,EAAAA,EAAAA,KAACqZ,EAAM,oBAOR,EAIjBc,EAAOrX,aAAe,CACpBuX,WAAY,CAAC,GAGf,UC3IA,EARwB9b,IAAgC,IAA/B,YAAEic,KAAgBxY,GAAOzD,EAChD,OACEyB,EAAAA,EAAAA,KAACib,EAAAA,QAAW,IAAKhZ,OAAOC,OAAO,CAAC,EAAGsY,EAAa,CAAElU,KAAM,UAAUjG,UAChEL,EAAAA,EAAAA,KAAC6X,EAAI,IAAK7V,KACE,E,0BCAlB,MA+CA,GA/CkBkZ,EAAAA,EAAAA,aAChB,CAAA3c,EAUEyC,KACI,IAVJ,gBACE+Z,EAAe,YACfP,EAAW,KACXW,EAAI,aACJpD,EAAY,KACZzQ,EAAI,QACJ8T,KACGpZ,GACJzD,EAGD,MAAO8c,EAAWC,IAAgBvc,EAAAA,EAAAA,UAAS,MAC3C,OACE6D,EAAAA,EAAAA,MAAC2Y,EAAe,CACdjU,KAAMA,EACNyQ,aAAcA,EACdyC,YAAaA,KACTW,EAAI9a,SAAA,CAEP+a,GACCpb,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,kBAAkBG,SAClB,oBAAZ+a,EAAyBA,EAAQC,GAAaD,IAEtD,MACJxY,EAAAA,EAAAA,MAAA,OAAK3C,UAAWC,EAAM,cAAcG,SAAA,CACjC0a,IACC/a,EAAAA,EAAAA,KAACgb,EAAAA,QAAW,CACV/a,UAAWK,IAAW,eAAgBJ,EAAM,iBAC5CoH,KAAMyT,KAGV/a,EAAAA,EAAAA,KAACwb,EAAAA,UAAK,IACAxZ,EACJhB,IAAKA,EACLsG,KAAMA,EACNmU,iBAAmBvX,IACjBoX,EAAapX,EAAK,SAIR,I,eC5CxB,MAqBA,EArBqB3F,IAOd,IAPe,gBACpBwc,EAAe,YACfP,EAAW,KACXW,EAAI,SACJO,EAAQ,SACRrb,KACG2B,GACJzD,EACC,OACEqE,EAAAA,EAAAA,MAAC2Y,EAAe,IAAKJ,EAAMX,YAAaA,KAAiBxY,EAAK3B,SAAA,EAC5DL,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,kBAAkBG,UACtCL,EAAAA,EAAAA,KAAC2b,EAAAA,QAAQ,IAAKD,MAEfX,IACC/a,EAAAA,EAAAA,KAACgb,EAAAA,QAAW,CAAC/a,UAAWC,EAAM,gBAAiBoH,KAAMyT,IAEtD1a,IACe,C,gDCrBtB,SAAgB,KAAO,2BAA2B,oBAAoB,wCAAwC,gBAAgB,oCAAoC,eAAe,mCAAmC,oBAAoB,wCAAwC,UAAU,8BAA8B,MAAQ,4BAA4B,OAAS,6BAA6B,cAAc,kCAAkC,gBAAgB,oCAAoC,QAAU,+B,6ICUhf,MA6CMub,EAAY5Z,IAChB,MAAMqY,GAAajB,EAAAA,EAAAA,gBACb,GACJ5U,EAAE,UACFvE,EAAS,MACTsH,EAAK,SACLsU,EAAQ,KACRhB,EAAI,QACJiB,EAAO,QACPjT,EAAO,OACPkT,EAAM,WACNC,EAAU,aACV9Q,EAAY,SACZ7K,EAAQ,aACR4b,EAAY,MACZC,EAAK,OACLC,EAAM,eACNC,GACEpa,EAEEqa,EACH/Z,MAAM+B,QAAQhE,IAAaA,EAASgF,OAAS,GAAM4W,GAChD,QAAEK,EAAO,UAAEC,IAAcC,EAAAA,EAAAA,UAC7Bva,OAAOC,OAAO,CAAC,EAAG+Z,EAAc,CAC9BQ,MAAOL,GAAkBH,EACzBR,iBAAmBvX,IACjBiY,EAAOjY,EAAK,KAqBlB,OACElE,EAAAA,EAAAA,KAACib,EAAAA,QAAW,CAACa,QAASA,EAAQzb,UAC5BuC,EAAAA,EAAAA,MAAA,OAAK3C,UAAWK,IAAWL,EAAWC,EAAM,cAAcG,SAAA,EACxDuC,EAAAA,EAAAA,MAAA,OACE3C,UAAWK,IAAWJ,EAAa,MAAG,CACpC,CAACA,EAAc,QAAI8b,EACnB,CAAC9b,EAAM,iBAAkBmc,EACzB,CAACnc,EAAM,gBAAiBmc,IAAgBD,EACxC,CAAClc,EAAM,mBAAoB2b,EAC3B,CAAC3b,EAAM,YAAuB,IAAVgc,IAEtBrT,QAAUrJ,IACRA,EAAE4O,kBACGiO,IAAexB,EAIfwB,GAAgBJ,EAIhBG,IAGLH,GAAgBK,EAAQ,CAAC,GACzBpR,GAAc6Q,IAPL,OAAPlT,QAAO,IAAPA,GAAAA,EAAUrE,EAAIxC,GAJdqY,EAAWQ,EAWQ,EACrBxa,SAAA,CAEDwb,IAAY7b,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAMuV,KACzB7b,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAM,iBAAiBG,SAAEkH,IACzC8U,GAAeD,IACdpc,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CACHxC,KAAMyV,EAAS,uBAAyB,6BA/C7CM,GAGAD,GAAmBL,GAAU1b,GACzBL,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,iBAAiBG,SAAEA,KAG7C+b,GAAmBL,GAAUQ,GAE9Bvc,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,iBAAiBG,UACrCL,EAAAA,EAAAA,KAAC0c,EAAAA,KAAI,CAACzc,UAAWC,EAAe,QAAGkI,KAAK,iBAH9C,EANS,SAoDK,EAIZsO,EAAOnY,IAAyD,IAAxD,UAAE0B,EAAS,eAAEmc,EAAc,UAAEO,KAAc3a,GAAOzD,EAC9D,MAAM,SAAEwY,EAAQ,OAAE6F,IAAW9F,EAAAA,EAAAA,gBACtB+F,EAAaC,GAAsBjT,IAAgB7H,EAAO,CAC/DqB,MAAO,aACP+G,aAAc,uBAGTiJ,EAAO0J,GAAYlT,IAAgB7H,EAAO,CAC/CoI,aAAc,eACd/G,MAAO,QACP8D,SAAU,mBAIVkM,MAAO2J,EAAW,gBAClBC,EAAe,MACfC,EAAK,aACLC,EAAY,aACZC,EAAY,YACZf,IACEvS,EAAAA,EAAAA,UAAQ,KAAO,IAADuT,EAChB,MACEhK,MAAO2J,EAAW,aAClBG,EAAY,YACZG,GA9JejK,KACnB,MAAM8J,EAAe,CAAC,EACpBG,EAAc,GACVC,EAAYA,CAACld,EAAUuG,KAC3B,MAAM,UAAE4W,EAAS,MAAEtB,GAAUja,OAAOC,OAClC,CACEsb,UAAW,OACXtB,MAAO,EACPuB,MAAO,IAET7W,GAEF,OAAMtE,MAAM+B,QAAQhE,IAAaA,EAASgF,OAAS,EAG5ChF,EAAS+G,KAAI,CAAC3E,EAAM4E,KACzB,MAAMqW,EAAa,GACjBjb,EAAKQ,KACL,GAAiB,SAAdua,EAAuB,GAAGA,KAAe,UAAUnW,MAEnD8V,EAAaK,KAChBL,EAAaK,GAAa,IAE5BL,EAAaK,GAAW5Q,KAAK8Q,GAC7B,MAAMrd,EAAWkd,EAAU9a,EAAKpC,SAAU,CACxCmd,UAAWE,EACXxB,MAAOA,EAAQ,IAEjBiB,EAAaO,IACXP,EAAaK,GAAW5Q,QAAQuQ,EAAaO,IAC/C,MAAMC,EAAa1b,OAAOC,OAAO,CAAC,EAAGO,EAAM,CACzCQ,IAAKya,EACLF,YACAtB,QACA7b,SAAUA,EACVud,WAAYnb,IAGd,OADA6a,EAAYI,GAAcC,EACnBA,CAAU,IAzBV,IA0BP,EAGJ,MAAO,CAAEtK,MAAOkK,EAAUlK,GAAQ8J,eAAcG,cAAa,EAqHvDO,CAAYxK,GAChB,IAAI+J,GAAe,EACjBf,GAAc,EAChB,MAAMa,EAAQ,GACZD,EAAkB,GAYpB,OAXY,OAAZE,QAAY,IAAZA,GAAsB,QAAVE,EAAZF,EAAqB,YAAC,IAAAE,GAAtBA,EAAwB7a,SAASS,IAC/B,MAAMwK,EAAO6P,EAAYra,GACrBwK,EAAKoO,WACPuB,GAAe,GAEjB3P,EAAKoN,MAAQqC,EAAMtQ,KAAK,CAAEiO,KAAMpN,EAAKoN,KAAM5X,QACvCX,MAAM+B,QAAQoJ,EAAKpN,WAAaoN,EAAKpN,SAASgF,OAAS,IACzDgX,GAAc,EACdY,EAAgBrQ,KAAKa,EAAKxK,KAC5B,IAEK,CACLga,kBACAC,QACA7J,MAAO2J,EACPG,eACAC,eACAf,cACD,GACA,CAAChJ,KACJ/T,EAAAA,EAAAA,YAAU,KACR,MAAMwe,EAAcZ,EAAMrK,MAAKjS,IAAe,IAAd,KAAEia,GAAMja,EACtC,MAAyB,oBAAd+b,EACFA,EAAU9B,EAAM,CAAE9D,WAAU6F,WAGnCmB,IAAYhH,EAASiH,QAAQ,UAAW,OAASD,IAAYlD,IAC7DkD,IAAYhH,EAAW6F,KAAYmB,IAAYlD,EAAK,IAGpDiD,GACFhB,EAAmBgB,EAAY7a,IACjC,GACC,CAACia,EAAOnG,EAAU6F,EAAQE,EAAoBH,IAEjD,MAAOsB,EAAUC,GAAerU,IAC9B5H,OAAOC,OAAO,CAAC,EAAGF,EAAO,CACvBib,gBAAiBjb,EAAMib,iBAAmBA,IAE5C,CACE5Z,MAAO,WACP+G,aAAc,kBACdjD,SAAU,iBAIRgX,GAAiBzD,EAAAA,EAAAA,cACrB,CAACra,EAAUuG,KACT,MAAM,UAAE4W,EAAS,MAAEtB,EAAK,YAAEW,EAAW,SAAEoB,EAAQ,MAAER,GAAUxb,OAAOC,OAChE,CACEsb,UAAW,KACXtB,MAAO,EACPuB,MAAO,IAET7W,GAEF,OAAItE,MAAM+B,QAAQhE,IAAaA,EAASgF,OAAS,EACxChF,EAAS+G,KACd6F,IAAyD,IAAxD,SAAE5M,EAAU4C,IAAKya,EAAU,WAAEE,KAAenb,GAAMwK,EACjD,OACEgL,EAAAA,EAAAA,eAAC2D,EAAQ,IACH3Z,OAAOC,OAAO,CAAC,EAAGO,GACtB+B,GAAIkZ,EACJnZ,SAAUiZ,EACVtB,MAAOA,EACPE,eAAgBA,EAChBJ,WACE0B,IAAeb,GACdM,EAAaO,IACZP,EAAaO,GAAYhY,QAAQmX,IAAgB,EAErDhU,QAASiU,EACTX,OAASjY,IACP6Y,GAAU1J,IACR,MAAM7F,EAAQnN,GACRiC,MAAM+B,QAAQhE,IAAaA,EAASgF,OAAS,EACxChF,EAAS+G,KAAK3E,GACZR,OAAOC,OAAO,CAAC,EAAGO,EAAM,CAC7BpC,SACEud,IAAenb,EAAOyB,EAAOsJ,EAAK/K,EAAKpC,cAIxC,KAGT,OAAOmN,EAAK6F,EAAM,GAClB,EAEJ0I,QAASkC,GAAY,IAAIvY,QAAQgY,IAAe,EAChDza,IAAKya,EACLxS,aAAcA,KACZgT,GAAaD,IACX,MAAMG,EAAcH,EAASrV,MAAM,GAMnC,OALIqV,EAASvY,QAAQgY,IAAe,EAClCU,EAAY3U,OAAOwU,EAASvY,QAAQgY,GAAa,GAEjDU,EAAYxR,KAAK8Q,GAEZU,CAAW,GAClB,GAGHD,EAAe9d,EAAU,CACxBmd,YACAtB,MAAOA,EAAQ,EACfW,cACAoB,WACAR,MAAO,IAAIA,EAAOC,KAEX,IAKZ,IAAI,GAEb,CAACX,EAAUmB,EAAapB,EAAoBK,EAAcf,IAG5D,OACEpc,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IAAWL,EAAWC,EAAY,KAAG,CAC9C,CAACA,EAAM,uBAAwBkd,EAC/B,CAACld,EAAM,sBAAuBmc,IAC7Bhc,SAEF8d,EAAenB,EAAa,CAAEH,cAAaoB,cACxC,EAIVvH,EAAK5T,aAAe,CAClBub,aAAc,GACdjC,gBAAgB,GAGlB,S,oJCnQA,MACA,EAAe,IAA0B,4D,eCtDzC,MAMA,EANwBvV,IACZ,CACJ,QAASC,IAAM,+BAAmB,QAASC,IAAM,gCAClDF,M,8CCFP,QAAkC,sCAAlC,EAAqF,iCAArF,EAAiI,+BAAjI,EAAkL,sCAAlL,EAA+N,2BAA/N,EAA4Q,sCAA5Q,EAAuU,yCAAvU,EAA8a,gC,eCY9a,MAAM,OAAEgS,GAAWsB,EAAAA,OAENpB,EAAmB,GAE1BuF,EAAW/f,IAAsC,IAArC,KAAE+I,EAAI,QAAEiX,EAAO,aAAEC,GAAcjgB,EAC/C,MAAM8Y,GAAWzY,EAAAA,EAAAA,QAAO,CACtB2f,UACAC,iBAMF,OAJAlf,EAAAA,EAAAA,YAAU,KACR,MAAMsW,EAAQzQ,IAAIkS,EAASpY,QAAQsf,QAAQpZ,IAAImC,GAAO,SACtD3H,SAASiW,OAASA,EAAQA,EAAQ,IAAM,IAAMyB,EAASpY,QAAQuf,YAAY,GAC1E,CAAClX,IACG,IAAI,EAGPmX,EAAY7d,IAAkB,IAAjB,QAAE8d,GAAS9d,EAC5B,MAAM+d,EAAQzd,IAAewd,GAI7B,OAHApf,EAAAA,EAAAA,YAAU,KACRqf,GAAO,GACN,CAACA,IACG,IAAI,EAGP/D,EAAa3N,IAaZ,IAba,YAClBuN,EAAW,KACXtT,EAAI,WACJ0X,EAAU,aACVC,EAAY,QACZrI,EAAO,UACPsI,EAAS,WACTC,EAAU,aACVP,EAAY,oBACZQ,EAAmB,KACnBnb,EAAI,SACJsD,EAAQ,UACRlH,GACDgN,EACC,MAAMsR,GAAUzU,EAAAA,EAAAA,UAAQ,IACf,IAAIhF,IAAIoC,EAAKE,KAAIgG,IAAA,IAAC,IAAEnK,KAAQqH,GAAQ8C,EAAA,MAAK,CAACnK,EAAKqH,EAAO,MAC5D,CAACpD,IACE+X,GAAW7F,EAAAA,EAAAA,eACXU,GAAWhD,EAAAA,EAAAA,eACXoI,GAAgBtgB,EAAAA,EAAAA,UAChBugB,GAAoBvgB,EAAAA,EAAAA,QAAO,OAC1BwgB,EAAWC,IAAgBtgB,EAAAA,EAAAA,UAAS,iBACpC4f,EAAOW,IAAYvgB,EAAAA,EAAAA,WAAS,GAC7B8X,EAAiBiD,EAAS/C,SAC7BiH,QAAQ,IAAIuB,OAAO,IAAI1b,KAAS,IAChCmT,MAAM,KAAK,GACR1P,EAAOuP,EACT1R,IACE7C,MAAMC,KAAKgc,EAAQiB,WAAW3M,MAAKtF,IAAmC,IAAjCjG,GAAM,KAAEuT,EAAI,WAAE4E,IAAalS,EAG9D,OAAgD,KAD9B,oBAATsN,EAAsBA,EAAK4E,EAAYjF,GAAeK,GAClDnV,QAAQ,IAAMmR,EAAsB,IAEnD,OAEF,QACJvX,EAAAA,EAAAA,YAAU,KACR,MAAMkZ,EAAWA,KACf,GAAI0G,EAAcjgB,QAAS,CACzB,MAAMygB,EACJR,EAAcjgB,QAAQ0gB,iBAAiB,oBACzC,IAAIC,GAAQ,EACZ,IAAK,IAAIC,EAAI,EAAGA,EAAIH,EAAQra,OAAQwa,IAAK,CAGvC,IAA8B,IAFlBH,EAAQG,GACDC,aAAa,gBACrBpa,QAAQ4B,GAAc,CAC/BsY,GAAQ,EACR,KACF,CACF,CACA,IAAIG,EACFxB,EAAQpZ,IAAImC,KAAUsY,EAAQza,IAAIoZ,EAAQpZ,IAAImC,GAAO,SAAW,GAClE+X,EAAaU,EACf,GAEIC,EAA6B,CACjCC,YAAY,EACZtH,WAAW,EACXD,SAAS,GAcX,OAZIiG,GAASO,GAAiBA,EAAcjgB,UAC1CuZ,IACI2G,EAAkBlgB,SACpBkgB,EAAkBlgB,QAAQoD,aAE5B8c,EAAkBlgB,QAAU,IAAIwZ,iBAAiBD,GACjD2G,EAAkBlgB,QAAQyD,QACxBwc,EAAcjgB,QACd+gB,IAIG,KACLb,EAAkBlgB,SAAWkgB,EAAkBlgB,QAAQoD,YAAY,CACpE,GACA,CAACiF,EAAMiX,EAASI,IACnB,MAAMuB,IAAWpB,GACb,CACEvX,MAAOwX,IACL/e,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CAAC7D,GAAG,aAAayD,WAAW,eAE/ChF,IAAK,OACL4F,QAASA,KACP1B,GAAYA,EAAS,KACrBgZ,YAAW,KACTlB,EAAS,IAAI,GACZ,EAAE,GAIb,OACErc,EAAAA,EAAAA,MAACmF,EAAAA,aAAY,CAACC,eAAgBA,EAAgBC,WAAW,aAAY5H,SAAA,EACnEL,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CAAC7D,GAAG,eAAeyD,WAAW,aAAY5H,SACvD+I,IACApJ,EAAAA,EAAAA,KAACse,EAAQ,CACPE,aAAcA,GAAgBpV,EAC9BmV,QAASA,EACTjX,KAAMA,OAIZtH,EAAAA,EAAAA,KAAA,OAAKC,UAAWK,IAAWJ,EAA0BD,GAAWI,UAC9DL,EAAAA,EAAAA,KAAC6Y,EAAM,CACL5Y,UAAWK,IAAW,aAAcJ,EAAqB,CACvD,CAACA,GAAoBsW,IACpBnW,UAEHuC,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACC,QAAQ,eAAeC,MAAM,EAAMpI,SAAA,EACtCL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CACFzI,UAAWK,IACT,kBACAJ,GACAG,UAEFL,EAAAA,EAAAA,KAACogB,EAAAA,QAAK,CACJngB,UAAWK,IAAWJ,GACtBmgB,IAAKC,EACLC,IAAI,UACA3B,OAGRhc,EAAAA,EAAAA,MAAC8F,EAAAA,IAAG,CACF1H,IAAKke,EACLvW,KAAM,EACN1I,UAAWK,IACT,kBACAJ,GACAG,SAAA,EAEFL,EAAAA,EAAAA,KAACye,EAAS,CACRC,QAASA,KACPY,GAAS,EAAK,KAGlBtf,EAAAA,EAAAA,KAAC0W,EAAAA,KAAI,CACH7J,aAAc,CAACvF,GACfkZ,KAAK,aACLxB,oBACEA,IACEpc,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CAACE,KAAM,EAAE/H,SAAA,EACbL,EAAAA,EAAAA,KAAA,QAAAK,SACG+e,IACCpf,EAAAA,EAAAA,KAACqI,EAAAA,iBAAgB,CACf7D,GAAG,sBACHyD,WAAW,kBAIjBjI,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAmBG,UAClCL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,8BAKnB+M,MAAO,CACL6M,KACG5d,MAAMC,KAAKgc,EAAQiB,WACnBta,QAAO8N,IAA6B,IAA3B1L,GAAM,WAAEmY,IAAazM,EAC7B,GAA0B,kBAAfyM,EACT,OAAOjF,EAAY9U,QAAQ+Z,IAAe,EAE5C,GAA0B,oBAAfA,EACT,OAAOA,EAAWjF,GAEpB,GAAIlY,MAAM+B,QAAQob,GAAa,CAC7B,IAAK,IAAIhd,KAAQgd,EACf,GAAIjF,EAAY9U,QAAQjD,IAAS,EAC/B,OAAO,EAGX,OAAO,CACT,CACA,OAAO,CAAI,IAEZ2E,KAAIqZ,IAA0C,IAAxCnZ,GAAM,MAAEsO,EAAK,KAAEiF,EAAI,WAAE4E,IAAagB,EACvC,MAAMC,EACY,oBAAT7F,EACHA,EAAK4E,EAAYjF,GACjBK,EACN,MAAO,CACLtT,MAAOqO,EACP3S,IAAKqE,EACLuB,QAASA,KACP1B,GAAYA,EAASuZ,GACrBP,YAAW,KACTlB,EAASyB,EAAM,GACd,EAAE,EAER,WAKX1gB,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAACzI,UAAWC,EAA4BG,SAAEwe,aAIvC,EAInBjE,EAAW9X,aAAe,CACxB0T,SAAS,EACTgE,YAAa,GACbtT,KAAM,GACN4X,WAAW,EACXjb,KAAM,IAGR,S,qLCrPA,QAAwB,4B,0BCMjB,MAAM8c,EAAiBpiB,IAA+B,IAA9B,YAAEic,EAAW,QAAEsB,GAASvd,EACrD,QAAO+D,MAAM+B,QAAQyX,IAAYA,EAAQzW,OAAS,IAC9CyW,EAAQxW,MAAMoY,IAAgBlD,GAAe,IAAI9U,QAAQgY,IAAe,GACpE,EAGGjD,EAAiBA,KAC5B,MAAM,OAAEmG,IAAWC,EAAAA,EAAAA,qBACb,YAAErG,EAAW,gBAAEsG,IAAoB1a,EAAAA,EAAAA,aACzC,MAAO,CACLoU,YACEoG,EAAOpG,aACPA,GACCsG,GAAmB3b,IAAIyb,EAAQE,IAChC,GACH,EAGUC,EAAqBngB,IAAkB,IAAjB,QAAEkb,GAASlb,EAC5C,MAAM,YAAE4Z,GAAgBC,IACxB,OAAOkG,EAAe,CAAEnG,cAAasB,WAAU,EAG3Cb,EAAchO,IAQb,IARc,KACnB3G,EAAI,UACJrG,EAAS,QACT+gB,EAAO,QACP5O,EAAO,QACP0J,EAAO,SACPzb,KACG2B,GACJiL,EACC,MAAMvG,EAASqa,EAAmB,CAAEjF,YACpC,MAAwB,oBAAbzb,EACFA,EAAS,CAAEqG,SAAQJ,OAAMwV,aAGnB,IAAXpV,EACKrG,EAGI,UAATiG,GACKtG,EAAAA,EAAAA,KAAC0X,EAAAA,OAAM,CAACC,OAAO,MAAMC,SAAUxF,IAG3B,YAAT9L,GAEAtG,EAAAA,EAAAA,KAACihB,EAAAA,QAAO,CAACrL,MAAOxD,EAAQ/R,UACrB6gB,EAAAA,EAAAA,eACCF,EACA,IAAKhf,EAAO/B,UAAWK,IAAWJ,EAAgBD,IAClDI,KAMD,IAAI,EAGb4a,EAAYnY,aAAe,CACzBwD,KAAM,SACN0a,QAAS,OACT5O,QAAS,4EAGX,S,mFCxEA,SAAgB,YAAY,gCAAgC,eAAe,mCAAmC,kBAAkB,sCAAsC,oBAAoB,wCAAwC,mBAAmB,uCAAuC,kBAAkB,uC,eCa9S,MA6BA,EA7BiB7T,IAMV,IANW,UAChB0B,EAAS,KACTqG,EAAO,MAAK,YACZ6a,EAAc,GAAE,QAChBC,KACGpf,GACJzD,EACC,OACEyB,EAAAA,EAAAA,KAACqhB,EAAAA,KAAI,IACCrf,EACJ,cAAa,4BACb/B,UAAWK,IACTJ,EAAM,aACNA,EAAM,OAAOoG,aACbrG,EACA,CACE,CAACC,EAAM,oBAAqBkhB,EAC5B,CAAClhB,EAAM,iBAAkBihB,EAAY7b,MAAM7C,KAAWA,EAAKpC,aAG/DH,MAAO,CAAE,gBAAiBihB,EAAY9b,QACtCic,UAAU,EACVjO,MAAO8N,EAAY/Z,KAAIxG,IAAoC,IAAnC,IAAE2gB,EAAG,MAAEha,EAAK,IAAEtE,KAAQjB,GAAOpB,EACnD,MAAO,CAAE2G,MAAOga,GAAOha,EAAOtE,SAAQjB,EAAO,KAE/C,C,mFCtCN,SAAgB,YAAY,gCAAgC,mBAAmB,uCAAuC,kBAAkB,sCAAsC,YAAY,gCAAgC,kCAAkC,sDAAsD,wBAAwB,4CAA4C,yBAAyB,6CAA6C,UAAU,8BAA8B,WAAW,+BAA+B,oBAAoB,yC,0BCKliB,MAAMwf,EAAc,CAClBC,QAAS,UACTC,MAAO,CACLC,MAAO,UACPC,YAAa,WAEf5d,OAAQ,UACR6d,aAAc,UACdC,QAAS,UACTC,SAAU,UACVlI,OAAQ,UACRmI,KAAM,UACNC,MAAO,WAGH/Y,EAAW3K,IAQV,IARW,WAChB2jB,EAAU,KACV9Y,EAAI,KACJ9C,EAAI,eACJ6b,EAAc,UACdliB,EAAS,WACTkJ,KACGnH,GACJzD,EACC,MAAM6jB,GAAWtY,EAAAA,EAAAA,UACf,SAAAuY,EAAAC,EAAA,MAAO,CACLX,OAAkB,OAAXH,QAAW,IAAXA,GAAmB,QAARa,EAAXb,EAAclb,UAAK,IAAA+b,OAAR,EAAXA,EAAqBV,QAASH,EAAYlb,GACjDsb,aAAwB,OAAXJ,QAAW,IAAXA,GAAmB,QAARc,EAAXd,EAAclb,UAAK,IAAAgc,OAAR,EAAXA,EAAqBV,cAAeJ,EAAYlb,GAC9D,GACD,CAACA,IAGH,OACE1D,EAAAA,EAAAA,MAACsF,EAAAA,MAAK,CACJ,cAAa,4BACbjI,UAAWK,IACTJ,EAAM,qBACG,iBAAToG,EAA0BpG,EAAM,mCAAqC,IAEvEiI,MAAM,SACNC,KAAM,EAAE/H,SAAA,CAEP8I,GACCvG,EAAAA,EAAAA,MAAA,QAAM3C,UAAWC,EAAM,yBAAyBG,SAAA,CAAE8I,EAAW,OAC3D,MACJnJ,EAAAA,EAAAA,KAACiS,EAAAA,IAAG,CACF0P,MAAOS,EAAST,SACZ3f,EACJ9B,MAAO,CACLqiB,WAAYJ,EAAiBC,EAAST,MAAQ,KAAO,OACrDA,MAAOS,EAAST,MAChBa,OAAQN,EAAa,aAAaE,EAASR,cAAgB,QAE7D3hB,UAAWK,IACTJ,EAAM,aACND,EACS,WAATqG,EAAoBpG,EAAM,oBAAsB,GACvC,UAAToG,EAAmBpG,EAAM,mBAAqB,GAC9CA,EAAM,aAAaoG,KACnB6b,EAAiBjiB,EAAM,WAAa,GACpCgiB,EAAahiB,EAAM,eAAiB,GAC/B,OAAL8B,QAAK,IAALA,GAAAA,EAAO6G,QAAU3I,EAAM,aAAe,IACtCG,UAEFL,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAM,YAAYG,SAAE+I,QAEjC,EAIZF,EAASpG,aAAe,CACtB6e,MAAO,UACPrb,KAAM,UACN4b,YAAY,EACZC,gBAAgB,EAChB/Y,KAAM,GACNnJ,UAAW,IAGb,S,kECpFA,SAAgB,MAAQ,4BAA4B,YAAY,gCAAgC,YAAY,gCAAgC,kBAAkB,sCAAsC,cAAc,kCAAkC,iBAAiB,qCAAqC,cAAc,kCAAkC,QAAU,8BAA8B,wBAAwB,4CAA4C,qBAAqB,yCAAyC,kBAAkB,sCAAsC,0BAA0B,8CAA8C,gCAAgC,oDAAoD,mCAAmC,uDAAuD,iCAAiC,qDAAqD,gCAAgC,oDAAoD,+BAA+B,mDAAmD,+BAA+B,mDAAmD,UAAU,8BAA8B,oCAAoC,wDAAwD,gBAAgB,oCAAoC,iBAAiB,qCAAqC,0BAA0B,8CAA8C,WAAW,+BAA+B,mBAAmB,uCAAuC,YAAY,gCAAgC,kBAAkB,uC,mGCAxlD,SAAgB,WAAW,iCAAiC,IAAM,4BAA4B,OAAS,+BAA+B,MAAQ,8BAA8B,QAAU,gCAAgC,QAAU,gCAAgC,QAAU,iC,wDCK1Q,MAiCA,EAjCoB1B,IAAsC,IAArC,UAAE0B,EAAS,KAAEiH,EAAO,GAAE,MAAE9H,GAAOb,EAClD,OACEyB,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IAAWL,EAAWC,EAAM,mBACvCA,MAAO,CACL,cAAed,EAAQ,MACvBiB,UAEFL,EAAAA,EAAAA,KAACyiB,EAAAA,QAAW,CACVvb,KAAMA,EACHhC,QAAQzC,KAAc,OAAJA,QAAI,IAAJA,GAAAA,EAAMigB,UACxBtb,KAAIxG,IAAA,IAAC,UAAEX,KAAc+B,GAAOpB,EAAA,OAC3BqB,OAAOC,OAAO,CAAC,EAAGF,EAAO,CACvB/B,UAAWK,IACTL,EACA,iBACAC,EAAM,gBAERoG,KAAM,QACN,IAENgO,MACEtU,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CACLwN,MAAMlX,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,kBACjBrG,UAAU,iBACVqG,KAAK,YAIP,E,gDChCV,MAqBA,EArBiB/H,IAA6B,IAA5B,SAAE8B,EAAQ,SAAEsiB,GAAUpkB,EACtC,OACEyB,EAAAA,EAAAA,KAAC+U,EAAAA,WAAW6N,KAAI,CACdD,SACEA,GACA1gB,OAAOC,OACL,CAAC,EACD,CACE2gB,QAAS,CACPjV,iBAAkB1N,EAAe,QACjCG,SAAUA,KAIjBA,SAEAA,GACe,EChBhByiB,EAAUvkB,IAYT,IAZU,KACf+H,EAAI,KACJ7D,EAAI,QACJsgB,EAAO,YACPC,EAAW,MACXC,EAAK,QACLC,EAAO,SACP7iB,EAAQ,MACRjB,EAAK,MACLc,EAAK,QACL2I,EAAO,SACPsa,GACD5kB,EACC,MAAO6kB,EAASC,IAActkB,EAAAA,EAAAA,WAAS,GACvC,OACEiB,EAAAA,EAAAA,KAAA,OACEE,MAAO+B,OAAOC,OAAO,CAAC,EAAGhC,EAAO,CAAE,cAAed,EAAQ,OACzDa,UAAWK,IACTgjB,EAAa,YACbA,EAAahd,GACbyc,EACI,KACA,CACE,CAACO,EAAoB,OAAIL,EACzB,CAACK,EAAsB,SAAIJ,EAC3B,CAACI,EAAsB,SAAIF,IAGnCva,QAAUrJ,IACe,oBAAZqJ,GAA2Bka,GAAYK,IAChDC,GAAW,GACXE,QAAQC,QACN3a,EAAQ,CAAEpG,OAAMghB,QAASN,EAAUO,MAAOlkB,KAC1CmkB,SAAQ,KACRN,GAAW,EAAM,IAErB,EACAhjB,SAED0iB,EACGC,EAAY,CAAE1c,OAAM7D,OAAMwgB,QAAOC,UAAS7iB,aAC1CA,GACA,EAIVyiB,EAAQhgB,aAAe,CACrBkgB,YAAaA,IAAM,KAGrB,UC3CA,EAXwBY,CAACvgB,EAAOwgB,IACX,oBAAZA,EACHA,EAAQxgB,GACPf,MAAM+B,QAAQhB,IAA2B,IAAjBA,EAAMgC,QAC9BhC,GACkB,kBAAVA,GACyB,IAAhCpB,OAAOkI,OAAO9G,GAAOgC,QACb,KAAVhC,QACU,IAAVA,GACU,OAAVA,ECHAygB,GAAcC,EAAAA,EAAAA,iBAAgB,CAClCX,QAAS,MADSW,EAEjBxlB,IAAyB,IAAxB,KAAE2F,EAAI,SAAE7D,GAAU9B,EACpB,OAAO8B,EAAS6D,EAAK,IA+CvB,EA5C0BtD,IASnB,IAToB,IACzBojB,EAAG,OACHC,EAAM,SACNC,EAAQ,SACRvB,EAAQ,MACRM,EAAK,QACLC,EAAO,YACPF,EAAW,QACXD,GACDniB,EACC,MAAMujB,EAAYliB,OAAOC,OAAO,CAAC,EAAG8hB,GACpC,OAAIC,GAEAjkB,EAAAA,EAAAA,KAAC8jB,EAAW,IAAKK,EAAS9jB,SACtB6D,IAEElE,EAAAA,EAAAA,KAAC8iB,EAAO,CACNxc,KAAK,mBACL7D,KAAMyB,EACN+e,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASa,EAAgB1f,GAAM7D,UAE/BL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SACI,oBAAvB8jB,EAAU9jB,SACd8jB,EAAU9jB,SAAS6D,GACnBA,SAShBlE,EAAAA,EAAAA,KAAC8iB,EAAO,CAACxc,KAAK,YAAY4c,SAAO,EAACF,YAAaA,EAAY3iB,UACzDL,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CAACzJ,UAAU,iBAAiBqG,KAAK,OAAOuC,QAASqb,EAAS7jB,SAAC,kBAG1D,E,uBCvCd,MAoSM4hB,EAAQA,CACZxf,EAAI4hB,KAEA,IADJ,MAAEpB,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOqiB,EAE5D,OACErkB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,QACL7D,KAAMA,EACNwgB,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EAuBR6hB,EAAc,CAClBC,KAAM,CACJC,OA5USD,CAAC9hB,EAAIlE,KAA0D,IAAxD,MAAE0kB,EAAK,QAAEC,EAAO,QAAEH,EAAO,YAAEC,KAAgBhhB,GAAOzD,EACpE,OACEyB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,OACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,IAAYtT,IAAMhN,GAAMgiB,UAAUpkB,SAE1CoP,IAAMhN,GAAMiN,OAAO,eACZ,EAiUVtQ,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPC,UAAW,CACTJ,OAlUcI,CAChBniB,EAAI7B,KAEA,IADJ,MAAEqiB,EAAK,QAAEC,EAAO,QAAEH,EAAO,YAAEC,KAAgBhhB,GAAOpB,EAElD,OACEZ,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,aACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,IAAYtT,IAAMhN,GAAMgiB,UAAUpkB,SAE1CoP,IAAMhN,GAAMiN,OAAO,YACZ,EAoTVtQ,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPE,UAAW,CACTL,OApTcK,CAChBpiB,EAAIwK,KAEA,IADJ,MAAEgW,EAAK,QAAEC,EAAO,QAAEH,EAAO,YAAEC,KAAgBhhB,GAAOiL,EAElD,OACEjN,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,aACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ1iB,SAEhBoP,IAAU,OAAJhN,QAAI,IAAJA,OAAI,EAAJA,EAAO,IAAIiN,OAAO,oBACvB,IACAD,IAAU,OAAJhN,QAAI,IAAJA,OAAI,EAAJA,EAAO,IAAIiN,OAAO,UAClB,EAoSVtQ,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPG,SAAU,CACRN,OArSaM,CACfriB,EAAI2K,KAEA,IADJ,MAAE6V,EAAK,QAAEC,EAAO,YAAEF,EAAW,QAAED,EAAO,WAAEgC,KAAe/iB,GAAOoL,EAE9D,OACEpN,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJS,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,IAAYtT,IAAMhN,GAAMgiB,UAAUpkB,SAE1CoP,IAAMhN,GAAMiN,OACXqV,EAAa,mBAAqB,wBAE5B,EAsRV3lB,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPK,aAAc,CACZR,OAvRiBQ,CACnBviB,EAAI8K,KAEA,IADJ,MAAE0V,EAAK,QAAEC,EAAO,YAAEF,EAAW,QAAED,KAAY/gB,GAAOuL,EAElD,OACEvN,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,gBACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ1iB,SAEhBoC,GACO,EAyQVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPM,kBAAmB,CACjBT,OA1QsBS,CACxBxiB,EAAIuQ,KAEA,IADJ,MAAEiQ,EAAK,QAAEC,EAAO,YAAEF,EAAW,QAAED,KAAY/gB,GAAOgR,EAElD,OACEhT,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,sBACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ1iB,SAEhBoC,GACO,EA4PVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPO,KAAM,CACJV,OA7PSU,CACXziB,EAAIge,KAEA,IADJ,MAAEwC,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOye,EAE5D,OACEzgB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,OACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EA+OVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPQ,SAAU,CACRX,OAhPaW,CACf1iB,EAAI2iB,KAEA,IADJ,MAAEnC,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOojB,EAE5D,OACEplB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,YACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EAkOVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPU,SAAU,CACRb,OAnOaa,CACf5iB,EAAI6iB,KAEA,IADJ,MAAErC,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOsjB,EAE5D,OACEtlB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,WACL7D,KAAMA,EACNygB,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EAqNVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPY,IAAK,CACHf,OAtNQe,CAAC9iB,EAAI+iB,KAA0C,IAAxC,YAAExC,EAAW,QAAED,KAAY/gB,GAAOwjB,EACnD,OACExlB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,MACL7D,KAAMA,EACNugB,YAAaA,EACbD,QAASA,EAAQ1iB,SAEhBoC,IACEA,EAAKgjB,QACJzlB,EAAAA,EAAAA,KAAC4U,EAAAA,QAAI,CACHtN,KAAM7E,EAAK6E,KACXW,WAAYxF,EAAKwF,WACjByd,MAAOjjB,EAAKijB,MAAMrlB,SAEjBslB,IAAA,IAAC,KAAErf,EAAI,YAAEvC,GAAa4hB,EAAA,OACrB3lB,EAAAA,EAAAA,KAACkJ,EAAAA,QAAQ,CACP5C,KAAMA,KACFrE,OAAOC,OACT,CAAC,EACDoC,IAAK7B,EAAM,CAAC,OAAQ,SAAU,aAAc,WAE9C2G,KAAMrF,GACN,KAIN/D,EAAAA,EAAAA,KAACkJ,EAAAA,QAAQ,IAAKjH,OAAOC,OAAO,CAAC,EAAGO,OAE5B,EAyLVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEPiB,OAAQ,CACNpB,OA1LWoB,CAACnjB,EAAIojB,KAA0C,IAAxC,YAAE7C,EAAW,QAAED,KAAY/gB,GAAO6jB,EACtD,OACE7lB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,SACL7D,KAAMA,EACNugB,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACogB,EAAAA,QAAM0F,OAAM,IAAK7jB,OAAOC,OAAO,CAAC,EAAGO,GAAO2F,KAAM,MACzC,EAiLVhJ,MAAO,GACPslB,IAAK,GACLC,IAAK,KAEPoB,UAAW,CACTvB,OAlLcuB,CAChBtjB,EAAIujB,KAEA,IADJ,MAAE/C,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOgkB,EAE5D,OACEhmB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,aACL7D,KAAMA,EACNwgB,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EAoKVrD,MAAO,GACPslB,IAAK,GACLC,IAAK,KAEPsB,SAAU,CACRzB,OArKayB,CAACxjB,EAAMT,KACfhC,EAAAA,EAAAA,KAACkmB,EAAiB,CAAClC,IAAKvhB,KAAUT,IAqKvC5C,MAAO,IACPslB,IAAK,GACLC,IAAK,KAEPwB,SAAU,CACR3B,OAvKa2B,CACf1jB,EAAI2jB,KAEA,IADJ,SAAEzD,EAAQ,MAAEM,GAAQ,EAAI,QAAEC,GAAU,EAAI,YAAEF,EAAW,QAAED,KAAY/gB,GAAOokB,EAE1E,OACEpmB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,YACL7D,KAAMA,EACNwgB,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EAyJVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEP5gB,YAAa,CACXygB,OA1JgBzgB,CAClBtB,EAAI4jB,KAEA,IADJ,MAAEpD,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOqkB,EAE5D,OACErmB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,cACL7D,KAAMA,EACNwgB,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EA4IVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEP/d,QAAS,CACP4d,OA5IY5d,CAACnE,EAAI6jB,KAAiB,IAAf,MAAElnB,GAAOknB,EAC9B,OACEtmB,EAAAA,EAAAA,KAACumB,EAAW,CACVtmB,UAAWK,IAAWgjB,EAAa,YAAaA,EAAsB,SACtEpc,KAAMzE,EACNrD,MAAOA,GACP,EAuIFA,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEP6B,cAAe,CACbhC,OArHkBgC,CACpB/jB,EAAIgkB,KAEA,IADJ,MAAExD,EAAK,QAAEC,EAAO,SAAEP,EAAQ,YAAEK,EAAW,QAAED,KAAY/gB,GAAOykB,EAE5D,OACEzmB,EAAAA,EAAAA,KAAC8iB,EAAO,IACF9gB,EACJsE,KAAK,gBACL7D,KAAMA,EACNwgB,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ1iB,UAEjBL,EAAAA,EAAAA,KAACokB,EAAQ,CAACzB,SAAUA,EAAStiB,SAAEoC,KACvB,EAuGVrD,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEP1C,MAAO,CACLuC,OAAQvC,EACR7iB,MAAO,IACPslB,IAAK,IACLC,IAAK,KAEP+B,WAAY,CACVlC,OAAQvC,EACR7iB,MAAO,IACPslB,IAAK,GACLC,IAAK,KAEPgC,WAAY,CACVnC,OAAQvC,EACR7iB,MAAO,IACPslB,IAAK,IACLC,IAAK,MAIT,I,4LCpcA,MAAM,MAAEiC,GAAUC,EAAAA,SA+QlB,GA7Q8BtoB,IAKvB,IALwB,MAC7BoH,EAAK,UACLmhB,EAAS,QACTC,EACAC,OAAQ5c,GACT7L,EACC,MAAOyoB,EAAQ7f,IAAYpI,EAAAA,EAAAA,UAASqL,GAAgB,CAAC,IAE9C6c,EAAYC,IAAiBnoB,EAAAA,EAAAA,UAAS,KACvC,iBAAEooB,EAAgB,kBAAEC,EAAiB,eAAEC,EAAc,cAAEC,IAC3Dxd,EAAAA,EAAAA,UAAQ,IACChG,IACL7B,OAAOC,OACL,CACEilB,iBAAkB,GAClBC,kBAAmB,GACnBC,eAAgB,GAChBC,cAAe,IAEjBC,IAAQR,GAAUtkB,GACG,UAAfA,EAAK+kB,MACA,qBAEU,IAAf/kB,EAAK+kB,OAAiC,SAAf/kB,EAAK+kB,MACvB,oBAEuC,IAAxCriB,IAAI6hB,EAAQ,GAAGvkB,EAAK6E,iBAC1B7E,EAAKigB,SACmC,IAAxCvd,IAAI6hB,EAAQ,GAAGvkB,EAAK6E,gBAClB,gBACA,qBAGR,CAACtD,EAAQX,EAAOJ,KACde,EAAOf,GAAOI,EAAMokB,MAAK,CAACC,EAAGC,IAEzBxiB,IAAI6hB,EAAQ,GAAGU,EAAEpgB,YAAa,GAC9BnC,IAAI6hB,EAAQ,GAAGW,EAAErgB,YAAa,IAEhC,GAEJ,CAAC,IAEF,CAACyf,EAASC,IAkBTY,EAAgBnlB,IAElBG,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,CACGoC,EAAKolB,WAAaplB,EAAKmT,OAAS,2BAChCnT,EAAKqlB,aAAerlB,EAAKqlB,YAAYziB,OAAS,EAC3C,IAAI5C,EAAKqlB,YAAY1gB,KAAIxG,IAAA,IAAC,MAAEgV,GAAOhV,EAAA,OAAKgV,CAAK,IAAEvM,KAAK,QACpD,MAKV,OACEzG,EAAAA,EAAAA,MAAA,OAAK3C,UAAWC,EAAM,2BAA2BG,SAAA,EAC/CL,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,iCAAiCG,UACrDuC,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACJ,MAAM,SAASK,QAAQ,gBAAenI,SAAA,EACzCL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,SAAC,8BACLL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFL,EAAAA,EAAAA,KAACihB,EAAAA,QAAO,CAACrL,MAAM,2BAAMvV,UACnBL,EAAAA,EAAAA,KAAC+nB,EAAAA,QAAa,CACZzhB,KAAK,OACL4Q,MAAMlX,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,0BACjBuC,QAASmf,UACPlB,SAAoBA,EAAU,CAAC,GAC/BnhB,GAAO,cAOnB3F,EAAAA,EAAAA,KAAA,OAAKC,UAAWC,EAAM,oCAAoCG,UACxDuC,EAAAA,EAAAA,MAACikB,EAAAA,SAAQ,CACPoB,iBAAkB,CAAC,SAAU,aAC7BC,OAAO,EACPC,UAAQ,EAAA9nB,SAAA,EAERL,EAAAA,EAAAA,KAAC4mB,EAAK,CAAc7W,OAAO,iCAAO1P,UAChCuC,EAAAA,EAAAA,MAACwlB,EAAAA,KAAI,CAACnoB,UAAWC,EAAM,gCAAgCG,SAAA,CACpD8mB,EAAiB/f,KAAI,CAAC3E,EAAM4E,KAC3BrH,EAAAA,EAAAA,KAACooB,EAAAA,KAAKC,KAAI,CACRpoB,UAAWC,EAAM,gCAAgCG,UAGjDL,EAAAA,EAAAA,KAACsoB,EAAAA,SAAQ,CAAC1V,SAAO,EAAC5E,UAAQ,EAAA3N,SACvBunB,EAAanlB,MAHXA,EAAK6E,MAAQ,QAAQD,QAO9BrH,EAAAA,EAAAA,KAACuoB,EAAAA,cAAa,CACZrhB,KAAMmgB,EACNniB,OAAO,mBACPsjB,UAAWtoB,EAAM,iBACjBuoB,WAAYvoB,EAAM,kBAClBwoB,eAAa,EACbC,QAAUtB,IAtEMN,KAC5B,MAAM6B,EAAYC,IAAU7B,GACtB8B,EAAc,GAAGC,OACrBhC,EAAQI,iBACRJ,EAAQM,eACRN,EAAQK,oBAETL,EAAQO,eAAiB,IAAI9kB,SAASwmB,IACrCjkB,IAAI6jB,EAAW,GAAGI,EAAI1hB,gBAAgB,EAAM,IAE9CwhB,EAAYtmB,SAAQ,CAACwmB,EAAK3hB,KACxBtC,IAAI6jB,EAAW,GAAGI,EAAI1hB,YAAaD,EAAQ,EAAE,IAE/CF,EAASyhB,EAAU,EA0DLK,CAAqB,CACnB9B,mBACAE,iBACAC,gBACAF,qBACA,EAEJ8B,UAAW,IACXC,mBAAiB,EACjBC,MAAO,EAAE/oB,SAERgnB,EAAejgB,KAAI,CAAC3E,EAAM4E,KACzBzE,EAAAA,EAAAA,MAACwlB,EAAAA,KAAKC,KAAI,CACRpoB,UAAWK,IACTJ,EAAM,gCACNA,EAAM,YACNG,SAAA,EAGFL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CACHxC,KAAK,aACLrG,UAAWC,EAAM,wCAEnBF,EAAAA,EAAAA,KAACsoB,EAAAA,SAAQ,CACP1V,SAAO,EACP5E,SACEvL,EAAK+kB,OACLL,EAAiB9hB,OACfgiB,EAAehiB,OACf+hB,EAAkB/hB,QAClB,EAEJ8B,SAAW3H,IACTA,EAAE4O,kBACF5O,EAAEiB,iBACF,MAAMmoB,EAAY3mB,OAAOC,OAAO,CAAC,EAAG8kB,GACpC4B,EAAUnmB,EAAK6E,MAAQrF,OAAOC,OAC5B,CAAC,EACD0mB,EAAUnmB,EAAK6E,MACf,CAAE+hB,SAAS,IAEbliB,EAASyhB,EAAU,EACnBvoB,SAEDunB,EAAanlB,OA3BXA,EAAK6E,MAAQ,WAAWD,SAgClC+f,EAAkBhgB,KAAI,CAAC3E,EAAM4E,KAC5BrH,EAAAA,EAAAA,KAACooB,EAAAA,KAAKC,KAAI,CACRpoB,UAAWC,EAAM,gCAAgCG,UAGjDL,EAAAA,EAAAA,KAACsoB,EAAAA,SAAQ,CAAC1V,SAAO,EAAC5E,UAAQ,EAAA3N,SACvBoC,EAAKolB,WAAaplB,EAAKmT,OAAS,8BAH9BnT,EAAK6E,MAAQ,SAASD,WAvExB,WAgFXrH,EAAAA,EAAAA,KAAC4mB,EAAK,CAEJ7W,QACEnN,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACE,MAAM,EAAOD,QAAQ,gBAAenI,SAAA,EACvCL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,SAAC,oCACLL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CACFG,QAAUrJ,IACRA,EAAE4O,kBACF5O,EAAEiB,gBAAgB,EAClBJ,UAEFL,EAAAA,EAAAA,KAAC2U,EAAAA,YAAW,CACV2U,QAAQtpB,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,cAAc8B,KAAM,KACvCkG,YAAY,eACZyD,SAAW1O,IACT6jB,EAAc7jB,EAAM,EAEtBpD,UAAWC,EAAM,iCACjBkI,KAAK,eAIZ/H,UAEDL,EAAAA,EAAAA,KAACooB,EAAAA,KAAI,CACHmB,WAAYjC,EAAcpiB,QACvBzC,GAC2C,kBAAlCA,EAAKolB,WAAaplB,EAAKmT,SAC9BnT,EAAKolB,WAAaplB,EAAKmT,OAAOlQ,QAAQuhB,IAAe,IAE1DuC,WAAa/mB,IAETzC,EAAAA,EAAAA,KAACooB,EAAAA,KAAKC,KAAI,CACRpoB,UAAWC,EAAM,gCAAgCG,UAGjDL,EAAAA,EAAAA,KAACsoB,EAAAA,SAAQ,CACP1V,SAAS,EACTzL,SAAW3H,IACTA,EAAE4O,kBACF5O,EAAEiB,iBACF,MAAMmoB,EAAY3mB,OAAOC,OAAO,CAAC,EAAG8kB,GACpC4B,EAAUnmB,EAAK6E,MAAQrF,OAAOC,OAC5B,CAAC,EACD0mB,EAAUnmB,EAAK6E,MACf,CAAE+hB,SAAS,IAEbliB,EAASyhB,EAAU,EACnBvoB,SAEDoC,EAAKolB,WAAaplB,EAAKmT,OAAS,8BAhB9BnT,EAAKQ,QAjCd,mBA0DVL,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CACFtI,UAAWC,EAAM,kCACjBsI,QAAQ,MACR6F,OAAQ,GAAGhO,SAAA,EAEXL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFL,EAAAA,EAAAA,KAAC0J,EAAAA,OAAM,CACLtB,KAAK,QACLS,QAASA,KACP1B,EAASiD,GAAgB,CAAC,GAC1BzE,GAAO,EACPtF,SACH,oBAIHL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFL,EAAAA,EAAAA,KAAC+nB,EAAAA,QAAa,CACZzhB,KAAK,UACL8B,KAAK,QACLS,QAASmf,UACPlB,SAAoBA,EAAUE,GAC9BrhB,GAAO,EACPtF,SACH,wBAKD,E,0ECtRV,MAAMopB,GAAa,+BAwBnB,GAFuB,CAAEC,WApBLpiB,GACbA,EAIE,CACLqiB,OAAQA,IAAMxkB,IAAIhC,GAAAA,EAAaH,QAAQymB,IAAaniB,EAAM,CAAC,IAJpD,CAAC,EAkByBsiB,YAVjBA,CAACtiB,EAAMpD,KACzB,GAAKoD,EAGL,OAAOnE,GAAAA,EAAaO,QAClB+lB,GACAxnB,OAAOC,OAAO,CAAC,EAAGiB,GAAAA,EAAaH,QAAQymB,IAAa,CAAE,CAACniB,GAAOpD,IAC/D,GCHG2lB,GAActrB,IAA4C,IAA3C,MAAEqX,EAAK,QAAEmR,EAAO,OAAEC,EAAM,UAAE8C,GAAWvrB,EACxD,MAAOiM,EAAMI,IAAW7L,EAAAA,EAAAA,WAAS,GACjC,OACE6D,EAAAA,EAAAA,MAAC2F,EAAAA,IAAG,CAACE,MAAM,EAAMpI,SAAA,EACfL,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAACC,KAAM,EAAEtI,SAAEuV,KACf5V,EAAAA,EAAAA,KAAC0I,EAAAA,IAAG,CAAArI,UACFL,EAAAA,EAAAA,KAACiO,EAAAA,QAAO,CACNzD,KAAMA,EACNU,aAAcN,EACdsD,QAAQ,QACRL,UAAU,aACVD,iBAAkB1N,EAAM,2BACxBiO,SACEnO,EAAAA,EAAAA,KAAC+pB,GAAqB,CACpBhD,QAASA,EACTC,OAAQA,EACRrhB,MAAOA,KACLiF,GAAQ,EAAM,EAEhBkc,UAAY8B,IACVkB,GAAW9C,GACFljB,IACL8kB,GACA,CAAC5kB,EAAQX,EAAOJ,KACde,EAAOf,GAAOhB,OAAOC,OACnB,CAAC,EACD8kB,EAAO/jB,GACP+mB,IAAK3mB,EAAO,CAAC,UAAW,SACzB,GAEH,CAAC,IAEH,IAGPhD,UAEDL,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAM,yBAAyBG,UAC9CL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,wBAIb,EA0PV,GAtPuB1F,IAMhB,IANiB,QACtBmmB,EAAO,KACPzf,EAAI,eACJ2iB,EAAc,WACdC,EAAU,OACVC,GACDvpB,EACC,MAAOwpB,EAAwBC,IAA6BtrB,EAAAA,EAAAA,UAAS,MAC/DurB,GAA4B1rB,EAAAA,EAAAA,QAAOwrB,GACzCE,EAA0BrrB,QAAUmrB,EACpC,MAAMG,GAAuB3rB,EAAAA,EAAAA,QAAO,MAC9B4rB,GAAgB5rB,EAAAA,EAAAA,QAAO,OACtBooB,EAAQyD,IAAiB1rB,EAAAA,EAAAA,UAAS,CAAC,IAClC2rB,gBAAiBC,IAA0BvkB,EAAAA,EAAAA,aAC7CskB,EAAkBC,GAEpBC,GAEEC,EAAuC,OAAfH,QAAe,IAAfA,OAAe,EAAfA,EAAiBhB,WAAWpiB,GAEpDwjB,GAAaC,EAAAA,GAAAA,uBAAqB,CAACzjB,EAAMpE,KAC9B,OAAfwnB,QAAe,IAAfA,GAAAA,EAAiBd,YAAYtiB,EAAMpE,EAAO,GACzC,KAEG4mB,EAAY5oB,KAAgB0nB,KAChCoC,EAAAA,EAAAA,kBAAgB,KACdP,GAAezD,IACb,MAAM9jB,EACiB,oBAAd0lB,EAA2BA,EAAU5B,GAAU4B,EAExD,OADAthB,GAAQ2iB,GAAkBa,EAAWxjB,EAAMpE,GACpCA,CAAM,GACb,GACF,KAGE,KAAE+nB,IAASzO,EAAAA,EAAAA,UACfva,OAAOC,OAAO,IACTD,OAAOC,OAAO,CAAC,EAAG2oB,GACrBpO,MAAM,EACNyO,MAAO,gBAAgB5jB,IACvB6jB,SAAS,EACT1P,iBAAmBvX,IACjBumB,EAAcxoB,OAAOC,OAAO,CAAC,EAAGgC,GAAM,KAKtCknB,EAAiBlqB,KAAe,KAChCoG,GAAQ2iB,GAAkBY,GAC5BI,EAAK,CAAEvF,OAAO,GAChB,KAGFpmB,EAAAA,EAAAA,YAAU,KACR8rB,GAAgB,GACf,CAACA,IAEJ,MAAM/D,GAAiBvd,EAAAA,EAAAA,UAAQ,IACtBid,EACJ7hB,QAAQ8jB,MAEkC,IAAvC7jB,IAAI6hB,EAAQ,GAAGgC,EAAI1hB,kBACqB,IAAvCnC,IAAI6hB,EAAQ,GAAGgC,EAAI1hB,kBAA2C,IAAf0hB,EAAItG,UAGvD+E,MAAK,CAACC,EAAGC,KACR,MAAM0D,EAAiB5oB,GAEnB0C,IAAI6hB,EAAQ,GAAGvkB,EAAK6E,YAAa,IACjB,SAAf7E,EAAK+kB,OAAoB,IAAQ,IAClB,UAAf/kB,EAAK+kB,MAAoB,IAAQ,GAGtC,OAAO6D,EAAc3D,GAAK2D,EAAc1D,EAAE,KAE7C,CAACZ,EAASC,IAEPsE,GAA4BxhB,EAAAA,EAAAA,UAAQ,IACjCyhB,KAAclE,GAAgBpa,IAAA,IAAC,KAAE3G,GAAM2G,EAAA,MAAc,YAAT3G,CAAkB,KACpE,CAAC+gB,IAEEmE,GAAa1hB,EAAAA,EAAAA,UAAQ,IAClB2hB,IACLpE,GACAja,IAAA,IAAC,KAAE9G,EAAI,KAAEgB,GAAM8F,EAAA,OACbjI,IAAI6hB,EAAQ,GAAG1f,YAAiBgd,EAAYhe,GAAMlH,KAAK,KAE1D,CAACioB,EAAgBL,IAEd0E,EAAoBne,IAAuB,IAAtB,MAAEnO,EAAK,MAAEiI,GAAOkG,EACzC,OAAO+d,IAA8BjkB,EACjCjI,EAAQusB,KAAKhH,IAAIuF,EAAasB,EAAa,EAAG,GAC9CpsB,CAAK,EAGLwsB,EAAkB1qB,KAAe,CAAC2qB,EAAQxkB,KAE5CrH,EAAAA,EAAAA,KAAA,QACEC,UAAWK,IAAWJ,EAAM,oBAC5BM,YAAchB,IACZ+qB,EAAqBtrB,QAAUgD,OAAOC,OAAO,CAAC,EAAG2pB,EAAQ,CAAExkB,UAC3DmjB,EAAcvrB,QAAUO,EAAEC,QAC1B4qB,EAA0BhjB,EAAM,EAChChH,UAEFL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,mBAKXwlB,EAAS5qB,KAAgB6qB,IAC7B,GAA+B,OAA3B3B,EACF,OAEF,IAAKG,EAAqBtrB,QACxB,OAEF,MAAM,KAAEqI,EAAI,MAAElI,EAAK,IAAEslB,EAAG,IAAEC,EAAG,MAAEtd,GAAUkjB,EAAqBtrB,QACxD+sB,EAAeL,KAAKjH,IAAIiH,KAAKhH,IAAIvlB,EAAQ2sB,EAAOrH,GAAMC,GACxDqH,EAAeN,EAAkB,CAAEtsB,MAAOslB,EAAKrd,WAGnDyiB,GAAW9C,GACF/kB,OAAOC,OAAO,CAAC,EAAG8kB,EAAQ,CAC/B,CAAC1f,GAAOrF,OAAOC,OAAO,CAAC,EAAG8kB,EAAO1f,GAAO,CACtClI,MAAO4sB,OAGX,IAGEC,EAAsB/qB,KAAe,CAAC2qB,EAAQxkB,KAClD,MAAM,KAAEC,EAAI,MAAElI,EAAK,IAAEslB,EAAG,IAAEC,GAAQkH,EAClC,IAAIK,EAAeL,EACfxkB,IAAUggB,EAAehiB,OAAS,IACpC6mB,EAAejqB,OAAOC,OAAO,CAAC,EAAG2pB,EAAQ,CACvC5rB,UAAW,iBACX2V,OACE5V,EAAAA,EAAAA,KAAC6pB,GAAW,CACVjU,MAAa,OAANiW,QAAM,IAANA,OAAM,EAANA,EAAQjW,MACfmR,QAASA,EACTC,OAAQA,EACR8C,UAAWA,OAMnB,MAAMqC,EAAcA,KACX,CACLlsB,UAAWK,IAAW,CACpB,CAACJ,EAAM,cAAeoqB,EAA0BrrB,UAAYoI,MAI5D2kB,EAAeL,KAAKjH,IACxBiH,KAAKhH,IAAIxf,IAAI6hB,EAAQ,GAAG1f,YAAiBlI,EAAOslB,GAChDC,GAGIyH,EAAYV,EAAkB,CAAEtsB,MAAO4sB,EAAc3kB,UAE3D,OAAOpF,OAAOC,OAAO,CAAC,EAAGgqB,EAAc,CACrCG,aAAcF,EACdG,OAAQH,EACR/sB,MAAOgtB,EACPG,iBAAkBA,CAACC,EAAQC,KACzB,MAAMC,EACc,oBAAXvC,EAAwBA,EAAOqC,GAAUA,EAAOrC,GACnDwC,EACc,oBAAXxC,EACHA,EAAOsC,GACPA,EAAWtC,GACjB,OACwC,OAAtCG,EAA0BrrB,SAC1BqrB,EAA0BrrB,UAAYoI,GACtB,aAAhBwkB,EAAOvlB,QAELomB,IAAYC,GACZnZ,KAAQgZ,EAAOX,EAAOvkB,MAAOmlB,EAAWZ,EAAOvkB,OAChD,EAGLsO,OACEhT,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,CACG6rB,EAAatW,QACXwW,EAAYJ,GAAgBI,EAAYzH,IACzCiH,EACE3pB,OAAOC,OAAO,CAAC,EAAGgqB,EAAc,CAAE9sB,MAAOgtB,IACzC/kB,OAIR,IA2CJ,OAxCA/H,EAAAA,EAAAA,YAAU,KACR,MAAMstB,EAAsBA,KAC1BvC,EAA0B,MAC1BG,EAAcvrB,QAAU,KACxBsrB,EAAqBtrB,QAAU,IAAI,EAG/B4tB,EAAiBrtB,IAEmB,OAAtC8qB,EAA0BrrB,SACO,OAAjCsrB,EAAqBtrB,UAIO,OAA1BurB,EAAcvrB,QAIlB6sB,EAAOtsB,EAAEC,QAAU+qB,EAAcvrB,SAH/BurB,EAAcvrB,QAAUO,EAAEC,QAGa,EAQ3C,OANAE,SAASyB,gBAAgBxB,iBACvB,UACAgtB,GACA,GAEFjtB,SAASyB,gBAAgBxB,iBAAiB,YAAaitB,GAAe,GAC/D,KACLltB,SAASyB,gBAAgBvB,oBACvB,UACA+sB,GACA,GAEFjtB,SAASyB,gBAAgBvB,oBACvB,YACAgtB,GACA,EACD,CACF,GACA,CAACf,IAEG,CACLzE,iBACA+C,yBACAwB,kBACAkB,cAAe9F,EACfwE,aACAS,sBACD,E,2BC5SH,MAuGA,GAvG2B1tB,IAA8B,IAA7B,OAAE4rB,EAAM,YAAE4C,GAAaxuB,EACjD,MAAOyuB,EAAYC,IAAiBluB,EAAAA,EAAAA,UAAS,MACvCmuB,GAAuBtuB,EAAAA,EAAAA,QAAOmuB,GACpCG,EAAqBjuB,QAAU8tB,EAE/B,MAAMd,EAAsB/qB,KAC1B,CAAC8nB,EAAK3hB,EAAKzG,KAAyB,IAAvB,cAAEksB,GAAelsB,EAC5B,MAAM,KACJ0G,EAAI,KACJhB,EAAI,WACJ6mB,EAAU,MACVvX,EAAK,YACLwX,EAAW,MACX5F,EAAK,QACL3D,EAAO,YACPb,EAAW,YACX8E,EAAW,KACXL,EAAI,eACJ4F,KACGC,GACDtE,GACE,OAAExE,EAAM,MAAEplB,EAAK,IAAEslB,EAAG,IAAEC,GAAQ1iB,OAAOC,OACzC,CAAC,EACDoiB,EAAYhe,GAAQ,SACX,aAATA,IACGinB,KAAMP,IACPhD,IAAK1F,EAAY6I,GAAc,SAAU,CAAC,QAAS,MAAO,SAExDK,EAAehJ,EAErB,MAAO,CACLld,OACAsO,MAA8B,oBAAhBwX,EAA6BA,EAAYxX,GAASA,EAChE8O,MACAC,MACAvlB,QACAooB,QACAM,cACAL,OACAnhB,OACAke,OAAS/hB,IACP,MAAMiqB,EACc,oBAAXvC,EAAwBA,EAAO1nB,GAAQA,EAAK0nB,GAC/CsD,EAAWxrB,OAAOC,OACtB,CAAC,EACD8mB,EACsB,oBAAfA,EAAIxE,OACPwE,EAAIxE,OAAO,IACN0I,EAAqBjuB,QACxBqI,OACApE,OAAQT,IAEV,CAAC,GAEDirB,EAAyBvK,IAC7B,MAAMJ,EAAUa,EAAgBT,EAAUU,GAC1C,OAAO2J,EAAarK,EAAU,IACzBmK,EACHhmB,OACAlI,MAAO+F,IAAI2nB,EAAe,GAAGxlB,YAAiBlI,EAC9CslB,MACAC,MACA5B,UACAC,cACAC,MAAOwK,EAASxK,MAChBE,SAAUlhB,OAAOC,OAAO,CAAC,EAAGO,GAC5BsqB,YAAaG,EAAqBjuB,QAClCikB,QAASuK,EAASvK,QAClBP,SAAU8K,EAAS9K,SACnBsB,OAAQ+I,IAAeN,EACvBxI,SAAUA,IAAM+I,EAAcP,IAC9B,EAGEvJ,EACJsK,EAASE,eAAe,YACI,oBAArBF,EAAS3d,QACZ2d,EAAS3d,QACPrN,EACAR,OAAOC,OACL,CAAC,EACDgrB,EAAqBjuB,QACrB,CACEqI,QAEF+lB,EACI,CAAEG,aAAcE,GAChB,CAAC,IAGTvoB,IAAI1C,EAAM6E,GAChB,OAAO+lB,EAAiBlK,EAAWuK,EAAsBvK,EAAS,EAErE,IAIL,MAAO,CACL6J,aACAf,sBACD,EC3DH,GA/CwBlF,IACfjd,EAAAA,EAAAA,UAAQ,KACb,MAAM8jB,EAAqB7G,EAAQ7hB,QAChCzC,GAASA,EAAKqlB,aAAerlB,EAAKqlB,YAAYziB,OAAS,IAE1D,GAAIuoB,EAAmBvoB,OAAS,EAAG,CACjC,MAAMwoB,EAAa9G,EAAQne,MAAM,GAC3BklB,EAAQ,GACRC,EAAqBlC,IACzB,MAAM,YAAE/D,GAAgB+D,EACxB,KAAM/D,GAAeA,EAAYziB,OAAS,GACxC,OAEF,MAAM2oB,EAAcH,EAAWnoB,QAAQmmB,GACjCre,EAAOA,CAACsa,EAAagG,KACzB,MAAOG,KAAiBC,GAAepG,EACvC,IAAIqG,EAAeL,EAAMjb,MACtBpQ,GAASA,EAAK6E,OAAS2mB,EAAa3mB,OAElC6mB,IACHA,EAAelsB,OAAOC,OACpB,CAAEksB,WAAYJ,GACdC,EACA,CAAE5tB,SAAU,KAEdytB,EAAMlhB,KAAKuhB,IAETD,EAAY7oB,OAAS,EACvBmI,EAAK0gB,EAAaC,EAAa9tB,UAE/B8tB,EAAa9tB,SAASuM,KAAKif,EAC7B,EAEFre,EAAKsa,EAAagG,GAClBD,EAAWpkB,OAAOukB,EAAa,EAAE,EAOnC,OALAJ,EAAmBprB,QAAQurB,GAC3BD,EAAMtrB,SAAQ,CAAC6rB,EAAahnB,KAC1BwmB,EAAWpkB,OAAO4kB,EAAYD,WAAa/mB,EAAO,EAAGgnB,EAAY,IAG5D,CAAEtH,QAAS8G,EAAYS,gBAAgB,EAChD,CACA,MAAO,CAAEvH,UAASuH,gBAAgB,EAAO,GACxC,CAACvH,I,kDCvCN,MAAMwH,GAAkB9G,GACtB,IAAI3iB,KACD2iB,GAAQ,IAAIrgB,KAAI7I,IAAqB,IAApB,KAAE+I,EAAI,KAAEmgB,GAAMlpB,EAC9B,MAAO,CAAC+I,EAAMmgB,EAAK,KA6DzB,GAzDiBzlB,IACf,MAAOylB,EAAM+G,GAAW3kB,KAAgB7H,EAAO,CAC7CqB,MAAO,OACP+G,aAAc,cACdjD,SAAU,iBAGNsnB,GAAU3kB,EAAAA,EAAAA,UAAQ,IACfykB,GAAe9G,IACrB,CAACA,IAEEiH,GAAahU,EAAAA,EAAAA,cAChBlC,GACQgW,GAAS/G,IACd,MAAMkH,EAAUnW,EAAS+V,GAAe9G,IACxC,OAAOnlB,MAAMC,KAAKosB,GAASvnB,KAAIxG,IAAA,IAAE0G,EAAMmgB,GAAK7mB,EAAA,MAAM,CAAE0G,OAAMmgB,OAAM,GAAE,KAGtE,CAAC+G,IAGH,OAAO9T,EAAAA,EAAAA,cACLzN,IAAA,IAAC,OAAEtB,EAAM,KAAErE,GAAM2F,EAAA,OACfrK,EAAAA,EAAAA,MAAA,OACE3C,UAAWK,IAAWJ,EAAM,YAAa,CACvC,CAACA,EAAM,qBAA4C,SAAtBuuB,EAAQtpB,IAAImC,GACzC,CAACpH,EAAM,oBAA2C,QAAtBuuB,EAAQtpB,IAAImC,KAE1CuB,QAASA,KACP6lB,GAAYjH,IACV,MAAMxoB,EAAUwoB,EAAKtiB,IAAImC,GACnBsnB,EACY,SAAZ3vB,EACK,MAEO,QAAZA,EACK,KAEF,OAET,GAAI0M,EACF,OAAO,IAAI7G,IAAI8pB,EAAc,CAAC,CAACtnB,EAAMsnB,IAAgB,IAEvD,MAAMD,EAAU1kB,KAAMwd,GAEtB,OADAmH,EAAcD,EAAQ5pB,IAAIuC,EAAMsnB,GAAeD,EAAQzkB,OAAO5C,GACvDqnB,CAAO,GACd,EACFtuB,SAAA,EAEFL,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,mBAAmBrG,UAAWC,EAAM,gBAC/CF,EAAAA,EAAAA,KAAC8I,EAAAA,QAAI,CAACxC,KAAK,qBAAqBrG,UAAWC,EAAM,iBAC7C,GAER,CAACuuB,EAASC,GACX,ECvDGlT,GAAQjd,IAgBP,IAhBQ,QACbwoB,EAAO,UACP9mB,EAAS,YACTgB,EAAW,OACX4tB,EAAM,aACNC,EAAY,WACZC,EAAU,kBACVC,EAAiB,OACjB7E,EAAM,WACNZ,EAAU,eACVU,EAAc,KACd3iB,EAAI,QACJ2nB,EAAO,OACPC,EAAM,kBACNC,KACGntB,GACJzD,EACC,MAAO2rB,EAAYkF,IAAiBrwB,EAAAA,EAAAA,UAAS,IACtCswB,EAAUC,IAAevwB,EAAAA,EAAAA,WAAS,IAEzCO,EAAAA,EAAAA,YAAU,KACJ4qB,GACF/J,YAAW,KACTmP,GAAY,EAAM,GACjB,EACL,GACC,CAACpF,KACyBtrB,EAAAA,EAAAA,QAAOowB,GACf/vB,QAAU+vB,EAC/B,MAAMhuB,GAAMuuB,EAAAA,EAAAA,IACTC,IACCJ,EAAcI,EAAG5tB,YAAY,GAE/B,CAAE6tB,YAAY,KAEV,WAAEzC,EAAU,oBAAEf,GAAwByD,GAAmB,CAC7DvF,SACA4C,YAAaiC,KAGT,cACJlC,EAAa,eACbzF,EACA4E,oBAAqB0D,EAAyB,uBAC9CvF,EAAsB,WACtBoB,GACEoE,GAAe,CACjB7I,UACAkD,iBACA3iB,OACA2kB,sBACA/B,aACAC,WAGI0F,EAAaC,GAAQ9tB,GAErB+tB,GAAgBjmB,EAAAA,EAAAA,UAAQ,IACrBud,EAAejgB,KAAI,CAAC4hB,EAAK3hB,KAC9B,IAAInE,EAAS+oB,EAAoBjD,EAAK3hB,EAAO,CAC3C8iB,SACA6C,aACAF,kBAyBF,OAtBI5pB,EAAOukB,MAAqB,YAAbuB,EAAI1iB,OACrBpD,EAASjB,OAAOC,OAAO,CAAC,EAAGgB,EAAQ,CACjC0S,OACEhT,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,CACG6C,EAAO0S,MACPia,EAAW,CACVvoB,KAAM0hB,EAAI1hB,KACVqE,OACyB,kBAAhBzI,EAAOukB,MAAoBvkB,EAAOukB,KAAK9b,eAOtDse,IACF/mB,EAASysB,EAA0BzsB,EAAQmE,EAAO,CAChD6iB,aACA4C,mBAIG5pB,CAAM,KAEd,CACDmkB,EACA6C,EACA4C,EACAE,EACA7C,EACAF,EACAgC,EACA0D,EACAE,KAGM9I,QAASiJ,EAAY,eAAE1B,GAC7B2B,GAAeF,GAEXG,EAA4BhvB,IAAeiuB,GAkBjD,OAhBA7vB,EAAAA,EAAAA,YAAU,KACR4wB,GACEA,EAA0B,CACxBnJ,UACAiJ,eACAzG,aACAlC,kBACA,GACH,CACD6I,EACAF,EACAzG,EACAxC,EACAM,KAIArnB,EAAAA,EAAAA,KAAA,OACEC,UAAWK,IAAWL,EAAWC,EAAa,MAAG,CAC/C,CAACA,EAAM,cAA0C,OAA3BkqB,EACtB,CAAClqB,EAAM,gBAAiBmvB,EACxB,CAACnvB,EAAM,qBAAsBouB,IAE/BttB,IAAKA,EACLd,MAAO,CACL,kBAAmB4uB,GACnBzuB,UAEAgvB,IACArvB,EAAAA,EAAAA,KAACW,EAAAA,EAAQ,CACPV,UAAU,sBACVY,SAAU,CAAEpC,aAAcwC,GAC1BH,gBAAkB0uB,GAEdA,EAAGzsB,cAAc,oBACjBysB,EAAGzsB,cAAc,sBAEnB1C,UAEFL,EAAAA,EAAAA,KAACmwB,EAAAA,MAAS,IACJnuB,EACJ6sB,SACEA,GACI,CACEpwB,aAAcwC,GAItBsoB,WAAYA,EACZY,OAAQA,EACRpD,QAASiJ,EACTd,OAAQjtB,OAAOC,OACb,CAAC,EACD,CAAEW,EAAG8oB,KAAKhH,IAAIuF,EAAYsB,IAC1B0D,GAEFH,WAAYA,EACZE,QACqB,oBAAZA,EACH,SAAChwB,GAAsB,IAAD,IAAAmxB,EAAAplB,UAAA3F,OAATgrB,EAAI,IAAA/tB,MAAA8tB,EAAA,EAAAA,EAAA,KAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,EAAA,GAAAtlB,UAAAslB,GACf,OAAOrB,EACLhtB,OAAOC,OACL,CAAC,EACD,CAAEquB,SAAUtxB,GACZ,CAAE8nB,QAASiJ,OAEVK,EAEP,EACA,UAKR,EAIV7U,GAAM1Y,aAAe,CACnBmnB,gBAAgB,EAChBE,OAAQ,KACRlpB,YAAW,IACX+tB,kBAAmB,CAAC,EACpBH,QAAQ,EACRC,aAAc,oBACdC,YAAY,GAGd,Y,gBC/MA,MAOA,GAPwBloB,IACf,CACL,QAASC,IAAM,+BACf,QAASC,IAAM,iCACfF,M,gBCSJ,MAAM2pB,GAAwBjyB,IAAgC,IAA/B,GAAEiG,EAAE,QAAEuiB,EAAO,SAAE1mB,GAAU9B,EACtD,OAAIiG,GAEAxE,EAAAA,EAAAA,KAACgY,GAAAA,QAAQ,CAACxT,GAAIA,EAAGnE,SACdO,IAAA,IAAC,QAAEgG,GAAShG,EAAA,OACXP,EAAS,CACP0mB,QAASA,EAAQ7hB,QAAQzC,IAClBA,EAAK6E,QAGLhF,MAAM+B,QAAQc,IAAIyB,EAAS,oBAGqB,IAA9CA,EAAQ0gB,cAAc5hB,QAAQjD,EAAK6E,UAE5C,IAKHjH,EAAS,CAAE0mB,WAAU,EAGxB0J,IAAiBC,EAAAA,EAAAA,YACrBzjB,IAmBO,IAnBN,KACC/I,EAAI,QACJoY,EAAO,OACPvC,EAAM,cACN4W,EAAa,WACbC,EAAU,WACVC,EAAU,QACVC,EAAO,SACPC,EAAQ,KACR9F,EAAI,WACJvf,EAAU,UACVzL,EAAS,UACT6X,EAAS,QACTiP,EAAO,WACPiK,EAAU,WACVjC,EAAU,kBACVC,EAAiB,QACjBC,KACGjtB,GACJiL,EACC,MAAMgkB,EAAoB/vB,IAAewK,GACnCwlB,GAAapnB,EAAAA,EAAAA,UAAQ,IAClBmnB,EAAkB/sB,IACxB,CAACA,EAAM+sB,IAEJE,EAAa,CACjB5H,WAAY2H,EAAWhqB,KACvB6nB,aAAYA,EAAWvkB,MACnB,CACE4mB,MAAOF,EAAWE,MAClBC,UAAYD,IACVxuB,EAAAA,EAAAA,MAAAmG,EAAAA,SAAA,CAAA1I,SAAA,EACEL,EAAAA,EAAAA,KAACqI,GAAAA,iBAAgB,CACf7D,GAAG,aACHyD,WAAW,QACXK,eAAe,YAEjBtI,EAAAA,EAAAA,KAAA,QAAMC,UAAWC,EAAkB,WAAEG,SAAE+wB,KACvCpxB,EAAAA,EAAAA,KAACqI,GAAAA,iBAAgB,CACf7D,GAAG,kBACHyD,WAAW,QACXK,eAAe,cAIrBrJ,QAASkG,IACPwrB,EACA,CAAC5B,EAAWuC,WAAYvC,EAAWwC,aACnC,GAEFC,SAAUzC,EAAWyC,SACrBrqB,SAAU4nB,EAAW5nB,SACjB4nB,EAAW5nB,SACX,CAACgU,EAAM/S,KAEH+S,IACAhW,IACEwrB,EACA,CAAC5B,EAAWuC,WAAYvC,EAAWwC,aACnC,IAG0B,YAA3BxC,EAAW0C,YAA4BnV,EAAUvC,GAAQ,CACxD,CAACgV,EAAWuC,YAAa,CACvB,CAACvC,EAAWwC,aAAcpW,EAC1B,CAAC4T,EAAW2C,cAAetpB,KAI/B2mB,EAAW4C,kBACT5C,EAAW4C,iBAAiBxW,EAAM/S,IAEtCnH,EAAAA,EAAAA,KAAc2wB,UAAY,CAAC,EAEjCxpB,KAAM2mB,EAAW3mB,KACjBypB,gBAAiB9C,EAAW8C,gBAC5BC,gBAAiB/C,EAAW+C,gBAC5BC,gBAAiBhD,EAAWgD,kBAKpC,OACE/xB,EAAAA,EAAAA,KAAC+H,GAAAA,aAAY,CAACC,eAAgBA,GAAgBC,WAAW,QAAO5H,UAC9DL,EAAAA,EAAAA,KAACwwB,GAAqB,CAAChsB,GAAIsT,EAAWiP,QAASA,EAAQ1mB,SACpD+M,IAAA,IAAC,QAAE2Z,GAAS3Z,EAAA,OACXpN,EAAAA,EAAAA,KAACwb,GAAK,IACAvZ,OAAOC,OAAO,CAAC,EAAGF,EAAOmvB,GAC7BlxB,UAAWK,IAAWL,EAAW,oBAAqB,CACpD,cAAe4wB,IAEjB9J,QAASA,EACTiI,kBAAmB,IACdA,EACH2B,gBACAC,aACA1sB,QAEF+qB,QACqB,oBAAZA,EACH,WAAc,IAAD,IAAAmB,EAAAplB,UAAA3F,OAATgrB,EAAI,IAAA/tB,MAAA8tB,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,GAAAtlB,UAAAslB,GACN,OAAOrB,EACLhtB,OAAOC,OACL,CAAC,EACD,CACEgC,OACA0sB,aACAD,gBACArU,UACAvC,SACAgX,WACA9F,OACAvf,aACAqjB,iBAECsB,GAGT,EACA,MAEN,KAGO,IAKrBI,GAAe3tB,aAAe,CAC5BisB,WAAY,CAAC,EACbC,kBAAmB,CAAC,EACpBH,QAAQ,EACRnjB,WAAaxH,IACJ,CACLgD,KAAMhD,EAAKqsB,SACXa,MAAOltB,EAAK8tB,cAKlB,MA6CA,IA7CkB9W,EAAAA,EAAAA,aAAW,CAAA3N,EAA2BvM,KAAS,IAAnC,WAAE+tB,KAAe/sB,GAAOuL,EACpDwhB,EAAa9sB,OAAOC,OAClB,CAAC,EACD,CACE2vB,iBAAiB,EACjBC,iBAAiB,EACjBtnB,MAAM,EACN8mB,WAAY,OACZG,YAAa,SACbF,YAAa,cACbG,aAAc,UACdF,SAAU,IAEZzC,GAEF,MAAMkD,EAAc,IAClBjwB,EAAMsF,MAAQ,UACd4qB,iCACKV,EAAUW,IAAepzB,EAAAA,EAAAA,UAC9BoE,GAAAA,EAAaH,QAAQivB,IAAgBlD,EAAWyC,UAE5CY,EAASpwB,EAAM+sB,EAAWuC,YAC1Be,GAAcvoB,EAAAA,EAAAA,UAAQ,KACnB,CACL,CAACilB,EAAWuC,YAAarvB,OAAOC,OAAO,CAAC,EAAGkwB,EAAQ,CACjD,CAACrD,EAAW2C,cAAeF,OAG9B,CAACY,EAAQrD,EAAW2C,aAAc3C,EAAWuC,WAAYE,IAC5D,OACExxB,EAAAA,EAAAA,KAACywB,GAAc,IACTzuB,KACAqwB,EACJtD,WAAY9sB,OAAOC,OAAO,CAAC,EAAG6sB,EAAY,CACxCyC,WACAG,iBAAkBA,CAAC1yB,EAASmJ,KAC1BjF,GAAAA,EAAaO,QAAQuuB,EAAa7pB,GAClC+pB,EAAY/pB,EAAK,IAGrBpH,IAAKA,GACL,G","sources":["webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","common/utils/localStorage.js","components/Enum/index.js","components/Features/index.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/context.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","webpack://@kne-components/components-core/./src/common/components/TreeField/style.module.scss?bcd6","common/components/TreeField/index.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/TablePage.js","components/Layout/StateBarPage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__kruUf\",\"scroller-inner\":\"style_scroller-inner__NJSE0__kruUf\",\"is-moving\":\"style_is-moving__jGuy0__kruUf\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","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","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__kruUf\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__kruUf\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__kruUf\",\"filter-title\":\"style_filter-title__PlIpS__kruUf\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__kruUf\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__kruUf\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__kruUf\",\"filter-line\":\"style_filter-line__E+cRh__kruUf\",\"clean-btn\":\"style_clean-btn__oSEvm__kruUf\",\"filter-item\":\"style_filter-item__Q2ncE__kruUf\",\"un-expand\":\"style_un-expand__4PFY8__kruUf\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__kruUf\",\"filter-label\":\"style_filter-label__qu26i__kruUf\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__kruUf\",\"option\":\"style_option__rd5Qo__kruUf\",\"is-active\":\"style_is-active__OArQI__kruUf\",\"is-visited\":\"style_is-visited__gZ5ni__kruUf\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__kruUf\",\"filter-item-label\":\"style_filter-item-label__C781J__kruUf\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__kruUf\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__kruUf\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__kruUf\",\"filter-tag\":\"style_filter-tag__dUGfu__kruUf\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__kruUf\",\"pop-util-content\":\"style_pop-util-content__bx5zP__kruUf\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__kruUf\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__kruUf\",\"pop-util-text\":\"style_pop-util-text__pzeUy__kruUf\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__kruUf\",\"filter-item-text\":\"style_filter-item-text__MA8tU__kruUf\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__kruUf\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__kruUf\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__kruUf\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__kruUf\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__kruUf\",\"range-picker\":\"style_range-picker__c6ngq__kruUf\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__kruUf\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__kruUf\",\"filter-advanced\":\"style_filter-advanced__4cyDy__kruUf\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__kruUf\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__kruUf\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__kruUf\"};","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 { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport { useState } from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport { Col, Row, Space } from \"antd\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({ list, children }) => {\n const { value, onChange } = useContext();\n return (\n <div className={style[\"filter-line\"]}>\n {list.map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value\n ? get(value.get(props?.name), \"value\")\n : props?.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: props?.name,\n label: props?.label,\n value,\n })\n : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (\n <ComponentItem\n {...Object.assign({}, item.props, {\n key: item.key || item.props.name || index,\n value: value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange,\n })}\n />\n );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({\n className,\n list,\n displayLine,\n label,\n extra,\n children,\n}) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {label || (\n <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />\n )}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (\n <Space\n size={4}\n className={classnames(\n style[\"filter-item\"],\n style[\"option\"]\n )}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>\n ) : null}\n </Line>\n ))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (\n <>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>\n )}\n </Line>\n ))}\n </div>\n </Space>\n </IntlProvider>\n );\n};\n\nFilterLines.defaultProps = {\n displayLine: 1,\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import { Provider } from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useMemo } from \"react\";\nimport { isNotEmpty } from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport { IntlProvider } from \"@components/Intl\";\n\nconst FilterOuter = ({ children, className, ...props }) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n <div className={classnames(style[\"filter\"], className)}>\n {children({ props, value, onChange })}\n </div>\n </Provider>\n </IntlProvider>\n );\n};\n\nFilterOuter.defaultProps = {\n defaultValue: [],\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = (props) => {\n return (\n <FilterOuter {...props}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nFilter.defaultProps = {\n defaultValue: [],\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import { useState } from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem =\n (WrappedComponent) =>\n ({ value, onChange, interceptor, label, ...props }) => {\n const [open, setOpen] = useState(false);\n return (\n <FilterItem label={label} open={open} active={isNotEmpty(value)}>\n <WrappedComponent\n allowClear={false}\n {...props}\n className={style[\"filter-item-inner\"]}\n value={\n typeof interceptor?.input === \"function\"\n ? interceptor.input(value)\n : value\n }\n onChange={\n typeof interceptor?.output === \"function\"\n ? (...args) => onChange(interceptor.output(...args))\n : onChange\n }\n valueType=\"all\"\n onOpenChange={setOpen}\n />\n </FilterItem>\n );\n };\n\nexport default withFieldItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"scroll-loader\":\"style_scroll-loader__Rcuti__kruUf\",\"is-popup\":\"style_is-popup__pCRv2__kruUf\"};","import SelectInnerInput from \"@common/components/SelectInnerInput\";\nimport { useMemo, useRef } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Space, Tree } from \"antd\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport get from \"lodash/get\";\nimport omit from \"lodash/omit\";\nimport memoize from \"lodash/memoize\";\n\nconst useSelectInnerContext = SelectInnerInput.useContext;\n\nconst TreeFieldInner = ({ value: selected, setValue: setSelect, size }) => {\n const { fetchApi, props } = useSelectInnerContext();\n const dataFormat = useRefCallback(props.dataFormat);\n const { single, isPopup, searchPlaceholder, ...others } = props;\n const fieldNamesRef = useRef(props.fieldNames);\n fieldNamesRef.current = props.fieldNames;\n const fetchData = fetchApi.data;\n const { treeData } = useMemo(\n () =>\n dataFormat(fetchData, {\n fieldNames: fieldNamesRef.current,\n }),\n [dataFormat, fetchData]\n );\n\n return (\n <Space direction=\"vertical\" size={16}>\n <SimpleBar\n className={classnames(style[\"scroll-loader\"], {\n [style[\"is-popup\"]]: props.isPopup,\n })}\n >\n <Tree\n {...omit(others, [\"value\", \"valueType\", \"children\", \"dataFormat\"])}\n size={size}\n checkable={!single}\n treeData={treeData}\n onCheck={setSelect}\n checkedKeys={selected}\n onSelect={\n single\n ? setSelect\n : (selectKeys) => {\n const selectKey = selectKeys[0];\n if (selectKey === void 0) {\n return;\n }\n setSelect((current) => {\n const newCurrent = current.slice(0);\n const index = newCurrent.indexOf(selectKey);\n if (index > -1) {\n newCurrent.splice(index, 1);\n } else {\n newCurrent.push(selectKey);\n }\n return newCurrent;\n });\n }\n }\n selectedKeys={single ? selected : undefined}\n />\n </SimpleBar>\n </Space>\n );\n};\n\nconst TreeField = ({ maxLength, dataFormat, ...props }) => {\n return (\n <SelectInnerInput\n {...props}\n dataFormat={(data) => {\n return dataFormat(data, { fieldNames: props.fieldNames });\n }}\n >\n {({ value, setValue }) => {\n return (\n <TreeFieldInner size={maxLength} value={value} setValue={setValue} />\n );\n }}\n </SelectInnerInput>\n );\n};\n\nTreeField.defaultProps = {\n searchPlaceholder: \"搜索\",\n maxLength: Number.MAX_VALUE,\n size: \"middle\",\n isPopup: true,\n checkStrictly: false,\n dataFormat: (data, { fieldNames }) => {\n const treeToList = memoize((nodeList, { fieldNames }) => {\n const list = [];\n const core = (nodeList) => {\n if (!(Array.isArray(nodeList) && nodeList.length > 0)) {\n return;\n }\n nodeList.forEach((node) => {\n const value = node[get(fieldNames, \"key\", \"key\")],\n label = node[get(fieldNames, \"title\", \"title\")],\n children = node[get(fieldNames, \"children\", \"children\")];\n list.push({ id: value, value, label });\n core(children);\n });\n };\n core(nodeList);\n return list;\n });\n\n return {\n treeData: data,\n list: treeToList(data, { fieldNames }),\n };\n },\n};\n\nexport default TreeField;\n","import { useState, useMemo } from \"react\";\nimport { Button, Col, Popover, Row } from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport { FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n onChange,\n children,\n}) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (\n <Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n overlayClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={\n <span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({ value: state, onChange: setState })}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>\n }\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label} />\n </span>\n </Popover>\n );\n};\n\nPopoverItem.defaultProps = {\n placeholder: \"请选择\",\n placement: \"bottomLeft\",\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input, InputNumber, Space } from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport { useIntl } from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({ id: \"over\" }, { count: range[0], unit });\n }\n if (isNumber(range[1])) {\n return formatMessage({ id: \"lessThan\" }, { count: range[1], unit });\n }\n })(range),\n value: [range[0] || null, range[1] || null],\n };\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Space.Compact>\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [target, get(value, \"value[1]\")],\n unit,\n formatMessage\n )\n );\n }}\n />\n <Input\n style={{\n width: 30,\n borderLeft: 0,\n borderRight: 0,\n pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [get(value, \"value[0]\"), target],\n unit,\n formatMessage\n )\n );\n }}\n />\n {unit && (\n <Input\n style={{\n width: 50,\n borderLeft: 0,\n }}\n value={unit}\n disabled\n />\n )}\n </Space.Compact>\n )}\n </PopoverItem>\n );\n};\n\nInputFilterItem.defaultProps = {\n onValidate: (value) => {\n const range = get(value, \"value\");\n return !(\n range &&\n isNumber(range[0]) &&\n isNumber(range[1]) &&\n range[1] < range[0]\n );\n },\n};\n\nexport default InputFilterItem;\n","import { DatePicker } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(\n ({ value, onChange, picker, ...props }) => {\n return (\n <DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n value &&\n onChange({\n label:\n picker !== \"date\"\n ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}`\n : value.format(format),\n value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />\n );\n }\n);\n\nDatePickerFilterItem.defaultProps = \"date\";\n\nexport default DatePickerFilterItem;\n","import { DatePicker, Flex } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, header, ...props }) => {\n return (\n <Flex vertical>\n {typeof header === \"function\" ? header({ value, onChange }) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n value={\n value &&\n Array.isArray(value.value) &&\n value.value.length === 2 &&\n value.value.map((item) => dayjs(item))\n }\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n onChange({\n label: value.map((item) => item.format(format)).join(\"~\"),\n value: value.map((item) => new Date(item.valueOf())),\n });\n }}\n />\n </Flex>\n );\n }\n);\n\nexport default DateRangePickerFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\nimport dayjs from \"dayjs\";\n\nconst TypeDateRangePickerFilterItem = ({\n label,\n value,\n onChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n onValidate={(item) => {\n const value = item?.value;\n return (\n value?.type && Array.isArray(value?.value) && value.value.length === 2\n );\n }}\n >\n {({ value, onChange }) => (\n <TypeDateRangePickerField\n {...props}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\")}\n onChange={(pickerValue) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n const value = pickerValue?.value || [];\n onChange({\n label: (() => {\n if (value[0] && !value[1]) {\n return `${dayjs(value[0]).format(format)}以后`;\n }\n if (!value[0] && value[1]) {\n return `${dayjs(value[1]).format(format)}以前`;\n }\n if (value[0] && value[1]) {\n return `${dayjs(value[0]).format(format)}~${dayjs(\n value[1]\n ).format(format)}`;\n }\n return \"\";\n })(),\n value: pickerValue,\n });\n }}\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default TypeDateRangePickerFilterItem;\n","import { FormattedMessage } from \"@components/Intl\";\nimport withFieldItem from \"../withFieldItem\";\nimport AdvancedSelectField, {\n UserField,\n} from \"@common/components/AdvancedSelectField\";\nimport SuperSelectField, {\n SuperSelectTableListField,\n SuperSelectUserField,\n} from \"@common/components/SuperSelectField\";\nimport FunctionSelectField from \"@common/components/FunctionSelectField\";\nimport AddressSelectField from \"@common/components/AddressSelectField\";\nimport IndustrySelectField from \"@common/components/IndustrySelectField\";\nimport CascaderField from \"@common/components/CascaderField\";\nimport TreeField from \"@common/components/TreeField\";\nimport InputFilterItemField from \"./InputFilterItem\";\nimport NumberRangeFilterItemField from \"./NumberRangeFilterItem\";\n\nconst withInputDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{ label }}\n >\n {(text) => {\n return (\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n );\n }}\n </FormattedMessage>\n );\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(\n SuperSelectTableListField\n);\nexport const SuperSelectUserFilterItem = withFieldItem(SuperSelectUserField);\nexport const UserFilterItem = withFieldItem(UserField);\nexport const FunctionSelectFilterItem = withFieldItem(FunctionSelectField);\nexport const IndustrySelectFilterItem = withFieldItem(IndustrySelectField);\n\nexport const CityFilterItem = withFieldItem(AddressSelectField);\n\nexport const CascaderFilterItem = withFieldItem(CascaderField);\n\nexport const TreeFilterItem = withFieldItem(TreeField);\nexport const InputFilterItem =\n withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(\n NumberRangeFilterItemField\n);\n\nexport { default as DatePickerFilterItem } from \"./DatePickerFilterItem\";\nexport { default as DateRangePickerFilterItem } from \"./DateRangePickerFilterItem\";\nexport { default as TypeDateRangePickerFilterItem } from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import { SearchInput as SearchInputField } from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\n\nconst SearchInput = withFilterValue(({ label, onChange, value, ...props }) => {\n return (\n <SearchInputField\n {...props}\n placeholder={`请输入${label}`}\n value={value?.value || \"\"}\n onSearch={(value) => {\n onChange({ label: value, value });\n }}\n />\n );\n});\n\nexport default SearchInput;\n","import { App, Tag } from \"antd\";\nimport AddressSelectField, {\n getLabelForLocal,\n withAddressApi,\n} from \"@common/components/AddressSelectField\";\nimport { FormattedMessage, useIntl } from \"@components/Intl\";\nimport { usePreset } from \"@components/Global\";\nimport { useMemo } from \"react\";\nimport style from \"../../style.module.scss\";\n\nconst { CheckableTag } = Tag;\n\nconst CityFilterItemInner = ({\n value,\n onChange,\n single,\n maxLength,\n addressApi,\n ...props\n}) => {\n const { message } = App.useApp();\n const { locale } = usePreset();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const { code } = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: code, label: name } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: code, label: name })\n : (() => {\n const index = newValue.findIndex(\n ({ value }) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({ code }) =>\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({ value }) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const { city } = addressApi.getCity(value);\n return { value: city?.code, label: city?.name };\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nCityFilterItemInner.defaultProps = {\n single: false,\n maxLength: 5,\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import { Tag, App } from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport { useIntl } from \"@components/Intl\";\n\nconst { CheckableTag } = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single,\n maxLength,\n items,\n custom,\n}) => {\n const { message } = App.useApp();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <>\n {items.map(({ label, value: itemValue }) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({ value }) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: itemValue, label } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: itemValue, label })\n : (() => {\n const index = newValue.find(({ value }) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nListFilterItem.defaultProps = {\n single: false,\n maxLength: 5,\n items: [],\n};\n\nexport default ListFilterItem;\n","import { Input, Space, Button } from \"antd\";\nimport { useState, useEffect, useRef } from \"react\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport { useIntl } from \"@components/Intl\";\n\nconst InputFilterItem = ({ value, label, onChange, ...props }) => {\n const propsValue = value?.value;\n const [inputValue, setInputValue] = useState(propsValue || \"\");\n const [active, setActive] = useState(false);\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const searchHandler = () => {\n onChange(inputValue ? { label: inputValue, value: inputValue } : null);\n };\n const ref = useSimulationBlur(() => {\n setActive(false);\n searchHandler();\n });\n const inputValueRef = useRef(\"\");\n inputValueRef.current = inputValue;\n\n useEffect(() => {\n if (propsValue !== inputValueRef.current) {\n setInputValue(propsValue);\n }\n }, [propsValue]);\n return (\n <span ref={ref}>\n <Space.Compact>\n <Input\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n {...props}\n size=\"small\"\n value={inputValue}\n onFocus={() => {\n setActive(true);\n }}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n onPressEnter={searchHandler}\n />\n {active && (\n <Button size=\"small\" type=\"primary\" onClick={searchHandler}>\n {formatMessage({ id: \"search\" })}\n </Button>\n )}\n </Space.Compact>\n </span>\n );\n};\n\nexport default InputFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\n","import FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport { useContext as useFilter } from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nexport default Filter;\nexport { fields, getFilterValue, useFilter, withFilterValue, SearchInput };\nexport { default as AdvancedFilter, advancedFields } from \"./AdvancedFilter\";\nexport { default as FilterValueDisplay } from \"./FilterValueDisplay\";\nexport { default as FilterItem } from \"./FilterItem\";\nexport { default as FilterLines } from \"./FilterLines\";\nexport { default as PopoverItem } from \"./PopoverItem\";\nexport { default as withFieldItem } from \"./withFieldItem\";\nexport { default as FilterItemContainer } from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__kruUf\",\"inner\":\"style_inner__bMKeU__kruUf\",\"content\":\"style_content__xTfWZ__kruUf\",\"link\":\"style_link__93j7O__kruUf\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n menuFixed: true,\n menuCloseButton: true,\n backgroundColor: null,\n header: null,\n headerHeight: 0,\n headerFixed: true,\n headerInfo: null,\n backUrl: null,\n title: null,\n titleExtra: null,\n titleLeftExtra: null,\n noMargin: false,\n noPadding: false,\n optionFooterHeight: 0,\n option: null,\n optionWidth: \"400px\",\n optionNoPadding: false,\n optionFixed: true,\n optionFooter: null,\n};\n\nexport const context = createContext({});\n\nexport const { Provider, Consumer } = context;\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport default context;\n","// extracted by mini-css-extract-plugin\nexport default {\"layout\":\"style_layout__k+lxR__kruUf\",\"page-content\":\"style_page-content__4XeN8__kruUf\",\"page-main\":\"style_page-main__P0yEF__kruUf\",\"page-main-content\":\"style_page-main-content__1OVPN__kruUf\",\"table-page\":\"style_table-page__JkbLf__kruUf\",\"helper-guide\":\"style_helper-guide__vzw4z__kruUf\",\"page-outer\":\"style_page-outer__2a6iH__kruUf\",\"no-margin\":\"style_no-margin__S6caT__kruUf\",\"page-menu\":\"style_page-menu__CZSa9__kruUf\",\"closed\":\"style_closed__hmnft__kruUf\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__kruUf\",\"page-menu-main\":\"style_page-menu-main__OXg2M__kruUf\",\"page-option-main\":\"style_page-option-main__LyfT3__kruUf\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__kruUf\",\"page-option\":\"style_page-option__diS2S__kruUf\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__kruUf\",\"page-option-footer\":\"style_page-option-footer__d7xE0__kruUf\",\"fixed-container\":\"style_fixed-container__1VZwY__kruUf\",\"is-fixed\":\"style_is-fixed__1aQhp__kruUf\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__kruUf\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__kruUf\",\"page-title\":\"style_page-title__zw-Fd__kruUf\",\"page-title-text\":\"style_page-title-text__Rj4RC__kruUf\",\"no-padding\":\"style_no-padding__V7Dwy__kruUf\",\"page-header\":\"style_page-header__a813p__kruUf\",\"page-header-info\":\"style_page-header-info__cMrZR__kruUf\",\"layout-menu\":\"style_layout-menu__yiab0__kruUf\",\"sub-menu\":\"style_sub-menu__dyqK7__kruUf\",\"no-collapsed\":\"style_no-collapsed__76h8W__kruUf\",\"has-not-children\":\"style_has-not-children__fnjRK__kruUf\",\"table-page-top\":\"style_table-page-top__bt1l9__kruUf\",\"error-component\":\"style_error-component__HvghB__kruUf\",\"state-bar-page\":\"style_state-bar-page__+aUM4__kruUf\",\"back-icon\":\"style_back-icon__79v2G__kruUf\"};","import style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst FixedContainer = ({ className, isFixed, children }) => {\n if (isFixed) {\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"],\n {\n [style[\"is-fixed\"]]: isFixed,\n }\n )}\n >\n {children}\n </div>\n );\n }\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"]\n )}\n >\n {children}\n </div>\n );\n};\n\nexport default FixedContainer;\n","import { Button, Col } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"../style.module.scss\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport Icon from \"@components/Icon\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport { useLocation } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport isNotEmpty from \"@utils/isNotEmpty\";\nimport localStorage from \"@utils/localStorage\";\nimport { useMemo } from \"react\";\n\nconst pageMenuOpenKey = \"CORE_PAGE_MENU_OPEN_KEY\";\n\nexport const useMenuOpen = () => {\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n return useMemo(() => {\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n return isNotEmpty(get(pageResult, pathModuleName))\n ? get(pageResult, pathModuleName)\n : true;\n }, [pathModuleName]);\n};\n\nconst Menu = () => {\n const { pageProps, setPageProps } = useContext();\n const { menu, menuOpen, menuWidth, menuFixed, menuCloseButton } = pageProps;\n\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n\n return menu ? (\n <Col\n className={classnames(style[\"page-menu\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{ \"--width\": menuWidth }}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar className={style[\"page-menu-main\"]}>{menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], {\n [style[\"is-fixed\"]]: menuFixed,\n })}\n isFixed={menuFixed}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n icon={\n menuOpen ? (\n <Icon type=\"icon-arrow-bold-left\" />\n ) : (\n <Icon type=\"icon-arrow-bold-right\" />\n )\n }\n onClick={() => {\n setPageProps({ menuOpen: !pageProps.menuOpen });\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n pageResult[pathModuleName] = !pageProps.menuOpen;\n localStorage.setItem(pageMenuOpenKey, pageResult);\n setPageProps({ menuOpen: !pageProps.menuOpen });\n }}\n />\n </FixedContainer>\n ) : null}\n </Col>\n ) : null;\n};\n\nexport default Menu;\n","import { defaultProps, useContext } from \"../context\";\nimport isEqual from \"lodash/isEqual\";\nimport { useEffect, useRef } from \"react\";\nimport { Result } from \"antd\";\nimport Features from \"@components/Features\";\nimport { useMenuOpen } from \"./Menu\";\n\nconst PageInner = ({ children, isPass, ...props }) => {\n const { setPageProps } = useContext();\n const propsRef = useRef(null);\n const localMenuOpen = useMenuOpen();\n const localMenuOpenRef = useRef(localMenuOpen);\n localMenuOpenRef.current = localMenuOpen;\n useEffect(() => {\n if (!isEqual(propsRef.current, props)) {\n propsRef.current = props;\n /**\n * 解决两个页面都用header时,menuButton产生的跳动问题:如果下一个页面有header,\n * headerHeight由其header组件自己更新,不再统一重置为0。\n * optionFooter同理\n * */\n const targetProps = Object.assign(\n {},\n defaultProps,\n props,\n typeof localMenuOpenRef.current === \"boolean\"\n ? { menuOpen: localMenuOpenRef.current }\n : {}\n );\n if (targetProps.header && targetProps.headerHeight === 0) {\n delete targetProps[\"headerHeight\"];\n }\n if (targetProps.optionFooter && targetProps.optionFooterHeight === 0) {\n delete targetProps[\"optionFooter\"];\n }\n setPageProps(targetProps);\n }\n }, [props, setPageProps]);\n\n if (isPass === false) {\n return <Result status=\"403\" subTitle=\"暂未开放此功能\" />;\n }\n\n return children;\n};\n\nconst Page = ({ featureId, name, openFeatures, ...props }) => {\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({ isPass }) => <PageInner {...props} key={name} isPass={isPass} />}\n </Features>\n );\n }\n return <PageInner {...props} key={name} />;\n};\n\nPage.defaultProps = defaultProps;\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import { Col, Row, Space } from \"antd\";\nimport { useNavigate } from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({ title, filter, titleExtra, titleLeftExtra, backUrl }) => {\n const navigator = useNavigate();\n if (filter) {\n return (\n <Filter className={style[\"page-title\"]} {...filter} extra={titleExtra} />\n );\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (\n <Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col>\n <Space>\n {title ? (\n <div className={style[\"page-title-text\"]}>\n {backUrl ? (\n <Space>\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\" />\n </span>\n <span>{title}</span>\n </Space>\n ) : (\n title\n )}\n </div>\n ) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Space>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>\n );\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import { Alert, Button, Col, Layout as AntdLayout, Row } from \"antd\";\nimport { useCallback, useEffect, useState } from \"react\";\nimport { defaultProps, Provider } from \"./context\";\nimport Navigation, { navigationHeight } from \"@components/Navigation\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport ReactErrorBoundary from \"@kne/react-error-boundary\";\nimport { Header, HeaderInfo, Menu, Option, PageTitle } from \"./Page\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport { usePermissions } from \"../Permissions\";\n\nconst { Content } = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nconst Layout = ({ children, theme, navigation }) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const { permissions } = usePermissions();\n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n\n return (\n <AntdLayout\n className={style[\"layout\"]}\n style={Object.assign(\n {},\n {\n \"--nav-height\": navigationHeight + \"px\",\n \"--nav-height-base\": \"var(--nav-height)\",\n \"--scroll-left\": -scrollLeft + \"px\",\n },\n theme\n )}\n >\n {navigation && (\n <ErrorBoundary>\n <Navigation\n permissions={permissions}\n {...navigation}\n onChange={(path) => {\n navigation?.onChange && navigation.onChange(path);\n }}\n />\n </ErrorBoundary>\n )}\n <ErrorBoundary>\n <Content className={style[\"layout-content-wrap\"]}>\n <Provider value={{ pageProps, setPageProps }}>\n <ErrorBoundary>\n <Header />\n </ErrorBoundary>\n <ErrorBoundary>\n <HeaderInfo />\n </ErrorBoundary>\n <ErrorBoundary>\n <Row\n className={classnames(pageProps.className, style[\"page-outer\"])}\n wrap={false}\n style={{\n \"--nav-height\": `calc(${\n pageProps.headerFixed ? pageProps.headerHeight : 0\n }px + var(--nav-height-base))`,\n \"--nav-only-height\": `var(--nav-height-base)`,\n }}\n >\n <ErrorBoundary>\n <Menu />\n </ErrorBoundary>\n <Col\n className={classnames(style[\"page-content\"], {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })}\n flex={1}\n style={{ \"--background-color\": pageProps.backgroundColor }}\n >\n <div className={style[\"page-main\"]}>\n <ErrorBoundary>\n <PageTitle\n title={pageProps.title}\n backUrl={pageProps.backUrl}\n filter={pageProps.filter}\n titleExtra={pageProps.titleExtra}\n titleLeftExtra={pageProps.titleLeftExtra}\n />\n </ErrorBoundary>\n <div\n className={classnames(style[\"page-main-content\"], {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={style[\"helper-guide-page\"]}\n name={pageProps.helperGuideName}\n />\n )}\n {children}\n </ErrorBoundary>\n </div>\n </div>\n </Col>\n <ErrorBoundary>\n <Option />\n </ErrorBoundary>\n </Row>\n </ErrorBoundary>\n </Provider>\n </Content>\n </ErrorBoundary>\n </AntdLayout>\n );\n};\n\nLayout.defaultProps = {\n navigation: {},\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__kruUf\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__kruUf\",\"no-start-icon\":\"style_no-start-icon__LnC1S__kruUf\",\"has-children\":\"style_has-children__m9tce__kruUf\",\"has-children-node\":\"style_has-children-node__2bhEB__kruUf\",\"is-root\":\"style_is-root__4hhOc__kruUf\",\"title\":\"style_title__+Hcar__kruUf\",\"active\":\"style_active__WU49K__kruUf\",\"no-collapse\":\"style_no-collapse__aIZBM__kruUf\",\"title-content\":\"style_title-content__cQXpK__kruUf\",\"loading\":\"style_loading__1pU4P__kruUf\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Spin } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport { useCallback, useEffect, useMemo } from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport { useFetch } from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {},\n nodeMapping = [];\n const traversal = (children, options) => {\n const { parentKey, depth } = Object.assign(\n {\n parentKey: \"root\",\n depth: 0,\n paths: [],\n },\n options\n );\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${\n item.key ||\n `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`\n }`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey,\n depth: depth + 1,\n });\n childrenKeys[currentKey] &&\n childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey,\n parentKey,\n depth,\n children: children,\n originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return { items: traversal(items), childrenKeys, nodeMapping };\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren =\n (Array.isArray(children) && children.length > 0) || fetchOptions;\n const { refresh, isLoading } = useFetch(\n Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions,\n onRequestSuccess: (data) => {\n onLoad(data);\n },\n })\n );\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (\n <div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\" />\n </div>\n );\n }\n };\n return (\n <Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && <Icon type={iconType} />}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (\n <Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />\n )}\n </div>\n {renderChildren()}\n </div>\n </Permissions>\n );\n};\n\nconst Menu = ({ className, allowCollapsed, pathMatch, ...props }) => {\n const { pathname, search } = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\",\n defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue(props, {\n defaultValue: \"defaultItems\",\n value: \"items\",\n onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems,\n defaultOpenKeys,\n links,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems,\n childrenKeys,\n nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false,\n hasChildren = false;\n const links = [],\n defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType) {\n hasStartIcon = true;\n }\n node.path && links.push({ path: node.path, key });\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys,\n links,\n items: targetItems,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({ path }) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, { pathname, search });\n }\n return (\n ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) ||\n ensureSlash(pathname + search) === ensureSlash(path)\n );\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1679367216639,\n className: \"icon\",\n viewBox: \"0 0 1030 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 1696,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 201.171875,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.479711 385.587015v293.958522l258.791705 146.528403 258.791704-146.528403V385.587015l-251.127142-145.62669L252.479711 385.587015z\",\n fill: \"#FFFFFF\",\n opacity: 0.1,\n \"p-id\": 1697\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M778.629396 405.875564A20.739405 20.739405 0 0 1 766.456267 405.875564l-39.675383-21.641119a22.091975 22.091975 0 0 1 21.190261-39.224526l39.675383 21.190261a22.542831 22.542831 0 0 1-10.820559 42.380523z m-518.485122-6.76285a22.542831 22.542831 0 0 1-19.837691-12.173129 22.091975 22.091975 0 0 1 9.918845-30.207394l40.12624-20.739405a22.993688 22.993688 0 0 1 30.207394 9.918846 22.542831 22.542831 0 0 1-9.918846 30.207394L270.513977 396.858431a20.739405 20.739405 0 0 1-10.369703 2.254283z m399.909829-57.258792a22.542831 22.542831 0 0 1-10.820559-2.705139l-39.675383-21.190262a22.993688 22.993688 0 0 1-9.017133-30.65825 22.091975 22.091975 0 0 1 30.207394-9.017133l39.675383 21.190261a22.542831 22.542831 0 0 1-10.369702 42.380523z m-279.531109-4.057709a22.542831 22.542831 0 0 1-9.918846-45.085663l40.12624-20.288548a22.542831 22.542831 0 0 1 30.207394 9.467989 22.993688 22.993688 0 0 1-9.918846 33.814247l-40.12624 20.288548a20.739405 20.739405 0 0 1-10.369702 1.803427zM541.027953 277.381425a19.386835 19.386835 0 0 1-10.820559-2.70514L519.837692 270.618575l-8.566276 4.508567a22.542831 22.542831 0 0 1-20.288549-40.577097l18.935979-9.017132a23.895401 23.895401 0 0 1 20.739405 0l21.190261 11.722272a22.091975 22.091975 0 0 1 9.017133 30.207394 22.091975 22.091975 0 0 1-19.837692 9.918846z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1698\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1002.70514 289.554554a24.346258 24.346258 0 0 1-9.918846 0L513.074842 47.895401 33.814247 287.300271a22.542831 22.542831 0 0 1-30.207394-10.369703 22.993688 22.993688 0 0 1 9.918846-30.207394L503.155996 2.358882a22.993688 22.993688 0 0 1 20.288549 0l489.179441 244.364292a22.542831 22.542831 0 0 1-9.918846 45.085663z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1699\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.085663 762.052299a22.542831 22.542831 0 0 1-9.918846-40.577096l81.154193-39.675383A22.542831 22.542831 0 0 1 135.256988 721.475203l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.017132 0.901713z m889.540126-14.427412a24.346258 24.346258 0 0 1-9.918846 0l-80.703336-40.577096a22.542831 22.542831 0 0 1-10.369703-30.207394 22.091975 22.091975 0 0 1 30.207394-9.918846l80.703337 40.12624a22.542831 22.542831 0 0 1-9.918846 42.831379zM206.943192 683.15239a23.444545 23.444545 0 0 1-20.288548-12.623986 22.993688 22.993688 0 0 1 10.369702-30.207394l81.154193-39.675383a22.993688 22.993688 0 0 1 30.207394 10.369702 22.542831 22.542831 0 0 1-10.369702 30.207394l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.918846 2.254284z m566.275924-16.230839a26.600541 26.600541 0 0 1-9.918845 0l-80.703337-40.577097a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918845l80.703337 40.126239a22.993688 22.993688 0 0 1 9.918846 30.207395 22.542831 22.542831 0 0 1-20.288549 10.369702z m-405.770965-62.669071a22.091975 22.091975 0 0 1-20.288548-12.623986 22.542831 22.542831 0 0 1 13.525699-30.207394l81.154193-39.224527a22.542831 22.542831 0 0 1 30.207394 10.369703 22.091975 22.091975 0 0 1-10.369702 29.756537l-81.154193 39.675384a26.600541 26.600541 0 0 1-11.271416 2.254283z m242.560866-18.034265a19.837692 19.837692 0 0 1-9.918846-2.254284l-80.703336-40.577096a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918846l80.703337 40.12624a23.444545 23.444545 0 0 1 9.918845 30.658251 22.542831 22.542831 0 0 1-18.485121 12.173129z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1700\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.173129 1024a24.346258 24.346258 0 0 1-9.918846-2.254283L12.623986 783.242561a22.993688 22.993688 0 0 1-12.623986-20.288548V273.774572a23.444545 23.444545 0 0 1 10.820559-19.386835 21.641118 21.641118 0 0 1 21.641118 0l479.711452 238.954012L991.884581 253.486023a21.641118 21.641118 0 0 1 21.641118 0 23.444545 23.444545 0 0 1 10.820559 19.386835v490.081155a22.993688 22.993688 0 0 1-12.623986 20.288548l-490.081154 238.503156a22.542831 22.542831 0 0 1-9.467989 2.254283zM45.085663 748.526601l467.087466 225.428313 467.087466-225.428313V310.293959l-454.914337 225.428313a22.542831 22.542831 0 0 1-22.091975 0L45.085663 310.293959z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1701\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M511.722272 1020.393147a22.542831 22.542831 0 0 1-22.542831-22.542831V526.254283a22.542831 22.542831 0 0 1 45.085663 0v471.596033a22.542831 22.542831 0 0 1-22.542832 22.542831z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1702\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.623986 841.853922a18.935978 18.935978 0 0 1-9.918846-2.254283l-266.005411-128.043282a22.091975 22.091975 0 0 1-11.271415-20.288548V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832V676.38954l243.913435 117.222723 243.462579-117.222723V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832v307.48422a22.542831 22.542831 0 0 1-12.623986 20.288548l-266.00541 128.043282a19.837692 19.837692 0 0 1-11.722272 2.254283z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1703\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgFavicon);\nexport default __webpack_public_path__ + \"static/media/favicon.477a5bb996fd5b367fe0dddc29f67824.svg\";\nexport { ForwardRef as ReactComponent };","const importMessages = (locale) => {\n return ({\n 'en-US': () => import('./en-US'), 'zh-CN': () => import('./zh-CN')\n })[locale]();\n};\n\nexport default importMessages;","// extracted by mini-css-extract-plugin\nexport default {\"navigation-wrap\":\"style_navigation-wrap__VF8x2__kruUf\",\"navigation\":\"style_navigation__60RrS__kruUf\",\"is-fixed\":\"style_is-fixed__kHFWj__kruUf\",\"navigation-logo\":\"style_navigation-logo__q9qHu__kruUf\",\"logo\":\"style_logo__lB9RC__kruUf\",\"navigation-list\":\"style_navigation-list__EYtkg__kruUf\",\"navigation-options\":\"style_navigation-options__0BdJU__kruUf\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__kruUf\",\"more-icon\":\"style_more-icon__gNMnt__kruUf\"};","import { Col, Layout, Menu, Row, Space } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport logo from \"./favicon.svg\";\nimport Image from \"@components/Image\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst { Header } = Layout;\n\nexport const navigationHeight = 48;\n\nconst SetTitle = ({ name, mapping, defaultTitle }) => {\n const propsRef = useRef({\n mapping,\n defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({ onReady }) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = ({\n permissions,\n list,\n headerLogo,\n rightOptions,\n isFixed,\n showIndex,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base,\n onChange,\n className,\n}) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({ key, ...others }) => [key, others]));\n }, [list]);\n const navigate = useNavigate();\n const location = useLocation();\n const navigationRef = useRef();\n const resizeObserverRef = useRef(null);\n const [nameLabel, setNameLabel] = useState(\"更多\");\n const [ready, setReady] = useState(false);\n const pathModuleName = location.pathname\n .replace(new RegExp(`^${base}`), \"\")\n .split(\"/\")[1];\n const name = pathModuleName\n ? get(\n Array.from(mapping.entries()).find(([name, { path, permission }]) => {\n const _path =\n typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }),\n \"[0]\"\n )\n : \"home\";\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom =\n navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel =\n mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(\n navigationRef.current,\n mutationObserverInitConfig\n );\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex\n ? {\n label: indexLabel || (\n <FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\" />\n ),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n }\n : false;\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (\n <SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\n />\n )}\n </FormattedMessage>\n <div className={classnames(style[\"navigation-wrap\"], className)}>\n <Header\n className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}\n >\n <Row justify=\"space-around\" wrap={false}>\n <Col\n className={classnames(\n \"navigation-logo\",\n style[\"navigation-logo\"]\n )}\n >\n <Image\n className={classnames(style[\"logo\"])}\n src={logo}\n alt=\"logo\"\n {...headerLogo}\n />\n </Col>\n <Col\n ref={navigationRef}\n flex={1}\n className={classnames(\n \"navigation-list\",\n style[\"navigation-list\"]\n )}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\" />\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, { permission }]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, { title, path, permission }]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__kruUf\"};","import { createElement } from \"react\";\nimport { Result, Tooltip } from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\n\nexport const computedIsPass = ({ permissions, request }) => {\n return Array.isArray(request) && request.length > 0\n ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1)\n : true;\n};\n\nexport const usePermissions = () => {\n const { global } = useGlobalContext();\n const { permissions, permissionsPath } = usePreset();\n return {\n permissions:\n global.permissions ||\n permissions ||\n (permissionsPath && get(global, permissionsPath)) ||\n [],\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__kruUf\",\"has-children\":\"style_has-children__oQDqU__kruUf\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__kruUf\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__kruUf\",\"tab-step-control\":\"style_tab-step-control__EQaCl__kruUf\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__kruUf\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__kruUf\",\"state-result-tag\":\"style_state-result-tag__CssDz__kruUf\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__kruUf\",\"event-tag\":\"style_event-tag__cg6SE__kruUf\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__kruUf\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__kruUf\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__kruUf\",\"show-bg\":\"style_show-bg__OcL+R__kruUf\",\"tag-text\":\"style_tag-text__JHCt+__kruUf\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__kruUf\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\",\n props?.onClick ? style[\"event-tag\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__kruUf\",\"is-resize\":\"style_is-resize__ut6RW__kruUf\",\"is-moving\":\"style_is-moving__BJ9wR__kruUf\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__kruUf\",\"is-computed\":\"style_is-computed__B9rIF__kruUf\",\"options-column\":\"style_options-column__vsPTr__kruUf\",\"options-btn\":\"style_options-btn__U3uoy__kruUf\",\"tooltip\":\"style_tooltip__vJlkv__kruUf\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__kruUf\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__kruUf\",\"columns-control\":\"style_columns-control__5-5ZF__kruUf\",\"columns-control-content\":\"style_columns-control-content__MoeUI__kruUf\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__kruUf\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__kruUf\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__kruUf\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__kruUf\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__kruUf\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__kruUf\",\"is-drag\":\"style_is-drag__U68aw__kruUf\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__kruUf\",\"sortable-drag\":\"style_sortable-drag__K5hWd__kruUf\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__kruUf\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__kruUf\",\"sort-btn\":\"style_sort-btn__KvNLr__kruUf\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__kruUf\",\"sort-icon\":\"style_sort-icon__dB85I__kruUf\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__kruUf\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__kruUf\",\"tag\":\"columns_tag__bQZLG__kruUf\",\"avatar\":\"columns_avatar__SLPI+__kruUf\",\"hover\":\"columns_hover__oAwHg__kruUf\",\"primary\":\"columns_primary__6KtaA__kruUf\",\"loading\":\"columns_loading__gtBay__kruUf\",\"options\":\"columns_options__WvDZD__kruUf\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n 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\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n 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 =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n 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,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","_jsx","className","style","left","height","children","classnames","innerLeft","onMouseDown","preventDefault","body","Scroller","_ref2","scroller","getScrollTarget","setScrollerProps","ref","getScrollEl","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","props","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","_jsxs","x","defaultProps","querySelector","getItem","key","target","localStorage","dataType","value","JSON","parse","Number","Boolean","setItem","stringify","preset","base","transform","description","result","treeTraverse","data","func","pId","isArray","omit","parentId","id","parseProfile","memoize","profile","profileMap","output","Map","set","features","keys","filter","get","dependencies","length","some","depId","computedIsPaas","currentId","indexOf","close","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","usePreset","systemId","type","useContext","console","log","isPass","feature","options","locale","en-US","zh-CN","useReactContext","Line","list","onChange","map","index","name","label","ComponentItem","FilterLines","displayLine","extra","hasMore","isExpand","setIsExpand","IntlProvider","importMessages","moduleName","Space","align","size","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","slice","onClick","Icon","_Fragment","filterValue","extraExpand","StateTag","filterName","text","join","closable","onClose","newValue","splice","Button","FilterOuter","valueBase","useControlValue","useMemo","isNotEmpty","newFilterValue","clone","delete","values","defaultValue","Filter","others","FilterValueDisplay","open","active","WrappedComponent","interceptor","setOpen","FilterItem","allowClear","input","arguments","valueType","onOpenChange","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","dataFormat","single","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","direction","SimpleBar","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","push","selectedKeys","undefined","TreeField","maxLength","_ref3","MAX_VALUE","checkStrictly","_ref4","treeToList","nodeList","_ref5","core","node","PopoverItem","onValidate","overlayClassName","placement","state","setState","disabled","Popover","trigger","content","stopPropagation","gutter","placeholder","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","InputFilterItem","useIntl","Compact","InputNumber","borderLeft","borderRight","pointerEvents","DatePickerFilterItem","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","header","Flex","vertical","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","onSearch","CheckableTag","Tag","CityFilterItemInner","addressApi","message","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","checked","find","findIndex","error","_ref6","getCityValue","getCity","withAddressApi","ListFilterItem","items","custom","itemValue","isEqual","fields","propsValue","inputValue","setInputValue","setActive","searchHandler","useSimulationBlur","inputValueRef","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","more","MoreFilterLines","advancedFields","getFilterValue","useFilter","SearchInput","Enum","colorful","url","Typography","Link","href","menu","menuOpen","menuWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","title","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","Consumer","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","useLocation","pathname","split","FixedContainer","icon","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","targetProps","Result","status","subTitle","Page","featureId","openFeatures","Features","_createElement","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","callback","MutationObserver","subtree","childList","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","navigation","setScrollLeft","_setPageProps","permissions","usePermissions","useCallback","handlerScroll","Navigation","path","PageTitle","helperGuideName","HelperGuide","Permissions","forwardRef","page","topArea","tableData","setTableData","PermissionsPage","Table","onRequestSuccess","stateBar","StateBar","MenuItem","iconType","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","refresh","isLoading","useFetch","auto","Spin","pathMatch","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","newOpenKeys","defaultItems","SetTitle","mapping","defaultTitle","MenuReady","onReady","ready","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","setTimeout","Image","src","logo","alt","mode","_ref7","_path","computedIsPass","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","Tooltip","createElement","stateOption","isInner","Tabs","animated","tab","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","info","other","showBorder","showBackground","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","background","border","ButtonGroup","hidden","ellipsis","Text","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","columnTypes","date","render","isValid","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","serialNumberShort","user","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","force","_ref11","avatar","_ref12","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","onConfirm","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","LoadingButton","async","defaultActiveKey","ghost","bordered","List","Item","Checkbox","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","prefix","dataSource","renderItem","storageKey","getDataApi","loader","setDataFunc","TableConfig","setConfig","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","startTransition","send","cache","isLocal","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","targetHeader","otherHeader","currentGroup","startIndex","groupColumn","hasGroupHeader","sortArrayToMap","setSort","mapSort","setMapSort","newSort","targetValue","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_len","args","_key","pageData","FeaturesColumnsConfig","TablePageInner","withFetch","requestParams","fetchProps","isComplete","setData","loadMore","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","paramsType","currentName","pageSize","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","totalCount","pageSizeKey","toUpperCase","setPageSize","params","fetchParams"],"sourceRoot":""}
|