@kne-components/components-core 0.4.66 → 0.4.67

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.
Files changed (125) hide show
  1. package/build/asset-manifest.json +91 -91
  2. package/build/index.html +1 -1
  3. package/build/remoteEntry.js +1 -1
  4. package/build/remoteEntry.js.map +1 -1
  5. package/build/static/css/111.f68f5313.chunk.css +2 -0
  6. package/build/static/css/{111.af43bf41.chunk.css.map → 111.f68f5313.chunk.css.map} +1 -1
  7. package/build/static/css/2753.e7949ab3.chunk.css +2 -0
  8. package/build/static/css/{2753.65190152.chunk.css.map → 2753.e7949ab3.chunk.css.map} +1 -1
  9. package/build/static/css/{3771.a16d89be.chunk.css → 3771.ff018f27.chunk.css} +2 -2
  10. package/build/static/css/{3771.a16d89be.chunk.css.map → 3771.ff018f27.chunk.css.map} +1 -1
  11. package/build/static/css/{3790.5abb16a3.chunk.css → 3790.4526e53c.chunk.css} +2 -2
  12. package/build/static/css/{3790.5abb16a3.chunk.css.map → 3790.4526e53c.chunk.css.map} +1 -1
  13. package/build/static/css/3841.c7026264.chunk.css +2 -0
  14. package/build/static/css/{3841.9195867c.chunk.css.map → 3841.c7026264.chunk.css.map} +1 -1
  15. package/build/static/css/3874.5d044f62.chunk.css +2 -0
  16. package/build/static/css/{3874.4a2de703.chunk.css.map → 3874.5d044f62.chunk.css.map} +1 -1
  17. package/build/static/css/{4302.dad10603.chunk.css → 4302.651d68fa.chunk.css} +2 -2
  18. package/build/static/css/{4302.dad10603.chunk.css.map → 4302.651d68fa.chunk.css.map} +1 -1
  19. package/build/static/css/4666.8f03839e.chunk.css +2 -0
  20. package/build/static/css/{4666.2c927cd4.chunk.css.map → 4666.8f03839e.chunk.css.map} +1 -1
  21. package/build/static/css/5628.e4fcb2cc.chunk.css +12 -0
  22. package/build/static/css/{5628.97e556c6.chunk.css.map → 5628.e4fcb2cc.chunk.css.map} +1 -1
  23. package/build/static/css/{6763.3f4c0ba1.chunk.css → 6763.a832c4fd.chunk.css} +2 -2
  24. package/build/static/css/{6763.3f4c0ba1.chunk.css.map → 6763.a832c4fd.chunk.css.map} +1 -1
  25. package/build/static/css/7227.031856f2.chunk.css +2 -0
  26. package/build/static/css/{7227.2a0a9dd0.chunk.css.map → 7227.031856f2.chunk.css.map} +1 -1
  27. package/build/static/css/7372.5d6553e3.chunk.css +2 -0
  28. package/build/static/css/{7372.e23f18b8.chunk.css.map → 7372.5d6553e3.chunk.css.map} +1 -1
  29. package/build/static/css/{760.7bd56434.chunk.css → 760.27c95225.chunk.css} +2 -2
  30. package/build/static/css/{760.7bd56434.chunk.css.map → 760.27c95225.chunk.css.map} +1 -1
  31. package/build/static/css/{8221.99a45fda.chunk.css → 8221.bcf604af.chunk.css} +2 -2
  32. package/build/static/css/{8221.99a45fda.chunk.css.map → 8221.bcf604af.chunk.css.map} +1 -1
  33. package/build/static/css/8377.1bbf012a.chunk.css +2 -0
  34. package/build/static/css/{8377.a8cb24d1.chunk.css.map → 8377.1bbf012a.chunk.css.map} +1 -1
  35. package/build/static/css/{8593.11db5d93.chunk.css → 8593.e59836d7.chunk.css} +2 -2
  36. package/build/static/css/{8593.11db5d93.chunk.css.map → 8593.e59836d7.chunk.css.map} +1 -1
  37. package/build/static/css/9387.59954fd1.chunk.css +2 -0
  38. package/build/static/css/{9387.d02253f6.chunk.css.map → 9387.59954fd1.chunk.css.map} +1 -1
  39. package/build/static/css/9556.27566499.chunk.css +2 -0
  40. package/build/static/css/{9556.828a556c.chunk.css.map → 9556.27566499.chunk.css.map} +1 -1
  41. package/build/static/css/9666.a4e2b163.chunk.css +2 -0
  42. package/build/static/css/{9666.d8c91149.chunk.css.map → 9666.a4e2b163.chunk.css.map} +1 -1
  43. package/build/static/js/{111.f812617f.chunk.js → 111.f4b5ea98.chunk.js} +2 -2
  44. package/build/static/js/{111.f812617f.chunk.js.map → 111.f4b5ea98.chunk.js.map} +1 -1
  45. package/build/static/js/{196.74a1326d.chunk.js → 196.80a3177c.chunk.js} +1 -1
  46. package/build/static/js/{2833.2cdd46e6.chunk.js → 2833.1d09d414.chunk.js} +2 -2
  47. package/build/static/js/2833.1d09d414.chunk.js.map +1 -0
  48. package/build/static/js/3771.0d3884d1.chunk.js +2 -0
  49. package/build/static/js/{3771.e50184d9.chunk.js.map → 3771.0d3884d1.chunk.js.map} +1 -1
  50. package/build/static/js/{3790.03afba35.chunk.js → 3790.595590c0.chunk.js} +2 -2
  51. package/build/static/js/{3790.03afba35.chunk.js.map → 3790.595590c0.chunk.js.map} +1 -1
  52. package/build/static/js/{3841.de64ea1f.chunk.js → 3841.bcb1e477.chunk.js} +2 -2
  53. package/build/static/js/{3841.de64ea1f.chunk.js.map → 3841.bcb1e477.chunk.js.map} +1 -1
  54. package/build/static/js/{3856.3bc4f554.chunk.js → 3856.9b306735.chunk.js} +2 -2
  55. package/build/static/js/{3856.3bc4f554.chunk.js.map → 3856.9b306735.chunk.js.map} +1 -1
  56. package/build/static/js/{3874.43b3a191.chunk.js → 3874.f239c12f.chunk.js} +3 -3
  57. package/build/static/js/{3874.43b3a191.chunk.js.map → 3874.f239c12f.chunk.js.map} +1 -1
  58. package/build/static/js/4302.1e65d1a3.chunk.js +2 -0
  59. package/build/static/js/{4302.77e57d61.chunk.js.map → 4302.1e65d1a3.chunk.js.map} +1 -1
  60. package/build/static/js/4474.25d1469a.chunk.js +2 -0
  61. package/build/static/js/{4474.19db5271.chunk.js.map → 4474.25d1469a.chunk.js.map} +1 -1
  62. package/build/static/js/{4666.ced49dea.chunk.js → 4666.da12dcad.chunk.js} +3 -3
  63. package/build/static/js/{4666.ced49dea.chunk.js.map → 4666.da12dcad.chunk.js.map} +1 -1
  64. package/build/static/js/{2363.e9d2eed8.chunk.js → 4744.68f457ed.chunk.js} +2 -2
  65. package/build/static/js/{2363.e9d2eed8.chunk.js.map → 4744.68f457ed.chunk.js.map} +1 -1
  66. package/build/static/js/5628.92cde7ac.chunk.js +2 -0
  67. package/build/static/js/{5628.72e29acc.chunk.js.map → 5628.92cde7ac.chunk.js.map} +1 -1
  68. package/build/static/js/6460.c05b642e.chunk.js +9 -0
  69. package/build/static/js/6460.c05b642e.chunk.js.map +1 -0
  70. package/build/static/js/6763.f212e86e.chunk.js +2 -0
  71. package/build/static/js/{6763.3a0a852f.chunk.js.map → 6763.f212e86e.chunk.js.map} +1 -1
  72. package/build/static/js/{7227.d189f8e3.chunk.js → 7227.9ba0d1ca.chunk.js} +3 -3
  73. package/build/static/js/{7227.d189f8e3.chunk.js.map → 7227.9ba0d1ca.chunk.js.map} +1 -1
  74. package/build/static/js/{7372.7e6e421a.chunk.js → 7372.2abd5112.chunk.js} +2 -2
  75. package/build/static/js/{7372.7e6e421a.chunk.js.map → 7372.2abd5112.chunk.js.map} +1 -1
  76. package/build/static/js/{760.185e0aa5.chunk.js → 760.64ddb4b7.chunk.js} +2 -2
  77. package/build/static/js/{760.185e0aa5.chunk.js.map → 760.64ddb4b7.chunk.js.map} +1 -1
  78. package/build/static/js/7857.07e102fc.chunk.js +2 -0
  79. package/build/static/js/{7857.6ed907e0.chunk.js.map → 7857.07e102fc.chunk.js.map} +1 -1
  80. package/build/static/js/8221.5cde284c.chunk.js +2 -0
  81. package/build/static/js/{8221.c93d129f.chunk.js.map → 8221.5cde284c.chunk.js.map} +1 -1
  82. package/build/static/js/{8377.f4903a9e.chunk.js → 8377.32461eb9.chunk.js} +2 -2
  83. package/build/static/js/{8377.f4903a9e.chunk.js.map → 8377.32461eb9.chunk.js.map} +1 -1
  84. package/build/static/js/8593.53fd497a.chunk.js +2 -0
  85. package/build/static/js/{8593.18b7475f.chunk.js.map → 8593.53fd497a.chunk.js.map} +1 -1
  86. package/build/static/js/{9223.800c4315.chunk.js → 9223.0adf8af5.chunk.js} +2 -2
  87. package/build/static/js/9223.0adf8af5.chunk.js.map +1 -0
  88. package/build/static/js/9556.59fe644a.chunk.js +3 -0
  89. package/build/static/js/{9556.2fa191f6.chunk.js.map → 9556.59fe644a.chunk.js.map} +1 -1
  90. package/build/static/js/9666.51562fa6.chunk.js +2 -0
  91. package/build/static/js/{9666.61a8e69f.chunk.js.map → 9666.51562fa6.chunk.js.map} +1 -1
  92. package/build/static/js/{main.94eeacc5.js → main.3892a3eb.js} +2 -2
  93. package/build/static/js/{main.94eeacc5.js.map → main.3892a3eb.js.map} +1 -1
  94. package/package.json +2 -2
  95. package/build/static/css/111.af43bf41.chunk.css +0 -2
  96. package/build/static/css/2753.65190152.chunk.css +0 -2
  97. package/build/static/css/3841.9195867c.chunk.css +0 -2
  98. package/build/static/css/3874.4a2de703.chunk.css +0 -2
  99. package/build/static/css/4666.2c927cd4.chunk.css +0 -2
  100. package/build/static/css/5628.97e556c6.chunk.css +0 -12
  101. package/build/static/css/7227.2a0a9dd0.chunk.css +0 -2
  102. package/build/static/css/7372.e23f18b8.chunk.css +0 -2
  103. package/build/static/css/8377.a8cb24d1.chunk.css +0 -2
  104. package/build/static/css/9387.d02253f6.chunk.css +0 -2
  105. package/build/static/css/9556.828a556c.chunk.css +0 -2
  106. package/build/static/css/9666.d8c91149.chunk.css +0 -2
  107. package/build/static/js/2833.2cdd46e6.chunk.js.map +0 -1
  108. package/build/static/js/3771.e50184d9.chunk.js +0 -2
  109. package/build/static/js/4302.77e57d61.chunk.js +0 -2
  110. package/build/static/js/4474.19db5271.chunk.js +0 -2
  111. package/build/static/js/5628.72e29acc.chunk.js +0 -2
  112. package/build/static/js/6460.02f933ea.chunk.js +0 -9
  113. package/build/static/js/6460.02f933ea.chunk.js.map +0 -1
  114. package/build/static/js/6763.3a0a852f.chunk.js +0 -2
  115. package/build/static/js/7857.6ed907e0.chunk.js +0 -2
  116. package/build/static/js/8221.c93d129f.chunk.js +0 -2
  117. package/build/static/js/8593.18b7475f.chunk.js +0 -2
  118. package/build/static/js/9223.800c4315.chunk.js.map +0 -1
  119. package/build/static/js/9556.2fa191f6.chunk.js +0 -3
  120. package/build/static/js/9666.61a8e69f.chunk.js +0 -2
  121. /package/build/static/js/{3874.43b3a191.chunk.js.LICENSE.txt → 3874.f239c12f.chunk.js.LICENSE.txt} +0 -0
  122. /package/build/static/js/{4666.ced49dea.chunk.js.LICENSE.txt → 4666.da12dcad.chunk.js.LICENSE.txt} +0 -0
  123. /package/build/static/js/{6460.02f933ea.chunk.js.LICENSE.txt → 6460.c05b642e.chunk.js.LICENSE.txt} +0 -0
  124. /package/build/static/js/{7227.d189f8e3.chunk.js.LICENSE.txt → 7227.9ba0d1ca.chunk.js.LICENSE.txt} +0 -0
  125. /package/build/static/js/{9556.2fa191f6.chunk.js.LICENSE.txt → 9556.59fe644a.chunk.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"static/js/9666.61a8e69f.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/FilterProvider.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/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/zh-CN.js","components/Navigation/locale/en-US.js","components/Navigation/withLocale.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/StateTag.js","components/StateTag/StateTagEnum.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/locale/zh-CN.js","components/Table/locale/en-US.js","components/Table/withLocale.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/useSelectedRow.js","components/Table/TablePage.js","components/Table/Table.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 degree = [{\n description: \"初中\", value: 10,\n}, {\n description: \"中专\", value: 20,\n}, {\n description: \"高中\", value: 30,\n}, {\n description: \"大专\", value: 40,\n}, {\n description: \"本科\", value: 50,\n}, {\n description: \"硕士研究生\", value: 60,\n}, {\n description: \"博士研究生\", value: 70,\n}, {\n description: \"博士后\", value: 75,\n}, {\n description: \"学历不限\", value: 999,\n}];\n\nconst phoneState = [{\n value: 0, description: \"空号\",\n}, {\n value: 1, description: \"实号\",\n}, {\n value: 2, description: \"停机\",\n}, {\n value: 3, description: \"库无\",\n}, {\n value: 4, description: \"沉默号\",\n}, {\n value: 5, description: \"风险号\",\n}];\n\nconst openStatus = [{value: 'open', description: '开启', type: 'success',}, {\n value: 'closed', description: '关闭', type: 'danger'\n}];\n\nconst baseLoaders = [['openStatus', openStatus], ['commonStatus', () => [{\n value: 'open', description: '开启', type: 'success',\n}, {\n value: 'close', description: '关闭', type: 'danger'\n}]], [\"gender\", () => [{value: \"M\", description: \"男\"}, {\n value: \"F\", description: \"女\",\n},],], [\"marital\", () => [{description: \"已婚\", value: \"Y\"}, {\n description: \"未婚\", value: \"N\",\n},],], [\"confirm\", () => [{description: \"是\", value: \"Y\"}, {\n description: \"否\", value: \"N\",\n},],], [\"political\", () => [{description: \"中共党员\", value: \"中共党员\"}, {\n description: \"共青团员\", value: \"共青团员\",\n}, {description: \"群众\", value: \"群众\"}, {\n description: \"其他党派\", value: \"其他党派\",\n},],], [\"phoneStateEnum\", phoneState], [\"phoneState\", phoneState], [\"degreeEnum\", degree], [\"degree\", degree]];\n\npreset({\n base: transform(baseLoaders, (result, value) => {\n result[value[0]] = value[1];\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__NN-KB\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__NN-KB\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__NN-KB\",\"filter-title\":\"style_filter-title__PlIpS__NN-KB\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__NN-KB\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__NN-KB\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__NN-KB\",\"filter-line\":\"style_filter-line__E+cRh__NN-KB\",\"clean-btn\":\"style_clean-btn__oSEvm__NN-KB\",\"filter-item\":\"style_filter-item__Q2ncE__NN-KB\",\"un-expand\":\"style_un-expand__4PFY8__NN-KB\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__NN-KB\",\"filter-label\":\"style_filter-label__qu26i__NN-KB\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__NN-KB\",\"option\":\"style_option__rd5Qo__NN-KB\",\"is-active\":\"style_is-active__OArQI__NN-KB\",\"is-visited\":\"style_is-visited__gZ5ni__NN-KB\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__NN-KB\",\"filter-item-label\":\"style_filter-item-label__C781J__NN-KB\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__NN-KB\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__NN-KB\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__NN-KB\",\"filter-tag\":\"style_filter-tag__dUGfu__NN-KB\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__NN-KB\",\"pop-util-content\":\"style_pop-util-content__bx5zP__NN-KB\",\"date-range-picker-popup\":\"style_date-range-picker-popup__vsjGw__NN-KB\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__NN-KB\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__NN-KB\",\"pop-util-text\":\"style_pop-util-text__pzeUy__NN-KB\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__NN-KB\",\"filter-item-text\":\"style_filter-item-text__MA8tU__NN-KB\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__NN-KB\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__NN-KB\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__NN-KB\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__NN-KB\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__NN-KB\",\"range-picker\":\"style_range-picker__c6ngq__NN-KB\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__NN-KB\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__NN-KB\",\"filter-advanced\":\"style_filter-advanced__4cyDy__NN-KB\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__NN-KB\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__NN-KB\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__NN-KB\"};","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport {useState} from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport {Col, Row, Space} from \"antd\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport {useContext} from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({list, children}) => {\n const {value, onChange} = useContext();\n return (<div className={style[\"filter-line\"]}>\n {list.filter((item) => !!item.type).map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value ? get(value.get(props?.name), \"value\") : props?.value,\n onChange: onChange ? (value) => onChange({\n name: props?.name, label: props?.label, value,\n }) : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (<ComponentItem\n {...Object.assign({}, item.props, {\n value: value ? get(value.get(item.props.name), \"value\") : item.props.value,\n onChange: onChange ? (value) => onChange({\n name: item.props.name, label: item.props.label, value,\n }) : item.props.onChange,\n })}\n key={item.key || item.props.name || index}\n />);\n })}\n {children}\n </div>);\n};\n\nconst FilterLines = ({\n className, list = [], displayLine = 1, label, extra, children,\n }) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n return (<IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title\", className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {list && list.length > 0 && (label || <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />)}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (<Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (<Space\n size={4}\n className={classnames(style[\"filter-item\"], style[\"option\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>) : null}\n </Line>))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (<Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (<>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(style[\"option\"], style[\"filter-item\"])}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(style[\"option\"], style[\"filter-item\"])}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>)}\n </Line>))}\n </div>\n </Space>\n </IntlProvider>);\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import {Provider} from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport {useMemo} from \"react\";\nimport {isNotEmpty} from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport {IntlProvider} from \"@components/Intl\";\n\nconst FilterOuter = ({children, className, defaultValue = [], ...props}) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n {typeof children === 'function' ? children({props, value, onChange}) : children}\n </Provider>\n </IntlProvider>\n );\n};\n\nexport default FilterOuter;\n","import classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport FilterProvider from './FilterProvider';\n\nconst FilterOuter = ({children, className, ...props}) => {\n return <FilterProvider {...props}>\n {(context) => <div className={classnames(style[\"filter\"], \"filter\", className)}>\n {children(context)}\n </div>}\n </FilterProvider>\n\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = ({defaultValue=[],...props}) => {\n return (\n <FilterOuter {...props} defaultValue={defaultValue}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import {useState} from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem = (WrappedComponent) => ({value, onChange, interceptor, label, render, ...props}) => {\n const [open, setOpen] = useState(false);\n const renderChildren = (otherProps) => <WrappedComponent\n allowClear={false}\n {...Object.assign({}, props, otherProps)}\n className={style[\"filter-item-inner\"]}\n value={typeof interceptor?.input === \"function\" ? interceptor.input(value) : value}\n onChange={typeof interceptor?.output === \"function\" ? (...args) => onChange(interceptor.output(...args)) : onChange}\n valueType=\"all\"\n onOpenChange={setOpen}\n />;\n return (<FilterItem label={label} open={open} active={isNotEmpty(value)}>\n {typeof render === \"function\" ? render({\n children: renderChildren\n }) : renderChildren()}\n </FilterItem>);\n};\n\nexport default withFieldItem;\n","import {useState, useMemo} from \"react\";\nimport {Button, Col, Popover, Row} from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport {FormattedMessage} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement = 'bottomLeft',\n onOpenChange,\n onChange,\n children,\n }) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (<Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n arrow={false}\n rootClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={<span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({value: state, onChange: setState})}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>}\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label}/>\n </span>\n </Popover>);\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport {Input, InputNumber, Space} from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport {useIntl} from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({id: \"over\"}, {count: range[0], unit});\n }\n if (isNumber(range[1])) {\n return formatMessage({id: \"lessThan\"}, {count: range[1], unit});\n }\n })(range), value: [range[0] || null, range[1] || null],\n };\n};\n\nconst defaultPropsOnValidate = (value) => {\n const range = get(value, \"value\");\n return !(range && isNumber(range[0]) && isNumber(range[1]) && range[1] < range[0]);\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate = defaultPropsOnValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n }) => {\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n return (<PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{onValidate, overlayClassName, placement, onOpenChange}}\n >\n {({value, onChange}) => (<Space.Compact>\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([target, get(value, \"value[1]\")], unit, formatMessage));\n }}\n />\n <Input\n style={{\n width: 30, borderLeft: 0, borderRight: 0, pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([get(value, \"value[0]\"), target], unit, formatMessage));\n }}\n />\n {unit && (<Input\n style={{\n width: 50, borderLeft: 0,\n }}\n value={unit}\n disabled\n />)}\n </Space.Compact>)}\n </PopoverItem>);\n};\n\nexport default InputFilterItem;\n","import {DatePicker} from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(({value, onChange, picker = \"date\", ...props}) => {\n return (<DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const {format} = Object.assign({format: \"YYYY-MM-DD\"}, props);\n value && onChange({\n label: picker !== \"date\" ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}` : value.format(format), value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />);\n});\n\nexport default DatePickerFilterItem;\n","import {DatePicker, Flex} from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\nimport style from \"../style.module.scss\";\n\nconst DateRangePickerFilterItem = withFieldItem(({value, onChange, header, ...props}) => {\n return (<Flex vertical>\n {typeof header === \"function\" ? header({value, onChange}) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n classNames={{\n popup: {\n root: style[\"date-range-picker-popup\"]\n }\n }}\n value={value && Array.isArray(value.value) && value.value.length === 2 && value.value.map((item) => dayjs(item))}\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\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, 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 = (WrappedComponent) => ({placeholder, label, ...props}) => (<FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{label}}\n>\n {(text) => {\n return (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />);\n }}\n</FormattedMessage>);\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(SuperSelectTableListField);\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 = withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(NumberRangeFilterItemField);\n\nexport {default as DatePickerFilterItem} from \"./DatePickerFilterItem\";\nexport {default as DateRangePickerFilterItem} from \"./DateRangePickerFilterItem\";\nexport {default as TypeDateRangePickerFilterItem} from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import {SearchInput as SearchInputField} from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\nimport {useIntl} from \"@components/Intl\";\n\nconst SearchInput = withFilterValue(({label, onChange, value, placeholder, ...props}) => {\n const {formatMessage} = useIntl({moduleName: 'Filter'});\n return (\n <SearchInputField\n {...props}\n placeholder={placeholder || formatMessage({id: 'inputPlaceholder'}, {label})}\n value={value?.value || \"\"}\n onSearch={(value) => {\n onChange({label: value, value});\n }}\n />\n );\n});\n\nexport default SearchInput;\n","import {App, Tag} from \"antd\";\nimport AddressSelectField, {\n getLabelForLocal,\n withAddressApi,\n} from \"@common/components/AddressSelectField\";\nimport {FormattedMessage, useIntl} from \"@components/Intl\";\nimport {usePreset} from \"@components/Global\";\nimport {useMemo} from \"react\";\nimport style from \"../../style.module.scss\";\n\nconst {CheckableTag} = Tag;\n\nconst CityFilterItemInner = ({\n value,\n onChange,\n single = false,\n maxLength = 5,\n addressApi,\n ...props\n }) => {\n const {message} = App.useApp();\n const {locale} = usePreset();\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const {code} = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({value}) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? {value: code, label: name} : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({value: code, label: name})\n : (() => {\n const index = newValue.findIndex(\n ({value}) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n {id: \"maxSelectedCount\"},\n {count: maxLength}\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({code}) =>\n single\n ? value?.value === code\n : !!(value || []).find(({value}) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({value}) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const {city} = addressApi.getCity(value);\n return {value: city?.code, label: city?.name};\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import {Tag, App} from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport {useIntl} from \"@components/Intl\";\n\nconst {CheckableTag} = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single = false,\n maxLength = 5,\n items = [],\n custom,\n }) => {\n const {message} = App.useApp();\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n return (\n <>\n {items.map(({label, value: itemValue}) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({value}) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? {value: itemValue, label} : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({value: itemValue, label})\n : (() => {\n const index = newValue.find(({value}) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n {id: \"maxSelectedCount\"},\n {count: maxLength}\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({id: \"pleaseInput\"})}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nexport default ListFilterItem;\n","import { Input, Space, Button } from \"antd\";\nimport { useState, useEffect, useRef } from \"react\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport { useIntl } from \"@components/Intl\";\n\nconst InputFilterItem = ({ value, label, onChange, ...props }) => {\n const propsValue = value?.value;\n const [inputValue, setInputValue] = useState(propsValue || \"\");\n const [active, setActive] = useState(false);\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const searchHandler = () => {\n onChange(inputValue ? { label: inputValue, value: inputValue } : null);\n };\n const ref = useSimulationBlur(() => {\n setActive(false);\n searchHandler();\n });\n const inputValueRef = useRef(\"\");\n inputValueRef.current = inputValue;\n\n useEffect(() => {\n if (propsValue !== inputValueRef.current) {\n setInputValue(propsValue);\n }\n }, [propsValue]);\n return (\n <span ref={ref}>\n <Space.Compact>\n <Input\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n {...props}\n size=\"small\"\n value={inputValue}\n onFocus={() => {\n setActive(true);\n }}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n onPressEnter={searchHandler}\n />\n {active && (\n <Button size=\"small\" type=\"primary\" onClick={searchHandler}>\n {formatMessage({ id: \"search\" })}\n </Button>\n )}\n </Space.Compact>\n </span>\n );\n};\n\nexport default InputFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\n","import FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport {useContext as useFilter} from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\nimport FilterProvider from './FilterProvider';\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nFilter.FilterProvider = FilterProvider;\nexport default Filter;\nexport {fields, getFilterValue, useFilter, withFilterValue, SearchInput, FilterProvider};\nexport {default as AdvancedFilter, advancedFields} from \"./AdvancedFilter\";\nexport {default as FilterValueDisplay} from \"./FilterValueDisplay\";\nexport {default as FilterItem} from \"./FilterItem\";\nexport {default as FilterLines} from \"./FilterLines\";\nexport {default as PopoverItem} from \"./PopoverItem\";\nexport {default as withFieldItem} from \"./withFieldItem\";\nexport {default as FilterItemContainer} from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__NN-KB\",\"inner\":\"style_inner__bMKeU__NN-KB\",\"content\":\"style_content__xTfWZ__NN-KB\",\"link\":\"style_link__93j7O__NN-KB\"};","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\"]} size={4}>\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 isMobile: false,\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__NN-KB\",\"page-content\":\"style_page-content__4XeN8__NN-KB\",\"page-main\":\"style_page-main__P0yEF__NN-KB\",\"page-main-content\":\"style_page-main-content__1OVPN__NN-KB\",\"table-page\":\"style_table-page__JkbLf__NN-KB\",\"helper-guide\":\"style_helper-guide__vzw4z__NN-KB\",\"page-outer\":\"style_page-outer__2a6iH__NN-KB\",\"no-margin\":\"style_no-margin__S6caT__NN-KB\",\"page-menu\":\"style_page-menu__CZSa9__NN-KB\",\"closed\":\"style_closed__hmnft__NN-KB\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__NN-KB\",\"page-menu-main\":\"style_page-menu-main__OXg2M__NN-KB\",\"page-option-main\":\"style_page-option-main__LyfT3__NN-KB\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__NN-KB\",\"page-option\":\"style_page-option__diS2S__NN-KB\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__NN-KB\",\"page-option-footer\":\"style_page-option-footer__d7xE0__NN-KB\",\"fixed-container\":\"style_fixed-container__1VZwY__NN-KB\",\"is-fixed\":\"style_is-fixed__1aQhp__NN-KB\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__NN-KB\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__NN-KB\",\"page-title\":\"style_page-title__zw-Fd__NN-KB\",\"page-title-text\":\"style_page-title-text__Rj4RC__NN-KB\",\"no-padding\":\"style_no-padding__V7Dwy__NN-KB\",\"page-header\":\"style_page-header__a813p__NN-KB\",\"page-header-info\":\"style_page-header-info__cMrZR__NN-KB\",\"layout-menu\":\"style_layout-menu__yiab0__NN-KB\",\"sub-menu\":\"style_sub-menu__dyqK7__NN-KB\",\"no-collapsed\":\"style_no-collapsed__76h8W__NN-KB\",\"has-not-children\":\"style_has-not-children__fnjRK__NN-KB\",\"table-page-top\":\"style_table-page-top__bt1l9__NN-KB\",\"error-component\":\"style_error-component__HvghB__NN-KB\",\"state-bar-page\":\"style_state-bar-page__+aUM4__NN-KB\",\"back-icon\":\"style_back-icon__79v2G__NN-KB\",\"mobile-menu-drawer\":\"style_mobile-menu-drawer__rVhzO__NN-KB\",\"mobile-menu-wrapper\":\"style_mobile-menu-wrapper__fPk6W__NN-KB\",\"mobile-menu-content\":\"style_mobile-menu-content__fXIhZ__NN-KB\",\"in-drawer\":\"style_in-drawer__FRIxz__NN-KB\",\"is-mobile\":\"style_is-mobile__ghvS4__NN-KB\"};","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, Drawer} 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, useState} 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 = ({isMobile}) => {\n const {pageProps, setPageProps} = useContext();\n const {menu, menuOpen, menuWidth, menuCloseWidth, menuFixed, menuCloseButton} = pageProps;\n const [drawerVisible, setDrawerVisible] = useState(false);\n\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n\n // 移动端渲染\n if (isMobile && menu) {\n return (\n <>\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\"]]: true,\n })}\n icon={<Icon type=\"icon-arrow-bold-right\"/>}\n onClick={() => setDrawerVisible(true)}\n />\n </FixedContainer>\n <Drawer\n placement=\"left\"\n open={drawerVisible}\n onClose={() => setDrawerVisible(false)}\n width={menuWidth}\n className={style[\"mobile-menu-drawer\"]}\n closable={false}\n styles={{\n body: {padding: 0, position: 'relative', height: '100vh'}\n }}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"])}\n icon={<Icon type=\"icon-arrow-bold-left\"/>}\n onClick={() => setDrawerVisible(false)}\n />\n <div className={style[\"mobile-menu-wrapper\"]}>\n <SimpleBar className={style[\"mobile-menu-content\"]}>\n {typeof menu === 'function' ? menu({open: true}) : menu}\n </SimpleBar>\n </div>\n </Drawer>\n </>\n );\n }\n\n // 桌面端渲染\n return menu ? (\n <Col\n className={classnames(style[\"page-menu\"],'core-page-menu', {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{\"--menu-width\": menuWidth, \"--menu-close-width\": menuCloseWidth}}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar\n className={style[\"page-menu-main\"]}>{typeof menu === 'function' ? menu({open: menuOpen}) : menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], 'core-page-menu-btn-outer', {\n [style[\"is-fixed\"]]: menuFixed,\n })}\n isFixed={menuFixed}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n icon={\n menuOpen ? (\n <Icon type=\"icon-arrow-bold-left\"/>\n ) : (\n <Icon type=\"icon-arrow-bold-right\"/>\n )\n }\n onClick={() => {\n setPageProps({menuOpen: !pageProps.menuOpen});\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n pageResult[pathModuleName] = !pageProps.menuOpen;\n localStorage.setItem(pageMenuOpenKey, pageResult);\n setPageProps({menuOpen: !pageProps.menuOpen});\n }}\n />\n </FixedContainer>\n ) : null}\n </Col>\n ) : null;\n};\n\nexport default Menu;\n","import {defaultProps, useContext} from \"../context\";\nimport isEqual from \"lodash/isEqual\";\nimport {useEffect, useRef} from \"react\";\nimport {Result} from \"antd\";\nimport Features from \"@components/Features\";\nimport {useMenuOpen} from \"./Menu\";\n\nconst PageInner = ({children, isPass, ...props}) => {\n const {setPageProps} = useContext();\n const propsRef = useRef(null);\n const localMenuOpen = useMenuOpen();\n const localMenuOpenRef = useRef(localMenuOpen);\n localMenuOpenRef.current = localMenuOpen;\n useEffect(() => {\n if (!isEqual(propsRef.current, props)) {\n propsRef.current = props;\n /**\n * 解决两个页面都用header时,menuButton产生的跳动问题:如果下一个页面有header,\n * headerHeight由其header组件自己更新,不再统一重置为0。\n * optionFooter同理\n * */\n const targetProps = Object.assign(\n {},\n defaultProps,\n props,\n typeof localMenuOpenRef.current === \"boolean\"\n ? {menuOpen: localMenuOpenRef.current}\n : {}\n );\n if (targetProps.header && targetProps.headerHeight === 0) {\n delete targetProps[\"headerHeight\"];\n }\n if (targetProps.optionFooter && targetProps.optionFooterHeight === 0) {\n delete targetProps[\"optionFooter\"];\n }\n setPageProps(targetProps);\n }\n }, [props, setPageProps]);\n\n if (isPass === false) {\n return <Result status=\"403\" subTitle=\"暂未开放此功能\"/>;\n }\n\n return children;\n};\n\nconst Page = (p) => {\n const {featureId, name, openFeatures, ...props} = Object.assign({}, defaultProps, p);\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({isPass}) => <PageInner {...props} key={name} isPass={isPass}/>}\n </Features>\n );\n }\n return <PageInner {...props} key={name}/>;\n};\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import {Col, Row, Flex} from \"antd\";\nimport {useNavigate} from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({title, filter, titleExtra, titleLeftExtra, backUrl}) => {\n const navigator = useNavigate();\n if (filter) {\n return (<Filter className={style[\"page-title\"]} {...filter} extra={titleExtra}/>);\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (<Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col flex={1}>\n <Flex gap={8} align=\"center\">\n {title ? (<div className={style[\"page-title-text\"]}>\n {backUrl ? (<Flex gap={8} align=\"center\">\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\"/>\n </span>\n <span>{title}</span>\n </Flex>) : (title)}\n </div>) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Flex>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>);\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import {Alert, Button, Col, Layout as AntdLayout, Row} from \"antd\";\nimport {useCallback, useEffect, useState, useMemo} 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 useIsMobile = (isMobileProp) => {\n const [windowWidth, setWindowWidth] = useState(window.innerWidth);\n \n useEffect(() => {\n const handleResize = () => setWindowWidth(window.innerWidth);\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n \n return useMemo(() => {\n if (typeof isMobileProp === 'boolean') {\n return isMobileProp;\n }\n return windowWidth < 768;\n }, [isMobileProp, windowWidth]);\n};\n\nconst {Content} = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent}/>;\n};\n\nconst Layout = ({className, children, theme, navigation = {}, isMobile: isMobileProp}) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const {permissions} = usePermissions();\n const isMobile = useIsMobile(isMobileProp);\n \n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n return (\n <AntdLayout\n className={classnames(style[\"layout\"], className, 'core-layout', {\n [style[\"is-mobile\"]]: isMobile\n })}\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, isMobile}}>\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 isMobile={isMobile}/>\n </ErrorBoundary>\n <Col className={classnames(style[\"page-content\"], 'core-page-content', {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })} flex={1} style={{\"--background-color\": pageProps.backgroundColor}}>\n <div className={classnames(style[\"page-main\"], 'core-page-main')}>\n <ErrorBoundary>\n <PageTitle\n title={pageProps.title}\n backUrl={pageProps.backUrl}\n filter={pageProps.filter}\n titleExtra={pageProps.titleExtra}\n titleLeftExtra={pageProps.titleLeftExtra}\n />\n </ErrorBoundary>\n <div\n className={classnames(style[\"page-main-content\"], 'core-page-main-content', {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={classnames(style[\"helper-guide-page\"], 'core-helper-guide-page')}\n name={pageProps.helperGuideName}\n />\n )}\n {children}\n </ErrorBoundary>\n </div>\n </div>\n </Col>\n <ErrorBoundary>\n <Option/>\n </ErrorBoundary>\n </Row>\n </ErrorBoundary>\n </Provider>\n </Content>\n </ErrorBoundary>\n </AntdLayout>\n );\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"page-header\":\"style_page-header__l3LiS__NN-KB\",\"main\":\"style_main__X1Ynh__NN-KB\",\"icon-outer\":\"style_icon-outer__6F97H__NN-KB\",\"title\":\"style_title__dNWQj__NN-KB\",\"info\":\"style_info__yF-4c__NN-KB\",\"overlay\":\"style_overlay__SWqqE__NN-KB\",\"tags\":\"style_tags__5+zDU__NN-KB\",\"tag-split\":\"style_tag-split__V6SqP__NN-KB\",\"button-options\":\"style_button-options__f1-gI__NN-KB\"};","import {Space, Row, Col} from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\nimport {isValidElement} from 'react';\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport {IntlProvider} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nexport const PageHeaderInner = ({\n className,\n title,\n icon,\n iconType,\n info,\n tags,\n tagSplit = <span className={style[\"tag-split\"]}>|</span>,\n tagClassName = \"\",\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n children\n }) => {\n return (<Row\n className={classnames(className, style[\"page-header\"])}\n wrap={false}\n gutter={10}\n >\n {addonBefore && <Col>{addonBefore}</Col>}\n <Col flex={1}>\n <Space direction=\"vertical\">\n <Row wrap={false}>\n <Col flex={1} className={style[\"main\"]}>\n <Space align=\"start\">\n {icon && <div className={style[\"icon-outer\"]}>{icon}</div>}\n {!icon && iconType && (<div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24}/>\n </div>)}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (<Col\n flex={1}\n className={style[\"button-options\"]}\n style={{\"--max-width\": buttonOptionsMaxWidth}}\n >\n {isValidElement(buttonOptions) && buttonOptions}\n {typeof buttonOptions === \"object\" && Array.isArray(buttonOptions?.list) &&\n <ButtonGroup {...buttonOptions} />}\n </Col>)}\n </Row>\n {tags && (<Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (<div key={index} className={style[\"tags\"]}>\n {item}\n </div>);\n })}\n </Space>)}\n {children}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>);\n};\n\nconst PageHeader = (props) => {\n return (<IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>);\n};\n\nexport default PageHeader;\n","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__NN-KB\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__NN-KB\",\"no-start-icon\":\"style_no-start-icon__LnC1S__NN-KB\",\"has-children\":\"style_has-children__m9tce__NN-KB\",\"has-children-node\":\"style_has-children-node__2bhEB__NN-KB\",\"is-root\":\"style_is-root__4hhOc__NN-KB\",\"title\":\"style_title__+Hcar__NN-KB\",\"active\":\"style_active__WU49K__NN-KB\",\"no-collapse\":\"style_no-collapse__aIZBM__NN-KB\",\"title-content\":\"style_title-content__cQXpK__NN-KB\",\"loading\":\"style_loading__1pU4P__NN-KB\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport {Spin} from \"antd\";\nimport {useLocation, useNavigate} from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport {useCallback, useEffect, useMemo} from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport {useFetch} from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {}, nodeMapping = [];\n const traversal = (children, options) => {\n const {parentKey, depth} = Object.assign({\n parentKey: \"root\", depth: 0, paths: [],\n }, options);\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${item.key || `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`}`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey, depth: depth + 1,\n });\n childrenKeys[currentKey] && childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey, parentKey, depth, children: children, originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return {items: traversal(items), childrenKeys, nodeMapping};\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n icon,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren = (Array.isArray(children) && children.length > 0) || fetchOptions;\n const {refresh, isLoading} = useFetch(Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions, onRequestSuccess: (data) => {\n onLoad(data);\n },\n }));\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (<div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\"/>\n </div>);\n }\n };\n return (<Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType && !icon,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && !icon && <Icon type={iconType}/>}\n {icon || null}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (<Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />)}\n </div>\n {renderChildren()}\n </div>\n </Permissions>);\n};\n\nconst Menu = ({className, allowCollapsed = true, pathMatch, defaultItems = [], ...props}) => {\n const {pathname, search} = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\", defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue({defaultItems, ...props}, {\n defaultValue: \"defaultItems\", value: \"items\", onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems, defaultOpenKeys, links, childrenKeys, hasStartIcon, hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems, childrenKeys, nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false, hasChildren = false;\n const links = [], defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType || node.icon) {\n hasStartIcon = true;\n }\n node.path && links.push({path: node.path, key});\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys, links, items: targetItems, childrenKeys, hasStartIcon, hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({path}) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, {pathname, search});\n }\n return (ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) || ensureSlash(pathname + search) === ensureSlash(path));\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }), {\n value: \"openKeys\", defaultValue: \"defaultOpenKeys\", onChange: \"onOpenChange\",\n });\n\n const renderChildren = useCallback((children, options) => {\n const {parentKey, depth, selectedKey, openKeys, paths} = Object.assign({\n parentKey: null, depth: 0, paths: [],\n }, options);\n if (Array.isArray(children) && children.length > 0) {\n return children.map(({children, key: currentKey, originItem, ...item}) => {\n return (<MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={currentKey === selectedKey || (childrenKeys[currentKey] && childrenKeys[currentKey].indexOf(selectedKey) > -1)}\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children: originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey, depth: depth + 1, selectedKey, openKeys, paths: [...paths, currentKey],\n })}\n </MenuItem>);\n });\n }\n return null;\n }, [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]);\n\n return (<div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon, [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, {selectedKey, openKeys})}\n </div>);\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1679367216639,\n className: \"icon\",\n viewBox: \"0 0 1030 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 1696,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 201.171875,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.479711 385.587015v293.958522l258.791705 146.528403 258.791704-146.528403V385.587015l-251.127142-145.62669L252.479711 385.587015z\",\n fill: \"#FFFFFF\",\n opacity: 0.1,\n \"p-id\": 1697\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M778.629396 405.875564A20.739405 20.739405 0 0 1 766.456267 405.875564l-39.675383-21.641119a22.091975 22.091975 0 0 1 21.190261-39.224526l39.675383 21.190261a22.542831 22.542831 0 0 1-10.820559 42.380523z m-518.485122-6.76285a22.542831 22.542831 0 0 1-19.837691-12.173129 22.091975 22.091975 0 0 1 9.918845-30.207394l40.12624-20.739405a22.993688 22.993688 0 0 1 30.207394 9.918846 22.542831 22.542831 0 0 1-9.918846 30.207394L270.513977 396.858431a20.739405 20.739405 0 0 1-10.369703 2.254283z m399.909829-57.258792a22.542831 22.542831 0 0 1-10.820559-2.705139l-39.675383-21.190262a22.993688 22.993688 0 0 1-9.017133-30.65825 22.091975 22.091975 0 0 1 30.207394-9.017133l39.675383 21.190261a22.542831 22.542831 0 0 1-10.369702 42.380523z m-279.531109-4.057709a22.542831 22.542831 0 0 1-9.918846-45.085663l40.12624-20.288548a22.542831 22.542831 0 0 1 30.207394 9.467989 22.993688 22.993688 0 0 1-9.918846 33.814247l-40.12624 20.288548a20.739405 20.739405 0 0 1-10.369702 1.803427zM541.027953 277.381425a19.386835 19.386835 0 0 1-10.820559-2.70514L519.837692 270.618575l-8.566276 4.508567a22.542831 22.542831 0 0 1-20.288549-40.577097l18.935979-9.017132a23.895401 23.895401 0 0 1 20.739405 0l21.190261 11.722272a22.091975 22.091975 0 0 1 9.017133 30.207394 22.091975 22.091975 0 0 1-19.837692 9.918846z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1698\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1002.70514 289.554554a24.346258 24.346258 0 0 1-9.918846 0L513.074842 47.895401 33.814247 287.300271a22.542831 22.542831 0 0 1-30.207394-10.369703 22.993688 22.993688 0 0 1 9.918846-30.207394L503.155996 2.358882a22.993688 22.993688 0 0 1 20.288549 0l489.179441 244.364292a22.542831 22.542831 0 0 1-9.918846 45.085663z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1699\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.085663 762.052299a22.542831 22.542831 0 0 1-9.918846-40.577096l81.154193-39.675383A22.542831 22.542831 0 0 1 135.256988 721.475203l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.017132 0.901713z m889.540126-14.427412a24.346258 24.346258 0 0 1-9.918846 0l-80.703336-40.577096a22.542831 22.542831 0 0 1-10.369703-30.207394 22.091975 22.091975 0 0 1 30.207394-9.918846l80.703337 40.12624a22.542831 22.542831 0 0 1-9.918846 42.831379zM206.943192 683.15239a23.444545 23.444545 0 0 1-20.288548-12.623986 22.993688 22.993688 0 0 1 10.369702-30.207394l81.154193-39.675383a22.993688 22.993688 0 0 1 30.207394 10.369702 22.542831 22.542831 0 0 1-10.369702 30.207394l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.918846 2.254284z m566.275924-16.230839a26.600541 26.600541 0 0 1-9.918845 0l-80.703337-40.577097a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918845l80.703337 40.126239a22.993688 22.993688 0 0 1 9.918846 30.207395 22.542831 22.542831 0 0 1-20.288549 10.369702z m-405.770965-62.669071a22.091975 22.091975 0 0 1-20.288548-12.623986 22.542831 22.542831 0 0 1 13.525699-30.207394l81.154193-39.224527a22.542831 22.542831 0 0 1 30.207394 10.369703 22.091975 22.091975 0 0 1-10.369702 29.756537l-81.154193 39.675384a26.600541 26.600541 0 0 1-11.271416 2.254283z m242.560866-18.034265a19.837692 19.837692 0 0 1-9.918846-2.254284l-80.703336-40.577096a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918846l80.703337 40.12624a23.444545 23.444545 0 0 1 9.918845 30.658251 22.542831 22.542831 0 0 1-18.485121 12.173129z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1700\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.173129 1024a24.346258 24.346258 0 0 1-9.918846-2.254283L12.623986 783.242561a22.993688 22.993688 0 0 1-12.623986-20.288548V273.774572a23.444545 23.444545 0 0 1 10.820559-19.386835 21.641118 21.641118 0 0 1 21.641118 0l479.711452 238.954012L991.884581 253.486023a21.641118 21.641118 0 0 1 21.641118 0 23.444545 23.444545 0 0 1 10.820559 19.386835v490.081155a22.993688 22.993688 0 0 1-12.623986 20.288548l-490.081154 238.503156a22.542831 22.542831 0 0 1-9.467989 2.254283zM45.085663 748.526601l467.087466 225.428313 467.087466-225.428313V310.293959l-454.914337 225.428313a22.542831 22.542831 0 0 1-22.091975 0L45.085663 310.293959z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1701\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M511.722272 1020.393147a22.542831 22.542831 0 0 1-22.542831-22.542831V526.254283a22.542831 22.542831 0 0 1 45.085663 0v471.596033a22.542831 22.542831 0 0 1-22.542832 22.542831z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1702\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.623986 841.853922a18.935978 18.935978 0 0 1-9.918846-2.254283l-266.005411-128.043282a22.091975 22.091975 0 0 1-11.271415-20.288548V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832V676.38954l243.913435 117.222723 243.462579-117.222723V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832v307.48422a22.542831 22.542831 0 0 1-12.623986 20.288548l-266.00541 128.043282a19.837692 19.837692 0 0 1-11.722272 2.254283z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1703\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgFavicon);\nexport default __webpack_public_path__ + \"static/media/favicon.477a5bb996fd5b367fe0dddc29f67824.svg\";\nexport { ForwardRef as ReactComponent };","const message = {\n defaultTitle: \"KneUnion\", indexLabel: \"首页\", overflowedIndicator: \"更多\"\n};\n\nexport default message;","const message = {\n defaultTitle: \"KneUnion\", indexLabel: \"Home\", overflowedIndicator: \"More\"\n};\n\nexport default message;","import {createWithIntlProvider} from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN', messages: {\n 'zh-CN': zhCN, 'en-US': enUS\n }, namespace: 'Navigation'\n});\n\nexport default withLocale;\n","// extracted by mini-css-extract-plugin\nexport default {\"navigation-wrap\":\"style_navigation-wrap__VF8x2__NN-KB\",\"navigation\":\"style_navigation__60RrS__NN-KB\",\"logo\":\"style_logo__lB9RC__NN-KB\",\"is-fixed\":\"style_is-fixed__kHFWj__NN-KB\",\"navigation-logo\":\"style_navigation-logo__q9qHu__NN-KB\",\"navigation-list\":\"style_navigation-list__EYtkg__NN-KB\",\"navigation-options\":\"style_navigation-options__0BdJU__NN-KB\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__NN-KB\",\"more-icon\":\"style_more-icon__gNMnt__NN-KB\",\"is-mobile\":\"style_is-mobile__vEvyK__NN-KB\",\"navigation-mobile-menu\":\"style_navigation-mobile-menu__aVFBD__NN-KB\",\"navigation-mobile-title\":\"style_navigation-mobile-title__Zm6bU__NN-KB\",\"mobile-menu-trigger\":\"style_mobile-menu-trigger__xStQw__NN-KB\",\"mobile-dropdown-content\":\"style_mobile-dropdown-content__QqoTK__NN-KB\",\"mobile-dropdown-header\":\"style_mobile-dropdown-header__+J+zD__NN-KB\",\"dropdown-title\":\"style_dropdown-title__CK7t4__NN-KB\",\"mobile-dropdown-options\":\"style_mobile-dropdown-options__KiM0z__NN-KB\"};","import {Col, Layout, Menu, Row, Space, Flex, Dropdown} from \"antd\";\nimport {MenuOutlined} from \"@ant-design/icons\";\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 withLocale from './withLocale';\nimport {useIntl} from \"@kne/react-intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport useResize from \"@kne/use-resize\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst {Header} = Layout;\n\nexport const navigationHeight = 48;\nexport const mobileBreakpoint = 768;\n\nconst SetTitle = ({name, mapping, defaultTitle}) => {\n const propsRef = useRef({\n mapping, defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({onReady}) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = withLocale(({\n permissions = [],\n list = [],\n headerLogo,\n rightOptions,\n isFixed = true,\n showIndex = true,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base = '',\n onChange,\n className,\n navigateTo,\n isMobile: forceMobile,\n }) => {\n const {formatMessage} = useIntl();\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 [autoIsMobile, setAutoIsMobile] = useState(false);\n const [mobileMenuVisible, setMobileMenuVisible] = useState(false);\n const callback = (el) => {\n const width = el ? el.getBoundingClientRect().width : window.innerWidth;\n if (forceMobile === undefined) {\n setAutoIsMobile(width < mobileBreakpoint);\n if (!autoIsMobile && width < mobileBreakpoint) {\n setMobileMenuVisible(false);\n }\n }\n }\n const windowResizeRef = useResize(callback);\n useEffect(() => {\n callback(windowResizeRef.current);\n }, []);\n const pathModuleName = location.pathname\n .replace(new RegExp(`^${base}`), \"\")\n .split(\"/\")[1];\n const name = pathModuleName ? get(Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }), \"[0]\") : \"home\";\n\n // 是否为移动端(优先使用强制指定的值,否则使用自动检测的值)\n const isMobile = forceMobile !== undefined ? forceMobile : autoIsMobile;\n\n // 处理移动端菜单项点击\n const handleMobileMenuClick = (path) => {\n setMobileMenuVisible(false);\n onChange && onChange(path);\n setTimeout(() => {\n navigate(path);\n }, 0);\n };\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom = navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel = mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true, childList: true, subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(navigationRef.current, mutationObserverInitConfig);\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex ? {\n label: indexLabel || formatMessage({id: 'indexLabel'}), key: \"home\", onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n } : false;\n\n return (<>\n <SetTitle\n defaultTitle={defaultTitle || formatMessage({id: 'defaultTitle'})}\n mapping={mapping}\n name={name}\n />\n <div className={classnames(style[\"navigation-wrap\"], className, {\n [style[\"is-mobile\"]]: isMobile,\n })}>\n <div ref={windowResizeRef} className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}>\n <Header>\n <Row wrap={false}>\n {isMobile && (\n <Col className={classnames(style[\"navigation-mobile-menu\"], \"navigation-mobile-menu\")}>\n <Dropdown\n placement=\"bottomLeft\"\n trigger={['click']}\n open={mobileMenuVisible}\n onOpenChange={setMobileMenuVisible}\n dropdownRender={(menu) => (<div className={style[\"mobile-dropdown-content\"]}>\n {menu}\n {rightOptions && (<div className={style[\"mobile-dropdown-options\"]}>\n {rightOptions}\n </div>)}\n </div>)}\n menu={{\n selectedKeys: [name], items: [indexNav, ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, icon, path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return {\n label: icon ? <Flex gap={8} align=\"center\">\n {icon}\n <span>{title}</span>\n </Flex> : title,\n key: name,\n onClick: () => handleMobileMenuClick(_path),\n };\n })],\n }}\n >\n <div className={classnames(style[\"mobile-menu-trigger\"], \"mobile-menu-trigger\")}>\n <MenuOutlined/>\n </div>\n </Dropdown>\n </Col>)}\n {!isMobile && (<Col\n className={classnames(\"navigation-logo\", style[\"navigation-logo\"])}\n >\n <Image\n className={classnames(style[\"logo\"])}\n alt=\"logo\"\n {...Object.assign({}, headerLogo || {src: logo})}\n />\n </Col>)}\n {!isMobile && (<Col\n ref={navigationRef}\n flex={1}\n className={classnames(\"navigation-list\", style[\"navigation-list\"])}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={overflowedIndicator || (<Space size={4}>\n <span>\n {nameLabel || formatMessage({id: 'overflowedIndicator'})}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>)}\n items={[indexNav, ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, icon, path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return {\n label: icon ? <Flex gap={8}>\n {icon}\n <span>{title}</span>\n </Flex> : title, key: name, onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),]}\n />\n </Col>)}\n {isMobile && (<Col className={style[\"navigation-mobile-title\"]}>\n {defaultTitle || formatMessage({id: 'defaultTitle'})}\n </Col>)}\n {!isMobile && <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>}\n </Row>\n </Header>\n </div>\n </div>\n </>);\n});\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__NN-KB\"};","import {createElement} from \"react\";\nimport {Result, Tooltip} from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport {useGlobalContext, usePreset} from \"@components/Global\";\n\nexport const computedIsPass = ({permissions, request}) => {\n return Array.isArray(request) && request.length > 0 ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1) : true;\n};\n\nexport const usePermissions = () => {\n const {global} = useGlobalContext();\n const {permissions, permissionsPath} = usePreset();\n return {\n permissions: global.permissions || permissions || (permissionsPath && get(global, permissionsPath)) || [],\n };\n};\n\nexport const usePermissionsPass = ({request}) => {\n const {permissions} = usePermissions();\n return computedIsPass({permissions, request});\n};\n\nconst Permissions = ({\n type = 'hidden',\n className,\n tagName = 'span',\n message = '您暂无权限,请联系管理员',\n request,\n children,\n ...props\n }) => {\n const isPass = usePermissionsPass({request});\n if (typeof children === \"function\") {\n return children({isPass, type, request});\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message}/>;\n }\n\n if (type === \"tooltip\") {\n return (<Tooltip title={message}>\n {createElement(tagName, {...props, className: classnames(style[\"outer\"], className)}, children)}\n </Tooltip>);\n }\n\n return null;\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__NN-KB\",\"has-children\":\"style_has-children__oQDqU__NN-KB\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__NN-KB\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__NN-KB\",\"tab-step-control\":\"style_tab-step-control__EQaCl__NN-KB\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__NN-KB\"};","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__NN-KB\",\"state-result-tag\":\"style_state-result-tag__CssDz__NN-KB\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__NN-KB\",\"event-tag\":\"style_event-tag__cg6SE__NN-KB\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__NN-KB\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__NN-KB\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__NN-KB\",\"show-bg\":\"style_show-bg__OcL+R__NN-KB\",\"tag-text\":\"style_tag-text__JHCt+__NN-KB\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__NN-KB\"};","import React, {useMemo} from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport {Space, Tag} from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\", borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder = false,\n text = \"\",\n type = \"default\",\n showBackground = true,\n className,\n filterName,\n ...props\n }) => {\n const tagColor = useMemo(() => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }), [type]);\n\n return (<Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(style[\"state-tag-wrapper\"], type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\")}\n align=\"center\"\n size={4}\n >\n {filterName ? (<span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(style[\"state-tag\"], className, type === \"result\" ? style[\"state-result-tag\"] : \"\", type === \"skill\" ? style[\"state-skill-tag\"] : \"\", style[`state-tag-${type}`], showBackground ? style[\"show-bg\"] : \"\", showBorder ? style[\"show-border\"] : \"\", props?.onClick ? style[\"event-tag\"] : \"\")}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>);\n};\n\nexport default StateTag;\n","import Enum from \"@components/Enum\";\nimport StateTag from \"./StateTag\";\n\nconst StateTagEnum = ({moduleName, name, ...props}) => {\n return (\n <Enum moduleName={moduleName} name={name}>\n {data => <StateTag {...props} text={data.description} {...data} />}\n </Enum>\n );\n};\n\nexport default StateTagEnum;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__NN-KB\",\"is-resize\":\"style_is-resize__ut6RW__NN-KB\",\"is-moving\":\"style_is-moving__BJ9wR__NN-KB\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__NN-KB\",\"is-computed\":\"style_is-computed__B9rIF__NN-KB\",\"options-column\":\"style_options-column__vsPTr__NN-KB\",\"options-btn\":\"style_options-btn__U3uoy__NN-KB\",\"tooltip\":\"style_tooltip__vJlkv__NN-KB\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__NN-KB\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__NN-KB\",\"columns-control\":\"style_columns-control__5-5ZF__NN-KB\",\"columns-control-content\":\"style_columns-control-content__MoeUI__NN-KB\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__NN-KB\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__NN-KB\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__NN-KB\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__NN-KB\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__NN-KB\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__NN-KB\",\"is-drag\":\"style_is-drag__U68aw__NN-KB\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__NN-KB\",\"sortable-drag\":\"style_sortable-drag__K5hWd__NN-KB\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__NN-KB\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__NN-KB\",\"sort-btn\":\"style_sort-btn__KvNLr__NN-KB\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__NN-KB\",\"sort-icon\":\"style_sort-icon__dB85I__NN-KB\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__NN-KB\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__NN-KB\",\"scroller-inner\":\"style_scroller-inner__NJSE0__NN-KB\",\"is-moving\":\"style_is-moving__jGuy0__NN-KB\"};","import {createPortal} from \"react-dom\";\nimport {useEffect, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport {getScrollEl} from '../../utils/importantContainer';\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({onScroll, getContainer, ...scrollerProps}) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current && onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(scrollerProps.hasScroller ? (<div\n className={classnames(style[\"scroller\"], 'scroller-bar')}\n style={{\n left: scrollerProps.left, width: scrollerProps.width, height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], 'scroller-bar-inner', {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth, left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>) : null, getContainer() || document.body);\n};\n\nconst Scroller = ({\n className, scroller = true, getScrollTarget = getScrollEl, children\n }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0, width: 0, innerLeft: 0, innerWidth: 0, height: 0, hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current = typeof scroller === \"object\" && typeof scroller.getContainer === \"function\" ? scroller.getContainer : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const {left, width, top, height} = scrollEl.getBoundingClientRect();\n const scrollerHeight = scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth = (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft = (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller: scrollEl.scrollWidth - scrollEl.clientWidth > 0 && (container === document.documentElement ? top + height - container.offsetHeight > 0 && top < container.offsetHeight : top < containerRect.top + containerRect.height && top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n ref.current && refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (<div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>);\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__NN-KB\",\"tag\":\"columns_tag__bQZLG__NN-KB\",\"avatar\":\"columns_avatar__SLPI+__NN-KB\",\"hover\":\"columns_hover__oAwHg__NN-KB\",\"primary\":\"columns_primary__6KtaA__NN-KB\",\"loading\":\"columns_loading__gtBay__NN-KB\",\"options\":\"columns_options__WvDZD__NN-KB\"};","import Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport {cloneElement, isValidElement} from 'react';\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({className, list = [], children, width}) => {\n const buttonProps = {\n className: classnames(className, style[\"options-btn\"]), type: \"link\",\n };\n const buttonList = list\n .filter((item) => !item?.hidden)\n .map(({className, ...props}) => Object.assign({}, props, buttonProps));\n return (<div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n {typeof children === \"function\" ? children({\n list: buttonList, itemClassName: \"btn-no-padding\", moreType: 'link', buttonProps\n }) : isValidElement(children) ? cloneElement(children, {\n ...buttonProps, itemClassName: \"btn-no-padding\", moreType: 'link'\n }) : children}\n {list && list.length > 0 && <ButtonGroup itemClassName=\"btn-no-padding\"\n moreType=\"link\"\n list={buttonList}\n />}\n </div>);\n};\n\nconst Options = ({list, ...props}) => {\n if (typeof list === \"function\") {\n return (<Fetch\n loader={list}\n render={({data}) => {\n return <OptionsList {...props} list={data}/>;\n }}\n />);\n }\n if (Array.isArray(list)) {\n return <OptionsList {...props} list={list}/>;\n }\n return <OptionsList {...Object.assign({}, props, list)} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n rootClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import {useState} from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender = () => \"-\",\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n }) => {\n const [loading, setLoading] = useState(false);\n return (<div\n style={Object.assign({}, style, {\"--max-width\": width + \"px\"})}\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[type], isEmpty ? null : {\n [columnsStyle[\"hover\"]]: hover, [columnsStyle[\"primary\"]]: primary, [columnsStyle[\"loading\"]]: loading,\n })}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(onClick({item, colItem: colValue, event: e})).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty ? emptyRender({type, item, hover, primary, children}) : children}\n </div>);\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","const message = {\n TotalText: \"共\",\n ItemText: \"条\",\n UnnamedColumn: \"未命名列\",\n EditTable: \"编辑表格\",\n RestoreDefault: \"恢复默认\",\n VisibleInfo: \"显示的信息\",\n HiddenInfo: \"隐藏的信息\",\n Search: \"搜索\",\n Cancel: \"取消\",\n Confirm: \"确定\",\n View: \"查看\"\n};\n\nexport default message;\n","const message = {\n TotalText: \"Total\",\n ItemText: \"items\",\n UnnamedColumn: \"Unnamed\",\n EditTable: \"Edit Table\",\n RestoreDefault: \"Restore Default\",\n VisibleInfo: \"Visible Columns\",\n HiddenInfo: \"Hidden Columns\",\n Search: \"Search\",\n Cancel: \"Cancel\",\n Confirm: \"Confirm\",\n View: \"View\"\n};\n\nexport default message;\n","import {createWithIntlProvider} from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN', messages: {\n 'zh-CN': zhCN, 'en-US': enUS\n }, namespace: 'table'\n});\n\nexport default withLocale;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\nimport {useIntl} from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = withLocale(({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const {formatMessage} = useIntl();\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 {formatMessage({id: 'View'})}\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\") +\n \"~\" +\n dayjs(item?.[1]).format(\"YYYY-MM-DD\")}\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\";\nimport {useIntl} from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = withLocale(({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const {formatMessage} = useIntl();\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 || formatMessage({id: 'UnnamedColumn'})}\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>{formatMessage({id: 'EditTable'})}</Col>\n <Col>\n <Tooltip title={formatMessage({id: 'RestoreDefault'})}>\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={formatMessage({id: 'VisibleInfo'})}>\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 || formatMessage({id: 'UnnamedColumn'})}\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>{formatMessage({id: 'HiddenInfo'})}</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={formatMessage({id: 'Search'})}\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 || formatMessage({id: 'UnnamedColumn'})}\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 {formatMessage({id: 'Cancel'})}\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 {formatMessage({id: 'Confirm'})}\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n});\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import {startTransition, useEffect, useMemo, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport {Col, Popover, Row} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport {usePreset} from \"@components/Global\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({title, columns, config, setConfig}) => {\n const [open, setOpen] = useState(false);\n return (<Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n rootClassName={style[\"columns-control-overlay\"]}\n content={<ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(newConfig, (result, value, key) => {\n result[key] = Object.assign({}, config[key], pick(value, [\"visible\", \"rank\"]));\n }, {});\n });\n }}\n />}\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\"/>\n </span>\n </Popover>\n </Col>\n </Row>);\n};\n\nconst useTableConfig = ({\n columns, name, controllerOpen, tableWidth, rowKey,\n }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const {tableServerApis: presetTableServerApis} = usePreset();\n const tableServerApis = presetTableServerApis ? presetTableServerApis : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target = typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const {send} = useFetch(Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n }));\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({force: false});\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(get(config, `${col.name}.visible`) === false || (get(config, `${col.name}.visible`) !== true && col.hidden === true));\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (get(config, `${item.name}.rank`, 0) + (item.fixed === \"left\" ? -10000 : 0) + (item.fixed === \"right\" ? 10000 : 0));\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({type}) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(visibleColumns, ({\n type, name\n }) => get(config, `${name}.width`) || (columnTypes[type] || columnTypes['other']).width);\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({width, index}) => {\n return lastNotOptionsColumnIndex === index ? width + Math.max(tableWidth - totalWidth - 2, 0) : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (<span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, {index});\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\"/>\n </span>);\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const {name, width, min, max, index} = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({width: min, index})) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const {name, width, min, max} = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\", title: (<TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(Math.max(get(config, `${name}.width`) || width, min), max);\n\n const realWidth = computedRealWidth({width: currentWidth, index});\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey = typeof rowKey === \"function\" ? rowKey(prevRecord) : prevRecord[rowKey];\n return (currentMoveColumnIndexRef.current === null || currentMoveColumnIndexRef.current === index || column.type === \"hideInfo\" || !(itemKey === prevItemKey && isEqual(record[column.name], prevRecord[column.name])));\n },\n title: (<>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) && resizeBarRender(Object.assign({}, targetColumn, {width: realWidth}), index)}\n </>),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (currentMoveColumnIndexRef.current === null || currentMoveColumnRef.current === null) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.removeEventListener(\"mousemove\", handlerResize, true);\n };\n }, [resize]);\n\n return {\n visibleColumns, currentMoveColumnIndex, resizeBarRender, columnsConfig: config, totalWidth, computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import {useRef, useState} from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({rowKey, renderProps}) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback((col, index, {columnsConfig}) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const {\n render, width, min, max\n } = Object.assign({}, columnTypes[type] || columnTypes['other'], type === \"hideInfo\" && !isNil(expandInfo) && pick(columnTypes[expandType] || columnTypes['other'], [\"width\", \"min\", \"max\"]));\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign({}, col, typeof col.render === \"function\" ? col.render({\n ...columnRenderPropsRef.current, name, target: item,\n }) : {});\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue = colProps.hasOwnProperty(\"valueOf\") && typeof colProps.valueOf === \"function\" ? colProps.valueOf(item, Object.assign({}, columnRenderPropsRef.current, {\n name,\n }, disableColItem ? {targetRender: targetRenderWithProps} : {})) : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n });\n\n return {\n expandInfo, computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import {useState} from 'react';\nimport uniq from \"lodash/uniq\";\n\nconst useSelectedRow = (options) => {\n const {rowKey} = Object.assign({}, {rowKey: 'id'}, options);\n const [selectedRowKeys, setSelectedRowKeys] = useState([]);\n\n const getRowId = (item) => typeof rowKey === 'function' ? rowKey(item) : item[rowKey];\n\n return {\n type: 'checkbox', selectedRowKeys, onSelectAll: (type, selected, items) => {\n const ids = items.map(getRowId);\n if (type) {\n setSelectedRowKeys(value => {\n return uniq([...value, ...ids]);\n });\n } else {\n setSelectedRowKeys(value => {\n return value.filter(item => {\n return ids.indexOf(item) === -1;\n });\n });\n }\n }, onSelect: (item, type) => {\n if (type) {\n setSelectedRowKeys(value => {\n const newValue = value.slice(0);\n newValue.push(getRowId(item));\n return newValue;\n });\n } else {\n setSelectedRowKeys(value => {\n const newValue = value.slice(0);\n newValue.splice(newValue.indexOf(getRowId(item)), 1);\n return newValue;\n });\n }\n }, setSelectedRowKeys\n };\n};\n\nexport default useSelectedRow;","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 localStorage from \"@common/utils/localStorage\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\nimport {useIntl} from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst FeaturesColumnsConfig = ({id, columns, children}) => {\n if (id) {\n return (<Features id={id}>\n {({options}) => children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })}\n </Features>);\n }\n return children({columns});\n};\n\nconst TablePageInnerContent = withLocale(({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat = (data) => {\n return {\n list: data.pageData, total: data.totalCount,data\n };\n },\n className,\n featureId,\n columns,\n getColumns,\n pagination = {},\n columnRenderProps = {},\n summary,\n sticky = true,\n ...props\n }) => {\n const {formatMessage} = useIntl();\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list, pagination: pagination.open ? {\n total: formatData.total,\n showTotal: (total) => (<>\n {formatMessage({id: 'TotalText'})}&nbsp;\n <span className={style[\"total_text\"]}>{total}</span>\n &nbsp;\n {formatMessage({id: 'ItemText'})}\n </>),\n current: get(requestParams, [pagination.paramsType, pagination.currentName], 1),\n pageSize: get(requestParams, [pagination.paramsType, pagination.pageSizeName], 20),\n onChange: (page, size) => {\n (() => {\n if (typeof pagination.onChange === 'function') {\n pagination.onChange(page, size);\n return;\n }\n if (page !== get(requestParams, [pagination.paramsType, pagination.currentName], 1)) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page, [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange && pagination.onShowSizeChange(page, size);\n }\n })();\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n hideOnSinglePage: pagination.hideOnSinglePage,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n } : false,\n };\n\n return (<FeaturesColumnsConfig id={featureId} columns={typeof columns === 'function' ? columns(data) : columns}>\n {({columns}) => (<Table\n {...Object.assign({}, props, tableProps)}\n sticky={sticky}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps, requestParams, fetchProps, data,\n }}\n summary={typeof summary === \"function\" ? (...args) => {\n return summary(Object.assign({}, {\n data, fetchProps, requestParams, refresh, reload, loadMore, send, dataFormat, pagination,\n }, ...args));\n } : null}\n />)}\n </FeaturesColumnsConfig>);\n});\n\nconst TablePageInner = withFetch(TablePageInnerContent);\n\nconst TablePage = forwardRef(({pagination, ...props}, ref) => {\n pagination = Object.assign({}, {\n showSizeChanger: true,\n showQuickJumper: true,\n hideOnSinglePage: false,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\"\n }, pagination);\n const pageSizeKey = `${(props.name || \"common\").toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(localStorage.getItem(pageSizeKey) || pagination.pageSize);\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (<TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize, onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />);\n});\n\nexport default TablePage;\n","import style from \"./style.module.scss\";\nimport {Table as AntdTable} from \"antd\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport {getScrollEl as getScrollElDefault} from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport useSelectedRow from \"./useSelectedRow\";\nimport TablePage from './TablePage';\n\nconst Table = ({\n columns,\n className,\n getScrollEl = getScrollElDefault,\n sticky = false,\n stickyOffset = \"var(--nav-height)\",\n pagination = false,\n columnRenderProps = {},\n rowKey = \"id\",\n dataSource,\n controllerOpen = true,\n name,\n summary,\n scroll,\n scroller,\n onTablePropsReady,\n ...props\n }) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize((el) => {\n setTableWidth(el.clientWidth);\n }, {isDebounce: true});\n const {expandInfo, computedColumnProps} = useColumnTypeProps({\n rowKey, renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns, controllerOpen, name, computedColumnProps, tableWidth, rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey, expandInfo, columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (<>\n {target.title}\n {sortRender({\n name: col.name, single: typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth, columnsConfig,\n });\n }\n\n return target;\n });\n }, [visibleColumns, tableWidth, columnsConfig, expandInfo, rowKey, controllerOpen, computedColumnProps, computedColumnConfigProps, sortRender,]);\n\n const {columns: groupColumns, hasGroupHeader} = useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback && onTablePropsReadyCallback({\n columns, groupColumns, dataSource, visibleColumns,\n });\n }, [onTablePropsReadyCallback, groupColumns, dataSource, columns, visibleColumns,]);\n\n return (<div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (<Scroller\n className=\"table-page-scroller\"\n scroller={scroller !== void 0 ? scroller : {getContainer: getScrollEl}}\n getScrollTarget={(el) => {\n return (el.querySelector(\".ant-table-body\") || el.querySelector(\".ant-table-content\"));\n }}\n >\n <AntdTable\n {...props}\n sticky={sticky ? {\n getContainer: getScrollEl,\n } : false}\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign({}, {x: Math.max(tableWidth, totalWidth)}, scroll)}\n pagination={pagination}\n summary={typeof summary === \"function\" ? (current, ...args) => {\n return summary(Object.assign({}, {pageData: current}, {columns: groupColumns}), ...args);\n } : null}\n />\n </Scroller>)}\n </div>);\n};\n\nTable.useSelectedRow = useSelectedRow;\nTable.TablePage = TablePage;\nTable.Summary = AntdTable.Summary;\nTable.Summary.Row = AntdTable.Summary.Row;\nTable.Summary.Cell = AntdTable.Summary.Cell;\n\nexport default Table;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","degree","description","phoneState","baseLoaders","type","preset","base","transform","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","useContext","useEffect","console","log","isPass","feature","_ref2","_jsx","options","locale","en-US","zh-CN","useReactContext","Line","list","onChange","_jsxs","className","style","map","index","props","name","label","ComponentItem","_createElement","displayLine","extra","hasMore","isExpand","setIsExpand","useState","IntlProvider","importMessages","moduleName","Space","classnames","align","size","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","slice","onClick","Icon","_Fragment","filterValue","extraExpand","StateTag","filterName","text","join","closable","onClose","newValue","splice","Button","defaultValue","valueBase","useControlValue","useMemo","isNotEmpty","newFilterValue","clone","delete","values","FilterProvider","FilterOuter","others","FilterLines","FilterValueDisplay","open","active","WrappedComponent","interceptor","render","setOpen","renderChildren","otherProps","allowClear","input","arguments","valueType","onOpenChange","FilterItem","onValidate","overlayClassName","placement","state","setState","disabled","Popover","trigger","arrow","rootClassName","content","stopPropagation","gutter","placeholder","PopoverItem","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","defaultPropsOnValidate","useIntl","Compact","InputNumber","width","borderLeft","borderRight","pointerEvents","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","header","Flex","vertical","RangePicker","allowEmpty","classNames","popup","root","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","TreeField","InputFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","onSearch","CheckableTag","Tag","withAddressApi","single","maxLength","addressApi","message","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","checked","find","push","findIndex","_ref3","error","_ref4","_ref5","_ref6","getCityValue","getCity","items","custom","itemValue","isEqual","fields","ListFilterItem","propsValue","inputValue","setInputValue","setActive","searchHandler","ref","useSimulationBlur","inputValueRef","useRef","current","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","more","MoreFilterLines","advancedFields","Filter","getFilterValue","useFilter","SearchInput","Enum","colorful","url","Typography","Link","href","defaultProps","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","title","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","isMobile","Consumer","isFixed","pageMenuOpenKey","pageProps","setPageProps","drawerVisible","setDrawerVisible","pathModuleName","useLocation","pathname","split","FixedContainer","icon","Drawer","styles","body","padding","position","height","SimpleBar","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","targetProps","Result","status","subTitle","p","featureId","openFeatures","Features","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","callback","offsetHeight","resizeObserver","MutationObserver","observe","subtree","childList","disconnect","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","theme","navigation","isMobileProp","scrollLeft","setScrollLeft","_setPageProps","permissions","usePermissions","windowWidth","setWindowWidth","innerWidth","handleResize","addEventListener","removeEventListener","useIsMobile","useCallback","scrollEl","getScrollEl","handlerScroll","Navigation","path","Menu","PageTitle","helperGuideName","HelperGuide","Permissions","Page","PageHeaderInner","iconType","info","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","direction","isValidElement","ButtonGroup","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","defaultItems","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","node","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","core","newOpenKeys","defaultTitle","indexLabel","overflowedIndicator","createWithIntlProvider","defaultLocale","messages","zhCN","enUS","namespace","Layout","mobileBreakpoint","SetTitle","mapping","document","MenuReady","onReady","ready","useRefCallback","withLocale","headerLogo","rightOptions","showIndex","navigateTo","forceMobile","nav","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","autoIsMobile","setAutoIsMobile","mobileMenuVisible","setMobileMenuVisible","el","getBoundingClientRect","undefined","windowResizeRef","useResize","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","setTimeout","Dropdown","dropdownRender","selectedKeys","_ref7","_path","handleMobileMenuClick","MenuOutlined","Image","alt","src","logo","mode","_ref8","_ref9","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","moveHandler","clientX","upHandler","createPortal","hasScroller","left","innerLeft","onMouseDown","preventDefault","scroller","getScrollTarget","setScrollerProps","container","documentElement","computed","top","scrollerHeight","clientHeight","clientWidth","scrollWidth","containerRect","ResizeObserver","refResizeObserver","x","OptionsList","buttonProps","buttonList","hidden","itemClassName","moreType","cloneElement","Fetch","loader","ellipsis","Text","tooltip","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","emptyOf","TotalText","ItemText","UnnamedColumn","EditTable","RestoreDefault","VisibleInfo","HiddenInfo","Search","Cancel","Confirm","View","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","ColItem","Ellipsis","_ref15","columnTypes","date","isValid","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","serialNumberShort","user","userName","contacts","tag","_ref0","isEnum","force","_ref1","avatar","_ref10","Avatar","singleRow","_ref11","hideInfo","HideInfoComponent","mainInfo","_ref12","_ref13","_ref14","sensitiveInfo","_ref16","otherSmall","otherLarge","Panel","Collapse","onConfirm","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","LoadingButton","async","defaultActiveKey","ghost","bordered","List","Item","Checkbox","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","prefix","dataSource","renderItem","storageKey","getDataApi","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","selectedRowKeys","setSelectedRowKeys","getRowId","onSelectAll","selected","ids","uniq","onSelect","FeaturesColumnsConfig","TablePageInnerContent","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","pageData","total","totalCount","getColumns","pagination","columnRenderProps","summary","sticky","handlerDataFormat","formatData","tableProps","showTotal","paramsType","currentName","pageSize","pageSizeName","requestType","onShowSizeChange","scrollTop","hideOnSinglePage","showSizeChanger","showQuickJumper","pageSizeOptions","_len","args","_key","TablePageInner","withFetch","pageSizeKey","toUpperCase","setPageSize","params","fetchParams","getScrollElDefault","stickyOffset","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","querySelector","AntdTable","useSelectedRow","TablePage","Summary","Cell"],"sourceRoot":""}
