@kne-components/components-core 0.3.1 → 0.3.2
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 -94
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1045.ca53a230.chunk.css +2 -0
- package/build/static/css/{1045.5b8bac7c.chunk.css.map → 1045.ca53a230.chunk.css.map} +1 -1
- package/build/static/css/1153.3938cc4f.chunk.css +2 -0
- package/build/static/css/1153.3938cc4f.chunk.css.map +1 -0
- package/build/static/css/1517.0e2b370a.chunk.css +2 -0
- package/build/static/css/{1517.910dec4e.chunk.css.map → 1517.0e2b370a.chunk.css.map} +1 -1
- package/build/static/css/1554.6872c900.chunk.css +2 -0
- package/build/static/css/{1554.ee338802.chunk.css.map → 1554.6872c900.chunk.css.map} +1 -1
- package/build/static/css/2716.1540a78c.chunk.css +2 -0
- package/build/static/css/{2716.cdace44f.chunk.css.map → 2716.1540a78c.chunk.css.map} +1 -1
- package/build/static/css/283.a8e68a9b.chunk.css +2 -0
- package/build/static/css/283.a8e68a9b.chunk.css.map +1 -0
- package/build/static/css/3834.1aadc45b.chunk.css +2 -0
- package/build/static/css/{3834.b3b5b3d1.chunk.css.map → 3834.1aadc45b.chunk.css.map} +1 -1
- package/build/static/css/4666.029a3147.chunk.css +2 -0
- package/build/static/css/{4666.8311296a.chunk.css.map → 4666.029a3147.chunk.css.map} +1 -1
- package/build/static/css/5371.e593e147.chunk.css +2 -0
- package/build/static/css/{5371.1e1f8f3d.chunk.css.map → 5371.e593e147.chunk.css.map} +1 -1
- package/build/static/css/5939.3c318ac7.chunk.css +2 -0
- package/build/static/css/{5939.7b9cea6d.chunk.css.map → 5939.3c318ac7.chunk.css.map} +1 -1
- package/build/static/css/5965.2e4fa038.chunk.css +2 -0
- package/build/static/css/{5965.004176ff.chunk.css.map → 5965.2e4fa038.chunk.css.map} +1 -1
- package/build/static/css/{624.cff8f67b.chunk.css → 624.751f939e.chunk.css} +2 -2
- package/build/static/css/{624.cff8f67b.chunk.css.map → 624.751f939e.chunk.css.map} +1 -1
- package/build/static/css/663.d39f6c6b.chunk.css +12 -0
- package/build/static/css/{663.f0d0d2ce.chunk.css.map → 663.d39f6c6b.chunk.css.map} +1 -1
- package/build/static/css/6756.55dbe43e.chunk.css +2 -0
- package/build/static/css/{6756.040dfc03.chunk.css.map → 6756.55dbe43e.chunk.css.map} +1 -1
- package/build/static/css/7227.8f74b65f.chunk.css +2 -0
- package/build/static/css/{7227.8ed71356.chunk.css.map → 7227.8f74b65f.chunk.css.map} +1 -1
- package/build/static/css/7253.47083b66.chunk.css +2 -0
- package/build/static/css/{7253.8b8a8acf.chunk.css.map → 7253.47083b66.chunk.css.map} +1 -1
- package/build/static/css/7277.4aa6f83a.chunk.css +2 -0
- package/build/static/css/7277.4aa6f83a.chunk.css.map +1 -0
- package/build/static/css/7334.76feddfb.chunk.css +2 -0
- package/build/static/css/{7334.e49acc19.chunk.css.map → 7334.76feddfb.chunk.css.map} +1 -1
- package/build/static/css/764.ebcb3503.chunk.css +2 -0
- package/build/static/css/764.ebcb3503.chunk.css.map +1 -0
- package/build/static/css/7866.30c124fe.chunk.css +2 -0
- package/build/static/css/{7866.3ca5cf18.chunk.css.map → 7866.30c124fe.chunk.css.map} +1 -1
- package/build/static/css/{8503.51365300.chunk.css → 8503.2239044c.chunk.css} +2 -2
- package/build/static/css/{8503.51365300.chunk.css.map → 8503.2239044c.chunk.css.map} +1 -1
- package/build/static/js/1045.96978d7a.chunk.js +2 -0
- package/build/static/js/{1045.187fc895.chunk.js.map → 1045.96978d7a.chunk.js.map} +1 -1
- package/build/static/js/{1153.107391cc.chunk.js → 1153.f2e1849c.chunk.js} +3 -3
- package/build/static/js/{1153.107391cc.chunk.js.map → 1153.f2e1849c.chunk.js.map} +1 -1
- package/build/static/js/1517.cbe4cda9.chunk.js +2 -0
- package/build/static/js/{1517.d6817f3d.chunk.js.map → 1517.cbe4cda9.chunk.js.map} +1 -1
- package/build/static/js/1554.d4377969.chunk.js +3 -0
- package/build/static/js/1554.d4377969.chunk.js.map +1 -0
- package/build/static/js/2716.d4e2358f.chunk.js +3 -0
- package/build/static/js/{2716.b6f444b9.chunk.js.map → 2716.d4e2358f.chunk.js.map} +1 -1
- package/build/static/js/2818.e319ed91.chunk.js +2 -0
- package/build/static/js/2818.e319ed91.chunk.js.map +1 -0
- package/build/static/js/283.0d1a3a55.chunk.js +2 -0
- package/build/static/js/{283.6cfd4ce9.chunk.js.map → 283.0d1a3a55.chunk.js.map} +1 -1
- package/build/static/js/3834.97b7fd67.chunk.js +2 -0
- package/build/static/js/{3834.afb48ef0.chunk.js.map → 3834.97b7fd67.chunk.js.map} +1 -1
- package/build/static/js/3856.8291b496.chunk.js +2 -0
- package/build/static/js/{3856.6b298690.chunk.js.map → 3856.8291b496.chunk.js.map} +1 -1
- package/build/static/js/4474.eaf8f6dd.chunk.js +2 -0
- package/build/static/js/{4474.65980687.chunk.js.map → 4474.eaf8f6dd.chunk.js.map} +1 -1
- package/build/static/js/{4666.0b771151.chunk.js → 4666.5ae60760.chunk.js} +3 -3
- package/build/static/js/{4666.0b771151.chunk.js.map → 4666.5ae60760.chunk.js.map} +1 -1
- package/build/static/js/4671.963f0532.chunk.js +1 -0
- package/build/static/js/4982.cb2c6afa.chunk.js +2 -0
- package/build/static/js/4982.cb2c6afa.chunk.js.map +1 -0
- package/build/static/js/5371.996b5f3c.chunk.js +2 -0
- package/build/static/js/{5371.36657923.chunk.js.map → 5371.996b5f3c.chunk.js.map} +1 -1
- package/build/static/js/{5939.e303acdc.chunk.js → 5939.e3810ade.chunk.js} +2 -2
- package/build/static/js/5939.e3810ade.chunk.js.map +1 -0
- package/build/static/js/5965.58a50b3c.chunk.js +2 -0
- package/build/static/js/{5965.f43b91cf.chunk.js.map → 5965.58a50b3c.chunk.js.map} +1 -1
- package/build/static/js/{624.909e77ac.chunk.js → 624.55fa139e.chunk.js} +2 -2
- package/build/static/js/{624.909e77ac.chunk.js.map → 624.55fa139e.chunk.js.map} +1 -1
- package/build/static/js/{663.c0d26ab7.chunk.js → 663.06a1a9cc.chunk.js} +2 -2
- package/build/static/js/663.06a1a9cc.chunk.js.map +1 -0
- package/build/static/js/{7227.179ff477.chunk.js → 7227.fed50031.chunk.js} +3 -3
- package/build/static/js/{7227.179ff477.chunk.js.map → 7227.fed50031.chunk.js.map} +1 -1
- package/build/static/js/7253.310ab9ae.chunk.js +2 -0
- package/build/static/js/{7253.7925a31a.chunk.js.map → 7253.310ab9ae.chunk.js.map} +1 -1
- package/build/static/js/7277.3112a937.chunk.js +2 -0
- package/build/static/js/7277.3112a937.chunk.js.map +1 -0
- package/build/static/js/7334.cc4c2c3b.chunk.js +2 -0
- package/build/static/js/{7334.75a51796.chunk.js.map → 7334.cc4c2c3b.chunk.js.map} +1 -1
- package/build/static/js/764.61214339.chunk.js +2 -0
- package/build/static/js/{764.b6ed5366.chunk.js.map → 764.61214339.chunk.js.map} +1 -1
- package/build/static/js/7866.35b7eba0.chunk.js +2 -0
- package/build/static/js/{7866.dbc4eec4.chunk.js.map → 7866.35b7eba0.chunk.js.map} +1 -1
- package/build/static/js/8503.c3ac17cd.chunk.js +2 -0
- package/build/static/js/{8503.6d24ee29.chunk.js.map → 8503.c3ac17cd.chunk.js.map} +1 -1
- package/build/static/js/main.0c22de2e.js +2 -0
- package/build/static/js/main.0c22de2e.js.map +1 -0
- package/package.json +3 -2
- package/build/static/css/1045.5b8bac7c.chunk.css +0 -2
- package/build/static/css/1153.3ff3c045.chunk.css +0 -2
- package/build/static/css/1153.3ff3c045.chunk.css.map +0 -1
- package/build/static/css/1517.910dec4e.chunk.css +0 -2
- package/build/static/css/1554.ee338802.chunk.css +0 -2
- package/build/static/css/2716.cdace44f.chunk.css +0 -2
- package/build/static/css/283.792e4f29.chunk.css +0 -2
- package/build/static/css/283.792e4f29.chunk.css.map +0 -1
- package/build/static/css/3834.b3b5b3d1.chunk.css +0 -2
- package/build/static/css/4666.8311296a.chunk.css +0 -2
- package/build/static/css/5371.1e1f8f3d.chunk.css +0 -2
- package/build/static/css/5939.7b9cea6d.chunk.css +0 -2
- package/build/static/css/5965.004176ff.chunk.css +0 -2
- package/build/static/css/663.f0d0d2ce.chunk.css +0 -12
- package/build/static/css/6756.040dfc03.chunk.css +0 -2
- package/build/static/css/7227.8ed71356.chunk.css +0 -2
- package/build/static/css/7253.8b8a8acf.chunk.css +0 -2
- package/build/static/css/7277.1a084012.chunk.css +0 -2
- package/build/static/css/7277.1a084012.chunk.css.map +0 -1
- package/build/static/css/7334.e49acc19.chunk.css +0 -2
- package/build/static/css/764.63920b2c.chunk.css +0 -2
- package/build/static/css/764.63920b2c.chunk.css.map +0 -1
- package/build/static/css/7866.3ca5cf18.chunk.css +0 -2
- package/build/static/js/1045.187fc895.chunk.js +0 -2
- package/build/static/js/1517.d6817f3d.chunk.js +0 -2
- package/build/static/js/1554.757a2787.chunk.js +0 -3
- package/build/static/js/1554.757a2787.chunk.js.map +0 -1
- package/build/static/js/2716.b6f444b9.chunk.js +0 -3
- package/build/static/js/283.6cfd4ce9.chunk.js +0 -2
- package/build/static/js/3834.afb48ef0.chunk.js +0 -2
- package/build/static/js/3856.6b298690.chunk.js +0 -2
- package/build/static/js/4474.65980687.chunk.js +0 -2
- package/build/static/js/4671.6ba75f14.chunk.js +0 -3
- package/build/static/js/4671.6ba75f14.chunk.js.map +0 -1
- package/build/static/js/5371.36657923.chunk.js +0 -2
- package/build/static/js/5652.9fe33ba5.chunk.js +0 -2
- package/build/static/js/5652.9fe33ba5.chunk.js.map +0 -1
- package/build/static/js/5939.e303acdc.chunk.js.map +0 -1
- package/build/static/js/5965.f43b91cf.chunk.js +0 -2
- package/build/static/js/663.c0d26ab7.chunk.js.map +0 -1
- package/build/static/js/7227.179ff477.chunk.js.LICENSE.txt +0 -9
- package/build/static/js/7253.7925a31a.chunk.js +0 -2
- package/build/static/js/7277.93496ccd.chunk.js +0 -2
- package/build/static/js/7277.93496ccd.chunk.js.map +0 -1
- package/build/static/js/7334.75a51796.chunk.js +0 -2
- package/build/static/js/764.b6ed5366.chunk.js +0 -2
- package/build/static/js/7866.dbc4eec4.chunk.js +0 -2
- package/build/static/js/8503.6d24ee29.chunk.js +0 -2
- package/build/static/js/main.3ca59099.js +0 -2
- package/build/static/js/main.3ca59099.js.map +0 -1
- /package/build/static/js/{1153.107391cc.chunk.js.LICENSE.txt → 1153.f2e1849c.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{1554.757a2787.chunk.js.LICENSE.txt → 1554.d4377969.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{2716.b6f444b9.chunk.js.LICENSE.txt → 2716.d4e2358f.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{4666.0b771151.chunk.js.LICENSE.txt → 4666.5ae60760.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{4671.6ba75f14.chunk.js.LICENSE.txt → 7227.fed50031.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/764.b6ed5366.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","components/Enum/index.js","components/Features/index.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/context.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","webpack://@kne-components/components-core/./src/common/components/TreeField/style.module.scss?bcd6","common/components/TreeField/index.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/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","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/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"],"sourcesContent":["const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","import { preset } from \"@kne/react-enum\";\nimport transform from \"lodash/transform\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\npreset({\n base: transform(\n baseLoaders,\n (result, value) => {\n result[value[0]] = value[1];\n },\n {}\n ),\n});\n\nexport { default } from \"@kne/react-enum\";\n","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__+pyNJ\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__+pyNJ\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__+pyNJ\",\"filter-title\":\"style_filter-title__PlIpS__+pyNJ\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__+pyNJ\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__+pyNJ\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__+pyNJ\",\"filter-line\":\"style_filter-line__E+cRh__+pyNJ\",\"clean-btn\":\"style_clean-btn__oSEvm__+pyNJ\",\"filter-item\":\"style_filter-item__Q2ncE__+pyNJ\",\"un-expand\":\"style_un-expand__4PFY8__+pyNJ\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__+pyNJ\",\"filter-label\":\"style_filter-label__qu26i__+pyNJ\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__+pyNJ\",\"option\":\"style_option__rd5Qo__+pyNJ\",\"is-active\":\"style_is-active__OArQI__+pyNJ\",\"is-visited\":\"style_is-visited__gZ5ni__+pyNJ\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__+pyNJ\",\"filter-item-label\":\"style_filter-item-label__C781J__+pyNJ\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__+pyNJ\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__+pyNJ\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__+pyNJ\",\"filter-tag\":\"style_filter-tag__dUGfu__+pyNJ\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__+pyNJ\",\"pop-util-content\":\"style_pop-util-content__bx5zP__+pyNJ\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__+pyNJ\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__+pyNJ\",\"pop-util-text\":\"style_pop-util-text__pzeUy__+pyNJ\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__+pyNJ\",\"filter-item-text\":\"style_filter-item-text__MA8tU__+pyNJ\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__+pyNJ\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__+pyNJ\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__+pyNJ\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__+pyNJ\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__+pyNJ\",\"range-picker\":\"style_range-picker__c6ngq__+pyNJ\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__+pyNJ\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__+pyNJ\",\"filter-advanced\":\"style_filter-advanced__4cyDy__+pyNJ\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__+pyNJ\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__+pyNJ\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__+pyNJ\"};","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport { useState } from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport { Col, Row, Space } from \"antd\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({ list, children }) => {\n const { value, onChange } = useContext();\n return (\n <div className={style[\"filter-line\"]}>\n {list.map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value\n ? get(value.get(props?.name), \"value\")\n : props?.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: props?.name,\n label: props?.label,\n value,\n })\n : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (\n <ComponentItem\n {...Object.assign({}, item.props, {\n key: item.key || item.props.name || index,\n value: value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange,\n })}\n />\n );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({\n className,\n list,\n displayLine,\n label,\n extra,\n children,\n}) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {label || (\n <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />\n )}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (\n <Space\n size={4}\n className={classnames(\n style[\"filter-item\"],\n style[\"option\"]\n )}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>\n ) : null}\n </Line>\n ))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (\n <>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>\n )}\n </Line>\n ))}\n </div>\n </Space>\n </IntlProvider>\n );\n};\n\nFilterLines.defaultProps = {\n displayLine: 1,\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import { Provider } from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useMemo } from \"react\";\nimport { isNotEmpty } from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport { IntlProvider } from \"@components/Intl\";\n\nconst FilterOuter = ({ children, className, ...props }) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n <div className={classnames(style[\"filter\"], className)}>\n {children({ props, value, onChange })}\n </div>\n </Provider>\n </IntlProvider>\n );\n};\n\nFilterOuter.defaultProps = {\n defaultValue: [],\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = (props) => {\n return (\n <FilterOuter {...props}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nFilter.defaultProps = {\n defaultValue: [],\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import { useState } from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem =\n (WrappedComponent) =>\n ({ value, onChange, interceptor, label, ...props }) => {\n const [open, setOpen] = useState(false);\n return (\n <FilterItem label={label} open={open} active={isNotEmpty(value)}>\n <WrappedComponent\n allowClear={false}\n {...props}\n className={style[\"filter-item-inner\"]}\n value={\n typeof interceptor?.input === \"function\"\n ? interceptor.input(value)\n : value\n }\n onChange={\n typeof interceptor?.output === \"function\"\n ? (...args) => onChange(interceptor.output(...args))\n : onChange\n }\n valueType=\"all\"\n onOpenChange={setOpen}\n />\n </FilterItem>\n );\n };\n\nexport default withFieldItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"scroll-loader\":\"style_scroll-loader__Rcuti__+pyNJ\",\"is-popup\":\"style_is-popup__pCRv2__+pyNJ\"};","import SelectInnerInput from \"@common/components/SelectInnerInput\";\nimport { useMemo, useRef } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Space, Tree } from \"antd\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport get from \"lodash/get\";\nimport omit from \"lodash/omit\";\nimport memoize from \"lodash/memoize\";\n\nconst useSelectInnerContext = SelectInnerInput.useContext;\n\nconst TreeFieldInner = ({ value: selected, setValue: setSelect, size }) => {\n const { fetchApi, props } = useSelectInnerContext();\n const dataFormat = useRefCallback(props.dataFormat);\n const { single, isPopup, searchPlaceholder, ...others } = props;\n const fieldNamesRef = useRef(props.fieldNames);\n fieldNamesRef.current = props.fieldNames;\n const fetchData = fetchApi.data;\n const { treeData } = useMemo(\n () =>\n dataFormat(fetchData, {\n fieldNames: fieldNamesRef.current,\n }),\n [dataFormat, fetchData]\n );\n\n return (\n <Space direction=\"vertical\" size={16}>\n <SimpleBar\n className={classnames(style[\"scroll-loader\"], {\n [style[\"is-popup\"]]: props.isPopup,\n })}\n >\n <Tree\n {...omit(others, [\"value\", \"valueType\", \"children\", \"dataFormat\"])}\n size={size}\n checkable={!single}\n treeData={treeData}\n onCheck={setSelect}\n checkedKeys={selected}\n onSelect={\n single\n ? setSelect\n : (selectKeys) => {\n const selectKey = selectKeys[0];\n if (selectKey === void 0) {\n return;\n }\n setSelect((current) => {\n const newCurrent = current.slice(0);\n const index = newCurrent.indexOf(selectKey);\n if (index > -1) {\n newCurrent.splice(index, 1);\n } else {\n newCurrent.push(selectKey);\n }\n return newCurrent;\n });\n }\n }\n selectedKeys={single ? selected : undefined}\n />\n </SimpleBar>\n </Space>\n );\n};\n\nconst TreeField = ({ maxLength, dataFormat, ...props }) => {\n return (\n <SelectInnerInput\n {...props}\n dataFormat={(data) => {\n return dataFormat(data, { fieldNames: props.fieldNames });\n }}\n >\n {({ value, setValue }) => {\n return (\n <TreeFieldInner size={maxLength} value={value} setValue={setValue} />\n );\n }}\n </SelectInnerInput>\n );\n};\n\nTreeField.defaultProps = {\n searchPlaceholder: \"搜索\",\n maxLength: Number.MAX_VALUE,\n size: \"middle\",\n isPopup: true,\n checkStrictly: false,\n dataFormat: (data, { fieldNames }) => {\n const treeToList = memoize((nodeList, { fieldNames }) => {\n const list = [];\n const core = (nodeList) => {\n if (!(Array.isArray(nodeList) && nodeList.length > 0)) {\n return;\n }\n nodeList.forEach((node) => {\n const value = node[get(fieldNames, \"key\", \"key\")],\n label = node[get(fieldNames, \"title\", \"title\")],\n children = node[get(fieldNames, \"children\", \"children\")];\n list.push({ id: value, value, label });\n core(children);\n });\n };\n core(nodeList);\n return list;\n });\n\n return {\n treeData: data,\n list: treeToList(data, { fieldNames }),\n };\n },\n};\n\nexport default TreeField;\n","import { useState, useMemo } from \"react\";\nimport { Button, Col, Popover, Row } from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport { FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n onChange,\n children,\n}) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (\n <Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n overlayClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={\n <span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({ value: state, onChange: setState })}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>\n }\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label} />\n </span>\n </Popover>\n );\n};\n\nPopoverItem.defaultProps = {\n placeholder: \"请选择\",\n placement: \"bottomLeft\",\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input, InputNumber, Space } from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport { useIntl } from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({ id: \"over\" }, { count: range[0], unit });\n }\n if (isNumber(range[1])) {\n return formatMessage({ id: \"lessThan\" }, { count: range[1], unit });\n }\n })(range),\n value: [range[0] || null, range[1] || null],\n };\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Space.Compact>\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [target, get(value, \"value[1]\")],\n unit,\n formatMessage\n )\n );\n }}\n />\n <Input\n style={{\n width: 30,\n borderLeft: 0,\n borderRight: 0,\n pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [get(value, \"value[0]\"), target],\n unit,\n formatMessage\n )\n );\n }}\n />\n {unit && (\n <Input\n style={{\n width: 50,\n borderLeft: 0,\n }}\n value={unit}\n disabled\n />\n )}\n </Space.Compact>\n )}\n </PopoverItem>\n );\n};\n\nInputFilterItem.defaultProps = {\n onValidate: (value) => {\n const range = get(value, \"value\");\n return !(\n range &&\n isNumber(range[0]) &&\n isNumber(range[1]) &&\n range[1] < range[0]\n );\n },\n};\n\nexport default InputFilterItem;\n","import { DatePicker } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(\n ({ value, onChange, picker, ...props }) => {\n return (\n <DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n value &&\n onChange({\n label:\n picker !== \"date\"\n ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}`\n : value.format(format),\n value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />\n );\n }\n);\n\nDatePickerFilterItem.defaultProps = \"date\";\n\nexport default DatePickerFilterItem;\n","import { DatePicker, Flex } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, header, ...props }) => {\n return (\n <Flex vertical>\n {typeof header === \"function\" ? header({ value, onChange }) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n value={\n value &&\n Array.isArray(value.value) &&\n value.value.length === 2 &&\n value.value.map((item) => dayjs(item))\n }\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n onChange({\n label: value.map((item) => item.format(format)).join(\"~\"),\n value: value.map((item) => new Date(item.valueOf())),\n });\n }}\n />\n </Flex>\n );\n }\n);\n\nexport default DateRangePickerFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\nimport dayjs from \"dayjs\";\n\nconst TypeDateRangePickerFilterItem = ({\n label,\n value,\n onChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n onValidate={(item) => {\n const value = item?.value;\n return (\n value?.type && Array.isArray(value?.value) && value.value.length === 2\n );\n }}\n >\n {({ value, onChange }) => (\n <TypeDateRangePickerField\n {...props}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\")}\n onChange={(pickerValue) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n const value = pickerValue?.value || [];\n onChange({\n label: (() => {\n if (value[0] && !value[1]) {\n return `${dayjs(value[0]).format(format)}以后`;\n }\n if (!value[0] && value[1]) {\n return `${dayjs(value[1]).format(format)}以前`;\n }\n if (value[0] && value[1]) {\n return `${dayjs(value[0]).format(format)}~${dayjs(\n value[1]\n ).format(format)}`;\n }\n return \"\";\n })(),\n value: pickerValue,\n });\n }}\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default TypeDateRangePickerFilterItem;\n","import { FormattedMessage } from \"@components/Intl\";\nimport withFieldItem from \"../withFieldItem\";\nimport AdvancedSelectField, {\n UserField,\n} from \"@common/components/AdvancedSelectField\";\nimport SuperSelectField, {\n SuperSelectTableListField,\n SuperSelectUserField,\n} from \"@common/components/SuperSelectField\";\nimport FunctionSelectField from \"@common/components/FunctionSelectField\";\nimport AddressSelectField from \"@common/components/AddressSelectField\";\nimport IndustrySelectField from \"@common/components/IndustrySelectField\";\nimport CascaderField from \"@common/components/CascaderField\";\nimport TreeField from \"@common/components/TreeField\";\nimport InputFilterItemField from \"./InputFilterItem\";\nimport NumberRangeFilterItemField from \"./NumberRangeFilterItem\";\n\nconst withInputDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{ label }}\n >\n {(text) => {\n return (\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n );\n }}\n </FormattedMessage>\n );\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(\n SuperSelectTableListField\n);\nexport const SuperSelectUserFilterItem = withFieldItem(SuperSelectUserField);\nexport const UserFilterItem = withFieldItem(UserField);\nexport const FunctionSelectFilterItem = withFieldItem(FunctionSelectField);\nexport const IndustrySelectFilterItem = withFieldItem(IndustrySelectField);\n\nexport const CityFilterItem = withFieldItem(AddressSelectField);\n\nexport const CascaderFilterItem = withFieldItem(CascaderField);\n\nexport const TreeFilterItem = withFieldItem(TreeField);\nexport const InputFilterItem =\n withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(\n NumberRangeFilterItemField\n);\n\nexport { default as DatePickerFilterItem } from \"./DatePickerFilterItem\";\nexport { default as DateRangePickerFilterItem } from \"./DateRangePickerFilterItem\";\nexport { default as TypeDateRangePickerFilterItem } from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import {SearchInput as SearchInputField} from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\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,\n maxLength,\n addressApi,\n ...props\n}) => {\n const { message } = App.useApp();\n const { locale } = usePreset();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const { code } = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: code, label: name } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: code, label: name })\n : (() => {\n const index = newValue.findIndex(\n ({ value }) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({ code }) =>\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({ value }) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const { city } = addressApi.getCity(value);\n return { value: city?.code, label: city?.name };\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nCityFilterItemInner.defaultProps = {\n single: false,\n maxLength: 5,\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import { Tag, App } from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport { useIntl } from \"@components/Intl\";\n\nconst { CheckableTag } = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single,\n maxLength,\n items,\n custom,\n}) => {\n const { message } = App.useApp();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <>\n {items.map(({ label, value: itemValue }) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({ value }) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: itemValue, label } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: itemValue, label })\n : (() => {\n const index = newValue.find(({ value }) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nListFilterItem.defaultProps = {\n single: false,\n maxLength: 5,\n items: [],\n};\n\nexport default ListFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\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 FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport { useContext as useFilter } from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nexport default Filter;\nexport { fields, getFilterValue, useFilter, withFilterValue, SearchInput };\nexport { default as AdvancedFilter, advancedFields } from \"./AdvancedFilter\";\nexport { default as FilterValueDisplay } from \"./FilterValueDisplay\";\nexport { default as FilterItem } from \"./FilterItem\";\nexport { default as FilterLines } from \"./FilterLines\";\nexport { default as PopoverItem } from \"./PopoverItem\";\nexport { default as withFieldItem } from \"./withFieldItem\";\nexport { default as FilterItemContainer } from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__+pyNJ\",\"inner\":\"style_inner__bMKeU__+pyNJ\",\"content\":\"style_content__xTfWZ__+pyNJ\",\"link\":\"style_link__93j7O__+pyNJ\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","import {createContext, useContext as useReactContext} from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n 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__+pyNJ\",\"page-content\":\"style_page-content__4XeN8__+pyNJ\",\"page-main\":\"style_page-main__P0yEF__+pyNJ\",\"page-main-content\":\"style_page-main-content__1OVPN__+pyNJ\",\"table-page\":\"style_table-page__JkbLf__+pyNJ\",\"helper-guide\":\"style_helper-guide__vzw4z__+pyNJ\",\"page-outer\":\"style_page-outer__2a6iH__+pyNJ\",\"no-margin\":\"style_no-margin__S6caT__+pyNJ\",\"page-menu\":\"style_page-menu__CZSa9__+pyNJ\",\"closed\":\"style_closed__hmnft__+pyNJ\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__+pyNJ\",\"page-menu-main\":\"style_page-menu-main__OXg2M__+pyNJ\",\"page-option-main\":\"style_page-option-main__LyfT3__+pyNJ\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__+pyNJ\",\"page-option\":\"style_page-option__diS2S__+pyNJ\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__+pyNJ\",\"page-option-footer\":\"style_page-option-footer__d7xE0__+pyNJ\",\"fixed-container\":\"style_fixed-container__1VZwY__+pyNJ\",\"is-fixed\":\"style_is-fixed__1aQhp__+pyNJ\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__+pyNJ\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__+pyNJ\",\"page-title\":\"style_page-title__zw-Fd__+pyNJ\",\"page-title-text\":\"style_page-title-text__Rj4RC__+pyNJ\",\"no-padding\":\"style_no-padding__V7Dwy__+pyNJ\",\"page-header\":\"style_page-header__a813p__+pyNJ\",\"page-header-info\":\"style_page-header-info__cMrZR__+pyNJ\",\"layout-menu\":\"style_layout-menu__yiab0__+pyNJ\",\"sub-menu\":\"style_sub-menu__dyqK7__+pyNJ\",\"no-collapsed\":\"style_no-collapsed__76h8W__+pyNJ\",\"has-not-children\":\"style_has-not-children__fnjRK__+pyNJ\",\"table-page-top\":\"style_table-page-top__bt1l9__+pyNJ\",\"error-component\":\"style_error-component__HvghB__+pyNJ\",\"state-bar-page\":\"style_state-bar-page__+aUM4__+pyNJ\",\"back-icon\":\"style_back-icon__79v2G__+pyNJ\"};","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 = ({ featureId, name, openFeatures, ...props }) => {\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({ isPass }) => <PageInner {...props} key={name} isPass={isPass} />}\n </Features>\n );\n }\n return <PageInner {...props} key={name} />;\n};\n\nPage.defaultProps = defaultProps;\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import { Col, Row, Space } from \"antd\";\nimport { useNavigate } from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({ title, filter, titleExtra, titleLeftExtra, backUrl }) => {\n const navigator = useNavigate();\n if (filter) {\n return (\n <Filter className={style[\"page-title\"]} {...filter} extra={titleExtra} />\n );\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (\n <Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col>\n <Space>\n {title ? (\n <div className={style[\"page-title-text\"]}>\n {backUrl ? (\n <Space>\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\" />\n </span>\n <span>{title}</span>\n </Space>\n ) : (\n title\n )}\n </div>\n ) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Space>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>\n );\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import {Alert, Button, Col, Layout as AntdLayout, Row} from \"antd\";\nimport {useCallback, useEffect, useState} from \"react\";\nimport {defaultProps, Provider} from \"./context\";\nimport Navigation, {navigationHeight} from \"@components/Navigation\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\nimport ReactErrorBoundary from \"@kne/react-error-boundary\";\nimport {Header, HeaderInfo, Menu, Option, PageTitle} from \"./Page\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport {usePermissions} from \"../Permissions\";\n\nconst {Content} = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent}/>;\n};\n\nconst Layout = ({children, theme, navigation}) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const {permissions} = usePermissions();\n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n\n return (\n <AntdLayout\n className={classnames(style[\"layout\"], '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\nLayout.defaultProps = {\n navigation: {},\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","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__+pyNJ\",\"main\":\"style_main__X1Ynh__+pyNJ\",\"icon-outer\":\"style_icon-outer__6F97H__+pyNJ\",\"title\":\"style_title__dNWQj__+pyNJ\",\"info\":\"style_info__yF-4c__+pyNJ\",\"overlay\":\"style_overlay__SWqqE__+pyNJ\",\"tags\":\"style_tags__5+zDU__+pyNJ\",\"tag-split\":\"style_tag-split__V6SqP__+pyNJ\",\"button-options\":\"style_button-options__f1-gI__+pyNJ\"};","import { Space, Row, Col } from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\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 iconType,\n info,\n tags,\n tagSplit,\n tagClassName,\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n}) => {\n return (\n <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 {iconType && (\n <div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24} />\n </div>\n )}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (\n <Col\n flex={1}\n className={style[\"button-options\"]}\n style={{ \"--max-width\": buttonOptionsMaxWidth }}\n >\n <ButtonGroup {...buttonOptions} />\n </Col>\n )}\n </Row>\n {tags && (\n <Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (\n <div key={index} className={style[\"tags\"]}>\n {item}\n </div>\n );\n })}\n </Space>\n )}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>\n );\n};\n\nconst PageHeader = (props) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>\n );\n};\n\nPageHeaderInner.defaultProps = PageHeader.defaultProps = {\n tagSplit: <span className={style[\"tag-split\"]}>|</span>,\n tagClassName: \"\",\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","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__+pyNJ\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__+pyNJ\",\"no-start-icon\":\"style_no-start-icon__LnC1S__+pyNJ\",\"has-children\":\"style_has-children__m9tce__+pyNJ\",\"has-children-node\":\"style_has-children-node__2bhEB__+pyNJ\",\"is-root\":\"style_is-root__4hhOc__+pyNJ\",\"title\":\"style_title__+Hcar__+pyNJ\",\"active\":\"style_active__WU49K__+pyNJ\",\"no-collapse\":\"style_no-collapse__aIZBM__+pyNJ\",\"title-content\":\"style_title-content__cQXpK__+pyNJ\",\"loading\":\"style_loading__1pU4P__+pyNJ\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Spin } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport { useCallback, useEffect, useMemo } from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport { useFetch } from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {},\n nodeMapping = [];\n const traversal = (children, options) => {\n const { parentKey, depth } = Object.assign(\n {\n parentKey: \"root\",\n depth: 0,\n paths: [],\n },\n options\n );\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${\n item.key ||\n `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`\n }`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey,\n depth: depth + 1,\n });\n childrenKeys[currentKey] &&\n childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey,\n parentKey,\n depth,\n children: children,\n originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return { items: traversal(items), childrenKeys, nodeMapping };\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren =\n (Array.isArray(children) && children.length > 0) || fetchOptions;\n const { refresh, isLoading } = useFetch(\n Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions,\n onRequestSuccess: (data) => {\n onLoad(data);\n },\n })\n );\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (\n <div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\" />\n </div>\n );\n }\n };\n return (\n <Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && <Icon type={iconType} />}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (\n <Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />\n )}\n </div>\n {renderChildren()}\n </div>\n </Permissions>\n );\n};\n\nconst Menu = ({ className, allowCollapsed, pathMatch, ...props }) => {\n const { pathname, search } = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\",\n defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue(props, {\n defaultValue: \"defaultItems\",\n value: \"items\",\n onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems,\n defaultOpenKeys,\n links,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems,\n childrenKeys,\n nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false,\n hasChildren = false;\n const links = [],\n defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType) {\n hasStartIcon = true;\n }\n node.path && links.push({ path: node.path, key });\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys,\n links,\n items: targetItems,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({ path }) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, { pathname, search });\n }\n return (\n ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) ||\n ensureSlash(pathname + search) === ensureSlash(path)\n );\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nconst _excluded = [\"title\", \"titleId\"];\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); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\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__+pyNJ\",\"navigation\":\"style_navigation__60RrS__+pyNJ\",\"logo\":\"style_logo__lB9RC__+pyNJ\",\"is-fixed\":\"style_is-fixed__kHFWj__+pyNJ\",\"main-menu\":\"style_main-menu__5TDBj__+pyNJ\",\"navigation-logo\":\"style_navigation-logo__q9qHu__+pyNJ\",\"navigation-list\":\"style_navigation-list__EYtkg__+pyNJ\",\"navigation-options\":\"style_navigation-options__0BdJU__+pyNJ\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__+pyNJ\",\"more-icon\":\"style_more-icon__gNMnt__+pyNJ\"};","import {Col, Layout, Menu, Row, Space} from \"antd\";\nimport {useLocation, useNavigate} from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport logo from \"./favicon.svg\";\nimport Image from \"@components/Image\";\nimport importMessages from \"./locale\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst {Header} = Layout;\n\nexport const navigationHeight = 48;\n\nconst SetTitle = ({name, mapping, defaultTitle}) => {\n const propsRef = useRef({\n mapping,\n defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({onReady}) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = ({\n permissions,\n list,\n headerLogo,\n rightOptions,\n isFixed,\n showIndex,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base,\n onChange,\n className,\n 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\n ? get(\n Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path =\n typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }),\n \"[0]\"\n )\n : \"home\";\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom =\n navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel =\n mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(\n navigationRef.current,\n mutationObserverInitConfig\n );\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex\n ? {\n label: indexLabel || (\n <FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\"/>\n ),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n }\n : false;\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (\n <SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\n />\n )}\n </FormattedMessage>\n <div className={classnames(style[\"navigation-wrap\"], className)}>\n <Header\n className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}\n >\n <Row justify=\"space-around\" wrap={false}>\n <Col\n className={classnames(\n \"navigation-logo\",\n style[\"navigation-logo\"]\n )}\n >\n <Image\n className={classnames(style[\"logo\"])}\n src={logo}\n alt=\"logo\"\n {...headerLogo}\n />\n </Col>\n <Col\n ref={navigationRef}\n flex={1}\n className={classnames(\n \"navigation-list\",\n style[\"navigation-list\"]\n )}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, path, permission}]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__+pyNJ\"};","import { createElement } from \"react\";\nimport { Result, Tooltip } from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\n\nexport const computedIsPass = ({ permissions, request }) => {\n return Array.isArray(request) && request.length > 0\n ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1)\n : true;\n};\n\nexport const usePermissions = () => {\n const { global } = useGlobalContext();\n const { permissions, permissionsPath } = usePreset();\n return {\n permissions:\n global.permissions ||\n permissions ||\n (permissionsPath && get(global, permissionsPath)) ||\n [],\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__+pyNJ\",\"has-children\":\"style_has-children__oQDqU__+pyNJ\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__+pyNJ\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__+pyNJ\",\"tab-step-control\":\"style_tab-step-control__EQaCl__+pyNJ\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__+pyNJ\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__+pyNJ\",\"state-result-tag\":\"style_state-result-tag__CssDz__+pyNJ\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__+pyNJ\",\"event-tag\":\"style_event-tag__cg6SE__+pyNJ\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__+pyNJ\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__+pyNJ\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__+pyNJ\",\"show-bg\":\"style_show-bg__OcL+R__+pyNJ\",\"tag-text\":\"style_tag-text__JHCt+__+pyNJ\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__+pyNJ\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\",\n props?.onClick ? style[\"event-tag\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__+pyNJ\",\"is-resize\":\"style_is-resize__ut6RW__+pyNJ\",\"is-moving\":\"style_is-moving__BJ9wR__+pyNJ\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__+pyNJ\",\"is-computed\":\"style_is-computed__B9rIF__+pyNJ\",\"options-column\":\"style_options-column__vsPTr__+pyNJ\",\"options-btn\":\"style_options-btn__U3uoy__+pyNJ\",\"tooltip\":\"style_tooltip__vJlkv__+pyNJ\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__+pyNJ\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__+pyNJ\",\"columns-control\":\"style_columns-control__5-5ZF__+pyNJ\",\"columns-control-content\":\"style_columns-control-content__MoeUI__+pyNJ\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__+pyNJ\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__+pyNJ\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__+pyNJ\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__+pyNJ\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__+pyNJ\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__+pyNJ\",\"is-drag\":\"style_is-drag__U68aw__+pyNJ\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__+pyNJ\",\"sortable-drag\":\"style_sortable-drag__K5hWd__+pyNJ\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__+pyNJ\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__+pyNJ\",\"sort-btn\":\"style_sort-btn__KvNLr__+pyNJ\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__+pyNJ\",\"sort-icon\":\"style_sort-icon__dB85I__+pyNJ\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__+pyNJ\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__+pyNJ\",\"scroller-inner\":\"style_scroller-inner__NJSE0__+pyNJ\",\"is-moving\":\"style_is-moving__jGuy0__+pyNJ\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__+pyNJ\",\"tag\":\"columns_tag__bQZLG__+pyNJ\",\"avatar\":\"columns_avatar__SLPI+__+pyNJ\",\"hover\":\"columns_hover__oAwHg__+pyNJ\",\"primary\":\"columns_primary__6KtaA__+pyNJ\",\"loading\":\"columns_loading__gtBay__+pyNJ\",\"options\":\"columns_options__WvDZD__+pyNJ\"};","import { Button } from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nconst Options = ({ list, ...props }) => {\n if (typeof list === \"function\") {\n return (\n <Fetch\n loader={list}\n render={({ data }) => {\n return <OptionsList {...props} list={data} />;\n }}\n />\n );\n }\n return <OptionsList {...props} list={list} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: 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 (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n rowKey,\n}) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","preset","base","transform","description","result","treeTraverse","data","func","pId","Array","isArray","forEach","item","Object","assign","omit","parentId","children","id","parseProfile","memoize","profile","profileMap","output","Map","set","features","from","keys","filter","get","dependencies","length","some","depId","computedIsPaas","currentId","_ref","indexOf","close","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","usePreset","systemId","type","useContext","useEffect","console","log","concat","isPass","feature","_ref2","_jsx","options","locale","en-US","zh-CN","useReactContext","Line","list","onChange","_jsxs","className","style","map","index","props","name","label","ComponentItem","_objectSpread","FilterLines","displayLine","extra","hasMore","isExpand","setIsExpand","useState","IntlProvider","importMessages","moduleName","Space","classnames","align","size","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","slice","onClick","Icon","_Fragment","defaultProps","filterValue","extraExpand","StateTag","filterName","text","join","closable","onClose","newValue","splice","Button","FilterOuter","_objectWithoutProperties","_excluded","valueBase","useControlValue","useMemo","isNotEmpty","newFilterValue","clone","delete","values","defaultValue","Filter","others","FilterValueDisplay","open","active","WrappedComponent","interceptor","setOpen","FilterItem","allowClear","input","arguments","valueType","onOpenChange","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","dataFormat","useRefCallback","single","isPopup","searchPlaceholder","fieldNamesRef","useRef","fieldNames","current","fetchData","treeData","direction","SimpleBar","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","push","selectedKeys","undefined","TreeField","maxLength","_excluded2","_ref3","MAX_VALUE","checkStrictly","_ref4","treeToList","nodeList","_ref5","core","node","PopoverItem","onValidate","overlayClassName","placement","state","setState","disabled","Popover","trigger","content","stopPropagation","gutter","placeholder","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","InputFilterItem","useIntl","Compact","InputNumber","width","borderLeft","borderRight","pointerEvents","DatePickerFilterItem","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","header","Flex","vertical","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","onSearch","CheckableTag","Tag","CityFilterItemInner","addressApi","message","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","checked","find","findIndex","error","_ref6","getCityValue","getCity","withAddressApi","ListFilterItem","items","custom","itemValue","isEqual","fields","propsValue","inputValue","setInputValue","setActive","searchHandler","ref","useSimulationBlur","inputValueRef","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","more","MoreFilterLines","advancedFields","getFilterValue","useFilter","SearchInput","Enum","colorful","url","Typography","Link","href","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","title","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","Consumer","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","useLocation","pathname","split","FixedContainer","icon","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","targetProps","Result","status","subTitle","Page","featureId","openFeatures","Features","_createElement","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","callback","offsetHeight","resizeObserver","MutationObserver","observe","subtree","childList","disconnect","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","navigation","scrollLeft","setScrollLeft","_setPageProps","permissions","usePermissions","useCallback","scrollEl","getScrollEl","handlerScroll","addEventListener","removeEventListener","Navigation","path","PageTitle","helperGuideName","HelperGuide","Permissions","PageHeaderInner","iconType","info","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","ButtonGroup","PageHeader","forwardRef","page","topArea","tableData","setTableData","PermissionsPage","Table","onRequestSuccess","stateBar","StateBar","MenuItem","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","refresh","isLoading","useFetch","auto","Spin","pathMatch","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","newOpenKeys","defaultItems","SetTitle","mapping","defaultTitle","document","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","setTimeout","Image","src","logo","alt","mode","_ref7","_path","computedIsPass","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","Tooltip","createElement","stateOption","isInner","Tabs","animated","tab","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","other","showBorder","showBackground","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","background","border","ScrollBar","onScroll","getContainer","scrollerProps","startRef","moving","setMoving","movingRef","onScrollRef","ratioRef","innerWidth","moveHandler","clientX","upHandler","createPortal","hasScroller","left","height","innerLeft","onMouseDown","preventDefault","body","Scroller","scroller","getScrollTarget","setScrollerProps","container","documentElement","computed","top","getBoundingClientRect","scrollerHeight","clientHeight","clientWidth","scrollWidth","containerRect","ResizeObserver","x","querySelector","OptionsList","hidden","Fetch","loader","render","ellipsis","Text","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","_excluded15","columnTypes","date","isValid","min","max","dateShort","dateRange","_excluded3","datetime","hideSecond","_excluded4","serialNumber","_excluded5","serialNumberShort","_excluded6","user","_excluded7","userName","_ref8","_excluded8","contacts","_ref9","_excluded9","tag","_ref10","_excluded10","isEnum","force","_ref11","avatar","_ref12","_excluded11","Avatar","singleRow","_ref13","_excluded12","hideInfo","HideInfoComponent","mainInfo","_ref14","_excluded13","_ref15","_excluded14","_ref16","sensitiveInfo","_ref18","_excluded16","otherSmall","otherLarge","Panel","Collapse","onConfirm","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","LoadingButton","async","defaultActiveKey","ghost","bordered","List","Item","Checkbox","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","prefix","dataSource","renderItem","storageKey","getDataApi","setDataFunc","TableConfig","setConfig","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","startTransition","send","cache","isLocal","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","targetHeader","otherHeader","currentGroup","startIndex","groupColumn","hasGroupHeader","sortArrayToMap","setSort","mapSort","setMapSort","newSort","targetValue","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_len","args","_key","pageData","FeaturesColumnsConfig","TablePageInner","withFetch","requestParams","fetchProps","isComplete","setData","loadMore","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","paramsType","currentName","pageSize","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","totalCount","pageSizeKey","toUpperCase","setPageSize","params","fetchParams"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/764.61214339.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","components/Enum/index.js","components/Features/index.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/context.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","webpack://@kne-components/components-core/./src/common/components/TreeField/style.module.scss?bcd6","common/components/TreeField/index.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/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","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/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"],"sourcesContent":["const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","import { preset } from \"@kne/react-enum\";\nimport transform from \"lodash/transform\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\npreset({\n base: transform(\n baseLoaders,\n (result, value) => {\n result[value[0]] = value[1];\n },\n {}\n ),\n});\n\nexport { default } from \"@kne/react-enum\";\n","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__r4rl1\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__r4rl1\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__r4rl1\",\"filter-title\":\"style_filter-title__PlIpS__r4rl1\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__r4rl1\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__r4rl1\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__r4rl1\",\"filter-line\":\"style_filter-line__E+cRh__r4rl1\",\"clean-btn\":\"style_clean-btn__oSEvm__r4rl1\",\"filter-item\":\"style_filter-item__Q2ncE__r4rl1\",\"un-expand\":\"style_un-expand__4PFY8__r4rl1\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__r4rl1\",\"filter-label\":\"style_filter-label__qu26i__r4rl1\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__r4rl1\",\"option\":\"style_option__rd5Qo__r4rl1\",\"is-active\":\"style_is-active__OArQI__r4rl1\",\"is-visited\":\"style_is-visited__gZ5ni__r4rl1\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__r4rl1\",\"filter-item-label\":\"style_filter-item-label__C781J__r4rl1\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__r4rl1\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__r4rl1\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__r4rl1\",\"filter-tag\":\"style_filter-tag__dUGfu__r4rl1\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__r4rl1\",\"pop-util-content\":\"style_pop-util-content__bx5zP__r4rl1\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__r4rl1\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__r4rl1\",\"pop-util-text\":\"style_pop-util-text__pzeUy__r4rl1\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__r4rl1\",\"filter-item-text\":\"style_filter-item-text__MA8tU__r4rl1\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__r4rl1\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__r4rl1\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__r4rl1\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__r4rl1\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__r4rl1\",\"range-picker\":\"style_range-picker__c6ngq__r4rl1\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__r4rl1\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__r4rl1\",\"filter-advanced\":\"style_filter-advanced__4cyDy__r4rl1\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__r4rl1\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__r4rl1\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__r4rl1\"};","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport { useState } from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport { Col, Row, Space } from \"antd\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({ list, children }) => {\n const { value, onChange } = useContext();\n return (\n <div className={style[\"filter-line\"]}>\n {list.map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value\n ? get(value.get(props?.name), \"value\")\n : props?.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: props?.name,\n label: props?.label,\n value,\n })\n : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (\n <ComponentItem\n {...Object.assign({}, item.props, {\n key: item.key || item.props.name || index,\n value: value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange,\n })}\n />\n );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({\n className,\n list,\n displayLine,\n label,\n extra,\n children,\n}) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {label || (\n <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />\n )}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (\n <Space\n size={4}\n className={classnames(\n style[\"filter-item\"],\n style[\"option\"]\n )}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>\n ) : null}\n </Line>\n ))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (\n <>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>\n )}\n </Line>\n ))}\n </div>\n </Space>\n </IntlProvider>\n );\n};\n\nFilterLines.defaultProps = {\n displayLine: 1,\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import { Provider } from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useMemo } from \"react\";\nimport { isNotEmpty } from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport { IntlProvider } from \"@components/Intl\";\n\nconst FilterOuter = ({ children, className, ...props }) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n <div className={classnames(style[\"filter\"], className)}>\n {children({ props, value, onChange })}\n </div>\n </Provider>\n </IntlProvider>\n );\n};\n\nFilterOuter.defaultProps = {\n defaultValue: [],\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = (props) => {\n return (\n <FilterOuter {...props}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nFilter.defaultProps = {\n defaultValue: [],\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import { useState } from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem =\n (WrappedComponent) =>\n ({ value, onChange, interceptor, label, ...props }) => {\n const [open, setOpen] = useState(false);\n return (\n <FilterItem label={label} open={open} active={isNotEmpty(value)}>\n <WrappedComponent\n allowClear={false}\n {...props}\n className={style[\"filter-item-inner\"]}\n value={\n typeof interceptor?.input === \"function\"\n ? interceptor.input(value)\n : value\n }\n onChange={\n typeof interceptor?.output === \"function\"\n ? (...args) => onChange(interceptor.output(...args))\n : onChange\n }\n valueType=\"all\"\n onOpenChange={setOpen}\n />\n </FilterItem>\n );\n };\n\nexport default withFieldItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"scroll-loader\":\"style_scroll-loader__Rcuti__r4rl1\",\"is-popup\":\"style_is-popup__pCRv2__r4rl1\"};","import SelectInnerInput from \"@common/components/SelectInnerInput\";\nimport { useMemo, useRef } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Space, Tree } from \"antd\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport get from \"lodash/get\";\nimport omit from \"lodash/omit\";\nimport memoize from \"lodash/memoize\";\n\nconst useSelectInnerContext = SelectInnerInput.useContext;\n\nconst TreeFieldInner = ({ value: selected, setValue: setSelect, size }) => {\n const { fetchApi, props } = useSelectInnerContext();\n const dataFormat = useRefCallback(props.dataFormat);\n const { single, isPopup, searchPlaceholder, ...others } = props;\n const fieldNamesRef = useRef(props.fieldNames);\n fieldNamesRef.current = props.fieldNames;\n const fetchData = fetchApi.data;\n const { treeData } = useMemo(\n () =>\n dataFormat(fetchData, {\n fieldNames: fieldNamesRef.current,\n }),\n [dataFormat, fetchData]\n );\n\n return (\n <Space direction=\"vertical\" size={16}>\n <SimpleBar\n className={classnames(style[\"scroll-loader\"], {\n [style[\"is-popup\"]]: props.isPopup,\n })}\n >\n <Tree\n {...omit(others, [\"value\", \"valueType\", \"children\", \"dataFormat\"])}\n size={size}\n checkable={!single}\n treeData={treeData}\n onCheck={setSelect}\n checkedKeys={selected}\n onSelect={\n single\n ? setSelect\n : (selectKeys) => {\n const selectKey = selectKeys[0];\n if (selectKey === void 0) {\n return;\n }\n setSelect((current) => {\n const newCurrent = current.slice(0);\n const index = newCurrent.indexOf(selectKey);\n if (index > -1) {\n newCurrent.splice(index, 1);\n } else {\n newCurrent.push(selectKey);\n }\n return newCurrent;\n });\n }\n }\n selectedKeys={single ? selected : undefined}\n />\n </SimpleBar>\n </Space>\n );\n};\n\nconst TreeField = ({ maxLength, dataFormat, ...props }) => {\n return (\n <SelectInnerInput\n {...props}\n dataFormat={(data) => {\n return dataFormat(data, { fieldNames: props.fieldNames });\n }}\n >\n {({ value, setValue }) => {\n return (\n <TreeFieldInner size={maxLength} value={value} setValue={setValue} />\n );\n }}\n </SelectInnerInput>\n );\n};\n\nTreeField.defaultProps = {\n searchPlaceholder: \"搜索\",\n maxLength: Number.MAX_VALUE,\n size: \"middle\",\n isPopup: true,\n checkStrictly: false,\n dataFormat: (data, { fieldNames }) => {\n const treeToList = memoize((nodeList, { fieldNames }) => {\n const list = [];\n const core = (nodeList) => {\n if (!(Array.isArray(nodeList) && nodeList.length > 0)) {\n return;\n }\n nodeList.forEach((node) => {\n const value = node[get(fieldNames, \"key\", \"key\")],\n label = node[get(fieldNames, \"title\", \"title\")],\n children = node[get(fieldNames, \"children\", \"children\")];\n list.push({ id: value, value, label });\n core(children);\n });\n };\n core(nodeList);\n return list;\n });\n\n return {\n treeData: data,\n list: treeToList(data, { fieldNames }),\n };\n },\n};\n\nexport default TreeField;\n","import { useState, useMemo } from \"react\";\nimport { Button, Col, Popover, Row } from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport { FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n onChange,\n children,\n}) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (\n <Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n overlayClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={\n <span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({ value: state, onChange: setState })}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>\n }\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label} />\n </span>\n </Popover>\n );\n};\n\nPopoverItem.defaultProps = {\n placeholder: \"请选择\",\n placement: \"bottomLeft\",\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input, InputNumber, Space } from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport { useIntl } from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({ id: \"over\" }, { count: range[0], unit });\n }\n if (isNumber(range[1])) {\n return formatMessage({ id: \"lessThan\" }, { count: range[1], unit });\n }\n })(range),\n value: [range[0] || null, range[1] || null],\n };\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Space.Compact>\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [target, get(value, \"value[1]\")],\n unit,\n formatMessage\n )\n );\n }}\n />\n <Input\n style={{\n width: 30,\n borderLeft: 0,\n borderRight: 0,\n pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [get(value, \"value[0]\"), target],\n unit,\n formatMessage\n )\n );\n }}\n />\n {unit && (\n <Input\n style={{\n width: 50,\n borderLeft: 0,\n }}\n value={unit}\n disabled\n />\n )}\n </Space.Compact>\n )}\n </PopoverItem>\n );\n};\n\nInputFilterItem.defaultProps = {\n onValidate: (value) => {\n const range = get(value, \"value\");\n return !(\n range &&\n isNumber(range[0]) &&\n isNumber(range[1]) &&\n range[1] < range[0]\n );\n },\n};\n\nexport default InputFilterItem;\n","import { DatePicker } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(\n ({ value, onChange, picker, ...props }) => {\n return (\n <DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n value &&\n onChange({\n label:\n picker !== \"date\"\n ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}`\n : value.format(format),\n value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />\n );\n }\n);\n\nDatePickerFilterItem.defaultProps = \"date\";\n\nexport default DatePickerFilterItem;\n","import { DatePicker, Flex } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, header, ...props }) => {\n return (\n <Flex vertical>\n {typeof header === \"function\" ? header({ value, onChange }) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n value={\n value &&\n Array.isArray(value.value) &&\n value.value.length === 2 &&\n value.value.map((item) => dayjs(item))\n }\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n onChange({\n label: value.map((item) => item.format(format)).join(\"~\"),\n value: value.map((item) => new Date(item.valueOf())),\n });\n }}\n />\n </Flex>\n );\n }\n);\n\nexport default DateRangePickerFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\nimport dayjs from \"dayjs\";\n\nconst TypeDateRangePickerFilterItem = ({\n label,\n value,\n onChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n onValidate={(item) => {\n const value = item?.value;\n return (\n value?.type && Array.isArray(value?.value) && value.value.length === 2\n );\n }}\n >\n {({ value, onChange }) => (\n <TypeDateRangePickerField\n {...props}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\")}\n onChange={(pickerValue) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n const value = pickerValue?.value || [];\n onChange({\n label: (() => {\n if (value[0] && !value[1]) {\n return `${dayjs(value[0]).format(format)}以后`;\n }\n if (!value[0] && value[1]) {\n return `${dayjs(value[1]).format(format)}以前`;\n }\n if (value[0] && value[1]) {\n return `${dayjs(value[0]).format(format)}~${dayjs(\n value[1]\n ).format(format)}`;\n }\n return \"\";\n })(),\n value: pickerValue,\n });\n }}\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default TypeDateRangePickerFilterItem;\n","import { FormattedMessage } from \"@components/Intl\";\nimport withFieldItem from \"../withFieldItem\";\nimport AdvancedSelectField, {\n UserField,\n} from \"@common/components/AdvancedSelectField\";\nimport SuperSelectField, {\n SuperSelectTableListField,\n SuperSelectUserField,\n} from \"@common/components/SuperSelectField\";\nimport FunctionSelectField from \"@common/components/FunctionSelectField\";\nimport AddressSelectField from \"@common/components/AddressSelectField\";\nimport IndustrySelectField from \"@common/components/IndustrySelectField\";\nimport CascaderField from \"@common/components/CascaderField\";\nimport TreeField from \"@common/components/TreeField\";\nimport InputFilterItemField from \"./InputFilterItem\";\nimport NumberRangeFilterItemField from \"./NumberRangeFilterItem\";\n\nconst withInputDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{ label }}\n >\n {(text) => {\n return (\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n );\n }}\n </FormattedMessage>\n );\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(\n SuperSelectTableListField\n);\nexport const SuperSelectUserFilterItem = withFieldItem(SuperSelectUserField);\nexport const UserFilterItem = withFieldItem(UserField);\nexport const FunctionSelectFilterItem = withFieldItem(FunctionSelectField);\nexport const IndustrySelectFilterItem = withFieldItem(IndustrySelectField);\n\nexport const CityFilterItem = withFieldItem(AddressSelectField);\n\nexport const CascaderFilterItem = withFieldItem(CascaderField);\n\nexport const TreeFilterItem = withFieldItem(TreeField);\nexport const InputFilterItem =\n withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(\n NumberRangeFilterItemField\n);\n\nexport { default as DatePickerFilterItem } from \"./DatePickerFilterItem\";\nexport { default as DateRangePickerFilterItem } from \"./DateRangePickerFilterItem\";\nexport { default as TypeDateRangePickerFilterItem } from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import {SearchInput as SearchInputField} from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\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,\n maxLength,\n addressApi,\n ...props\n}) => {\n const { message } = App.useApp();\n const { locale } = usePreset();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const { code } = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: code, label: name } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: code, label: name })\n : (() => {\n const index = newValue.findIndex(\n ({ value }) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({ code }) =>\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({ value }) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const { city } = addressApi.getCity(value);\n return { value: city?.code, label: city?.name };\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nCityFilterItemInner.defaultProps = {\n single: false,\n maxLength: 5,\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import { Tag, App } from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport { useIntl } from \"@components/Intl\";\n\nconst { CheckableTag } = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single,\n maxLength,\n items,\n custom,\n}) => {\n const { message } = App.useApp();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <>\n {items.map(({ label, value: itemValue }) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({ value }) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: itemValue, label } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: itemValue, label })\n : (() => {\n const index = newValue.find(({ value }) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nListFilterItem.defaultProps = {\n single: false,\n maxLength: 5,\n items: [],\n};\n\nexport default ListFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\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 FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport { useContext as useFilter } from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nexport default Filter;\nexport { fields, getFilterValue, useFilter, withFilterValue, SearchInput };\nexport { default as AdvancedFilter, advancedFields } from \"./AdvancedFilter\";\nexport { default as FilterValueDisplay } from \"./FilterValueDisplay\";\nexport { default as FilterItem } from \"./FilterItem\";\nexport { default as FilterLines } from \"./FilterLines\";\nexport { default as PopoverItem } from \"./PopoverItem\";\nexport { default as withFieldItem } from \"./withFieldItem\";\nexport { default as FilterItemContainer } from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__r4rl1\",\"inner\":\"style_inner__bMKeU__r4rl1\",\"content\":\"style_content__xTfWZ__r4rl1\",\"link\":\"style_link__93j7O__r4rl1\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","import {createContext, useContext as useReactContext} from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n 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__r4rl1\",\"page-content\":\"style_page-content__4XeN8__r4rl1\",\"page-main\":\"style_page-main__P0yEF__r4rl1\",\"page-main-content\":\"style_page-main-content__1OVPN__r4rl1\",\"table-page\":\"style_table-page__JkbLf__r4rl1\",\"helper-guide\":\"style_helper-guide__vzw4z__r4rl1\",\"page-outer\":\"style_page-outer__2a6iH__r4rl1\",\"no-margin\":\"style_no-margin__S6caT__r4rl1\",\"page-menu\":\"style_page-menu__CZSa9__r4rl1\",\"closed\":\"style_closed__hmnft__r4rl1\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__r4rl1\",\"page-menu-main\":\"style_page-menu-main__OXg2M__r4rl1\",\"page-option-main\":\"style_page-option-main__LyfT3__r4rl1\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__r4rl1\",\"page-option\":\"style_page-option__diS2S__r4rl1\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__r4rl1\",\"page-option-footer\":\"style_page-option-footer__d7xE0__r4rl1\",\"fixed-container\":\"style_fixed-container__1VZwY__r4rl1\",\"is-fixed\":\"style_is-fixed__1aQhp__r4rl1\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__r4rl1\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__r4rl1\",\"page-title\":\"style_page-title__zw-Fd__r4rl1\",\"page-title-text\":\"style_page-title-text__Rj4RC__r4rl1\",\"no-padding\":\"style_no-padding__V7Dwy__r4rl1\",\"page-header\":\"style_page-header__a813p__r4rl1\",\"page-header-info\":\"style_page-header-info__cMrZR__r4rl1\",\"layout-menu\":\"style_layout-menu__yiab0__r4rl1\",\"sub-menu\":\"style_sub-menu__dyqK7__r4rl1\",\"no-collapsed\":\"style_no-collapsed__76h8W__r4rl1\",\"has-not-children\":\"style_has-not-children__fnjRK__r4rl1\",\"table-page-top\":\"style_table-page-top__bt1l9__r4rl1\",\"error-component\":\"style_error-component__HvghB__r4rl1\",\"state-bar-page\":\"style_state-bar-page__+aUM4__r4rl1\",\"back-icon\":\"style_back-icon__79v2G__r4rl1\"};","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 = ({ featureId, name, openFeatures, ...props }) => {\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({ isPass }) => <PageInner {...props} key={name} isPass={isPass} />}\n </Features>\n );\n }\n return <PageInner {...props} key={name} />;\n};\n\nPage.defaultProps = defaultProps;\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import { Col, Row, Space } from \"antd\";\nimport { useNavigate } from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({ title, filter, titleExtra, titleLeftExtra, backUrl }) => {\n const navigator = useNavigate();\n if (filter) {\n return (\n <Filter className={style[\"page-title\"]} {...filter} extra={titleExtra} />\n );\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (\n <Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col>\n <Space>\n {title ? (\n <div className={style[\"page-title-text\"]}>\n {backUrl ? (\n <Space>\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\" />\n </span>\n <span>{title}</span>\n </Space>\n ) : (\n title\n )}\n </div>\n ) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Space>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>\n );\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import {Alert, Button, Col, Layout as AntdLayout, Row} from \"antd\";\nimport {useCallback, useEffect, useState} from \"react\";\nimport {defaultProps, Provider} from \"./context\";\nimport Navigation, {navigationHeight} from \"@components/Navigation\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\nimport ReactErrorBoundary from \"@kne/react-error-boundary\";\nimport {Header, HeaderInfo, Menu, Option, PageTitle} from \"./Page\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport {usePermissions} from \"../Permissions\";\n\nconst {Content} = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent}/>;\n};\n\nconst Layout = ({children, theme, navigation}) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const {permissions} = usePermissions();\n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n\n return (\n <AntdLayout\n className={classnames(style[\"layout\"], '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\nLayout.defaultProps = {\n navigation: {},\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","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__r4rl1\",\"main\":\"style_main__X1Ynh__r4rl1\",\"icon-outer\":\"style_icon-outer__6F97H__r4rl1\",\"title\":\"style_title__dNWQj__r4rl1\",\"info\":\"style_info__yF-4c__r4rl1\",\"overlay\":\"style_overlay__SWqqE__r4rl1\",\"tags\":\"style_tags__5+zDU__r4rl1\",\"tag-split\":\"style_tag-split__V6SqP__r4rl1\",\"button-options\":\"style_button-options__f1-gI__r4rl1\"};","import { Space, Row, Col } from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\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 iconType,\n info,\n tags,\n tagSplit,\n tagClassName,\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n}) => {\n return (\n <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 {iconType && (\n <div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24} />\n </div>\n )}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (\n <Col\n flex={1}\n className={style[\"button-options\"]}\n style={{ \"--max-width\": buttonOptionsMaxWidth }}\n >\n <ButtonGroup {...buttonOptions} />\n </Col>\n )}\n </Row>\n {tags && (\n <Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (\n <div key={index} className={style[\"tags\"]}>\n {item}\n </div>\n );\n })}\n </Space>\n )}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>\n );\n};\n\nconst PageHeader = (props) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>\n );\n};\n\nPageHeaderInner.defaultProps = PageHeader.defaultProps = {\n tagSplit: <span className={style[\"tag-split\"]}>|</span>,\n tagClassName: \"\",\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","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__r4rl1\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__r4rl1\",\"no-start-icon\":\"style_no-start-icon__LnC1S__r4rl1\",\"has-children\":\"style_has-children__m9tce__r4rl1\",\"has-children-node\":\"style_has-children-node__2bhEB__r4rl1\",\"is-root\":\"style_is-root__4hhOc__r4rl1\",\"title\":\"style_title__+Hcar__r4rl1\",\"active\":\"style_active__WU49K__r4rl1\",\"no-collapse\":\"style_no-collapse__aIZBM__r4rl1\",\"title-content\":\"style_title-content__cQXpK__r4rl1\",\"loading\":\"style_loading__1pU4P__r4rl1\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Spin } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport { useCallback, useEffect, useMemo } from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport { useFetch } from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {},\n nodeMapping = [];\n const traversal = (children, options) => {\n const { parentKey, depth } = Object.assign(\n {\n parentKey: \"root\",\n depth: 0,\n paths: [],\n },\n options\n );\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${\n item.key ||\n `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`\n }`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey,\n depth: depth + 1,\n });\n childrenKeys[currentKey] &&\n childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey,\n parentKey,\n depth,\n children: children,\n originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return { items: traversal(items), childrenKeys, nodeMapping };\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren =\n (Array.isArray(children) && children.length > 0) || fetchOptions;\n const { refresh, isLoading } = useFetch(\n Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions,\n onRequestSuccess: (data) => {\n onLoad(data);\n },\n })\n );\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (\n <div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\" />\n </div>\n );\n }\n };\n return (\n <Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && <Icon type={iconType} />}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (\n <Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />\n )}\n </div>\n {renderChildren()}\n </div>\n </Permissions>\n );\n};\n\nconst Menu = ({ className, allowCollapsed, pathMatch, ...props }) => {\n const { pathname, search } = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\",\n defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue(props, {\n defaultValue: \"defaultItems\",\n value: \"items\",\n onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems,\n defaultOpenKeys,\n links,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems,\n childrenKeys,\n nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false,\n hasChildren = false;\n const links = [],\n defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType) {\n hasStartIcon = true;\n }\n node.path && links.push({ path: node.path, key });\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys,\n links,\n items: targetItems,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({ path }) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, { pathname, search });\n }\n return (\n ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) ||\n ensureSlash(pathname + search) === ensureSlash(path)\n );\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nconst _excluded = [\"title\", \"titleId\"];\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); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\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__r4rl1\",\"navigation\":\"style_navigation__60RrS__r4rl1\",\"logo\":\"style_logo__lB9RC__r4rl1\",\"is-fixed\":\"style_is-fixed__kHFWj__r4rl1\",\"main-menu\":\"style_main-menu__5TDBj__r4rl1\",\"navigation-logo\":\"style_navigation-logo__q9qHu__r4rl1\",\"navigation-list\":\"style_navigation-list__EYtkg__r4rl1\",\"navigation-options\":\"style_navigation-options__0BdJU__r4rl1\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__r4rl1\",\"more-icon\":\"style_more-icon__gNMnt__r4rl1\"};","import {Col, Layout, Menu, Row, Space} from \"antd\";\nimport {useLocation, useNavigate} from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport logo from \"./favicon.svg\";\nimport Image from \"@components/Image\";\nimport importMessages from \"./locale\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst {Header} = Layout;\n\nexport const navigationHeight = 48;\n\nconst SetTitle = ({name, mapping, defaultTitle}) => {\n const propsRef = useRef({\n mapping,\n defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({onReady}) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = ({\n permissions,\n list,\n headerLogo,\n rightOptions,\n isFixed,\n showIndex,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base,\n onChange,\n className,\n 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\n ? get(\n Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path =\n typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }),\n \"[0]\"\n )\n : \"home\";\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom =\n navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel =\n mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(\n navigationRef.current,\n mutationObserverInitConfig\n );\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex\n ? {\n label: indexLabel || (\n <FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\"/>\n ),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n }\n : false;\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (\n <SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\n />\n )}\n </FormattedMessage>\n <div className={classnames(style[\"navigation-wrap\"], className)}>\n <Header\n className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}\n >\n <Row justify=\"space-around\" wrap={false}>\n <Col\n className={classnames(\n \"navigation-logo\",\n style[\"navigation-logo\"]\n )}\n >\n <Image\n className={classnames(style[\"logo\"])}\n src={logo}\n alt=\"logo\"\n {...headerLogo}\n />\n </Col>\n <Col\n ref={navigationRef}\n flex={1}\n className={classnames(\n \"navigation-list\",\n style[\"navigation-list\"]\n )}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, path, permission}]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__r4rl1\"};","import { createElement } from \"react\";\nimport { Result, Tooltip } from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\n\nexport const computedIsPass = ({ permissions, request }) => {\n return Array.isArray(request) && request.length > 0\n ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1)\n : true;\n};\n\nexport const usePermissions = () => {\n const { global } = useGlobalContext();\n const { permissions, permissionsPath } = usePreset();\n return {\n permissions:\n global.permissions ||\n permissions ||\n (permissionsPath && get(global, permissionsPath)) ||\n [],\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__r4rl1\",\"has-children\":\"style_has-children__oQDqU__r4rl1\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__r4rl1\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__r4rl1\",\"tab-step-control\":\"style_tab-step-control__EQaCl__r4rl1\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__r4rl1\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__r4rl1\",\"state-result-tag\":\"style_state-result-tag__CssDz__r4rl1\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__r4rl1\",\"event-tag\":\"style_event-tag__cg6SE__r4rl1\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__r4rl1\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__r4rl1\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__r4rl1\",\"show-bg\":\"style_show-bg__OcL+R__r4rl1\",\"tag-text\":\"style_tag-text__JHCt+__r4rl1\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__r4rl1\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\",\n props?.onClick ? style[\"event-tag\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__r4rl1\",\"is-resize\":\"style_is-resize__ut6RW__r4rl1\",\"is-moving\":\"style_is-moving__BJ9wR__r4rl1\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__r4rl1\",\"is-computed\":\"style_is-computed__B9rIF__r4rl1\",\"options-column\":\"style_options-column__vsPTr__r4rl1\",\"options-btn\":\"style_options-btn__U3uoy__r4rl1\",\"tooltip\":\"style_tooltip__vJlkv__r4rl1\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__r4rl1\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__r4rl1\",\"columns-control\":\"style_columns-control__5-5ZF__r4rl1\",\"columns-control-content\":\"style_columns-control-content__MoeUI__r4rl1\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__r4rl1\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__r4rl1\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__r4rl1\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__r4rl1\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__r4rl1\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__r4rl1\",\"is-drag\":\"style_is-drag__U68aw__r4rl1\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__r4rl1\",\"sortable-drag\":\"style_sortable-drag__K5hWd__r4rl1\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__r4rl1\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__r4rl1\",\"sort-btn\":\"style_sort-btn__KvNLr__r4rl1\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__r4rl1\",\"sort-icon\":\"style_sort-icon__dB85I__r4rl1\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__r4rl1\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__r4rl1\",\"scroller-inner\":\"style_scroller-inner__NJSE0__r4rl1\",\"is-moving\":\"style_is-moving__jGuy0__r4rl1\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__r4rl1\",\"tag\":\"columns_tag__bQZLG__r4rl1\",\"avatar\":\"columns_avatar__SLPI+__r4rl1\",\"hover\":\"columns_hover__oAwHg__r4rl1\",\"primary\":\"columns_primary__6KtaA__r4rl1\",\"loading\":\"columns_loading__gtBay__r4rl1\",\"options\":\"columns_options__WvDZD__r4rl1\"};","import { Button } from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nconst Options = ({ list, ...props }) => {\n if (typeof list === \"function\") {\n return (\n <Fetch\n loader={list}\n render={({ data }) => {\n return <OptionsList {...props} list={data} />;\n }}\n />\n );\n }\n return <OptionsList {...props} list={list} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: 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 (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n rowKey,\n}) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","preset","base","transform","description","result","treeTraverse","data","func","pId","Array","isArray","forEach","item","Object","assign","omit","parentId","children","id","parseProfile","memoize","profile","profileMap","output","Map","set","features","from","keys","filter","get","dependencies","length","some","depId","computedIsPaas","currentId","_ref","indexOf","close","every","dependenciesTarget","context","createContext","Provider","useFeatureCall","debug","useFeatures","usePreset","systemId","type","useContext","useEffect","console","log","concat","isPass","feature","_ref2","_jsx","options","locale","en-US","zh-CN","useReactContext","Line","list","onChange","_jsxs","className","style","map","index","props","name","label","ComponentItem","_objectSpread","FilterLines","displayLine","extra","hasMore","isExpand","setIsExpand","useState","IntlProvider","importMessages","moduleName","Space","classnames","align","size","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","slice","onClick","Icon","_Fragment","defaultProps","filterValue","extraExpand","StateTag","filterName","text","join","closable","onClose","newValue","splice","Button","FilterOuter","_objectWithoutProperties","_excluded","valueBase","useControlValue","useMemo","isNotEmpty","newFilterValue","clone","delete","values","defaultValue","Filter","others","FilterValueDisplay","open","active","WrappedComponent","interceptor","setOpen","FilterItem","allowClear","input","arguments","valueType","onOpenChange","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","dataFormat","useRefCallback","single","isPopup","searchPlaceholder","fieldNamesRef","useRef","fieldNames","current","fetchData","treeData","direction","SimpleBar","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","push","selectedKeys","undefined","TreeField","maxLength","_excluded2","_ref3","MAX_VALUE","checkStrictly","_ref4","treeToList","nodeList","_ref5","core","node","PopoverItem","onValidate","overlayClassName","placement","state","setState","disabled","Popover","trigger","content","stopPropagation","gutter","placeholder","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","InputFilterItem","useIntl","Compact","InputNumber","width","borderLeft","borderRight","pointerEvents","DatePickerFilterItem","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","header","Flex","vertical","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","onSearch","CheckableTag","Tag","CityFilterItemInner","addressApi","message","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","checked","find","findIndex","error","_ref6","getCityValue","getCity","withAddressApi","ListFilterItem","items","custom","itemValue","isEqual","fields","propsValue","inputValue","setInputValue","setActive","searchHandler","ref","useSimulationBlur","inputValueRef","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","more","MoreFilterLines","advancedFields","getFilterValue","useFilter","SearchInput","Enum","colorful","url","Typography","Link","href","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","title","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","Consumer","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","useLocation","pathname","split","FixedContainer","icon","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","targetProps","Result","status","subTitle","Page","featureId","openFeatures","Features","_createElement","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","callback","offsetHeight","resizeObserver","MutationObserver","observe","subtree","childList","disconnect","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","navigation","scrollLeft","setScrollLeft","_setPageProps","permissions","usePermissions","useCallback","scrollEl","getScrollEl","handlerScroll","addEventListener","removeEventListener","Navigation","path","PageTitle","helperGuideName","HelperGuide","Permissions","PageHeaderInner","iconType","info","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","ButtonGroup","PageHeader","forwardRef","page","topArea","tableData","setTableData","PermissionsPage","Table","onRequestSuccess","stateBar","StateBar","MenuItem","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","refresh","isLoading","useFetch","auto","Spin","pathMatch","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","newOpenKeys","defaultItems","SetTitle","mapping","defaultTitle","document","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","setTimeout","Image","src","logo","alt","mode","_ref7","_path","computedIsPass","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","Tooltip","createElement","stateOption","isInner","Tabs","animated","tab","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","other","showBorder","showBackground","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","background","border","ScrollBar","onScroll","getContainer","scrollerProps","startRef","moving","setMoving","movingRef","onScrollRef","ratioRef","innerWidth","moveHandler","clientX","upHandler","createPortal","hasScroller","left","height","innerLeft","onMouseDown","preventDefault","body","Scroller","scroller","getScrollTarget","setScrollerProps","container","documentElement","computed","top","getBoundingClientRect","scrollerHeight","clientHeight","clientWidth","scrollWidth","containerRect","ResizeObserver","x","querySelector","OptionsList","hidden","Fetch","loader","render","ellipsis","Text","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","_excluded15","columnTypes","date","isValid","min","max","dateShort","dateRange","_excluded3","datetime","hideSecond","_excluded4","serialNumber","_excluded5","serialNumberShort","_excluded6","user","_excluded7","userName","_ref8","_excluded8","contacts","_ref9","_excluded9","tag","_ref10","_excluded10","isEnum","force","_ref11","avatar","_ref12","_excluded11","Avatar","singleRow","_ref13","_excluded12","hideInfo","HideInfoComponent","mainInfo","_ref14","_excluded13","_ref15","_excluded14","_ref16","sensitiveInfo","_ref18","_excluded16","otherSmall","otherLarge","Panel","Collapse","onConfirm","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","LoadingButton","async","defaultActiveKey","ghost","bordered","List","Item","Checkbox","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","prefix","dataSource","renderItem","storageKey","getDataApi","setDataFunc","TableConfig","setConfig","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","startTransition","send","cache","isLocal","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","targetHeader","otherHeader","currentGroup","startIndex","groupColumn","hasGroupHeader","sortArrayToMap","setSort","mapSort","setMapSort","newSort","targetValue","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_len","args","_key","pageData","FeaturesColumnsConfig","TablePageInner","withFetch","requestParams","fetchProps","isComplete","setData","loadMore","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","paramsType","currentName","pageSize","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","totalCount","pageSizeKey","toUpperCase","setPageSize","params","fetchParams"],"sourceRoot":""}
|