@kne-components/components-core 0.4.12 → 0.4.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/asset-manifest.json +95 -95
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1996.b4f38679.chunk.css +2 -0
- package/build/static/css/{1996.b1436cc8.chunk.css.map → 1996.b4f38679.chunk.css.map} +1 -1
- package/build/static/css/2004.99fe0683.chunk.css +2 -0
- package/build/static/css/{2004.c035d26e.chunk.css.map → 2004.99fe0683.chunk.css.map} +1 -1
- package/build/static/css/206.05852c5d.chunk.css +2 -0
- package/build/static/css/206.05852c5d.chunk.css.map +1 -0
- package/build/static/css/254.10beca73.chunk.css +2 -0
- package/build/static/css/{254.a12729ab.chunk.css.map → 254.10beca73.chunk.css.map} +1 -1
- package/build/static/css/2628.21fc08fe.chunk.css +2 -0
- package/build/static/css/{2628.3188c686.chunk.css.map → 2628.21fc08fe.chunk.css.map} +1 -1
- package/build/static/css/3404.67a9e351.chunk.css +2 -0
- package/build/static/css/{3404.b9717d24.chunk.css.map → 3404.67a9e351.chunk.css.map} +1 -1
- package/build/static/css/3652.e8f881ae.chunk.css +2 -0
- package/build/static/css/{3652.86f3b6bb.chunk.css.map → 3652.e8f881ae.chunk.css.map} +1 -1
- package/build/static/css/3771.53c92dd6.chunk.css +2 -0
- package/build/static/css/{3771.446d3735.chunk.css.map → 3771.53c92dd6.chunk.css.map} +1 -1
- package/build/static/css/{3790.d1b530a4.chunk.css → 3790.0bd5dcca.chunk.css} +2 -2
- package/build/static/css/{3790.d1b530a4.chunk.css.map → 3790.0bd5dcca.chunk.css.map} +1 -1
- package/build/static/css/{4277.3194c080.chunk.css → 4277.1e6d3ee3.chunk.css} +2 -2
- package/build/static/css/{4277.3194c080.chunk.css.map → 4277.1e6d3ee3.chunk.css.map} +1 -1
- package/build/static/css/4741.8c1069d9.chunk.css +2 -0
- package/build/static/css/{4741.5a84abe3.chunk.css.map → 4741.8c1069d9.chunk.css.map} +1 -1
- package/build/static/css/4832.01d63eb8.chunk.css +2 -0
- package/build/static/css/4832.01d63eb8.chunk.css.map +1 -0
- package/build/static/css/5195.5df3263a.chunk.css +2 -0
- package/build/static/css/5195.5df3263a.chunk.css.map +1 -0
- package/build/static/css/6763.dd66ef2f.chunk.css +2 -0
- package/build/static/css/{6763.42d76eb7.chunk.css.map → 6763.dd66ef2f.chunk.css.map} +1 -1
- package/build/static/css/6980.5f0b0cb2.chunk.css +12 -0
- package/build/static/css/{6980.f5424a2c.chunk.css.map → 6980.5f0b0cb2.chunk.css.map} +1 -1
- package/build/static/css/7227.748fb9a1.chunk.css +2 -0
- package/build/static/css/{7227.e83fd744.chunk.css.map → 7227.748fb9a1.chunk.css.map} +1 -1
- package/build/static/css/760.aed85987.chunk.css +2 -0
- package/build/static/css/{760.7efd69c3.chunk.css.map → 760.aed85987.chunk.css.map} +1 -1
- package/build/static/css/8593.44f6d410.chunk.css +2 -0
- package/build/static/css/{8593.df922b83.chunk.css.map → 8593.44f6d410.chunk.css.map} +1 -1
- package/build/static/css/9556.e0c6c7f6.chunk.css +2 -0
- package/build/static/css/{9556.3024763d.chunk.css.map → 9556.e0c6c7f6.chunk.css.map} +1 -1
- package/build/static/css/9772.94f5f083.chunk.css +2 -0
- package/build/static/css/{9772.e21859cf.chunk.css.map → 9772.94f5f083.chunk.css.map} +1 -1
- package/build/static/js/{1014.ac7e07be.chunk.js → 1014.e5b4dfc7.chunk.js} +1 -1
- package/build/static/js/{1996.1779e813.chunk.js → 1996.3a236927.chunk.js} +2 -2
- package/build/static/js/{1996.1779e813.chunk.js.map → 1996.3a236927.chunk.js.map} +1 -1
- package/build/static/js/{2004.182c7c0f.chunk.js → 2004.f8dd7cdf.chunk.js} +3 -3
- package/build/static/js/{2004.182c7c0f.chunk.js.map → 2004.f8dd7cdf.chunk.js.map} +1 -1
- package/build/static/js/206.6d11e36b.chunk.js +2 -0
- package/build/static/js/{206.870edee0.chunk.js.map → 206.6d11e36b.chunk.js.map} +1 -1
- package/build/static/js/{2097.0567ed2b.chunk.js → 2097.cb0ebbbb.chunk.js} +2 -2
- package/build/static/js/{2097.0567ed2b.chunk.js.map → 2097.cb0ebbbb.chunk.js.map} +1 -1
- package/build/static/js/254.bb219d2f.chunk.js +2 -0
- package/build/static/js/{254.238ab8af.chunk.js.map → 254.bb219d2f.chunk.js.map} +1 -1
- package/build/static/js/{2628.13f2cd3d.chunk.js → 2628.f675039d.chunk.js} +2 -2
- package/build/static/js/{2628.13f2cd3d.chunk.js.map → 2628.f675039d.chunk.js.map} +1 -1
- package/build/static/js/{3404.1b947536.chunk.js → 3404.94f6275b.chunk.js} +3 -3
- package/build/static/js/{3404.1b947536.chunk.js.map → 3404.94f6275b.chunk.js.map} +1 -1
- package/build/static/js/{3652.5d13bc4c.chunk.js → 3652.e5a28adc.chunk.js} +2 -2
- package/build/static/js/{3652.5d13bc4c.chunk.js.map → 3652.e5a28adc.chunk.js.map} +1 -1
- package/build/static/js/{3771.60b0504e.chunk.js → 3771.998da4f9.chunk.js} +2 -2
- package/build/static/js/{3771.60b0504e.chunk.js.map → 3771.998da4f9.chunk.js.map} +1 -1
- package/build/static/js/{3790.72c7a465.chunk.js → 3790.effe004b.chunk.js} +2 -2
- package/build/static/js/{3790.72c7a465.chunk.js.map → 3790.effe004b.chunk.js.map} +1 -1
- package/build/static/js/3856.d51e240b.chunk.js +2 -0
- package/build/static/js/{3856.29d5e528.chunk.js.map → 3856.d51e240b.chunk.js.map} +1 -1
- package/build/static/js/4277.c0f74e50.chunk.js +2 -0
- package/build/static/js/{4277.de810104.chunk.js.map → 4277.c0f74e50.chunk.js.map} +1 -1
- package/build/static/js/4474.8524d82a.chunk.js +2 -0
- package/build/static/js/{4474.dfb83cf2.chunk.js.map → 4474.8524d82a.chunk.js.map} +1 -1
- package/build/static/js/4832.e478f6cf.chunk.js +2 -0
- package/build/static/js/{4832.cf55c52c.chunk.js.map → 4832.e478f6cf.chunk.js.map} +1 -1
- package/build/static/js/5195.c7f2e172.chunk.js +2 -0
- package/build/static/js/{5195.9ac8caa0.chunk.js.map → 5195.c7f2e172.chunk.js.map} +1 -1
- package/build/static/js/{6183.23d57d24.chunk.js → 6183.9f9ecead.chunk.js} +2 -2
- package/build/static/js/6183.9f9ecead.chunk.js.map +1 -0
- package/build/static/js/{6454.d8a2bc1e.chunk.js → 6454.1dea34c5.chunk.js} +1 -1
- package/build/static/js/{6617.94f51cff.chunk.js → 6617.1cb118cb.chunk.js} +1 -1
- package/build/static/js/{6763.97f4747b.chunk.js → 6763.c0930523.chunk.js} +2 -2
- package/build/static/js/{6763.97f4747b.chunk.js.map → 6763.c0930523.chunk.js.map} +1 -1
- package/build/static/js/{6980.5b98fb8f.chunk.js → 6980.eb0ca6af.chunk.js} +2 -2
- package/build/static/js/6980.eb0ca6af.chunk.js.map +1 -0
- package/build/static/js/7227.6e355494.chunk.js +3 -0
- package/build/static/js/{7227.65b21900.chunk.js.map → 7227.6e355494.chunk.js.map} +1 -1
- package/build/static/js/{7338.0c458623.chunk.js → 7338.18d781f2.chunk.js} +2 -2
- package/build/static/js/{7338.0c458623.chunk.js.map → 7338.18d781f2.chunk.js.map} +1 -1
- package/build/static/js/{760.bc8726da.chunk.js → 760.0e9d9610.chunk.js} +2 -2
- package/build/static/js/{760.bc8726da.chunk.js.map → 760.0e9d9610.chunk.js.map} +1 -1
- package/build/static/js/8593.c2266549.chunk.js +2 -0
- package/build/static/js/{8593.a7cfca38.chunk.js.map → 8593.c2266549.chunk.js.map} +1 -1
- package/build/static/js/9556.e0e3aa34.chunk.js +3 -0
- package/build/static/js/{9556.bd02b06f.chunk.js.map → 9556.e0e3aa34.chunk.js.map} +1 -1
- package/build/static/js/{9772.8953d82a.chunk.js → 9772.2e6315a6.chunk.js} +2 -2
- package/build/static/js/9772.2e6315a6.chunk.js.map +1 -0
- package/build/static/js/{main.83f21429.js → main.d69b3bad.js} +2 -2
- package/build/static/js/{main.83f21429.js.map → main.d69b3bad.js.map} +1 -1
- package/package.json +2 -2
- package/build/static/css/1996.b1436cc8.chunk.css +0 -2
- package/build/static/css/2004.c035d26e.chunk.css +0 -2
- package/build/static/css/206.c2648b4c.chunk.css +0 -2
- package/build/static/css/206.c2648b4c.chunk.css.map +0 -1
- package/build/static/css/254.a12729ab.chunk.css +0 -2
- package/build/static/css/2628.3188c686.chunk.css +0 -2
- package/build/static/css/3404.b9717d24.chunk.css +0 -2
- package/build/static/css/3652.86f3b6bb.chunk.css +0 -2
- package/build/static/css/3771.446d3735.chunk.css +0 -2
- package/build/static/css/4741.5a84abe3.chunk.css +0 -2
- package/build/static/css/4832.ee29b4d5.chunk.css +0 -2
- package/build/static/css/4832.ee29b4d5.chunk.css.map +0 -1
- package/build/static/css/5195.9d6bb120.chunk.css +0 -2
- package/build/static/css/5195.9d6bb120.chunk.css.map +0 -1
- package/build/static/css/6763.42d76eb7.chunk.css +0 -2
- package/build/static/css/6980.f5424a2c.chunk.css +0 -12
- package/build/static/css/7227.e83fd744.chunk.css +0 -2
- package/build/static/css/760.7efd69c3.chunk.css +0 -2
- package/build/static/css/8593.df922b83.chunk.css +0 -2
- package/build/static/css/9556.3024763d.chunk.css +0 -2
- package/build/static/css/9772.e21859cf.chunk.css +0 -2
- package/build/static/js/206.870edee0.chunk.js +0 -2
- package/build/static/js/254.238ab8af.chunk.js +0 -2
- package/build/static/js/3856.29d5e528.chunk.js +0 -2
- package/build/static/js/4277.de810104.chunk.js +0 -2
- package/build/static/js/4474.dfb83cf2.chunk.js +0 -2
- package/build/static/js/4832.cf55c52c.chunk.js +0 -2
- package/build/static/js/5195.9ac8caa0.chunk.js +0 -2
- package/build/static/js/6183.23d57d24.chunk.js.map +0 -1
- package/build/static/js/6980.5b98fb8f.chunk.js.map +0 -1
- package/build/static/js/7227.65b21900.chunk.js +0 -3
- package/build/static/js/8593.a7cfca38.chunk.js +0 -2
- package/build/static/js/9556.bd02b06f.chunk.js +0 -3
- package/build/static/js/9772.8953d82a.chunk.js.map +0 -1
- /package/build/static/js/{2004.182c7c0f.chunk.js.LICENSE.txt → 2004.f8dd7cdf.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{3404.1b947536.chunk.js.LICENSE.txt → 3404.94f6275b.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7227.65b21900.chunk.js.LICENSE.txt → 7227.6e355494.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{9556.bd02b06f.chunk.js.LICENSE.txt → 9556.e0e3aa34.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/5195.9ac8caa0.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/StateTag.js","components/StateTag/StateTagEnum.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js","common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","components/Enum/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/locale/index.js","webpack://@kne-components/components-core/./src/components/Layout/PageHeader/style.module.scss?b470","components/Layout/PageHeader/index.js","components/Layout/TablePage.js","components/Layout/StateBarPage.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/FilterProvider.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/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/StateBar/style.module.scss?ecea","components/StateBar/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__RltKb\",\"state-result-tag\":\"style_state-result-tag__CssDz__RltKb\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__RltKb\",\"event-tag\":\"style_event-tag__cg6SE__RltKb\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__RltKb\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__RltKb\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__RltKb\",\"show-bg\":\"style_show-bg__OcL+R__RltKb\",\"tag-text\":\"style_tag-text__JHCt+__RltKb\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__RltKb\"};","import React, {useMemo} from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport {Space, Tag} from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\", borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder = false,\n text = \"\",\n type = \"default\",\n showBackground = true,\n className,\n filterName,\n ...props\n }) => {\n const tagColor = useMemo(() => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }), [type]);\n\n return (<Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(style[\"state-tag-wrapper\"], type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\")}\n align=\"center\"\n size={4}\n >\n {filterName ? (<span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(style[\"state-tag\"], className, type === \"result\" ? style[\"state-result-tag\"] : \"\", type === \"skill\" ? style[\"state-skill-tag\"] : \"\", style[`state-tag-${type}`], showBackground ? style[\"show-bg\"] : \"\", showBorder ? style[\"show-border\"] : \"\", props?.onClick ? style[\"event-tag\"] : \"\")}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>);\n};\n\nexport default StateTag;\n","import Enum from \"@components/Enum\";\nimport StateTag from \"./StateTag\";\n\nconst StateTagEnum = ({moduleName, name, ...props}) => {\n return (\n <Enum moduleName={moduleName} name={name}>\n {data => <StateTag {...props} text={data.description} {...data} />}\n </Enum>\n );\n};\n\nexport default StateTagEnum;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__RltKb\",\"is-resize\":\"style_is-resize__ut6RW__RltKb\",\"is-moving\":\"style_is-moving__BJ9wR__RltKb\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__RltKb\",\"is-computed\":\"style_is-computed__B9rIF__RltKb\",\"options-column\":\"style_options-column__vsPTr__RltKb\",\"options-btn\":\"style_options-btn__U3uoy__RltKb\",\"tooltip\":\"style_tooltip__vJlkv__RltKb\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__RltKb\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__RltKb\",\"columns-control\":\"style_columns-control__5-5ZF__RltKb\",\"columns-control-content\":\"style_columns-control-content__MoeUI__RltKb\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__RltKb\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__RltKb\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__RltKb\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__RltKb\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__RltKb\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__RltKb\",\"is-drag\":\"style_is-drag__U68aw__RltKb\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__RltKb\",\"sortable-drag\":\"style_sortable-drag__K5hWd__RltKb\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__RltKb\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__RltKb\",\"sort-btn\":\"style_sort-btn__KvNLr__RltKb\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__RltKb\",\"sort-icon\":\"style_sort-icon__dB85I__RltKb\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__RltKb\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__RltKb\",\"scroller-inner\":\"style_scroller-inner__NJSE0__RltKb\",\"is-moving\":\"style_is-moving__jGuy0__RltKb\"};","import {createPortal} from \"react-dom\";\nimport {useEffect, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport {getScrollEl} from '../../utils/importantContainer';\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({onScroll, getContainer, ...scrollerProps}) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current && onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(scrollerProps.hasScroller ? (<div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left, width: scrollerProps.width, height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth, left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>) : null, getContainer() || document.body);\n};\n\nconst Scroller = ({\n className, scroller = true, getScrollTarget = getScrollEl, children\n }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0, width: 0, innerLeft: 0, innerWidth: 0, height: 0, hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current = typeof scroller === \"object\" && typeof scroller.getContainer === \"function\" ? scroller.getContainer : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const {left, width, top, height} = scrollEl.getBoundingClientRect();\n const scrollerHeight = scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth = (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft = (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller: scrollEl.scrollWidth - scrollEl.clientWidth > 0 && (container === document.documentElement ? top + height - container.offsetHeight > 0 && top < container.offsetHeight : top < containerRect.top + containerRect.height && top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (<div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>);\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__RltKb\",\"tag\":\"columns_tag__bQZLG__RltKb\",\"avatar\":\"columns_avatar__SLPI+__RltKb\",\"hover\":\"columns_hover__oAwHg__RltKb\",\"primary\":\"columns_primary__6KtaA__RltKb\",\"loading\":\"columns_loading__gtBay__RltKb\",\"options\":\"columns_options__WvDZD__RltKb\"};","import {Button} from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({className, list = [], children, width}) => {\n const buttonProps = {\n className: classnames(className, \"btn-no-padding\", style[\"options-btn\"]), type: \"link\",\n };\n const buttonList = list\n .filter((item) => !item?.hidden)\n .map(({className, ...props}) => Object.assign({}, props, buttonProps));\n const more = <Button\n icon={<Icon type=\"icon-gengduo2\"/>}\n className=\"btn-no-padding\"\n type=\"link\"\n />;\n return (<div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n {typeof children === \"function\" ? children({\n list: buttonList, more, buttonProps\n }) : children}\n {list && list.length > 0 && <ButtonGroup\n list={buttonList}\n more={more}\n />}\n </div>);\n};\n\nconst Options = ({list, ...props}) => {\n if (typeof list === \"function\") {\n return (<Fetch\n loader={list}\n render={({data}) => {\n return <OptionsList {...props} list={data}/>;\n }}\n />);\n }\n if (Array.isArray(list)) {\n return <OptionsList {...props} list={list}/>;\n }\n return <OptionsList {...Object.assign({}, props, list)} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n rootClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import {useState} from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender = () => \"-\",\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n }) => {\n const [loading, setLoading] = useState(false);\n return (<div\n style={Object.assign({}, style, {\"--max-width\": width + \"px\"})}\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[type], isEmpty ? null : {\n [columnsStyle[\"hover\"]]: hover, [columnsStyle[\"primary\"]]: primary, [columnsStyle[\"loading\"]]: loading,\n })}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(onClick({item, colItem: colValue, event: e})).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty ? emptyRender({type, item, hover, primary, children}) : children}\n </div>);\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import {startTransition, useEffect, useMemo, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport {Col, Popover, Row} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport {usePreset} from \"@components/Global\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({title, columns, config, setConfig}) => {\n const [open, setOpen] = useState(false);\n return (<Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n rootClassName={style[\"columns-control-overlay\"]}\n content={<ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(newConfig, (result, value, key) => {\n result[key] = Object.assign({}, config[key], pick(value, [\"visible\", \"rank\"]));\n }, {});\n });\n }}\n />}\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\"/>\n </span>\n </Popover>\n </Col>\n </Row>);\n};\n\nconst useTableConfig = ({\n columns, name, controllerOpen, tableWidth, rowKey,\n }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const {tableServerApis: presetTableServerApis} = usePreset();\n const tableServerApis = presetTableServerApis ? presetTableServerApis : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target = typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const {send} = useFetch(Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n }));\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({force: false});\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(get(config, `${col.name}.visible`) === false || (get(config, `${col.name}.visible`) !== true && col.hidden === true));\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (get(config, `${item.name}.rank`, 0) + (item.fixed === \"left\" ? -10000 : 0) + (item.fixed === \"right\" ? 10000 : 0));\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({type}) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(visibleColumns, ({\n type, name\n }) => get(config, `${name}.width`) || (columnTypes[type] || columnTypes['other']).width);\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({width, index}) => {\n return lastNotOptionsColumnIndex === index ? width + Math.max(tableWidth - totalWidth - 2, 0) : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (<span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, {index});\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\"/>\n </span>);\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const {name, width, min, max, index} = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({width: min, index})) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const {name, width, min, max} = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\", title: (<TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(Math.max(get(config, `${name}.width`) || width, min), max);\n\n const realWidth = computedRealWidth({width: currentWidth, index});\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey = typeof rowKey === \"function\" ? rowKey(prevRecord) : prevRecord[rowKey];\n return (currentMoveColumnIndexRef.current === null || currentMoveColumnIndexRef.current === index || column.type === \"hideInfo\" || !(itemKey === prevItemKey && isEqual(record[column.name], prevRecord[column.name])));\n },\n title: (<>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) && resizeBarRender(Object.assign({}, targetColumn, {width: realWidth}), index)}\n </>),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (currentMoveColumnIndexRef.current === null || currentMoveColumnRef.current === null) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.removeEventListener(\"mousemove\", handlerResize, true);\n };\n }, [resize]);\n\n return {\n visibleColumns, currentMoveColumnIndex, resizeBarRender, columnsConfig: config, totalWidth, computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import {useRef, useState} from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({rowKey, renderProps}) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback((col, index, {columnsConfig}) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const {\n render, width, min, max\n } = Object.assign({}, columnTypes[type] || columnTypes['other'], type === \"hideInfo\" && !isNil(expandInfo) && pick(columnTypes[expandType] || columnTypes['other'], [\"width\", \"min\", \"max\"]));\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign({}, col, typeof col.render === \"function\" ? col.render({\n ...columnRenderPropsRef.current, name, target: item,\n }) : {});\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue = colProps.hasOwnProperty(\"valueOf\") && typeof colProps.valueOf === \"function\" ? colProps.valueOf(item, Object.assign({}, columnRenderPropsRef.current, {\n name,\n }, disableColItem ? {targetRender: targetRenderWithProps} : {})) : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n });\n\n return {\n expandInfo, computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport {Table as AntdTable} from \"antd\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport {getScrollEl as getScrollElDefault} from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl = getScrollElDefault,\n sticky = false,\n stickyOffset = \"var(--nav-height)\",\n pagination = false,\n columnRenderProps = {},\n rowKey = \"id\",\n dataSource,\n controllerOpen = true,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n }) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize((el) => {\n setTableWidth(el.clientWidth);\n }, {isDebounce: true});\n const {expandInfo, computedColumnProps} = useColumnTypeProps({\n rowKey, renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns, controllerOpen, name, computedColumnProps, tableWidth, rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey, expandInfo, columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (<>\n {target.title}\n {sortRender({\n name: col.name, single: typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth, columnsConfig,\n });\n }\n\n return target;\n });\n }, [visibleColumns, tableWidth, columnsConfig, expandInfo, rowKey, controllerOpen, computedColumnProps, computedColumnConfigProps, sortRender,]);\n\n const {columns: groupColumns, hasGroupHeader} = useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback && onTablePropsReadyCallback({\n columns, groupColumns, dataSource, visibleColumns,\n });\n }, [onTablePropsReadyCallback, groupColumns, dataSource, columns, visibleColumns,]);\n\n return (<div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (<Scroller\n className=\"table-page-scroller\"\n scroller={{getContainer: getScrollEl}}\n getScrollTarget={(el) => {\n return (el.querySelector(\".ant-table-body\") || el.querySelector(\".ant-table-content\"));\n }}\n >\n <AntdTable\n {...props}\n sticky={sticky ? {\n getContainer: getScrollEl,\n } : false}\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign({}, {x: Math.max(tableWidth, totalWidth)}, scroll)}\n pagination={pagination}\n summary={typeof summary === \"function\" ? (current, ...args) => {\n return summary(Object.assign({}, {pageData: current}, {columns: groupColumns}), ...args);\n } : null}\n />\n </Scroller>)}\n </div>);\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import {withFetch} from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport {forwardRef, useMemo, useState} from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({id, columns, children}) => {\n if (id) {\n return (<Features id={id}>\n {({options}) => children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })}\n </Features>);\n }\n return children({columns});\n};\n\nconst TablePageInner = withFetch(({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat = (data) => {\n return {\n list: data.pageData, total: data.totalCount,\n };\n },\n className,\n featureId,\n columns,\n getColumns,\n pagination = {},\n columnRenderProps = {},\n summary,\n sticky = true,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list, pagination: pagination.open ? {\n total: formatData.total,\n showTotal: (total) => (<>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>),\n current: get(requestParams, [pagination.paramsType, pagination.currentName], 1),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange ? pagination.onChange : (page, size) => {\n if (page !== get(requestParams, [pagination.paramsType, pagination.currentName], 1)) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page, [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange && pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n } : false,\n };\n\n return (<IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({columns}) => (<Table\n {...Object.assign({}, props, tableProps)}\n sticky={sticky}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps, requestParams, fetchProps, data,\n }}\n summary={typeof summary === \"function\" ? (...args) => {\n return summary(Object.assign({}, {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n }, ...args));\n } : null}\n />)}\n </FeaturesColumnsConfig>\n </IntlProvider>);\n});\n\nconst TablePage = forwardRef(({pagination, ...props}, ref) => {\n pagination = Object.assign({}, {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n }, pagination);\n const pageSizeKey = `${(props.name || \"common\").toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(localStorage.getItem(pageSizeKey) || pagination.pageSize);\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (<TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize, onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />);\n});\n\nexport default TablePage;\n","const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__RltKb\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__RltKb\",\"no-start-icon\":\"style_no-start-icon__LnC1S__RltKb\",\"has-children\":\"style_has-children__m9tce__RltKb\",\"has-children-node\":\"style_has-children-node__2bhEB__RltKb\",\"is-root\":\"style_is-root__4hhOc__RltKb\",\"title\":\"style_title__+Hcar__RltKb\",\"active\":\"style_active__WU49K__RltKb\",\"no-collapse\":\"style_no-collapse__aIZBM__RltKb\",\"title-content\":\"style_title-content__cQXpK__RltKb\",\"loading\":\"style_loading__1pU4P__RltKb\"};","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 = {}, nodeMapping = [];\n const traversal = (children, options) => {\n const {parentKey, depth} = Object.assign({\n parentKey: \"root\", depth: 0, paths: [],\n }, options);\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${item.key || `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`}`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey, depth: depth + 1,\n });\n childrenKeys[currentKey] && childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey, parentKey, depth, children: children, 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 icon,\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 = (Array.isArray(children) && children.length > 0) || fetchOptions;\n const {refresh, isLoading} = useFetch(Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions, onRequestSuccess: (data) => {\n onLoad(data);\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 (<div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\"/>\n </div>);\n }\n };\n return (<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 && !icon,\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 && <Icon type={iconType}/>}\n {icon || null}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (<Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />)}\n </div>\n {renderChildren()}\n </div>\n </Permissions>);\n};\n\nconst Menu = ({className, allowCollapsed = true, pathMatch, defaultItems = [], ...props}) => {\n const {pathname, search} = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\", defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue({defaultItems, ...props}, {\n defaultValue: \"defaultItems\", value: \"items\", onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems, defaultOpenKeys, links, childrenKeys, hasStartIcon, hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems, childrenKeys, nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false, hasChildren = false;\n const links = [], defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType || node.icon) {\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, links, items: targetItems, childrenKeys, hasStartIcon, 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 (ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) || ensureSlash(pathname + search) === ensureSlash(path));\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }), {\n value: \"openKeys\", defaultValue: \"defaultOpenKeys\", onChange: \"onOpenChange\",\n });\n\n const renderChildren = useCallback((children, options) => {\n const {parentKey, depth, selectedKey, openKeys, paths} = Object.assign({\n parentKey: null, depth: 0, paths: [],\n }, options);\n if (Array.isArray(children) && children.length > 0) {\n return children.map(({children, key: currentKey, originItem, ...item}) => {\n return (<MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={currentKey === selectedKey || (childrenKeys[currentKey] && childrenKeys[currentKey].indexOf(selectedKey) > -1)}\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: 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, depth: depth + 1, selectedKey, openKeys, paths: [...paths, currentKey],\n })}\n </MenuItem>);\n });\n }\n return null;\n }, [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]);\n\n return (<div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon, [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, {selectedKey, openKeys})}\n </div>);\n};\n\nexport default Menu;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__RltKb\"};","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 ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1) : true;\n};\n\nexport const usePermissions = () => {\n const {global} = useGlobalContext();\n const {permissions, permissionsPath} = usePreset();\n return {\n permissions: global.permissions || permissions || (permissionsPath && get(global, permissionsPath)) || [],\n };\n};\n\nexport const usePermissionsPass = ({request}) => {\n const {permissions} = usePermissions();\n return computedIsPass({permissions, request});\n};\n\nconst Permissions = ({\n type = 'hidden',\n className,\n tagName = 'span',\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 (<Tooltip title={message}>\n {createElement(tagName, {...props, className: classnames(style[\"outer\"], className)}, children)}\n </Tooltip>);\n }\n\n return null;\n};\n\nexport default Permissions;\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 as useReactContext} from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n menuCloseWidth: \"0px\",\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__RltKb\",\"page-content\":\"style_page-content__4XeN8__RltKb\",\"page-main\":\"style_page-main__P0yEF__RltKb\",\"page-main-content\":\"style_page-main-content__1OVPN__RltKb\",\"table-page\":\"style_table-page__JkbLf__RltKb\",\"helper-guide\":\"style_helper-guide__vzw4z__RltKb\",\"page-outer\":\"style_page-outer__2a6iH__RltKb\",\"no-margin\":\"style_no-margin__S6caT__RltKb\",\"page-menu\":\"style_page-menu__CZSa9__RltKb\",\"closed\":\"style_closed__hmnft__RltKb\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__RltKb\",\"page-menu-main\":\"style_page-menu-main__OXg2M__RltKb\",\"page-option-main\":\"style_page-option-main__LyfT3__RltKb\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__RltKb\",\"page-option\":\"style_page-option__diS2S__RltKb\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__RltKb\",\"page-option-footer\":\"style_page-option-footer__d7xE0__RltKb\",\"fixed-container\":\"style_fixed-container__1VZwY__RltKb\",\"is-fixed\":\"style_is-fixed__1aQhp__RltKb\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__RltKb\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__RltKb\",\"page-title\":\"style_page-title__zw-Fd__RltKb\",\"page-title-text\":\"style_page-title-text__Rj4RC__RltKb\",\"no-padding\":\"style_no-padding__V7Dwy__RltKb\",\"page-header\":\"style_page-header__a813p__RltKb\",\"page-header-info\":\"style_page-header-info__cMrZR__RltKb\",\"layout-menu\":\"style_layout-menu__yiab0__RltKb\",\"sub-menu\":\"style_sub-menu__dyqK7__RltKb\",\"no-collapsed\":\"style_no-collapsed__76h8W__RltKb\",\"has-not-children\":\"style_has-not-children__fnjRK__RltKb\",\"table-page-top\":\"style_table-page-top__bt1l9__RltKb\",\"error-component\":\"style_error-component__HvghB__RltKb\",\"state-bar-page\":\"style_state-bar-page__+aUM4__RltKb\",\"back-icon\":\"style_back-icon__79v2G__RltKb\"};","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, menuCloseWidth, 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\"],'core-page-menu', {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{\"--menu-width\": menuWidth, \"--menu-close-width\": menuCloseWidth}}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar\n className={style[\"page-menu-main\"]}>{typeof menu === 'function' ? menu({open: menuOpen}) : menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], 'core-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 = (p) => {\n const {featureId, name, openFeatures, ...props} = Object.assign({}, defaultProps, p);\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\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, Flex} 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 (<Filter className={style[\"page-title\"]} {...filter} extra={titleExtra}/>);\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (<Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col flex={1}>\n <Flex gap={8} align=\"center\">\n {title ? (<div className={style[\"page-title-text\"]}>\n {backUrl ? (<Flex gap={8} align=\"center\">\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 </Flex>) : (title)}\n </div>) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Flex>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>);\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 = ({className, 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 return (\n <AntdLayout\n className={classnames(style[\"layout\"], className, 'core-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={classnames(style[\"layout-content-wrap\"], 'core-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 className={classnames(style[\"page-content\"], 'core-page-content', {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })} flex={1} style={{\"--background-color\": pageProps.backgroundColor}}>\n <div className={classnames(style[\"page-main\"], 'core-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\"], 'core-page-main-content', {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={classnames(style[\"helper-guide-page\"], 'core-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\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","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 {\"page-header\":\"style_page-header__l3LiS__RltKb\",\"main\":\"style_main__X1Ynh__RltKb\",\"icon-outer\":\"style_icon-outer__6F97H__RltKb\",\"title\":\"style_title__dNWQj__RltKb\",\"info\":\"style_info__yF-4c__RltKb\",\"overlay\":\"style_overlay__SWqqE__RltKb\",\"tags\":\"style_tags__5+zDU__RltKb\",\"tag-split\":\"style_tag-split__V6SqP__RltKb\",\"button-options\":\"style_button-options__f1-gI__RltKb\"};","import {Space, Row, Col} from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\nimport {isValidElement} from 'react';\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport {IntlProvider} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nexport const PageHeaderInner = ({\n className,\n title,\n icon,\n iconType,\n info,\n tags,\n tagSplit = <span className={style[\"tag-split\"]}>|</span>,\n tagClassName = \"\",\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n children\n }) => {\n return (<Row\n className={classnames(className, style[\"page-header\"])}\n wrap={false}\n gutter={10}\n >\n {addonBefore && <Col>{addonBefore}</Col>}\n <Col flex={1}>\n <Space direction=\"vertical\">\n <Row wrap={false}>\n <Col flex={1} className={style[\"main\"]}>\n <Space align=\"start\">\n {icon && <div className={style[\"icon-outer\"]}>{icon}</div>}\n {!icon && iconType && (<div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24}/>\n </div>)}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (<Col\n flex={1}\n className={style[\"button-options\"]}\n style={{\"--max-width\": buttonOptionsMaxWidth}}\n >\n {isValidElement(buttonOptions) && buttonOptions}\n {typeof buttonOptions === \"object\" && Array.isArray(buttonOptions?.list) &&\n <ButtonGroup {...buttonOptions} />}\n </Col>)}\n </Row>\n {tags && (<Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (<div key={index} className={style[\"tags\"]}>\n {item}\n </div>);\n })}\n </Space>)}\n {children}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>);\n};\n\nconst PageHeader = (props) => {\n return (<IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>);\n};\n\nexport default PageHeader;\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","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__RltKb\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__RltKb\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__RltKb\",\"filter-title\":\"style_filter-title__PlIpS__RltKb\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__RltKb\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__RltKb\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__RltKb\",\"filter-line\":\"style_filter-line__E+cRh__RltKb\",\"clean-btn\":\"style_clean-btn__oSEvm__RltKb\",\"filter-item\":\"style_filter-item__Q2ncE__RltKb\",\"un-expand\":\"style_un-expand__4PFY8__RltKb\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__RltKb\",\"filter-label\":\"style_filter-label__qu26i__RltKb\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__RltKb\",\"option\":\"style_option__rd5Qo__RltKb\",\"is-active\":\"style_is-active__OArQI__RltKb\",\"is-visited\":\"style_is-visited__gZ5ni__RltKb\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__RltKb\",\"filter-item-label\":\"style_filter-item-label__C781J__RltKb\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__RltKb\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__RltKb\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__RltKb\",\"filter-tag\":\"style_filter-tag__dUGfu__RltKb\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__RltKb\",\"pop-util-content\":\"style_pop-util-content__bx5zP__RltKb\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__RltKb\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__RltKb\",\"pop-util-text\":\"style_pop-util-text__pzeUy__RltKb\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__RltKb\",\"filter-item-text\":\"style_filter-item-text__MA8tU__RltKb\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__RltKb\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__RltKb\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__RltKb\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__RltKb\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__RltKb\",\"range-picker\":\"style_range-picker__c6ngq__RltKb\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__RltKb\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__RltKb\",\"filter-advanced\":\"style_filter-advanced__4cyDy__RltKb\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__RltKb\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__RltKb\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__RltKb\"};","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 (<div className={style[\"filter-line\"]}>\n {list.filter((item) => !!item.type).map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value ? get(value.get(props?.name), \"value\") : props?.value,\n onChange: onChange ? (value) => onChange({\n name: props?.name, label: props?.label, value,\n }) : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (<ComponentItem\n {...Object.assign({}, item.props, {\n value: value ? get(value.get(item.props.name), \"value\") : item.props.value,\n onChange: onChange ? (value) => onChange({\n name: item.props.name, label: item.props.label, value,\n }) : item.props.onChange,\n })}\n key={item.key || item.props.name || index}\n />);\n })}\n {children}\n </div>);\n};\n\nconst FilterLines = ({\n className, list = [], displayLine = 1, label, extra, children,\n }) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n return (<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 {list && list.length > 0 && (label || <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\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) => (<Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (<Space\n size={4}\n className={classnames(style[\"filter-item\"], style[\"option\"])}\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>) : null}\n </Line>))}\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) => (<Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (<>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(style[\"option\"], style[\"filter-item\"])}\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(style[\"option\"], style[\"filter-item\"])}\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 </Line>))}\n </div>\n </Space>\n </IntlProvider>);\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 {useMemo} from \"react\";\nimport {isNotEmpty} from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport {IntlProvider} from \"@components/Intl\";\n\nconst FilterOuter = ({children, className, defaultValue = [], ...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 {typeof children === 'function' ? children({props, value, onChange}) : children}\n </Provider>\n </IntlProvider>\n );\n};\n\nexport default FilterOuter;\n","import classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport FilterProvider from './FilterProvider';\n\nconst FilterOuter = ({children, className, ...props}) => {\n return <FilterProvider {...props}>\n {(context) => <div className={classnames(style[\"filter\"], className)}>\n {children(context)}\n </div>}\n </FilterProvider>\n\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = ({defaultValue=[],...props}) => {\n return (\n <FilterOuter {...props} defaultValue={defaultValue}>\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\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__RltKb\",\"is-popup\":\"style_is-popup__pCRv2__RltKb\"};","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 = 'bottomLeft',\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 (<Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n rootClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={<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 <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label}/>\n </span>\n </Popover>);\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), value: [range[0] || null, range[1] || null],\n };\n};\n\nconst defaultPropsOnValidate = (value) => {\n const range = get(value, \"value\");\n return !(range && isNumber(range[0]) && isNumber(range[1]) && range[1] < range[0]);\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate = defaultPropsOnValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n }) => {\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n return (<PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{onValidate, overlayClassName, placement, onOpenChange}}\n >\n {({value, onChange}) => (<Space.Compact>\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([target, get(value, \"value[1]\")], unit, formatMessage));\n }}\n />\n <Input\n style={{\n width: 30, borderLeft: 0, borderRight: 0, pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([get(value, \"value[0]\"), target], unit, formatMessage));\n }}\n />\n {unit && (<Input\n style={{\n width: 50, borderLeft: 0,\n }}\n value={unit}\n disabled\n />)}\n </Space.Compact>)}\n </PopoverItem>);\n};\n\nexport default InputFilterItem;\n","import {DatePicker} from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(({value, onChange, picker = \"date\", ...props}) => {\n return (<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 && onChange({\n label: picker !== \"date\" ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}` : value.format(format), value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />);\n});\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\";\nimport {useIntl} from \"@components/Intl\";\n\nconst SearchInput = withFilterValue(({label, onChange, value, placeholder, ...props}) => {\n const {formatMessage} = useIntl({moduleName: 'Filter'});\n return (\n <SearchInputField\n {...props}\n placeholder={placeholder || formatMessage({id: 'inputPlaceholder'}, {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 = false,\n maxLength = 5,\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};\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 = false,\n maxLength = 5,\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\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\";\nimport FilterProvider from './FilterProvider';\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nFilter.FilterProvider = FilterProvider;\nexport default Filter;\nexport {fields, getFilterValue, useFilter, withFilterValue, SearchInput, FilterProvider};\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__RltKb\",\"inner\":\"style_inner__bMKeU__RltKb\",\"content\":\"style_content__xTfWZ__RltKb\",\"link\":\"style_link__93j7O__RltKb\"};","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","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__RltKb\",\"navigation\":\"style_navigation__60RrS__RltKb\",\"logo\":\"style_logo__lB9RC__RltKb\",\"is-fixed\":\"style_is-fixed__kHFWj__RltKb\",\"navigation-logo\":\"style_navigation-logo__q9qHu__RltKb\",\"navigation-list\":\"style_navigation-list__EYtkg__RltKb\",\"navigation-options\":\"style_navigation-options__0BdJU__RltKb\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__RltKb\",\"more-icon\":\"style_more-icon__gNMnt__RltKb\"};","import {Col, Layout, Menu, Row, Space, Flex} 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, 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 = true,\n showIndex = true,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base = '',\n onChange,\n className,\n navigateTo,\n }) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({key, ...others}) => [key, others]));\n }, [list]);\n const nav = useNavigate();\n const navigate = typeof navigateTo === 'function' ? navigateTo : nav;\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 ? get(Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }), \"[0]\") : \"home\";\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom = 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 = mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true, childList: true, 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(navigationRef.current, mutationObserverInitConfig);\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex ? {\n label: indexLabel || (<FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\"/>),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n } : false;\n\n return (<IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (<SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\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(\"navigation-logo\", style[\"navigation-logo\"])}\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(\"navigation-list\", style[\"navigation-list\"])}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={overflowedIndicator || (<Space size={4}>\n <span>\n {nameLabel || (<FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />)}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>)}\n items={[indexNav, ...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, icon, path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return {\n label: icon ? <Flex gap={8}>\n {icon}\n <span>{title}</span>\n </Flex> : title, key: name, onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>);\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__RltKb\",\"has-children\":\"style_has-children__oQDqU__RltKb\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__RltKb\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__RltKb\",\"tab-step-control\":\"style_tab-step-control__EQaCl__RltKb\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__RltKb\"};","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"],"names":["tagTypeEnum","default","skill","color","borderColor","result","filterResult","success","progress","danger","info","other","_ref","showBorder","text","type","showBackground","className","filterName","props","tagColor","useMemo","_tagTypeEnum$type","_tagTypeEnum$type2","_jsxs","Space","classnames","style","align","size","children","_jsx","Tag","background","border","onClick","moduleName","name","Enum","data","StateTag","description","ScrollBar","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","left","height","innerLeft","onMouseDown","preventDefault","body","_ref2","scroller","getScrollTarget","getScrollEl","setScrollerProps","ref","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","x","OptionsList","list","buttonProps","buttonList","filter","hidden","map","more","Button","icon","Icon","length","ButtonGroup","_ref3","Fetch","loader","render","_ref4","isArray","ellipsis","Typography","Text","tooltip","rootClassName","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","value","emptyOf","values","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","ColItem","Ellipsis","_ref15","columnTypes","date","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref0","isEnum","force","_ref1","omit","avatar","_ref10","Image","Avatar","singleRow","_ref11","hideInfo","HideInfoComponent","mainInfo","_ref12","_ref13","options","_ref14","sensitiveInfo","_ref16","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","get","key","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","justify","Col","Tooltip","LoadingButton","async","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","set","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","localStorage","getItem","setDataFunc","setItem","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","usePreset","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","target","startTransition","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","Map","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","getScrollElDefault","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","querySelector","AntdTable","_len","arguments","args","_key","pageData","locale","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","withFetch","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","total","totalCount","featureId","getColumns","handlerDataFormat","formatData","tableProps","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","importMessages","Table","forwardRef","pageSizeKey","toUpperCase","setPageSize","params","fetchParams","dataType","JSON","parse","Number","Boolean","stringify","MenuItem","navigation","useNavigate","label","iconType","path","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","isLoading","Permissions","Spin","pathMatch","defaultItems","pathname","search","useLocation","selectedKey","setSelectKeyChange","items","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","node","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","_createElement","parentId","newOpenKeys","computedIsPass","permissions","some","usePermissions","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","message","isPass","Result","status","subTitle","createElement","preset","base","defaultProps","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","context","createContext","Provider","Consumer","useContext","useReactContext","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","split","FixedContainer","SimpleBar","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","isNotEmpty","localMenuOpenRef","targetProps","p","openFeatures","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","MutationObserver","subtree","childList","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","Filter","extra","Flex","gap","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","location","ErrorBoundary","ReactErrorBoundary","errorComponent","theme","setScrollLeft","_setPageProps","handlerScroll","Navigation","PageTitle","helperGuideName","HelperGuide","Page","PageHeaderInner","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","direction","colorful","isValidElement","topArea","tableData","setTableData","PermissionsPage","stateBar","StateBar","treeTraverse","func","pId","parseProfile","memoize","profile","profileMap","output","features","keys","dependencies","depId","computedIsPaas","currentId","every","dependenciesTarget","useFeatureCall","debug","useFeatures","systemId","console","log","feature","Line","ComponentItem","displayLine","hasMore","isExpand","setIsExpand","filterValue","extraExpand","closable","onClose","newValue","valueBase","newFilterValue","FilterProvider","FilterOuter","others","FilterLines","FilterValueDisplay","active","WrappedComponent","interceptor","FilterItem","allowClear","input","valueType","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","selectedKeys","undefined","TreeField","maxLength","MAX_VALUE","checkStrictly","treeToList","nodeList","onValidate","overlayClassName","state","setState","PopoverItem","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","defaultPropsOnValidate","useIntl","Compact","InputNumber","borderLeft","borderRight","pointerEvents","withFieldItem","picker","DatePicker","startOf","endOf","Date","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","InputFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","CheckableTag","withAddressApi","addressApi","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","findIndex","error","getCityValue","getCity","custom","itemValue","fields","ListFilterItem","propsValue","inputValue","setInputValue","setActive","searchHandler","useSimulationBlur","inputValueRef","onFocus","onPressEnter","AdvancedFilter","createWithIntl","MoreFilterLines","advancedFields","getFilterValue","useFilter","url","Link","href","Layout","SetTitle","mapping","defaultTitle","MenuReady","onReady","ready","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","navigateTo","nav","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","src","logo","alt","mode","_path","stateOption","isInner","Tabs","animated","tab"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/5195.c7f2e172.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/StateTag.js","components/StateTag/StateTagEnum.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js","common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","components/Enum/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/locale/index.js","webpack://@kne-components/components-core/./src/components/Layout/PageHeader/style.module.scss?b470","components/Layout/PageHeader/index.js","components/Layout/TablePage.js","components/Layout/StateBarPage.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/FilterProvider.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/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/StateBar/style.module.scss?ecea","components/StateBar/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__DHs+D\",\"state-result-tag\":\"style_state-result-tag__CssDz__DHs+D\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__DHs+D\",\"event-tag\":\"style_event-tag__cg6SE__DHs+D\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__DHs+D\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__DHs+D\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__DHs+D\",\"show-bg\":\"style_show-bg__OcL+R__DHs+D\",\"tag-text\":\"style_tag-text__JHCt+__DHs+D\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__DHs+D\"};","import React, {useMemo} from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport {Space, Tag} from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\", borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder = false,\n text = \"\",\n type = \"default\",\n showBackground = true,\n className,\n filterName,\n ...props\n }) => {\n const tagColor = useMemo(() => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }), [type]);\n\n return (<Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(style[\"state-tag-wrapper\"], type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\")}\n align=\"center\"\n size={4}\n >\n {filterName ? (<span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(style[\"state-tag\"], className, type === \"result\" ? style[\"state-result-tag\"] : \"\", type === \"skill\" ? style[\"state-skill-tag\"] : \"\", style[`state-tag-${type}`], showBackground ? style[\"show-bg\"] : \"\", showBorder ? style[\"show-border\"] : \"\", props?.onClick ? style[\"event-tag\"] : \"\")}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>);\n};\n\nexport default StateTag;\n","import Enum from \"@components/Enum\";\nimport StateTag from \"./StateTag\";\n\nconst StateTagEnum = ({moduleName, name, ...props}) => {\n return (\n <Enum moduleName={moduleName} name={name}>\n {data => <StateTag {...props} text={data.description} {...data} />}\n </Enum>\n );\n};\n\nexport default StateTagEnum;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__DHs+D\",\"is-resize\":\"style_is-resize__ut6RW__DHs+D\",\"is-moving\":\"style_is-moving__BJ9wR__DHs+D\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__DHs+D\",\"is-computed\":\"style_is-computed__B9rIF__DHs+D\",\"options-column\":\"style_options-column__vsPTr__DHs+D\",\"options-btn\":\"style_options-btn__U3uoy__DHs+D\",\"tooltip\":\"style_tooltip__vJlkv__DHs+D\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__DHs+D\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__DHs+D\",\"columns-control\":\"style_columns-control__5-5ZF__DHs+D\",\"columns-control-content\":\"style_columns-control-content__MoeUI__DHs+D\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__DHs+D\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__DHs+D\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__DHs+D\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__DHs+D\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__DHs+D\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__DHs+D\",\"is-drag\":\"style_is-drag__U68aw__DHs+D\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__DHs+D\",\"sortable-drag\":\"style_sortable-drag__K5hWd__DHs+D\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__DHs+D\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__DHs+D\",\"sort-btn\":\"style_sort-btn__KvNLr__DHs+D\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__DHs+D\",\"sort-icon\":\"style_sort-icon__dB85I__DHs+D\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__DHs+D\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__DHs+D\",\"scroller-inner\":\"style_scroller-inner__NJSE0__DHs+D\",\"is-moving\":\"style_is-moving__jGuy0__DHs+D\"};","import {createPortal} from \"react-dom\";\nimport {useEffect, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport {getScrollEl} from '../../utils/importantContainer';\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({onScroll, getContainer, ...scrollerProps}) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current && onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(scrollerProps.hasScroller ? (<div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left, width: scrollerProps.width, height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth, left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>) : null, getContainer() || document.body);\n};\n\nconst Scroller = ({\n className, scroller = true, getScrollTarget = getScrollEl, children\n }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0, width: 0, innerLeft: 0, innerWidth: 0, height: 0, hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current = typeof scroller === \"object\" && typeof scroller.getContainer === \"function\" ? scroller.getContainer : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const {left, width, top, height} = scrollEl.getBoundingClientRect();\n const scrollerHeight = scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth = (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft = (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller: scrollEl.scrollWidth - scrollEl.clientWidth > 0 && (container === document.documentElement ? top + height - container.offsetHeight > 0 && top < container.offsetHeight : top < containerRect.top + containerRect.height && top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (<div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>);\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__DHs+D\",\"tag\":\"columns_tag__bQZLG__DHs+D\",\"avatar\":\"columns_avatar__SLPI+__DHs+D\",\"hover\":\"columns_hover__oAwHg__DHs+D\",\"primary\":\"columns_primary__6KtaA__DHs+D\",\"loading\":\"columns_loading__gtBay__DHs+D\",\"options\":\"columns_options__WvDZD__DHs+D\"};","import {Button} from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({className, list = [], children, width}) => {\n const buttonProps = {\n className: classnames(className, \"btn-no-padding\", style[\"options-btn\"]), type: \"link\",\n };\n const buttonList = list\n .filter((item) => !item?.hidden)\n .map(({className, ...props}) => Object.assign({}, props, buttonProps));\n const more = <Button\n icon={<Icon type=\"icon-gengduo2\"/>}\n className=\"btn-no-padding\"\n type=\"link\"\n />;\n return (<div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n {typeof children === \"function\" ? children({\n list: buttonList, more, buttonProps\n }) : children}\n {list && list.length > 0 && <ButtonGroup\n list={buttonList}\n more={more}\n />}\n </div>);\n};\n\nconst Options = ({list, ...props}) => {\n if (typeof list === \"function\") {\n return (<Fetch\n loader={list}\n render={({data}) => {\n return <OptionsList {...props} list={data}/>;\n }}\n />);\n }\n if (Array.isArray(list)) {\n return <OptionsList {...props} list={list}/>;\n }\n return <OptionsList {...Object.assign({}, props, list)} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n rootClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import {useState} from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender = () => \"-\",\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n }) => {\n const [loading, setLoading] = useState(false);\n return (<div\n style={Object.assign({}, style, {\"--max-width\": width + \"px\"})}\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[type], isEmpty ? null : {\n [columnsStyle[\"hover\"]]: hover, [columnsStyle[\"primary\"]]: primary, [columnsStyle[\"loading\"]]: loading,\n })}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(onClick({item, colItem: colValue, event: e})).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty ? emptyRender({type, item, hover, primary, children}) : children}\n </div>);\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import {startTransition, useEffect, useMemo, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport {Col, Popover, Row} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport {usePreset} from \"@components/Global\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({title, columns, config, setConfig}) => {\n const [open, setOpen] = useState(false);\n return (<Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n rootClassName={style[\"columns-control-overlay\"]}\n content={<ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(newConfig, (result, value, key) => {\n result[key] = Object.assign({}, config[key], pick(value, [\"visible\", \"rank\"]));\n }, {});\n });\n }}\n />}\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\"/>\n </span>\n </Popover>\n </Col>\n </Row>);\n};\n\nconst useTableConfig = ({\n columns, name, controllerOpen, tableWidth, rowKey,\n }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const {tableServerApis: presetTableServerApis} = usePreset();\n const tableServerApis = presetTableServerApis ? presetTableServerApis : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target = typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const {send} = useFetch(Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n }));\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({force: false});\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(get(config, `${col.name}.visible`) === false || (get(config, `${col.name}.visible`) !== true && col.hidden === true));\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (get(config, `${item.name}.rank`, 0) + (item.fixed === \"left\" ? -10000 : 0) + (item.fixed === \"right\" ? 10000 : 0));\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({type}) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(visibleColumns, ({\n type, name\n }) => get(config, `${name}.width`) || (columnTypes[type] || columnTypes['other']).width);\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({width, index}) => {\n return lastNotOptionsColumnIndex === index ? width + Math.max(tableWidth - totalWidth - 2, 0) : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (<span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, {index});\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\"/>\n </span>);\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const {name, width, min, max, index} = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({width: min, index})) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const {name, width, min, max} = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\", title: (<TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(Math.max(get(config, `${name}.width`) || width, min), max);\n\n const realWidth = computedRealWidth({width: currentWidth, index});\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey = typeof rowKey === \"function\" ? rowKey(prevRecord) : prevRecord[rowKey];\n return (currentMoveColumnIndexRef.current === null || currentMoveColumnIndexRef.current === index || column.type === \"hideInfo\" || !(itemKey === prevItemKey && isEqual(record[column.name], prevRecord[column.name])));\n },\n title: (<>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) && resizeBarRender(Object.assign({}, targetColumn, {width: realWidth}), index)}\n </>),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (currentMoveColumnIndexRef.current === null || currentMoveColumnRef.current === null) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.removeEventListener(\"mousemove\", handlerResize, true);\n };\n }, [resize]);\n\n return {\n visibleColumns, currentMoveColumnIndex, resizeBarRender, columnsConfig: config, totalWidth, computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import {useRef, useState} from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({rowKey, renderProps}) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback((col, index, {columnsConfig}) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const {\n render, width, min, max\n } = Object.assign({}, columnTypes[type] || columnTypes['other'], type === \"hideInfo\" && !isNil(expandInfo) && pick(columnTypes[expandType] || columnTypes['other'], [\"width\", \"min\", \"max\"]));\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign({}, col, typeof col.render === \"function\" ? col.render({\n ...columnRenderPropsRef.current, name, target: item,\n }) : {});\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue = colProps.hasOwnProperty(\"valueOf\") && typeof colProps.valueOf === \"function\" ? colProps.valueOf(item, Object.assign({}, columnRenderPropsRef.current, {\n name,\n }, disableColItem ? {targetRender: targetRenderWithProps} : {})) : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n });\n\n return {\n expandInfo, computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport {Table as AntdTable} from \"antd\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport {getScrollEl as getScrollElDefault} from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl = getScrollElDefault,\n sticky = false,\n stickyOffset = \"var(--nav-height)\",\n pagination = false,\n columnRenderProps = {},\n rowKey = \"id\",\n dataSource,\n controllerOpen = true,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n }) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize((el) => {\n setTableWidth(el.clientWidth);\n }, {isDebounce: true});\n const {expandInfo, computedColumnProps} = useColumnTypeProps({\n rowKey, renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns, controllerOpen, name, computedColumnProps, tableWidth, rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey, expandInfo, columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (<>\n {target.title}\n {sortRender({\n name: col.name, single: typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth, columnsConfig,\n });\n }\n\n return target;\n });\n }, [visibleColumns, tableWidth, columnsConfig, expandInfo, rowKey, controllerOpen, computedColumnProps, computedColumnConfigProps, sortRender,]);\n\n const {columns: groupColumns, hasGroupHeader} = useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback && onTablePropsReadyCallback({\n columns, groupColumns, dataSource, visibleColumns,\n });\n }, [onTablePropsReadyCallback, groupColumns, dataSource, columns, visibleColumns,]);\n\n return (<div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (<Scroller\n className=\"table-page-scroller\"\n scroller={{getContainer: getScrollEl}}\n getScrollTarget={(el) => {\n return (el.querySelector(\".ant-table-body\") || el.querySelector(\".ant-table-content\"));\n }}\n >\n <AntdTable\n {...props}\n sticky={sticky ? {\n getContainer: getScrollEl,\n } : false}\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign({}, {x: Math.max(tableWidth, totalWidth)}, scroll)}\n pagination={pagination}\n summary={typeof summary === \"function\" ? (current, ...args) => {\n return summary(Object.assign({}, {pageData: current}, {columns: groupColumns}), ...args);\n } : null}\n />\n </Scroller>)}\n </div>);\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import {withFetch} from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport {forwardRef, useMemo, useState} from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({id, columns, children}) => {\n if (id) {\n return (<Features id={id}>\n {({options}) => children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })}\n </Features>);\n }\n return children({columns});\n};\n\nconst TablePageInner = withFetch(({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat = (data) => {\n return {\n list: data.pageData, total: data.totalCount,\n };\n },\n className,\n featureId,\n columns,\n getColumns,\n pagination = {},\n columnRenderProps = {},\n summary,\n sticky = true,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list, pagination: pagination.open ? {\n total: formatData.total,\n showTotal: (total) => (<>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>),\n current: get(requestParams, [pagination.paramsType, pagination.currentName], 1),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange ? pagination.onChange : (page, size) => {\n if (page !== get(requestParams, [pagination.paramsType, pagination.currentName], 1)) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page, [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange && pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n } : false,\n };\n\n return (<IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({columns}) => (<Table\n {...Object.assign({}, props, tableProps)}\n sticky={sticky}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps, requestParams, fetchProps, data,\n }}\n summary={typeof summary === \"function\" ? (...args) => {\n return summary(Object.assign({}, {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n }, ...args));\n } : null}\n />)}\n </FeaturesColumnsConfig>\n </IntlProvider>);\n});\n\nconst TablePage = forwardRef(({pagination, ...props}, ref) => {\n pagination = Object.assign({}, {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n }, pagination);\n const pageSizeKey = `${(props.name || \"common\").toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(localStorage.getItem(pageSizeKey) || pagination.pageSize);\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (<TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize, onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />);\n});\n\nexport default TablePage;\n","const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__DHs+D\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__DHs+D\",\"no-start-icon\":\"style_no-start-icon__LnC1S__DHs+D\",\"has-children\":\"style_has-children__m9tce__DHs+D\",\"has-children-node\":\"style_has-children-node__2bhEB__DHs+D\",\"is-root\":\"style_is-root__4hhOc__DHs+D\",\"title\":\"style_title__+Hcar__DHs+D\",\"active\":\"style_active__WU49K__DHs+D\",\"no-collapse\":\"style_no-collapse__aIZBM__DHs+D\",\"title-content\":\"style_title-content__cQXpK__DHs+D\",\"loading\":\"style_loading__1pU4P__DHs+D\"};","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 = {}, nodeMapping = [];\n const traversal = (children, options) => {\n const {parentKey, depth} = Object.assign({\n parentKey: \"root\", depth: 0, paths: [],\n }, options);\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${item.key || `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`}`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey, depth: depth + 1,\n });\n childrenKeys[currentKey] && childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey, parentKey, depth, children: children, 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 icon,\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 = (Array.isArray(children) && children.length > 0) || fetchOptions;\n const {refresh, isLoading} = useFetch(Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions, onRequestSuccess: (data) => {\n onLoad(data);\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 (<div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\"/>\n </div>);\n }\n };\n return (<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 && !icon,\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 && <Icon type={iconType}/>}\n {icon || null}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (<Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />)}\n </div>\n {renderChildren()}\n </div>\n </Permissions>);\n};\n\nconst Menu = ({className, allowCollapsed = true, pathMatch, defaultItems = [], ...props}) => {\n const {pathname, search} = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\", defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue({defaultItems, ...props}, {\n defaultValue: \"defaultItems\", value: \"items\", onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems, defaultOpenKeys, links, childrenKeys, hasStartIcon, hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems, childrenKeys, nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false, hasChildren = false;\n const links = [], defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType || node.icon) {\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, links, items: targetItems, childrenKeys, hasStartIcon, 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 (ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) || ensureSlash(pathname + search) === ensureSlash(path));\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }), {\n value: \"openKeys\", defaultValue: \"defaultOpenKeys\", onChange: \"onOpenChange\",\n });\n\n const renderChildren = useCallback((children, options) => {\n const {parentKey, depth, selectedKey, openKeys, paths} = Object.assign({\n parentKey: null, depth: 0, paths: [],\n }, options);\n if (Array.isArray(children) && children.length > 0) {\n return children.map(({children, key: currentKey, originItem, ...item}) => {\n return (<MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={currentKey === selectedKey || (childrenKeys[currentKey] && childrenKeys[currentKey].indexOf(selectedKey) > -1)}\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: 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, depth: depth + 1, selectedKey, openKeys, paths: [...paths, currentKey],\n })}\n </MenuItem>);\n });\n }\n return null;\n }, [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]);\n\n return (<div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon, [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, {selectedKey, openKeys})}\n </div>);\n};\n\nexport default Menu;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__DHs+D\"};","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 ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1) : true;\n};\n\nexport const usePermissions = () => {\n const {global} = useGlobalContext();\n const {permissions, permissionsPath} = usePreset();\n return {\n permissions: global.permissions || permissions || (permissionsPath && get(global, permissionsPath)) || [],\n };\n};\n\nexport const usePermissionsPass = ({request}) => {\n const {permissions} = usePermissions();\n return computedIsPass({permissions, request});\n};\n\nconst Permissions = ({\n type = 'hidden',\n className,\n tagName = 'span',\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 (<Tooltip title={message}>\n {createElement(tagName, {...props, className: classnames(style[\"outer\"], className)}, children)}\n </Tooltip>);\n }\n\n return null;\n};\n\nexport default Permissions;\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 as useReactContext} from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n menuCloseWidth: \"0px\",\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__DHs+D\",\"page-content\":\"style_page-content__4XeN8__DHs+D\",\"page-main\":\"style_page-main__P0yEF__DHs+D\",\"page-main-content\":\"style_page-main-content__1OVPN__DHs+D\",\"table-page\":\"style_table-page__JkbLf__DHs+D\",\"helper-guide\":\"style_helper-guide__vzw4z__DHs+D\",\"page-outer\":\"style_page-outer__2a6iH__DHs+D\",\"no-margin\":\"style_no-margin__S6caT__DHs+D\",\"page-menu\":\"style_page-menu__CZSa9__DHs+D\",\"closed\":\"style_closed__hmnft__DHs+D\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__DHs+D\",\"page-menu-main\":\"style_page-menu-main__OXg2M__DHs+D\",\"page-option-main\":\"style_page-option-main__LyfT3__DHs+D\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__DHs+D\",\"page-option\":\"style_page-option__diS2S__DHs+D\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__DHs+D\",\"page-option-footer\":\"style_page-option-footer__d7xE0__DHs+D\",\"fixed-container\":\"style_fixed-container__1VZwY__DHs+D\",\"is-fixed\":\"style_is-fixed__1aQhp__DHs+D\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__DHs+D\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__DHs+D\",\"page-title\":\"style_page-title__zw-Fd__DHs+D\",\"page-title-text\":\"style_page-title-text__Rj4RC__DHs+D\",\"no-padding\":\"style_no-padding__V7Dwy__DHs+D\",\"page-header\":\"style_page-header__a813p__DHs+D\",\"page-header-info\":\"style_page-header-info__cMrZR__DHs+D\",\"layout-menu\":\"style_layout-menu__yiab0__DHs+D\",\"sub-menu\":\"style_sub-menu__dyqK7__DHs+D\",\"no-collapsed\":\"style_no-collapsed__76h8W__DHs+D\",\"has-not-children\":\"style_has-not-children__fnjRK__DHs+D\",\"table-page-top\":\"style_table-page-top__bt1l9__DHs+D\",\"error-component\":\"style_error-component__HvghB__DHs+D\",\"state-bar-page\":\"style_state-bar-page__+aUM4__DHs+D\",\"back-icon\":\"style_back-icon__79v2G__DHs+D\"};","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, menuCloseWidth, 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\"],'core-page-menu', {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{\"--menu-width\": menuWidth, \"--menu-close-width\": menuCloseWidth}}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar\n className={style[\"page-menu-main\"]}>{typeof menu === 'function' ? menu({open: menuOpen}) : menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], 'core-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 = (p) => {\n const {featureId, name, openFeatures, ...props} = Object.assign({}, defaultProps, p);\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\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, Flex} 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 (<Filter className={style[\"page-title\"]} {...filter} extra={titleExtra}/>);\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (<Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col flex={1}>\n <Flex gap={8} align=\"center\">\n {title ? (<div className={style[\"page-title-text\"]}>\n {backUrl ? (<Flex gap={8} align=\"center\">\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 </Flex>) : (title)}\n </div>) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Flex>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>);\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 = ({className, 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 return (\n <AntdLayout\n className={classnames(style[\"layout\"], className, 'core-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={classnames(style[\"layout-content-wrap\"], 'core-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 className={classnames(style[\"page-content\"], 'core-page-content', {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })} flex={1} style={{\"--background-color\": pageProps.backgroundColor}}>\n <div className={classnames(style[\"page-main\"], 'core-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\"], 'core-page-main-content', {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={classnames(style[\"helper-guide-page\"], 'core-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\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","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 {\"page-header\":\"style_page-header__l3LiS__DHs+D\",\"main\":\"style_main__X1Ynh__DHs+D\",\"icon-outer\":\"style_icon-outer__6F97H__DHs+D\",\"title\":\"style_title__dNWQj__DHs+D\",\"info\":\"style_info__yF-4c__DHs+D\",\"overlay\":\"style_overlay__SWqqE__DHs+D\",\"tags\":\"style_tags__5+zDU__DHs+D\",\"tag-split\":\"style_tag-split__V6SqP__DHs+D\",\"button-options\":\"style_button-options__f1-gI__DHs+D\"};","import {Space, Row, Col} from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\nimport {isValidElement} from 'react';\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport {IntlProvider} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nexport const PageHeaderInner = ({\n className,\n title,\n icon,\n iconType,\n info,\n tags,\n tagSplit = <span className={style[\"tag-split\"]}>|</span>,\n tagClassName = \"\",\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n children\n }) => {\n return (<Row\n className={classnames(className, style[\"page-header\"])}\n wrap={false}\n gutter={10}\n >\n {addonBefore && <Col>{addonBefore}</Col>}\n <Col flex={1}>\n <Space direction=\"vertical\">\n <Row wrap={false}>\n <Col flex={1} className={style[\"main\"]}>\n <Space align=\"start\">\n {icon && <div className={style[\"icon-outer\"]}>{icon}</div>}\n {!icon && iconType && (<div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24}/>\n </div>)}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (<Col\n flex={1}\n className={style[\"button-options\"]}\n style={{\"--max-width\": buttonOptionsMaxWidth}}\n >\n {isValidElement(buttonOptions) && buttonOptions}\n {typeof buttonOptions === \"object\" && Array.isArray(buttonOptions?.list) &&\n <ButtonGroup {...buttonOptions} />}\n </Col>)}\n </Row>\n {tags && (<Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (<div key={index} className={style[\"tags\"]}>\n {item}\n </div>);\n })}\n </Space>)}\n {children}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>);\n};\n\nconst PageHeader = (props) => {\n return (<IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>);\n};\n\nexport default PageHeader;\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","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__DHs+D\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__DHs+D\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__DHs+D\",\"filter-title\":\"style_filter-title__PlIpS__DHs+D\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__DHs+D\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__DHs+D\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__DHs+D\",\"filter-line\":\"style_filter-line__E+cRh__DHs+D\",\"clean-btn\":\"style_clean-btn__oSEvm__DHs+D\",\"filter-item\":\"style_filter-item__Q2ncE__DHs+D\",\"un-expand\":\"style_un-expand__4PFY8__DHs+D\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__DHs+D\",\"filter-label\":\"style_filter-label__qu26i__DHs+D\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__DHs+D\",\"option\":\"style_option__rd5Qo__DHs+D\",\"is-active\":\"style_is-active__OArQI__DHs+D\",\"is-visited\":\"style_is-visited__gZ5ni__DHs+D\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__DHs+D\",\"filter-item-label\":\"style_filter-item-label__C781J__DHs+D\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__DHs+D\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__DHs+D\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__DHs+D\",\"filter-tag\":\"style_filter-tag__dUGfu__DHs+D\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__DHs+D\",\"pop-util-content\":\"style_pop-util-content__bx5zP__DHs+D\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__DHs+D\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__DHs+D\",\"pop-util-text\":\"style_pop-util-text__pzeUy__DHs+D\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__DHs+D\",\"filter-item-text\":\"style_filter-item-text__MA8tU__DHs+D\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__DHs+D\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__DHs+D\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__DHs+D\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__DHs+D\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__DHs+D\",\"range-picker\":\"style_range-picker__c6ngq__DHs+D\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__DHs+D\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__DHs+D\",\"filter-advanced\":\"style_filter-advanced__4cyDy__DHs+D\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__DHs+D\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__DHs+D\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__DHs+D\"};","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 (<div className={style[\"filter-line\"]}>\n {list.filter((item) => !!item.type).map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value ? get(value.get(props?.name), \"value\") : props?.value,\n onChange: onChange ? (value) => onChange({\n name: props?.name, label: props?.label, value,\n }) : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (<ComponentItem\n {...Object.assign({}, item.props, {\n value: value ? get(value.get(item.props.name), \"value\") : item.props.value,\n onChange: onChange ? (value) => onChange({\n name: item.props.name, label: item.props.label, value,\n }) : item.props.onChange,\n })}\n key={item.key || item.props.name || index}\n />);\n })}\n {children}\n </div>);\n};\n\nconst FilterLines = ({\n className, list = [], displayLine = 1, label, extra, children,\n }) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n return (<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 {list && list.length > 0 && (label || <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\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) => (<Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (<Space\n size={4}\n className={classnames(style[\"filter-item\"], style[\"option\"])}\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>) : null}\n </Line>))}\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) => (<Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (<>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(style[\"option\"], style[\"filter-item\"])}\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(style[\"option\"], style[\"filter-item\"])}\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 </Line>))}\n </div>\n </Space>\n </IntlProvider>);\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 {useMemo} from \"react\";\nimport {isNotEmpty} from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport {IntlProvider} from \"@components/Intl\";\n\nconst FilterOuter = ({children, className, defaultValue = [], ...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 {typeof children === 'function' ? children({props, value, onChange}) : children}\n </Provider>\n </IntlProvider>\n );\n};\n\nexport default FilterOuter;\n","import classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport FilterProvider from './FilterProvider';\n\nconst FilterOuter = ({children, className, ...props}) => {\n return <FilterProvider {...props}>\n {(context) => <div className={classnames(style[\"filter\"], className)}>\n {children(context)}\n </div>}\n </FilterProvider>\n\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = ({defaultValue=[],...props}) => {\n return (\n <FilterOuter {...props} defaultValue={defaultValue}>\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\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__DHs+D\",\"is-popup\":\"style_is-popup__pCRv2__DHs+D\"};","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 = 'bottomLeft',\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 (<Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n rootClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={<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 <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label}/>\n </span>\n </Popover>);\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), value: [range[0] || null, range[1] || null],\n };\n};\n\nconst defaultPropsOnValidate = (value) => {\n const range = get(value, \"value\");\n return !(range && isNumber(range[0]) && isNumber(range[1]) && range[1] < range[0]);\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate = defaultPropsOnValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n }) => {\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n return (<PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{onValidate, overlayClassName, placement, onOpenChange}}\n >\n {({value, onChange}) => (<Space.Compact>\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([target, get(value, \"value[1]\")], unit, formatMessage));\n }}\n />\n <Input\n style={{\n width: 30, borderLeft: 0, borderRight: 0, pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([get(value, \"value[0]\"), target], unit, formatMessage));\n }}\n />\n {unit && (<Input\n style={{\n width: 50, borderLeft: 0,\n }}\n value={unit}\n disabled\n />)}\n </Space.Compact>)}\n </PopoverItem>);\n};\n\nexport default InputFilterItem;\n","import {DatePicker} from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(({value, onChange, picker = \"date\", ...props}) => {\n return (<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 && onChange({\n label: picker !== \"date\" ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}` : value.format(format), value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />);\n});\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\";\nimport {useIntl} from \"@components/Intl\";\n\nconst SearchInput = withFilterValue(({label, onChange, value, placeholder, ...props}) => {\n const {formatMessage} = useIntl({moduleName: 'Filter'});\n return (\n <SearchInputField\n {...props}\n placeholder={placeholder || formatMessage({id: 'inputPlaceholder'}, {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 = false,\n maxLength = 5,\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};\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 = false,\n maxLength = 5,\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\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\";\nimport FilterProvider from './FilterProvider';\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nFilter.FilterProvider = FilterProvider;\nexport default Filter;\nexport {fields, getFilterValue, useFilter, withFilterValue, SearchInput, FilterProvider};\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__DHs+D\",\"inner\":\"style_inner__bMKeU__DHs+D\",\"content\":\"style_content__xTfWZ__DHs+D\",\"link\":\"style_link__93j7O__DHs+D\"};","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","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__DHs+D\",\"navigation\":\"style_navigation__60RrS__DHs+D\",\"logo\":\"style_logo__lB9RC__DHs+D\",\"is-fixed\":\"style_is-fixed__kHFWj__DHs+D\",\"navigation-logo\":\"style_navigation-logo__q9qHu__DHs+D\",\"navigation-list\":\"style_navigation-list__EYtkg__DHs+D\",\"navigation-options\":\"style_navigation-options__0BdJU__DHs+D\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__DHs+D\",\"more-icon\":\"style_more-icon__gNMnt__DHs+D\"};","import {Col, Layout, Menu, Row, Space, Flex} 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, 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 = true,\n showIndex = true,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base = '',\n onChange,\n className,\n navigateTo,\n }) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({key, ...others}) => [key, others]));\n }, [list]);\n const nav = useNavigate();\n const navigate = typeof navigateTo === 'function' ? navigateTo : nav;\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 ? get(Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }), \"[0]\") : \"home\";\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom = 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 = mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true, childList: true, 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(navigationRef.current, mutationObserverInitConfig);\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex ? {\n label: indexLabel || (<FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\"/>),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n } : false;\n\n return (<IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (<SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\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(\"navigation-logo\", style[\"navigation-logo\"])}\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(\"navigation-list\", style[\"navigation-list\"])}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={overflowedIndicator || (<Space size={4}>\n <span>\n {nameLabel || (<FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />)}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>)}\n items={[indexNav, ...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, icon, path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return {\n label: icon ? <Flex gap={8}>\n {icon}\n <span>{title}</span>\n </Flex> : title, key: name, onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>);\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__DHs+D\",\"has-children\":\"style_has-children__oQDqU__DHs+D\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__DHs+D\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__DHs+D\",\"tab-step-control\":\"style_tab-step-control__EQaCl__DHs+D\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__DHs+D\"};","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"],"names":["tagTypeEnum","default","skill","color","borderColor","result","filterResult","success","progress","danger","info","other","_ref","showBorder","text","type","showBackground","className","filterName","props","tagColor","useMemo","_tagTypeEnum$type","_tagTypeEnum$type2","_jsxs","Space","classnames","style","align","size","children","_jsx","Tag","background","border","onClick","moduleName","name","Enum","data","StateTag","description","ScrollBar","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","left","height","innerLeft","onMouseDown","preventDefault","body","_ref2","scroller","getScrollTarget","getScrollEl","setScrollerProps","ref","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","x","OptionsList","list","buttonProps","buttonList","filter","hidden","map","more","Button","icon","Icon","length","ButtonGroup","_ref3","Fetch","loader","render","_ref4","isArray","ellipsis","Typography","Text","tooltip","rootClassName","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","value","emptyOf","values","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","ColItem","Ellipsis","_ref15","columnTypes","date","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref0","isEnum","force","_ref1","omit","avatar","_ref10","Image","Avatar","singleRow","_ref11","hideInfo","HideInfoComponent","mainInfo","_ref12","_ref13","options","_ref14","sensitiveInfo","_ref16","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","get","key","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","justify","Col","Tooltip","LoadingButton","async","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","set","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","localStorage","getItem","setDataFunc","setItem","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","usePreset","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","target","startTransition","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","Map","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","getScrollElDefault","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","querySelector","AntdTable","_len","arguments","args","_key","pageData","locale","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","withFetch","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","total","totalCount","featureId","getColumns","handlerDataFormat","formatData","tableProps","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","importMessages","Table","forwardRef","pageSizeKey","toUpperCase","setPageSize","params","fetchParams","dataType","JSON","parse","Number","Boolean","stringify","MenuItem","navigation","useNavigate","label","iconType","path","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","isLoading","Permissions","Spin","pathMatch","defaultItems","pathname","search","useLocation","selectedKey","setSelectKeyChange","items","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","node","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","_createElement","parentId","newOpenKeys","computedIsPass","permissions","some","usePermissions","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","message","isPass","Result","status","subTitle","createElement","preset","base","defaultProps","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","context","createContext","Provider","Consumer","useContext","useReactContext","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","split","FixedContainer","SimpleBar","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","isNotEmpty","localMenuOpenRef","targetProps","p","openFeatures","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","MutationObserver","subtree","childList","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","Filter","extra","Flex","gap","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","location","ErrorBoundary","ReactErrorBoundary","errorComponent","theme","setScrollLeft","_setPageProps","handlerScroll","Navigation","PageTitle","helperGuideName","HelperGuide","Page","PageHeaderInner","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","direction","colorful","isValidElement","topArea","tableData","setTableData","PermissionsPage","stateBar","StateBar","treeTraverse","func","pId","parseProfile","memoize","profile","profileMap","output","features","keys","dependencies","depId","computedIsPaas","currentId","every","dependenciesTarget","useFeatureCall","debug","useFeatures","systemId","console","log","feature","Line","ComponentItem","displayLine","hasMore","isExpand","setIsExpand","filterValue","extraExpand","closable","onClose","newValue","valueBase","newFilterValue","FilterProvider","FilterOuter","others","FilterLines","FilterValueDisplay","active","WrappedComponent","interceptor","FilterItem","allowClear","input","valueType","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","selectedKeys","undefined","TreeField","maxLength","MAX_VALUE","checkStrictly","treeToList","nodeList","onValidate","overlayClassName","state","setState","PopoverItem","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","defaultPropsOnValidate","useIntl","Compact","InputNumber","borderLeft","borderRight","pointerEvents","withFieldItem","picker","DatePicker","startOf","endOf","Date","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","InputFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","CheckableTag","withAddressApi","addressApi","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","findIndex","error","getCityValue","getCity","custom","itemValue","fields","ListFilterItem","propsValue","inputValue","setInputValue","setActive","searchHandler","useSimulationBlur","inputValueRef","onFocus","onPressEnter","AdvancedFilter","createWithIntl","MoreFilterLines","advancedFields","getFilterValue","useFilter","url","Link","href","Layout","SetTitle","mapping","defaultTitle","MenuReady","onReady","ready","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","navigateTo","nav","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","src","logo","alt","mode","_path","stateOption","isInner","Tabs","animated","tab"],"sourceRoot":""}
|