1
+ {"version":3,"file":"static/js/9666.51562fa6.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/FilterProvider.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/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/zh-CN.js","components/Navigation/locale/en-US.js","components/Navigation/withLocale.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/StateTag.js","components/StateTag/StateTagEnum.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/locale/zh-CN.js","components/Table/locale/en-US.js","components/Table/withLocale.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/useSelectedRow.js","components/Table/TablePage.js","components/Table/Table.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 degree = [{\n description: \"初中\", value: 10,\n}, {\n description: \"中专\", value: 20,\n}, {\n description: \"高中\", value: 30,\n}, {\n description: \"大专\", value: 40,\n}, {\n description: \"本科\", value: 50,\n}, {\n description: \"硕士研究生\", value: 60,\n}, {\n description: \"博士研究生\", value: 70,\n}, {\n description: \"博士后\", value: 75,\n}, {\n description: \"学历不限\", value: 999,\n}];\n\nconst phoneState = [{\n value: 0, description: \"空号\",\n}, {\n value: 1, description: \"实号\",\n}, {\n value: 2, description: \"停机\",\n}, {\n value: 3, description: \"库无\",\n}, {\n value: 4, description: \"沉默号\",\n}, {\n value: 5, description: \"风险号\",\n}];\n\nconst openStatus = [{value: 'open', description: '开启', type: 'success',}, {\n value: 'closed', description: '关闭', type: 'danger'\n}];\n\nconst baseLoaders = [['openStatus', openStatus], ['commonStatus', () => [{\n value: 'open', description: '开启', type: 'success',\n}, {\n value: 'close', description: '关闭', type: 'danger'\n}]], [\"gender\", () => [{value: \"M\", description: \"男\"}, {\n value: \"F\", description: \"女\",\n},],], [\"marital\", () => [{description: \"已婚\", value: \"Y\"}, {\n description: \"未婚\", value: \"N\",\n},],], [\"confirm\", () => [{description: \"是\", value: \"Y\"}, {\n description: \"否\", value: \"N\",\n},],], [\"political\", () => [{description: \"中共党员\", value: \"中共党员\"}, {\n description: \"共青团员\", value: \"共青团员\",\n}, {description: \"群众\", value: \"群众\"}, {\n description: \"其他党派\", value: \"其他党派\",\n},],], [\"phoneStateEnum\", phoneState], [\"phoneState\", phoneState], [\"degreeEnum\", degree], [\"degree\", degree]];\n\npreset({\n base: transform(baseLoaders, (result, value) => {\n result[value[0]] = value[1];\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__urHvB\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__urHvB\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__urHvB\",\"filter-title\":\"style_filter-title__PlIpS__urHvB\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__urHvB\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__urHvB\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__urHvB\",\"filter-line\":\"style_filter-line__E+cRh__urHvB\",\"clean-btn\":\"style_clean-btn__oSEvm__urHvB\",\"filter-item\":\"style_filter-item__Q2ncE__urHvB\",\"un-expand\":\"style_un-expand__4PFY8__urHvB\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__urHvB\",\"filter-label\":\"style_filter-label__qu26i__urHvB\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__urHvB\",\"option\":\"style_option__rd5Qo__urHvB\",\"is-active\":\"style_is-active__OArQI__urHvB\",\"is-visited\":\"style_is-visited__gZ5ni__urHvB\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__urHvB\",\"filter-item-label\":\"style_filter-item-label__C781J__urHvB\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__urHvB\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__urHvB\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__urHvB\",\"filter-tag\":\"style_filter-tag__dUGfu__urHvB\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__urHvB\",\"pop-util-content\":\"style_pop-util-content__bx5zP__urHvB\",\"date-range-picker-popup\":\"style_date-range-picker-popup__vsjGw__urHvB\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__urHvB\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__urHvB\",\"pop-util-text\":\"style_pop-util-text__pzeUy__urHvB\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__urHvB\",\"filter-item-text\":\"style_filter-item-text__MA8tU__urHvB\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__urHvB\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__urHvB\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__urHvB\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__urHvB\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__urHvB\",\"range-picker\":\"style_range-picker__c6ngq__urHvB\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__urHvB\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__urHvB\",\"filter-advanced\":\"style_filter-advanced__4cyDy__urHvB\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__urHvB\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__urHvB\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__urHvB\"};","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport {useState} from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport {Col, Row, Space} from \"antd\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport {useContext} from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({list, children}) => {\n const {value, onChange} = useContext();\n return (<div className={style[\"filter-line\"]}>\n {list.filter((item) => !!item.type).map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value ? get(value.get(props?.name), \"value\") : props?.value,\n onChange: onChange ? (value) => onChange({\n name: props?.name, label: props?.label, value,\n }) : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (<ComponentItem\n {...Object.assign({}, item.props, {\n value: value ? get(value.get(item.props.name), \"value\") : item.props.value,\n onChange: onChange ? (value) => onChange({\n name: item.props.name, label: item.props.label, value,\n }) : item.props.onChange,\n })}\n key={item.key || item.props.name || index}\n />);\n })}\n {children}\n </div>);\n};\n\nconst FilterLines = ({\n className, list = [], displayLine = 1, label, extra, children,\n }) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n return (<IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title\", className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {list && list.length > 0 && (label || <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />)}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (<Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (<Space\n size={4}\n className={classnames(style[\"filter-item\"], style[\"option\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>) : null}\n </Line>))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (<Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (<>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(style[\"option\"], style[\"filter-item\"])}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(style[\"option\"], style[\"filter-item\"])}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>)}\n </Line>))}\n </div>\n </Space>\n </IntlProvider>);\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import {Provider} from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport {useMemo} from \"react\";\nimport {isNotEmpty} from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport {IntlProvider} from \"@components/Intl\";\n\nconst FilterOuter = ({children, className, defaultValue = [], ...props}) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n {typeof children === 'function' ? children({props, value, onChange}) : children}\n </Provider>\n </IntlProvider>\n );\n};\n\nexport default FilterOuter;\n","import classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport FilterProvider from './FilterProvider';\n\nconst FilterOuter = ({children, className, ...props}) => {\n return <FilterProvider {...props}>\n {(context) => <div className={classnames(style[\"filter\"], \"filter\", className)}>\n {children(context)}\n </div>}\n </FilterProvider>\n\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = ({defaultValue=[],...props}) => {\n return (\n <FilterOuter {...props} defaultValue={defaultValue}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import {useState} from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem = (WrappedComponent) => ({value, onChange, interceptor, label, render, ...props}) => {\n const [open, setOpen] = useState(false);\n const renderChildren = (otherProps) => <WrappedComponent\n allowClear={false}\n {...Object.assign({}, props, otherProps)}\n className={style[\"filter-item-inner\"]}\n value={typeof interceptor?.input === \"function\" ? interceptor.input(value) : value}\n onChange={typeof interceptor?.output === \"function\" ? (...args) => onChange(interceptor.output(...args)) : onChange}\n valueType=\"all\"\n onOpenChange={setOpen}\n />;\n return (<FilterItem label={label} open={open} active={isNotEmpty(value)}>\n {typeof render === \"function\" ? render({\n children: renderChildren\n }) : renderChildren()}\n </FilterItem>);\n};\n\nexport default withFieldItem;\n","import {useState, useMemo} from \"react\";\nimport {Button, Col, Popover, Row} from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport {FormattedMessage} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement = 'bottomLeft',\n onOpenChange,\n onChange,\n children,\n }) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (<Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n arrow={false}\n rootClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={<span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({value: state, onChange: setState})}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>}\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label}/>\n </span>\n </Popover>);\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport {Input, InputNumber, Space} from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport {useIntl} from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({id: \"over\"}, {count: range[0], unit});\n }\n if (isNumber(range[1])) {\n return formatMessage({id: \"lessThan\"}, {count: range[1], unit});\n }\n })(range), value: [range[0] || null, range[1] || null],\n };\n};\n\nconst defaultPropsOnValidate = (value) => {\n const range = get(value, \"value\");\n return !(range && isNumber(range[0]) && isNumber(range[1]) && range[1] < range[0]);\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate = defaultPropsOnValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n }) => {\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n return (<PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{onValidate, overlayClassName, placement, onOpenChange}}\n >\n {({value, onChange}) => (<Space.Compact>\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([target, get(value, \"value[1]\")], unit, formatMessage));\n }}\n />\n <Input\n style={{\n width: 30, borderLeft: 0, borderRight: 0, pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={placeholder || `${formatMessage({id: \"pleaseInput\"})}${label}`}\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(computedFilterValue([get(value, \"value[0]\"), target], unit, formatMessage));\n }}\n />\n {unit && (<Input\n style={{\n width: 50, borderLeft: 0,\n }}\n value={unit}\n disabled\n />)}\n </Space.Compact>)}\n </PopoverItem>);\n};\n\nexport default InputFilterItem;\n","import {DatePicker} from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(({value, onChange, picker = \"date\", ...props}) => {\n return (<DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const {format} = Object.assign({format: \"YYYY-MM-DD\"}, props);\n value && onChange({\n label: picker !== \"date\" ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}` : value.format(format), value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />);\n});\n\nexport default DatePickerFilterItem;\n","import {DatePicker, Flex} from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\nimport style from \"../style.module.scss\";\n\nconst DateRangePickerFilterItem = withFieldItem(({value, onChange, header, ...props}) => {\n return (<Flex vertical>\n {typeof header === \"function\" ? header({value, onChange}) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n classNames={{\n popup: {\n root: style[\"date-range-picker-popup\"]\n }\n }}\n value={value && Array.isArray(value.value) && value.value.length === 2 && value.value.map((item) => dayjs(item))}\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\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, 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 = (WrappedComponent) => ({placeholder, label, ...props}) => (<FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{label}}\n>\n {(text) => {\n return (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />);\n }}\n</FormattedMessage>);\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(SuperSelectTableListField);\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 = withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(NumberRangeFilterItemField);\n\nexport {default as DatePickerFilterItem} from \"./DatePickerFilterItem\";\nexport {default as DateRangePickerFilterItem} from \"./DateRangePickerFilterItem\";\nexport {default as TypeDateRangePickerFilterItem} from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import {SearchInput as SearchInputField} from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\nimport {useIntl} from \"@components/Intl\";\n\nconst SearchInput = withFilterValue(({label, onChange, value, placeholder, ...props}) => {\n const {formatMessage} = useIntl({moduleName: 'Filter'});\n return (\n <SearchInputField\n {...props}\n placeholder={placeholder || formatMessage({id: 'inputPlaceholder'}, {label})}\n value={value?.value || \"\"}\n onSearch={(value) => {\n onChange({label: value, value});\n }}\n />\n );\n});\n\nexport default SearchInput;\n","import {App, Tag} from \"antd\";\nimport AddressSelectField, {\n getLabelForLocal,\n withAddressApi,\n} from \"@common/components/AddressSelectField\";\nimport {FormattedMessage, useIntl} from \"@components/Intl\";\nimport {usePreset} from \"@components/Global\";\nimport {useMemo} from \"react\";\nimport style from \"../../style.module.scss\";\n\nconst {CheckableTag} = Tag;\n\nconst CityFilterItemInner = ({\n value,\n onChange,\n single = false,\n maxLength = 5,\n addressApi,\n ...props\n }) => {\n const {message} = App.useApp();\n const {locale} = usePreset();\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const {code} = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({value}) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? {value: code, label: name} : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({value: code, label: name})\n : (() => {\n const index = newValue.findIndex(\n ({value}) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n {id: \"maxSelectedCount\"},\n {count: maxLength}\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({code}) =>\n single\n ? value?.value === code\n : !!(value || []).find(({value}) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({value}) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const {city} = addressApi.getCity(value);\n return {value: city?.code, label: city?.name};\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import {Tag, App} from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport {useIntl} from \"@components/Intl\";\n\nconst {CheckableTag} = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single = false,\n maxLength = 5,\n items = [],\n custom,\n }) => {\n const {message} = App.useApp();\n const {formatMessage} = useIntl({moduleName: \"Filter\"});\n return (\n <>\n {items.map(({label, value: itemValue}) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({value}) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? {value: itemValue, label} : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({value: itemValue, label})\n : (() => {\n const index = newValue.find(({value}) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n {id: \"maxSelectedCount\"},\n {count: maxLength}\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({id: \"pleaseInput\"})}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nexport default ListFilterItem;\n","import { Input, Space, Button } from \"antd\";\nimport { useState, useEffect, useRef } from \"react\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport { useIntl } from \"@components/Intl\";\n\nconst InputFilterItem = ({ value, label, onChange, ...props }) => {\n const propsValue = value?.value;\n const [inputValue, setInputValue] = useState(propsValue || \"\");\n const [active, setActive] = useState(false);\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const searchHandler = () => {\n onChange(inputValue ? { label: inputValue, value: inputValue } : null);\n };\n const ref = useSimulationBlur(() => {\n setActive(false);\n searchHandler();\n });\n const inputValueRef = useRef(\"\");\n inputValueRef.current = inputValue;\n\n useEffect(() => {\n if (propsValue !== inputValueRef.current) {\n setInputValue(propsValue);\n }\n }, [propsValue]);\n return (\n <span ref={ref}>\n <Space.Compact>\n <Input\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n {...props}\n size=\"small\"\n value={inputValue}\n onFocus={() => {\n setActive(true);\n }}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n onPressEnter={searchHandler}\n />\n {active && (\n <Button size=\"small\" type=\"primary\" onClick={searchHandler}>\n {formatMessage({ id: \"search\" })}\n </Button>\n )}\n </Space.Compact>\n </span>\n );\n};\n\nexport default InputFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\n","import FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport {useContext as useFilter} from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\nimport FilterProvider from './FilterProvider';\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nFilter.FilterProvider = FilterProvider;\nexport default Filter;\nexport {fields, getFilterValue, useFilter, withFilterValue, SearchInput, FilterProvider};\nexport {default as AdvancedFilter, advancedFields} from \"./AdvancedFilter\";\nexport {default as FilterValueDisplay} from \"./FilterValueDisplay\";\nexport {default as FilterItem} from \"./FilterItem\";\nexport {default as FilterLines} from \"./FilterLines\";\nexport {default as PopoverItem} from \"./PopoverItem\";\nexport {default as withFieldItem} from \"./withFieldItem\";\nexport {default as FilterItemContainer} from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__urHvB\",\"inner\":\"style_inner__bMKeU__urHvB\",\"content\":\"style_content__xTfWZ__urHvB\",\"link\":\"style_link__93j7O__urHvB\"};","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\"]} size={4}>\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 isMobile: false,\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__urHvB\",\"page-content\":\"style_page-content__4XeN8__urHvB\",\"page-main\":\"style_page-main__P0yEF__urHvB\",\"page-main-content\":\"style_page-main-content__1OVPN__urHvB\",\"table-page\":\"style_table-page__JkbLf__urHvB\",\"helper-guide\":\"style_helper-guide__vzw4z__urHvB\",\"page-outer\":\"style_page-outer__2a6iH__urHvB\",\"no-margin\":\"style_no-margin__S6caT__urHvB\",\"page-menu\":\"style_page-menu__CZSa9__urHvB\",\"closed\":\"style_closed__hmnft__urHvB\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__urHvB\",\"page-menu-main\":\"style_page-menu-main__OXg2M__urHvB\",\"page-option-main\":\"style_page-option-main__LyfT3__urHvB\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__urHvB\",\"page-option\":\"style_page-option__diS2S__urHvB\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__urHvB\",\"page-option-footer\":\"style_page-option-footer__d7xE0__urHvB\",\"fixed-container\":\"style_fixed-container__1VZwY__urHvB\",\"is-fixed\":\"style_is-fixed__1aQhp__urHvB\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__urHvB\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__urHvB\",\"page-title\":\"style_page-title__zw-Fd__urHvB\",\"page-title-text\":\"style_page-title-text__Rj4RC__urHvB\",\"no-padding\":\"style_no-padding__V7Dwy__urHvB\",\"page-header\":\"style_page-header__a813p__urHvB\",\"page-header-info\":\"style_page-header-info__cMrZR__urHvB\",\"layout-menu\":\"style_layout-menu__yiab0__urHvB\",\"sub-menu\":\"style_sub-menu__dyqK7__urHvB\",\"no-collapsed\":\"style_no-collapsed__76h8W__urHvB\",\"has-not-children\":\"style_has-not-children__fnjRK__urHvB\",\"table-page-top\":\"style_table-page-top__bt1l9__urHvB\",\"error-component\":\"style_error-component__HvghB__urHvB\",\"state-bar-page\":\"style_state-bar-page__+aUM4__urHvB\",\"back-icon\":\"style_back-icon__79v2G__urHvB\",\"mobile-menu-drawer\":\"style_mobile-menu-drawer__rVhzO__urHvB\",\"mobile-menu-wrapper\":\"style_mobile-menu-wrapper__fPk6W__urHvB\",\"mobile-menu-content\":\"style_mobile-menu-content__fXIhZ__urHvB\",\"in-drawer\":\"style_in-drawer__FRIxz__urHvB\",\"is-mobile\":\"style_is-mobile__ghvS4__urHvB\"};","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, Drawer} 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, useState} 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 = ({isMobile}) => {\n const {pageProps, setPageProps} = useContext();\n const {menu, menuOpen, menuWidth, menuCloseWidth, menuFixed, menuCloseButton} = pageProps;\n const [drawerVisible, setDrawerVisible] = useState(false);\n\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n\n // 移动端渲染\n if (isMobile && menu) {\n return (\n <>\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\"]]: true,\n })}\n icon={<Icon type=\"icon-arrow-bold-right\"/>}\n onClick={() => setDrawerVisible(true)}\n />\n </FixedContainer>\n <Drawer\n placement=\"left\"\n open={drawerVisible}\n onClose={() => setDrawerVisible(false)}\n width={menuWidth}\n className={style[\"mobile-menu-drawer\"]}\n closable={false}\n styles={{\n body: {padding: 0, position: 'relative', height: '100vh'}\n }}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"])}\n icon={<Icon type=\"icon-arrow-bold-left\"/>}\n onClick={() => setDrawerVisible(false)}\n />\n <div className={style[\"mobile-menu-wrapper\"]}>\n <SimpleBar className={style[\"mobile-menu-content\"]}>\n {typeof menu === 'function' ? menu({open: true}) : menu}\n </SimpleBar>\n </div>\n </Drawer>\n </>\n );\n }\n\n // 桌面端渲染\n return menu ? (\n <Col\n className={classnames(style[\"page-menu\"],'core-page-menu', {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{\"--menu-width\": menuWidth, \"--menu-close-width\": menuCloseWidth}}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar\n className={style[\"page-menu-main\"]}>{typeof menu === 'function' ? menu({open: menuOpen}) : menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], 'core-page-menu-btn-outer', {\n [style[\"is-fixed\"]]: menuFixed,\n })}\n isFixed={menuFixed}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n icon={\n menuOpen ? (\n <Icon type=\"icon-arrow-bold-left\"/>\n ) : (\n <Icon type=\"icon-arrow-bold-right\"/>\n )\n }\n onClick={() => {\n setPageProps({menuOpen: !pageProps.menuOpen});\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n pageResult[pathModuleName] = !pageProps.menuOpen;\n localStorage.setItem(pageMenuOpenKey, pageResult);\n setPageProps({menuOpen: !pageProps.menuOpen});\n }}\n />\n </FixedContainer>\n ) : null}\n </Col>\n ) : null;\n};\n\nexport default Menu;\n","import {defaultProps, useContext} from \"../context\";\nimport isEqual from \"lodash/isEqual\";\nimport {useEffect, useRef} from \"react\";\nimport {Result} from \"antd\";\nimport Features from \"@components/Features\";\nimport {useMenuOpen} from \"./Menu\";\n\nconst PageInner = ({children, isPass, ...props}) => {\n const {setPageProps} = useContext();\n const propsRef = useRef(null);\n const localMenuOpen = useMenuOpen();\n const localMenuOpenRef = useRef(localMenuOpen);\n localMenuOpenRef.current = localMenuOpen;\n useEffect(() => {\n if (!isEqual(propsRef.current, props)) {\n propsRef.current = props;\n /**\n * 解决两个页面都用header时,menuButton产生的跳动问题:如果下一个页面有header,\n * headerHeight由其header组件自己更新,不再统一重置为0。\n * optionFooter同理\n * */\n const targetProps = Object.assign(\n {},\n defaultProps,\n props,\n typeof localMenuOpenRef.current === \"boolean\"\n ? {menuOpen: localMenuOpenRef.current}\n : {}\n );\n if (targetProps.header && targetProps.headerHeight === 0) {\n delete targetProps[\"headerHeight\"];\n }\n if (targetProps.optionFooter && targetProps.optionFooterHeight === 0) {\n delete targetProps[\"optionFooter\"];\n }\n setPageProps(targetProps);\n }\n }, [props, setPageProps]);\n\n if (isPass === false) {\n return <Result status=\"403\" subTitle=\"暂未开放此功能\"/>;\n }\n\n return children;\n};\n\nconst Page = (p) => {\n const {featureId, name, openFeatures, ...props} = Object.assign({}, defaultProps, p);\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({isPass}) => <PageInner {...props} key={name} isPass={isPass}/>}\n </Features>\n );\n }\n return <PageInner {...props} key={name}/>;\n};\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import {Col, Row, Flex} from \"antd\";\nimport {useNavigate} from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({title, filter, titleExtra, titleLeftExtra, backUrl}) => {\n const navigator = useNavigate();\n if (filter) {\n return (<Filter className={style[\"page-title\"]} {...filter} extra={titleExtra}/>);\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (<Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col flex={1}>\n <Flex gap={8} align=\"center\">\n {title ? (<div className={style[\"page-title-text\"]}>\n {backUrl ? (<Flex gap={8} align=\"center\">\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\"/>\n </span>\n <span>{title}</span>\n </Flex>) : (title)}\n </div>) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Flex>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>);\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import {Alert, Button, Col, Layout as AntdLayout, Row} from \"antd\";\nimport {useCallback, useEffect, useState, useMemo} 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 useIsMobile = (isMobileProp) => {\n const [windowWidth, setWindowWidth] = useState(window.innerWidth);\n \n useEffect(() => {\n const handleResize = () => setWindowWidth(window.innerWidth);\n window.addEventListener('resize', handleResize);\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n \n return useMemo(() => {\n if (typeof isMobileProp === 'boolean') {\n return isMobileProp;\n }\n return windowWidth < 768;\n }, [isMobileProp, windowWidth]);\n};\n\nconst {Content} = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent}/>;\n};\n\nconst Layout = ({className, children, theme, navigation = {}, isMobile: isMobileProp}) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const {permissions} = usePermissions();\n const isMobile = useIsMobile(isMobileProp);\n \n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n return (\n <AntdLayout\n className={classnames(style[\"layout\"], className, 'core-layout', {\n [style[\"is-mobile\"]]: isMobile\n })}\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, isMobile}}>\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 isMobile={isMobile}/>\n </ErrorBoundary>\n <Col className={classnames(style[\"page-content\"], 'core-page-content', {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })} flex={1} style={{\"--background-color\": pageProps.backgroundColor}}>\n <div className={classnames(style[\"page-main\"], 'core-page-main')}>\n <ErrorBoundary>\n <PageTitle\n title={pageProps.title}\n backUrl={pageProps.backUrl}\n filter={pageProps.filter}\n titleExtra={pageProps.titleExtra}\n titleLeftExtra={pageProps.titleLeftExtra}\n />\n </ErrorBoundary>\n <div\n className={classnames(style[\"page-main-content\"], 'core-page-main-content', {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={classnames(style[\"helper-guide-page\"], 'core-helper-guide-page')}\n name={pageProps.helperGuideName}\n />\n )}\n {children}\n </ErrorBoundary>\n </div>\n </div>\n </Col>\n <ErrorBoundary>\n <Option/>\n </ErrorBoundary>\n </Row>\n </ErrorBoundary>\n </Provider>\n </Content>\n </ErrorBoundary>\n </AntdLayout>\n );\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"page-header\":\"style_page-header__l3LiS__urHvB\",\"main\":\"style_main__X1Ynh__urHvB\",\"icon-outer\":\"style_icon-outer__6F97H__urHvB\",\"title\":\"style_title__dNWQj__urHvB\",\"info\":\"style_info__yF-4c__urHvB\",\"overlay\":\"style_overlay__SWqqE__urHvB\",\"tags\":\"style_tags__5+zDU__urHvB\",\"tag-split\":\"style_tag-split__V6SqP__urHvB\",\"button-options\":\"style_button-options__f1-gI__urHvB\"};","import {Space, Row, Col} from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\nimport {isValidElement} from 'react';\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport {IntlProvider} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nexport const PageHeaderInner = ({\n className,\n title,\n icon,\n iconType,\n info,\n tags,\n tagSplit = <span className={style[\"tag-split\"]}>|</span>,\n tagClassName = \"\",\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n children\n }) => {\n return (<Row\n className={classnames(className, style[\"page-header\"])}\n wrap={false}\n gutter={10}\n >\n {addonBefore && <Col>{addonBefore}</Col>}\n <Col flex={1}>\n <Space direction=\"vertical\">\n <Row wrap={false}>\n <Col flex={1} className={style[\"main\"]}>\n <Space align=\"start\">\n {icon && <div className={style[\"icon-outer\"]}>{icon}</div>}\n {!icon && iconType && (<div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24}/>\n </div>)}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (<Col\n flex={1}\n className={style[\"button-options\"]}\n style={{\"--max-width\": buttonOptionsMaxWidth}}\n >\n {isValidElement(buttonOptions) && buttonOptions}\n {typeof buttonOptions === \"object\" && Array.isArray(buttonOptions?.list) &&\n <ButtonGroup {...buttonOptions} />}\n </Col>)}\n </Row>\n {tags && (<Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (<div key={index} className={style[\"tags\"]}>\n {item}\n </div>);\n })}\n </Space>)}\n {children}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>);\n};\n\nconst PageHeader = (props) => {\n return (<IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>);\n};\n\nexport default PageHeader;\n","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__urHvB\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__urHvB\",\"no-start-icon\":\"style_no-start-icon__LnC1S__urHvB\",\"has-children\":\"style_has-children__m9tce__urHvB\",\"has-children-node\":\"style_has-children-node__2bhEB__urHvB\",\"is-root\":\"style_is-root__4hhOc__urHvB\",\"title\":\"style_title__+Hcar__urHvB\",\"active\":\"style_active__WU49K__urHvB\",\"no-collapse\":\"style_no-collapse__aIZBM__urHvB\",\"title-content\":\"style_title-content__cQXpK__urHvB\",\"loading\":\"style_loading__1pU4P__urHvB\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport {Spin} from \"antd\";\nimport {useLocation, useNavigate} from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport {useCallback, useEffect, useMemo} from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport {useFetch} from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {}, nodeMapping = [];\n const traversal = (children, options) => {\n const {parentKey, depth} = Object.assign({\n parentKey: \"root\", depth: 0, paths: [],\n }, options);\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${item.key || `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`}`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey, depth: depth + 1,\n });\n childrenKeys[currentKey] && childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey, parentKey, depth, children: children, originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return {items: traversal(items), childrenKeys, nodeMapping};\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n icon,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren = (Array.isArray(children) && children.length > 0) || fetchOptions;\n const {refresh, isLoading} = useFetch(Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions, onRequestSuccess: (data) => {\n onLoad(data);\n },\n }));\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (<div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\"/>\n </div>);\n }\n };\n return (<Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType && !icon,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && !icon && <Icon type={iconType}/>}\n {icon || null}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (<Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />)}\n </div>\n {renderChildren()}\n </div>\n </Permissions>);\n};\n\nconst Menu = ({className, allowCollapsed = true, pathMatch, defaultItems = [], ...props}) => {\n const {pathname, search} = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\", defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue({defaultItems, ...props}, {\n defaultValue: \"defaultItems\", value: \"items\", onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems, defaultOpenKeys, links, childrenKeys, hasStartIcon, hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems, childrenKeys, nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false, hasChildren = false;\n const links = [], defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType || node.icon) {\n hasStartIcon = true;\n }\n node.path && links.push({path: node.path, key});\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys, links, items: targetItems, childrenKeys, hasStartIcon, hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({path}) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, {pathname, search});\n }\n return (ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) || ensureSlash(pathname + search) === ensureSlash(path));\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }), {\n value: \"openKeys\", defaultValue: \"defaultOpenKeys\", onChange: \"onOpenChange\",\n });\n\n const renderChildren = useCallback((children, options) => {\n const {parentKey, depth, selectedKey, openKeys, paths} = Object.assign({\n parentKey: null, depth: 0, paths: [],\n }, options);\n if (Array.isArray(children) && children.length > 0) {\n return children.map(({children, key: currentKey, originItem, ...item}) => {\n return (<MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={currentKey === selectedKey || (childrenKeys[currentKey] && childrenKeys[currentKey].indexOf(selectedKey) > -1)}\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children: originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey, depth: depth + 1, selectedKey, openKeys, paths: [...paths, currentKey],\n })}\n </MenuItem>);\n });\n }\n return null;\n }, [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]);\n\n return (<div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon, [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, {selectedKey, openKeys})}\n </div>);\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1679367216639,\n className: \"icon\",\n viewBox: \"0 0 1030 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 1696,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 201.171875,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.479711 385.587015v293.958522l258.791705 146.528403 258.791704-146.528403V385.587015l-251.127142-145.62669L252.479711 385.587015z\",\n fill: \"#FFFFFF\",\n opacity: 0.1,\n \"p-id\": 1697\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M778.629396 405.875564A20.739405 20.739405 0 0 1 766.456267 405.875564l-39.675383-21.641119a22.091975 22.091975 0 0 1 21.190261-39.224526l39.675383 21.190261a22.542831 22.542831 0 0 1-10.820559 42.380523z m-518.485122-6.76285a22.542831 22.542831 0 0 1-19.837691-12.173129 22.091975 22.091975 0 0 1 9.918845-30.207394l40.12624-20.739405a22.993688 22.993688 0 0 1 30.207394 9.918846 22.542831 22.542831 0 0 1-9.918846 30.207394L270.513977 396.858431a20.739405 20.739405 0 0 1-10.369703 2.254283z m399.909829-57.258792a22.542831 22.542831 0 0 1-10.820559-2.705139l-39.675383-21.190262a22.993688 22.993688 0 0 1-9.017133-30.65825 22.091975 22.091975 0 0 1 30.207394-9.017133l39.675383 21.190261a22.542831 22.542831 0 0 1-10.369702 42.380523z m-279.531109-4.057709a22.542831 22.542831 0 0 1-9.918846-45.085663l40.12624-20.288548a22.542831 22.542831 0 0 1 30.207394 9.467989 22.993688 22.993688 0 0 1-9.918846 33.814247l-40.12624 20.288548a20.739405 20.739405 0 0 1-10.369702 1.803427zM541.027953 277.381425a19.386835 19.386835 0 0 1-10.820559-2.70514L519.837692 270.618575l-8.566276 4.508567a22.542831 22.542831 0 0 1-20.288549-40.577097l18.935979-9.017132a23.895401 23.895401 0 0 1 20.739405 0l21.190261 11.722272a22.091975 22.091975 0 0 1 9.017133 30.207394 22.091975 22.091975 0 0 1-19.837692 9.918846z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1698\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1002.70514 289.554554a24.346258 24.346258 0 0 1-9.918846 0L513.074842 47.895401 33.814247 287.300271a22.542831 22.542831 0 0 1-30.207394-10.369703 22.993688 22.993688 0 0 1 9.918846-30.207394L503.155996 2.358882a22.993688 22.993688 0 0 1 20.288549 0l489.179441 244.364292a22.542831 22.542831 0 0 1-9.918846 45.085663z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1699\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.085663 762.052299a22.542831 22.542831 0 0 1-9.918846-40.577096l81.154193-39.675383A22.542831 22.542831 0 0 1 135.256988 721.475203l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.017132 0.901713z m889.540126-14.427412a24.346258 24.346258 0 0 1-9.918846 0l-80.703336-40.577096a22.542831 22.542831 0 0 1-10.369703-30.207394 22.091975 22.091975 0 0 1 30.207394-9.918846l80.703337 40.12624a22.542831 22.542831 0 0 1-9.918846 42.831379zM206.943192 683.15239a23.444545 23.444545 0 0 1-20.288548-12.623986 22.993688 22.993688 0 0 1 10.369702-30.207394l81.154193-39.675383a22.993688 22.993688 0 0 1 30.207394 10.369702 22.542831 22.542831 0 0 1-10.369702 30.207394l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.918846 2.254284z m566.275924-16.230839a26.600541 26.600541 0 0 1-9.918845 0l-80.703337-40.577097a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918845l80.703337 40.126239a22.993688 22.993688 0 0 1 9.918846 30.207395 22.542831 22.542831 0 0 1-20.288549 10.369702z m-405.770965-62.669071a22.091975 22.091975 0 0 1-20.288548-12.623986 22.542831 22.542831 0 0 1 13.525699-30.207394l81.154193-39.224527a22.542831 22.542831 0 0 1 30.207394 10.369703 22.091975 22.091975 0 0 1-10.369702 29.756537l-81.154193 39.675384a26.600541 26.600541 0 0 1-11.271416 2.254283z m242.560866-18.034265a19.837692 19.837692 0 0 1-9.918846-2.254284l-80.703336-40.577096a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918846l80.703337 40.12624a23.444545 23.444545 0 0 1 9.918845 30.658251 22.542831 22.542831 0 0 1-18.485121 12.173129z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1700\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.173129 1024a24.346258 24.346258 0 0 1-9.918846-2.254283L12.623986 783.242561a22.993688 22.993688 0 0 1-12.623986-20.288548V273.774572a23.444545 23.444545 0 0 1 10.820559-19.386835 21.641118 21.641118 0 0 1 21.641118 0l479.711452 238.954012L991.884581 253.486023a21.641118 21.641118 0 0 1 21.641118 0 23.444545 23.444545 0 0 1 10.820559 19.386835v490.081155a22.993688 22.993688 0 0 1-12.623986 20.288548l-490.081154 238.503156a22.542831 22.542831 0 0 1-9.467989 2.254283zM45.085663 748.526601l467.087466 225.428313 467.087466-225.428313V310.293959l-454.914337 225.428313a22.542831 22.542831 0 0 1-22.091975 0L45.085663 310.293959z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1701\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M511.722272 1020.393147a22.542831 22.542831 0 0 1-22.542831-22.542831V526.254283a22.542831 22.542831 0 0 1 45.085663 0v471.596033a22.542831 22.542831 0 0 1-22.542832 22.542831z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1702\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.623986 841.853922a18.935978 18.935978 0 0 1-9.918846-2.254283l-266.005411-128.043282a22.091975 22.091975 0 0 1-11.271415-20.288548V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832V676.38954l243.913435 117.222723 243.462579-117.222723V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832v307.48422a22.542831 22.542831 0 0 1-12.623986 20.288548l-266.00541 128.043282a19.837692 19.837692 0 0 1-11.722272 2.254283z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1703\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgFavicon);\nexport default __webpack_public_path__ + \"static/media/favicon.477a5bb996fd5b367fe0dddc29f67824.svg\";\nexport { ForwardRef as ReactComponent };","const message = {\n defaultTitle: \"KneUnion\", indexLabel: \"首页\", overflowedIndicator: \"更多\"\n};\n\nexport default message;","const message = {\n defaultTitle: \"KneUnion\", indexLabel: \"Home\", overflowedIndicator: \"More\"\n};\n\nexport default message;","import {createWithIntlProvider} from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN', messages: {\n 'zh-CN': zhCN, 'en-US': enUS\n }, namespace: 'Navigation'\n});\n\nexport default withLocale;\n","// extracted by mini-css-extract-plugin\nexport default {\"navigation-wrap\":\"style_navigation-wrap__VF8x2__urHvB\",\"navigation\":\"style_navigation__60RrS__urHvB\",\"logo\":\"style_logo__lB9RC__urHvB\",\"is-fixed\":\"style_is-fixed__kHFWj__urHvB\",\"navigation-logo\":\"style_navigation-logo__q9qHu__urHvB\",\"navigation-list\":\"style_navigation-list__EYtkg__urHvB\",\"navigation-options\":\"style_navigation-options__0BdJU__urHvB\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__urHvB\",\"more-icon\":\"style_more-icon__gNMnt__urHvB\",\"is-mobile\":\"style_is-mobile__vEvyK__urHvB\",\"navigation-mobile-menu\":\"style_navigation-mobile-menu__aVFBD__urHvB\",\"navigation-mobile-title\":\"style_navigation-mobile-title__Zm6bU__urHvB\",\"mobile-menu-trigger\":\"style_mobile-menu-trigger__xStQw__urHvB\",\"mobile-dropdown-content\":\"style_mobile-dropdown-content__QqoTK__urHvB\",\"mobile-dropdown-header\":\"style_mobile-dropdown-header__+J+zD__urHvB\",\"dropdown-title\":\"style_dropdown-title__CK7t4__urHvB\",\"mobile-dropdown-options\":\"style_mobile-dropdown-options__KiM0z__urHvB\"};","import {Col, Layout, Menu, Row, Space, Flex, Dropdown} from \"antd\";\nimport {MenuOutlined} from \"@ant-design/icons\";\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 withLocale from './withLocale';\nimport {useIntl} from \"@kne/react-intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport useResize from \"@kne/use-resize\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst {Header} = Layout;\n\nexport const navigationHeight = 48;\nexport const mobileBreakpoint = 768;\n\nconst SetTitle = ({name, mapping, defaultTitle}) => {\n const propsRef = useRef({\n mapping, defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({onReady}) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = withLocale(({\n permissions = [],\n list = [],\n headerLogo,\n rightOptions,\n isFixed = true,\n showIndex = true,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base = '',\n onChange,\n className,\n navigateTo,\n isMobile: forceMobile,\n }) => {\n const {formatMessage} = useIntl();\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 [autoIsMobile, setAutoIsMobile] = useState(false);\n const [mobileMenuVisible, setMobileMenuVisible] = useState(false);\n const callback = (el) => {\n const width = el ? el.getBoundingClientRect().width : window.innerWidth;\n if (forceMobile === undefined) {\n setAutoIsMobile(width < mobileBreakpoint);\n if (!autoIsMobile && width < mobileBreakpoint) {\n setMobileMenuVisible(false);\n }\n }\n }\n const windowResizeRef = useResize(callback);\n useEffect(() => {\n callback(windowResizeRef.current);\n }, []);\n const pathModuleName = location.pathname\n .replace(new RegExp(`^${base}`), \"\")\n .split(\"/\")[1];\n const name = pathModuleName ? get(Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }), \"[0]\") : \"home\";\n\n // 是否为移动端(优先使用强制指定的值,否则使用自动检测的值)\n const isMobile = forceMobile !== undefined ? forceMobile : autoIsMobile;\n\n // 处理移动端菜单项点击\n const handleMobileMenuClick = (path) => {\n setMobileMenuVisible(false);\n onChange && onChange(path);\n setTimeout(() => {\n navigate(path);\n }, 0);\n };\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom = navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel = mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true, childList: true, subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(navigationRef.current, mutationObserverInitConfig);\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex ? {\n label: indexLabel || formatMessage({id: 'indexLabel'}), key: \"home\", onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n } : false;\n\n return (<>\n <SetTitle\n defaultTitle={defaultTitle || formatMessage({id: 'defaultTitle'})}\n mapping={mapping}\n name={name}\n />\n <div className={classnames(style[\"navigation-wrap\"], className, {\n [style[\"is-mobile\"]]: isMobile,\n })}>\n <div ref={windowResizeRef} className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}>\n <Header>\n <Row wrap={false}>\n {isMobile && (\n <Col className={classnames(style[\"navigation-mobile-menu\"], \"navigation-mobile-menu\")}>\n <Dropdown\n placement=\"bottomLeft\"\n trigger={['click']}\n open={mobileMenuVisible}\n onOpenChange={setMobileMenuVisible}\n dropdownRender={(menu) => (<div className={style[\"mobile-dropdown-content\"]}>\n {menu}\n {rightOptions && (<div className={style[\"mobile-dropdown-options\"]}>\n {rightOptions}\n </div>)}\n </div>)}\n menu={{\n selectedKeys: [name], items: [indexNav, ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, icon, path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return {\n label: icon ? <Flex gap={8} align=\"center\">\n {icon}\n <span>{title}</span>\n </Flex> : title,\n key: name,\n onClick: () => handleMobileMenuClick(_path),\n };\n })],\n }}\n >\n <div className={classnames(style[\"mobile-menu-trigger\"], \"mobile-menu-trigger\")}>\n <MenuOutlined/>\n </div>\n </Dropdown>\n </Col>)}\n {!isMobile && (<Col\n className={classnames(\"navigation-logo\", style[\"navigation-logo\"])}\n >\n <Image\n className={classnames(style[\"logo\"])}\n alt=\"logo\"\n {...Object.assign({}, headerLogo || {src: logo})}\n />\n </Col>)}\n {!isMobile && (<Col\n ref={navigationRef}\n flex={1}\n className={classnames(\"navigation-list\", style[\"navigation-list\"])}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={overflowedIndicator || (<Space size={4}>\n <span>\n {nameLabel || formatMessage({id: 'overflowedIndicator'})}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>)}\n items={[indexNav, ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, icon, path, permission}]) => {\n const _path = typeof path === \"function\" ? path(permission, permissions) : path;\n return {\n label: icon ? <Flex gap={8}>\n {icon}\n <span>{title}</span>\n </Flex> : title, key: name, onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),]}\n />\n </Col>)}\n {isMobile && (<Col className={style[\"navigation-mobile-title\"]}>\n {defaultTitle || formatMessage({id: 'defaultTitle'})}\n </Col>)}\n {!isMobile && <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>}\n </Row>\n </Header>\n </div>\n </div>\n </>);\n});\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__urHvB\"};","import {createElement} from \"react\";\nimport {Result, Tooltip} from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport {useGlobalContext, usePreset} from \"@components/Global\";\n\nexport const computedIsPass = ({permissions, request}) => {\n return Array.isArray(request) && request.length > 0 ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1) : true;\n};\n\nexport const usePermissions = () => {\n const {global} = useGlobalContext();\n const {permissions, permissionsPath} = usePreset();\n return {\n permissions: global.permissions || permissions || (permissionsPath && get(global, permissionsPath)) || [],\n };\n};\n\nexport const usePermissionsPass = ({request}) => {\n const {permissions} = usePermissions();\n return computedIsPass({permissions, request});\n};\n\nconst Permissions = ({\n type = 'hidden',\n className,\n tagName = 'span',\n message = '您暂无权限,请联系管理员',\n request,\n children,\n ...props\n }) => {\n const isPass = usePermissionsPass({request});\n if (typeof children === \"function\") {\n return children({isPass, type, request});\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message}/>;\n }\n\n if (type === \"tooltip\") {\n return (<Tooltip title={message}>\n {createElement(tagName, {...props, className: classnames(style[\"outer\"], className)}, children)}\n </Tooltip>);\n }\n\n return null;\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__urHvB\",\"has-children\":\"style_has-children__oQDqU__urHvB\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__urHvB\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__urHvB\",\"tab-step-control\":\"style_tab-step-control__EQaCl__urHvB\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__urHvB\"};","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__urHvB\",\"state-result-tag\":\"style_state-result-tag__CssDz__urHvB\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__urHvB\",\"event-tag\":\"style_event-tag__cg6SE__urHvB\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__urHvB\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__urHvB\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__urHvB\",\"show-bg\":\"style_show-bg__OcL+R__urHvB\",\"tag-text\":\"style_tag-text__JHCt+__urHvB\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__urHvB\"};","import React, {useMemo} from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport {Space, Tag} from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\", borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder = false,\n text = \"\",\n type = \"default\",\n showBackground = true,\n className,\n filterName,\n ...props\n }) => {\n const tagColor = useMemo(() => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }), [type]);\n\n return (<Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(style[\"state-tag-wrapper\"], type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\")}\n align=\"center\"\n size={4}\n >\n {filterName ? (<span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(style[\"state-tag\"], className, type === \"result\" ? style[\"state-result-tag\"] : \"\", type === \"skill\" ? style[\"state-skill-tag\"] : \"\", style[`state-tag-${type}`], showBackground ? style[\"show-bg\"] : \"\", showBorder ? style[\"show-border\"] : \"\", props?.onClick ? style[\"event-tag\"] : \"\")}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>);\n};\n\nexport default StateTag;\n","import Enum from \"@components/Enum\";\nimport StateTag from \"./StateTag\";\n\nconst StateTagEnum = ({moduleName, name, ...props}) => {\n return (\n <Enum moduleName={moduleName} name={name}>\n {data => <StateTag {...props} text={data.description} {...data} />}\n </Enum>\n );\n};\n\nexport default StateTagEnum;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__urHvB\",\"is-resize\":\"style_is-resize__ut6RW__urHvB\",\"is-moving\":\"style_is-moving__BJ9wR__urHvB\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__urHvB\",\"is-computed\":\"style_is-computed__B9rIF__urHvB\",\"options-column\":\"style_options-column__vsPTr__urHvB\",\"options-btn\":\"style_options-btn__U3uoy__urHvB\",\"tooltip\":\"style_tooltip__vJlkv__urHvB\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__urHvB\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__urHvB\",\"columns-control\":\"style_columns-control__5-5ZF__urHvB\",\"columns-control-content\":\"style_columns-control-content__MoeUI__urHvB\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__urHvB\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__urHvB\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__urHvB\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__urHvB\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__urHvB\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__urHvB\",\"is-drag\":\"style_is-drag__U68aw__urHvB\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__urHvB\",\"sortable-drag\":\"style_sortable-drag__K5hWd__urHvB\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__urHvB\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__urHvB\",\"sort-btn\":\"style_sort-btn__KvNLr__urHvB\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__urHvB\",\"sort-icon\":\"style_sort-icon__dB85I__urHvB\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__urHvB\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__urHvB\",\"scroller-inner\":\"style_scroller-inner__NJSE0__urHvB\",\"is-moving\":\"style_is-moving__jGuy0__urHvB\"};","import {createPortal} from \"react-dom\";\nimport {useEffect, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport {getScrollEl} from '../../utils/importantContainer';\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({onScroll, getContainer, ...scrollerProps}) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current && onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(scrollerProps.hasScroller ? (<div\n className={classnames(style[\"scroller\"], 'scroller-bar')}\n style={{\n left: scrollerProps.left, width: scrollerProps.width, height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], 'scroller-bar-inner', {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth, left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>) : null, getContainer() || document.body);\n};\n\nconst Scroller = ({\n className, scroller = true, getScrollTarget = getScrollEl, children\n }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0, width: 0, innerLeft: 0, innerWidth: 0, height: 0, hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current = typeof scroller === \"object\" && typeof scroller.getContainer === \"function\" ? scroller.getContainer : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const {left, width, top, height} = scrollEl.getBoundingClientRect();\n const scrollerHeight = scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth = (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft = (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller: scrollEl.scrollWidth - scrollEl.clientWidth > 0 && (container === document.documentElement ? top + height - container.offsetHeight > 0 && top < container.offsetHeight : top < containerRect.top + containerRect.height && top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n ref.current && refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (<div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>);\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__urHvB\",\"tag\":\"columns_tag__bQZLG__urHvB\",\"avatar\":\"columns_avatar__SLPI+__urHvB\",\"hover\":\"columns_hover__oAwHg__urHvB\",\"primary\":\"columns_primary__6KtaA__urHvB\",\"loading\":\"columns_loading__gtBay__urHvB\",\"options\":\"columns_options__WvDZD__urHvB\"};","import Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport {cloneElement, isValidElement} from 'react';\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({className, list = [], children, width}) => {\n const buttonProps = {\n className: classnames(className, style[\"options-btn\"]), type: \"link\",\n };\n const buttonList = list\n .filter((item) => !item?.hidden)\n .map(({className, ...props}) => Object.assign({}, props, buttonProps));\n return (<div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n {typeof children === \"function\" ? children({\n list: buttonList, itemClassName: \"btn-no-padding\", moreType: 'link', buttonProps\n }) : isValidElement(children) ? cloneElement(children, {\n ...buttonProps, itemClassName: \"btn-no-padding\", moreType: 'link'\n }) : children}\n {list && list.length > 0 && <ButtonGroup itemClassName=\"btn-no-padding\"\n moreType=\"link\"\n list={buttonList}\n />}\n </div>);\n};\n\nconst Options = ({list, ...props}) => {\n if (typeof list === \"function\") {\n return (<Fetch\n loader={list}\n render={({data}) => {\n return <OptionsList {...props} list={data}/>;\n }}\n />);\n }\n if (Array.isArray(list)) {\n return <OptionsList {...props} list={list}/>;\n }\n return <OptionsList {...Object.assign({}, props, list)} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n rootClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import {useState} from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender = () => \"-\",\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n }) => {\n const [loading, setLoading] = useState(false);\n return (<div\n style={Object.assign({}, style, {\"--max-width\": width + \"px\"})}\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[type], isEmpty ? null : {\n [columnsStyle[\"hover\"]]: hover, [columnsStyle[\"primary\"]]: primary, [columnsStyle[\"loading\"]]: loading,\n })}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(onClick({item, colItem: colValue, event: e})).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty ? emptyRender({type, item, hover, primary, children}) : children}\n </div>);\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","const message = {\n TotalText: \"共\",\n ItemText: \"条\",\n UnnamedColumn: \"未命名列\",\n EditTable: \"编辑表格\",\n RestoreDefault: \"恢复默认\",\n VisibleInfo: \"显示的信息\",\n HiddenInfo: \"隐藏的信息\",\n Search: \"搜索\",\n Cancel: \"取消\",\n Confirm: \"确定\",\n View: \"查看\"\n};\n\nexport default message;\n","const message = {\n TotalText: \"Total\",\n ItemText: \"items\",\n UnnamedColumn: \"Unnamed\",\n EditTable: \"Edit Table\",\n RestoreDefault: \"Restore Default\",\n VisibleInfo: \"Visible Columns\",\n HiddenInfo: \"Hidden Columns\",\n Search: \"Search\",\n Cancel: \"Cancel\",\n Confirm: \"Confirm\",\n View: \"View\"\n};\n\nexport default message;\n","import {createWithIntlProvider} from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN', messages: {\n 'zh-CN': zhCN, 'en-US': enUS\n }, namespace: 'table'\n});\n\nexport default withLocale;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\nimport {useIntl} from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = withLocale(({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const {formatMessage} = useIntl();\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 {formatMessage({id: 'View'})}\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\") +\n \"~\" +\n dayjs(item?.[1]).format(\"YYYY-MM-DD\")}\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\";\nimport {useIntl} from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = withLocale(({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const {formatMessage} = useIntl();\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 || formatMessage({id: 'UnnamedColumn'})}\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>{formatMessage({id: 'EditTable'})}</Col>\n <Col>\n <Tooltip title={formatMessage({id: 'RestoreDefault'})}>\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={formatMessage({id: 'VisibleInfo'})}>\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 || formatMessage({id: 'UnnamedColumn'})}\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>{formatMessage({id: 'HiddenInfo'})}</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={formatMessage({id: 'Search'})}\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 || formatMessage({id: 'UnnamedColumn'})}\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 {formatMessage({id: 'Cancel'})}\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 {formatMessage({id: 'Confirm'})}\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n});\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import {startTransition, useEffect, useMemo, useRef, useState} from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport {Col, Popover, Row} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport {usePreset} from \"@components/Global\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({title, columns, config, setConfig}) => {\n const [open, setOpen] = useState(false);\n return (<Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n rootClassName={style[\"columns-control-overlay\"]}\n content={<ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(newConfig, (result, value, key) => {\n result[key] = Object.assign({}, config[key], pick(value, [\"visible\", \"rank\"]));\n }, {});\n });\n }}\n />}\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\"/>\n </span>\n </Popover>\n </Col>\n </Row>);\n};\n\nconst useTableConfig = ({\n columns, name, controllerOpen, tableWidth, rowKey,\n }) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const {tableServerApis: presetTableServerApis} = usePreset();\n const tableServerApis = presetTableServerApis ? presetTableServerApis : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target = typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const {send} = useFetch(Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n }));\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({force: false});\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(get(config, `${col.name}.visible`) === false || (get(config, `${col.name}.visible`) !== true && col.hidden === true));\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (get(config, `${item.name}.rank`, 0) + (item.fixed === \"left\" ? -10000 : 0) + (item.fixed === \"right\" ? 10000 : 0));\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({type}) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(visibleColumns, ({\n type, name\n }) => get(config, `${name}.width`) || (columnTypes[type] || columnTypes['other']).width);\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({width, index}) => {\n return lastNotOptionsColumnIndex === index ? width + Math.max(tableWidth - totalWidth - 2, 0) : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (<span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, {index});\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\"/>\n </span>);\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const {name, width, min, max, index} = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({width: min, index})) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const {name, width, min, max} = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\", title: (<TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(Math.max(get(config, `${name}.width`) || width, min), max);\n\n const realWidth = computedRealWidth({width: currentWidth, index});\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey = typeof rowKey === \"function\" ? rowKey(prevRecord) : prevRecord[rowKey];\n return (currentMoveColumnIndexRef.current === null || currentMoveColumnIndexRef.current === index || column.type === \"hideInfo\" || !(itemKey === prevItemKey && isEqual(record[column.name], prevRecord[column.name])));\n },\n title: (<>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) && resizeBarRender(Object.assign({}, targetColumn, {width: realWidth}), index)}\n </>),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (currentMoveColumnIndexRef.current === null || currentMoveColumnRef.current === null) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\"mouseup\", handlerCancelResize, true);\n document.documentElement.removeEventListener(\"mousemove\", handlerResize, true);\n };\n }, [resize]);\n\n return {\n visibleColumns, currentMoveColumnIndex, resizeBarRender, columnsConfig: config, totalWidth, computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import {useRef, useState} from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({rowKey, renderProps}) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback((col, index, {columnsConfig}) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const {\n render, width, min, max\n } = Object.assign({}, columnTypes[type] || columnTypes['other'], type === \"hideInfo\" && !isNil(expandInfo) && pick(columnTypes[expandType] || columnTypes['other'], [\"width\", \"min\", \"max\"]));\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey = typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign({}, col, typeof col.render === \"function\" ? col.render({\n ...columnRenderPropsRef.current, name, target: item,\n }) : {});\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue = colProps.hasOwnProperty(\"valueOf\") && typeof colProps.valueOf === \"function\" ? colProps.valueOf(item, Object.assign({}, columnRenderPropsRef.current, {\n name,\n }, disableColItem ? {targetRender: targetRenderWithProps} : {})) : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n });\n\n return {\n expandInfo, computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import {useState} from 'react';\nimport uniq from \"lodash/uniq\";\n\nconst useSelectedRow = (options) => {\n const {rowKey} = Object.assign({}, {rowKey: 'id'}, options);\n const [selectedRowKeys, setSelectedRowKeys] = useState([]);\n\n const getRowId = (item) => typeof rowKey === 'function' ? rowKey(item) : item[rowKey];\n\n return {\n type: 'checkbox', selectedRowKeys, onSelectAll: (type, selected, items) => {\n const ids = items.map(getRowId);\n if (type) {\n setSelectedRowKeys(value => {\n return uniq([...value, ...ids]);\n });\n } else {\n setSelectedRowKeys(value => {\n return value.filter(item => {\n return ids.indexOf(item) === -1;\n });\n });\n }\n }, onSelect: (item, type) => {\n if (type) {\n setSelectedRowKeys(value => {\n const newValue = value.slice(0);\n newValue.push(getRowId(item));\n return newValue;\n });\n } else {\n setSelectedRowKeys(value => {\n const newValue = value.slice(0);\n newValue.splice(newValue.indexOf(getRowId(item)), 1);\n return newValue;\n });\n }\n }, setSelectedRowKeys\n };\n};\n\nexport default useSelectedRow;","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 localStorage from \"@common/utils/localStorage\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\nimport {useIntl} from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst FeaturesColumnsConfig = ({id, columns, children}) => {\n if (id) {\n return (<Features id={id}>\n {({options}) => children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })}\n </Features>);\n }\n return children({columns});\n};\n\nconst TablePageInnerContent = withLocale(({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat = (data) => {\n return {\n list: data.pageData, total: data.totalCount,data\n };\n },\n className,\n featureId,\n columns,\n getColumns,\n pagination = {},\n columnRenderProps = {},\n summary,\n sticky = true,\n ...props\n }) => {\n const {formatMessage} = useIntl();\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list, pagination: pagination.open ? {\n total: formatData.total,\n showTotal: (total) => (<>\n {formatMessage({id: 'TotalText'})}&nbsp;\n <span className={style[\"total_text\"]}>{total}</span>\n &nbsp;\n {formatMessage({id: 'ItemText'})}\n </>),\n current: get(requestParams, [pagination.paramsType, pagination.currentName], 1),\n pageSize: get(requestParams, [pagination.paramsType, pagination.pageSizeName], 20),\n onChange: (page, size) => {\n (() => {\n if (typeof pagination.onChange === 'function') {\n pagination.onChange(page, size);\n return;\n }\n if (page !== get(requestParams, [pagination.paramsType, pagination.currentName], 1)) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page, [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange && pagination.onShowSizeChange(page, size);\n }\n })();\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n hideOnSinglePage: pagination.hideOnSinglePage,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n } : false,\n };\n\n return (<FeaturesColumnsConfig id={featureId} columns={typeof columns === 'function' ? columns(data) : columns}>\n {({columns}) => (<Table\n {...Object.assign({}, props, tableProps)}\n sticky={sticky}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps, requestParams, fetchProps, data,\n }}\n summary={typeof summary === \"function\" ? (...args) => {\n return summary(Object.assign({}, {\n data, fetchProps, requestParams, refresh, reload, loadMore, send, dataFormat, pagination,\n }, ...args));\n } : null}\n />)}\n </FeaturesColumnsConfig>);\n});\n\nconst TablePageInner = withFetch(TablePageInnerContent);\n\nconst TablePage = forwardRef(({pagination, ...props}, ref) => {\n pagination = Object.assign({}, {\n showSizeChanger: true,\n showQuickJumper: true,\n hideOnSinglePage: false,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\"\n }, pagination);\n const pageSizeKey = `${(props.name || \"common\").toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(localStorage.getItem(pageSizeKey) || pagination.pageSize);\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (<TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize, onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />);\n});\n\nexport default TablePage;\n","import style from \"./style.module.scss\";\nimport {Table as AntdTable} from \"antd\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport {getScrollEl as getScrollElDefault} from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport useSelectedRow from \"./useSelectedRow\";\nimport TablePage from './TablePage';\n\nconst Table = ({\n columns,\n className,\n getScrollEl = getScrollElDefault,\n sticky = false,\n stickyOffset = \"var(--nav-height)\",\n pagination = false,\n columnRenderProps = {},\n rowKey = \"id\",\n dataSource,\n controllerOpen = true,\n name,\n summary,\n scroll,\n scroller,\n onTablePropsReady,\n ...props\n }) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize((el) => {\n setTableWidth(el.clientWidth);\n }, {isDebounce: true});\n const {expandInfo, computedColumnProps} = useColumnTypeProps({\n rowKey, renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns, controllerOpen, name, computedColumnProps, tableWidth, rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey, expandInfo, columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (<>\n {target.title}\n {sortRender({\n name: col.name, single: typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth, columnsConfig,\n });\n }\n\n return target;\n });\n }, [visibleColumns, tableWidth, columnsConfig, expandInfo, rowKey, controllerOpen, computedColumnProps, computedColumnConfigProps, sortRender,]);\n\n const {columns: groupColumns, hasGroupHeader} = useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback && onTablePropsReadyCallback({\n columns, groupColumns, dataSource, visibleColumns,\n });\n }, [onTablePropsReadyCallback, groupColumns, dataSource, columns, visibleColumns,]);\n\n return (<div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (<Scroller\n className=\"table-page-scroller\"\n scroller={scroller !== void 0 ? scroller : {getContainer: getScrollEl}}\n getScrollTarget={(el) => {\n return (el.querySelector(\".ant-table-body\") || el.querySelector(\".ant-table-content\"));\n }}\n >\n <AntdTable\n {...props}\n sticky={sticky ? {\n getContainer: getScrollEl,\n } : false}\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign({}, {x: Math.max(tableWidth, totalWidth)}, scroll)}\n pagination={pagination}\n summary={typeof summary === \"function\" ? (current, ...args) => {\n return summary(Object.assign({}, {pageData: current}, {columns: groupColumns}), ...args);\n } : null}\n />\n </Scroller>)}\n </div>);\n};\n\nTable.useSelectedRow = useSelectedRow;\nTable.TablePage = TablePage;\nTable.Summary = AntdTable.Summary;\nTable.Summary.Row = AntdTable.Summary.Row;\nTable.Summary.Cell = AntdTable.Summary.Cell;\n\nexport default Table;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","degree","description","phoneState","baseLoaders","type","preset","base","transform","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","useContext","useEffect","console","log","isPass","feature","_ref2","_jsx","options","locale","en-US","zh-CN","useReactContext","Line","list","onChange","_jsxs","className","style","map","index","props","name","label","ComponentItem","_createElement","displayLine","extra","hasMore","isExpand","setIsExpand","useState","IntlProvider","importMessages","moduleName","Space","classnames","align","size","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","slice","onClick","Icon","_Fragment","filterValue","extraExpand","StateTag","filterName","text","join","closable","onClose","newValue","splice","Button","defaultValue","valueBase","useControlValue","useMemo","isNotEmpty","newFilterValue","clone","delete","values","FilterProvider","FilterOuter","others","FilterLines","FilterValueDisplay","open","active","WrappedComponent","interceptor","render","setOpen","renderChildren","otherProps","allowClear","input","arguments","valueType","onOpenChange","FilterItem","onValidate","overlayClassName","placement","state","setState","disabled","Popover","trigger","arrow","rootClassName","content","stopPropagation","gutter","placeholder","PopoverItem","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","defaultPropsOnValidate","useIntl","Compact","InputNumber","width","borderLeft","borderRight","pointerEvents","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","header","Flex","vertical","RangePicker","allowEmpty","classNames","popup","root","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","TreeField","InputFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","onSearch","CheckableTag","Tag","withAddressApi","single","maxLength","addressApi","message","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","checked","find","push","findIndex","_ref3","error","_ref4","_ref5","_ref6","getCityValue","getCity","items","custom","itemValue","isEqual","fields","ListFilterItem","propsValue","inputValue","setInputValue","setActive","searchHandler","ref","useSimulationBlur","inputValueRef","useRef","current","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","more","MoreFilterLines","advancedFields","Filter","getFilterValue","useFilter","SearchInput","Enum","colorful","url","Typography","Link","href","defaultProps","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","title","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","isMobile","Consumer","isFixed","pageMenuOpenKey","pageProps","setPageProps","drawerVisible","setDrawerVisible","pathModuleName","useLocation","pathname","split","FixedContainer","icon","Drawer","styles","body","padding","position","height","SimpleBar","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","targetProps","Result","status","subTitle","p","featureId","openFeatures","Features","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","callback","offsetHeight","resizeObserver","MutationObserver","observe","subtree","childList","disconnect","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","theme","navigation","isMobileProp","scrollLeft","setScrollLeft","_setPageProps","permissions","usePermissions","windowWidth","setWindowWidth","innerWidth","handleResize","addEventListener","removeEventListener","useIsMobile","useCallback","scrollEl","getScrollEl","handlerScroll","Navigation","path","Menu","PageTitle","helperGuideName","HelperGuide","Permissions","Page","PageHeaderInner","iconType","info","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","direction","isValidElement","ButtonGroup","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","defaultItems","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","node","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","core","newOpenKeys","defaultTitle","indexLabel","overflowedIndicator","createWithIntlProvider","defaultLocale","messages","zhCN","enUS","namespace","Layout","mobileBreakpoint","SetTitle","mapping","document","MenuReady","onReady","ready","useRefCallback","withLocale","headerLogo","rightOptions","showIndex","navigateTo","forceMobile","nav","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","autoIsMobile","setAutoIsMobile","mobileMenuVisible","setMobileMenuVisible","el","getBoundingClientRect","undefined","windowResizeRef","useResize","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","setTimeout","Dropdown","dropdownRender","selectedKeys","_ref7","_path","handleMobileMenuClick","MenuOutlined","Image","alt","src","logo","mode","_ref8","_ref9","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","moveHandler","clientX","upHandler","createPortal","hasScroller","left","innerLeft","onMouseDown","preventDefault","scroller","getScrollTarget","setScrollerProps","container","documentElement","computed","top","scrollerHeight","clientHeight","clientWidth","scrollWidth","containerRect","ResizeObserver","refResizeObserver","x","OptionsList","buttonProps","buttonList","hidden","itemClassName","moreType","cloneElement","Fetch","loader","ellipsis","Text","tooltip","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","emptyOf","TotalText","ItemText","UnnamedColumn","EditTable","RestoreDefault","VisibleInfo","HiddenInfo","Search","Cancel","Confirm","View","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","ColItem","Ellipsis","_ref15","columnTypes","date","isValid","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","serialNumberShort","user","userName","contacts","tag","_ref0","isEnum","force","_ref1","avatar","_ref10","Avatar","singleRow","_ref11","hideInfo","HideInfoComponent","mainInfo","_ref12","_ref13","_ref14","sensitiveInfo","_ref16","otherSmall","otherLarge","Panel","Collapse","onConfirm","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","sort","a","b","renderColumn","titleText","groupHeader","LoadingButton","async","defaultActiveKey","ghost","bordered","List","Item","Checkbox","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","handlerColumnsChange","animation","delayOnTouchStart","delay","visible","prefix","dataSource","renderItem","storageKey","getDataApi","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","selectedRowKeys","setSelectedRowKeys","getRowId","onSelectAll","selected","ids","uniq","onSelect","FeaturesColumnsConfig","TablePageInnerContent","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","pageData","total","totalCount","getColumns","pagination","columnRenderProps","summary","sticky","handlerDataFormat","formatData","tableProps","showTotal","paramsType","currentName","pageSize","pageSizeName","requestType","onShowSizeChange","scrollTop","hideOnSinglePage","showSizeChanger","showQuickJumper","pageSizeOptions","_len","args","_key","TablePageInner","withFetch","pageSizeKey","toUpperCase","setPageSize","params","fetchParams","getScrollElDefault","stickyOffset","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","querySelector","AntdTable","useSelectedRow","TablePage","Summary","Cell"],"sourceRoot":""}