@kne-components/components-core 0.2.63 → 0.2.64

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 (140) hide show
  1. package/build/asset-manifest.json +100 -100
  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/1153.82149445.chunk.css +2 -0
  6. package/build/static/css/{1153.7d0f5b09.chunk.css.map → 1153.82149445.chunk.css.map} +1 -1
  7. package/build/static/css/1554.56c78503.chunk.css +2 -0
  8. package/build/static/css/{1554.f9fc11f6.chunk.css.map → 1554.56c78503.chunk.css.map} +1 -1
  9. package/build/static/css/{1839.7616d176.chunk.css → 1839.7458981e.chunk.css} +2 -2
  10. package/build/static/css/{1839.7616d176.chunk.css.map → 1839.7458981e.chunk.css.map} +1 -1
  11. package/build/static/css/{2186.2baf37a8.chunk.css → 2186.fbf2c6c8.chunk.css} +2 -2
  12. package/build/static/css/{2186.2baf37a8.chunk.css.map → 2186.fbf2c6c8.chunk.css.map} +1 -1
  13. package/build/static/css/{2533.35421116.chunk.css → 2533.f89f0257.chunk.css} +2 -2
  14. package/build/static/css/{2533.35421116.chunk.css.map → 2533.f89f0257.chunk.css.map} +1 -1
  15. package/build/static/css/2716.21fcf6d7.chunk.css +2 -0
  16. package/build/static/css/{2716.6dfc9f63.chunk.css.map → 2716.21fcf6d7.chunk.css.map} +1 -1
  17. package/build/static/css/3519.9dc678ad.chunk.css +2 -0
  18. package/build/static/css/{3519.784685d8.chunk.css.map → 3519.9dc678ad.chunk.css.map} +1 -1
  19. package/build/static/css/{442.b2538952.chunk.css → 442.9a5c035f.chunk.css} +2 -2
  20. package/build/static/css/{442.b2538952.chunk.css.map → 442.9a5c035f.chunk.css.map} +1 -1
  21. package/build/static/css/4666.8a773c3f.chunk.css +2 -0
  22. package/build/static/css/{4666.a8e35fcd.chunk.css.map → 4666.8a773c3f.chunk.css.map} +1 -1
  23. package/build/static/css/4988.e36a4c55.chunk.css +2 -0
  24. package/build/static/css/{4988.af488d31.chunk.css.map → 4988.e36a4c55.chunk.css.map} +1 -1
  25. package/build/static/css/5443.dde745f6.chunk.css +2 -0
  26. package/build/static/css/{5443.19d414b5.chunk.css.map → 5443.dde745f6.chunk.css.map} +1 -1
  27. package/build/static/css/5962.28aa3033.chunk.css +2 -0
  28. package/build/static/css/{5962.d37aeb8b.chunk.css.map → 5962.28aa3033.chunk.css.map} +1 -1
  29. package/build/static/css/{6376.0553a804.chunk.css → 6376.837a0e0d.chunk.css} +2 -2
  30. package/build/static/css/{6376.0553a804.chunk.css.map → 6376.837a0e0d.chunk.css.map} +1 -1
  31. package/build/static/css/6824.a4d02f5f.chunk.css +2 -0
  32. package/build/static/css/{6824.bf1ed816.chunk.css.map → 6824.a4d02f5f.chunk.css.map} +1 -1
  33. package/build/static/css/6995.df4e021e.chunk.css +2 -0
  34. package/build/static/css/{6995.522fcef9.chunk.css.map → 6995.df4e021e.chunk.css.map} +1 -1
  35. package/build/static/css/{7161.bdb0c234.chunk.css → 7161.9d408c62.chunk.css} +2 -2
  36. package/build/static/css/{7161.bdb0c234.chunk.css.map → 7161.9d408c62.chunk.css.map} +1 -1
  37. package/build/static/css/7227.a0cae46a.chunk.css +2 -0
  38. package/build/static/css/{7227.47b86a68.chunk.css.map → 7227.a0cae46a.chunk.css.map} +1 -1
  39. package/build/static/css/7277.4be087d6.chunk.css +2 -0
  40. package/build/static/css/{7277.c185c6a3.chunk.css.map → 7277.4be087d6.chunk.css.map} +1 -1
  41. package/build/static/css/7632.3ca0683b.chunk.css +2 -0
  42. package/build/static/css/{7632.03f65324.chunk.css.map → 7632.3ca0683b.chunk.css.map} +1 -1
  43. package/build/static/css/{9457.38ff831a.chunk.css → 9457.dac46cd9.chunk.css} +2 -2
  44. package/build/static/css/{9457.38ff831a.chunk.css.map → 9457.dac46cd9.chunk.css.map} +1 -1
  45. package/build/static/css/9473.cd44aa37.chunk.css +2 -0
  46. package/build/static/css/{9473.95e9efe4.chunk.css.map → 9473.cd44aa37.chunk.css.map} +1 -1
  47. package/build/static/css/9894.010b84e8.chunk.css +2 -0
  48. package/build/static/css/{9894.529f2949.chunk.css.map → 9894.010b84e8.chunk.css.map} +1 -1
  49. package/build/static/js/{1153.b7a42e0c.chunk.js → 1153.e10bd8cf.chunk.js} +3 -3
  50. package/build/static/js/{1153.b7a42e0c.chunk.js.map → 1153.e10bd8cf.chunk.js.map} +1 -1
  51. package/build/static/js/1554.c74fa740.chunk.js +3 -0
  52. package/build/static/js/{1554.e7f69908.chunk.js.map → 1554.c74fa740.chunk.js.map} +1 -1
  53. package/build/static/js/{1839.42ab77a3.chunk.js → 1839.a60a313e.chunk.js} +3 -3
  54. package/build/static/js/{1839.42ab77a3.chunk.js.map → 1839.a60a313e.chunk.js.map} +1 -1
  55. package/build/static/js/{2186.b2ae9d27.chunk.js → 2186.4e20789a.chunk.js} +3 -3
  56. package/build/static/js/{2186.b2ae9d27.chunk.js.map → 2186.4e20789a.chunk.js.map} +1 -1
  57. package/build/static/js/2533.466c39d2.chunk.js +3 -0
  58. package/build/static/js/{2533.7234e062.chunk.js.map → 2533.466c39d2.chunk.js.map} +1 -1
  59. package/build/static/js/{2716.77f498de.chunk.js → 2716.942b2b32.chunk.js} +3 -3
  60. package/build/static/js/{2716.77f498de.chunk.js.map → 2716.942b2b32.chunk.js.map} +1 -1
  61. package/build/static/js/{2814.22d477db.chunk.js → 2814.74bb4433.chunk.js} +2 -2
  62. package/build/static/js/{2814.22d477db.chunk.js.map → 2814.74bb4433.chunk.js.map} +1 -1
  63. package/build/static/js/{36.3ff3a767.chunk.js → 36.6f241439.chunk.js} +2 -2
  64. package/build/static/js/{36.3ff3a767.chunk.js.map → 36.6f241439.chunk.js.map} +1 -1
  65. package/build/static/js/{442.4aecf5d4.chunk.js → 442.b816e66a.chunk.js} +3 -3
  66. package/build/static/js/{442.4aecf5d4.chunk.js.map → 442.b816e66a.chunk.js.map} +1 -1
  67. package/build/static/js/{4666.9d65dee0.chunk.js → 4666.128edb1d.chunk.js} +3 -3
  68. package/build/static/js/{4666.9d65dee0.chunk.js.map → 4666.128edb1d.chunk.js.map} +1 -1
  69. package/build/static/js/{4988.6c067f13.chunk.js → 4988.b0df94ca.chunk.js} +2 -2
  70. package/build/static/js/{4988.6c067f13.chunk.js.map → 4988.b0df94ca.chunk.js.map} +1 -1
  71. package/build/static/js/5443.ec57fd06.chunk.js +2 -0
  72. package/build/static/js/{5443.d9e6db83.chunk.js.map → 5443.ec57fd06.chunk.js.map} +1 -1
  73. package/build/static/js/{5962.b4e37ec3.chunk.js → 5962.b9491e8d.chunk.js} +2 -2
  74. package/build/static/js/{5962.b4e37ec3.chunk.js.map → 5962.b9491e8d.chunk.js.map} +1 -1
  75. package/build/static/js/{6376.c75be483.chunk.js → 6376.72e1bbdf.chunk.js} +3 -3
  76. package/build/static/js/{6376.c75be483.chunk.js.map → 6376.72e1bbdf.chunk.js.map} +1 -1
  77. package/build/static/js/{6824.645dbe40.chunk.js → 6824.d73b210c.chunk.js} +2 -2
  78. package/build/static/js/6824.d73b210c.chunk.js.map +1 -0
  79. package/build/static/js/6915.93f1c7c3.chunk.js +2 -0
  80. package/build/static/js/{6915.7e9ffc83.chunk.js.map → 6915.93f1c7c3.chunk.js.map} +1 -1
  81. package/build/static/js/6995.7c5aee8f.chunk.js +2 -0
  82. package/build/static/js/6995.7c5aee8f.chunk.js.map +1 -0
  83. package/build/static/js/{7161.3a8fb959.chunk.js → 7161.33bb2d55.chunk.js} +3 -3
  84. package/build/static/js/{7161.3a8fb959.chunk.js.map → 7161.33bb2d55.chunk.js.map} +1 -1
  85. package/build/static/js/7227.5a4afb6d.chunk.js +3 -0
  86. package/build/static/js/{7227.ee97c226.chunk.js.map → 7227.5a4afb6d.chunk.js.map} +1 -1
  87. package/build/static/js/{7277.6f9e8856.chunk.js → 7277.7b87c2f6.chunk.js} +2 -2
  88. package/build/static/js/{7277.6f9e8856.chunk.js.map → 7277.7b87c2f6.chunk.js.map} +1 -1
  89. package/build/static/js/{7632.609252c1.chunk.js → 7632.0fb804c4.chunk.js} +2 -2
  90. package/build/static/js/{7632.609252c1.chunk.js.map → 7632.0fb804c4.chunk.js.map} +1 -1
  91. package/build/static/js/{7967.096e2d44.chunk.js → 7967.87e1fc50.chunk.js} +2 -2
  92. package/build/static/js/{7967.096e2d44.chunk.js.map → 7967.87e1fc50.chunk.js.map} +1 -1
  93. package/build/static/js/{8151.33d1f319.chunk.js → 8151.ceb83c73.chunk.js} +2 -2
  94. package/build/static/js/{8151.33d1f319.chunk.js.map → 8151.ceb83c73.chunk.js.map} +1 -1
  95. package/build/static/js/9457.af13ca2b.chunk.js +3 -0
  96. package/build/static/js/{9457.40e7d243.chunk.js.map → 9457.af13ca2b.chunk.js.map} +1 -1
  97. package/build/static/js/{9473.717720cc.chunk.js → 9473.09bedc9c.chunk.js} +2 -2
  98. package/build/static/js/{9473.717720cc.chunk.js.map → 9473.09bedc9c.chunk.js.map} +1 -1
  99. package/build/static/js/9894.4104d260.chunk.js +2 -0
  100. package/build/static/js/{9894.6701f78c.chunk.js.map → 9894.4104d260.chunk.js.map} +1 -1
  101. package/build/static/js/{main.cf8aecea.js → main.229e688a.js} +2 -2
  102. package/build/static/js/{main.cf8aecea.js.map → main.229e688a.js.map} +1 -1
  103. package/package.json +1 -1
  104. package/build/static/css/1153.7d0f5b09.chunk.css +0 -2
  105. package/build/static/css/1554.f9fc11f6.chunk.css +0 -2
  106. package/build/static/css/2716.6dfc9f63.chunk.css +0 -2
  107. package/build/static/css/3519.784685d8.chunk.css +0 -2
  108. package/build/static/css/4666.a8e35fcd.chunk.css +0 -2
  109. package/build/static/css/4988.af488d31.chunk.css +0 -2
  110. package/build/static/css/5443.19d414b5.chunk.css +0 -2
  111. package/build/static/css/5962.d37aeb8b.chunk.css +0 -2
  112. package/build/static/css/6824.bf1ed816.chunk.css +0 -2
  113. package/build/static/css/6995.522fcef9.chunk.css +0 -2
  114. package/build/static/css/7227.47b86a68.chunk.css +0 -2
  115. package/build/static/css/7277.c185c6a3.chunk.css +0 -2
  116. package/build/static/css/7632.03f65324.chunk.css +0 -2
  117. package/build/static/css/9473.95e9efe4.chunk.css +0 -2
  118. package/build/static/css/9894.529f2949.chunk.css +0 -2
  119. package/build/static/js/1554.e7f69908.chunk.js +0 -3
  120. package/build/static/js/2533.7234e062.chunk.js +0 -3
  121. package/build/static/js/5443.d9e6db83.chunk.js +0 -2
  122. package/build/static/js/6824.645dbe40.chunk.js.map +0 -1
  123. package/build/static/js/6915.7e9ffc83.chunk.js +0 -2
  124. package/build/static/js/6995.eab30e84.chunk.js +0 -2
  125. package/build/static/js/6995.eab30e84.chunk.js.map +0 -1
  126. package/build/static/js/7227.ee97c226.chunk.js +0 -3
  127. package/build/static/js/9457.40e7d243.chunk.js +0 -3
  128. package/build/static/js/9894.6701f78c.chunk.js +0 -2
  129. /package/build/static/js/{1153.b7a42e0c.chunk.js.LICENSE.txt → 1153.e10bd8cf.chunk.js.LICENSE.txt} +0 -0
  130. /package/build/static/js/{1554.e7f69908.chunk.js.LICENSE.txt → 1554.c74fa740.chunk.js.LICENSE.txt} +0 -0
  131. /package/build/static/js/{1839.42ab77a3.chunk.js.LICENSE.txt → 1839.a60a313e.chunk.js.LICENSE.txt} +0 -0
  132. /package/build/static/js/{2186.b2ae9d27.chunk.js.LICENSE.txt → 2186.4e20789a.chunk.js.LICENSE.txt} +0 -0
  133. /package/build/static/js/{2533.7234e062.chunk.js.LICENSE.txt → 2533.466c39d2.chunk.js.LICENSE.txt} +0 -0
  134. /package/build/static/js/{2716.77f498de.chunk.js.LICENSE.txt → 2716.942b2b32.chunk.js.LICENSE.txt} +0 -0
  135. /package/build/static/js/{442.4aecf5d4.chunk.js.LICENSE.txt → 442.b816e66a.chunk.js.LICENSE.txt} +0 -0
  136. /package/build/static/js/{4666.9d65dee0.chunk.js.LICENSE.txt → 4666.128edb1d.chunk.js.LICENSE.txt} +0 -0
  137. /package/build/static/js/{6376.c75be483.chunk.js.LICENSE.txt → 6376.72e1bbdf.chunk.js.LICENSE.txt} +0 -0
  138. /package/build/static/js/{7161.3a8fb959.chunk.js.LICENSE.txt → 7161.33bb2d55.chunk.js.LICENSE.txt} +0 -0
  139. /package/build/static/js/{7227.ee97c226.chunk.js.LICENSE.txt → 7227.5a4afb6d.chunk.js.LICENSE.txt} +0 -0
  140. /package/build/static/js/{9457.40e7d243.chunk.js.LICENSE.txt → 9457.af13ca2b.chunk.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"static/js/2814.22d477db.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","components/Enum/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["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 { useRef } from \"react\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\nimport memoize from \"lodash/memoize\";\nimport isNil from \"lodash/isNil\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\nconst EnumLoaderFetch = withFetch(({ data, children }) => {\n return typeof children === \"function\"\n ? children(data)\n : children || data?.description;\n});\n\nconst getEnumsMap = memoize((enums) => {\n return new Map(\n baseLoaders.concat(\n Object.keys(Object.assign({}, enums)).map((key) => [key, enums[key]])\n )\n );\n});\n\nconst EnumLoader = ({ loader: enumsLoader, ...props }) => {\n const {\n global: { enumsRef },\n } = useGlobalContext();\n const prevLocaleRef = useRef(null);\n return (\n <EnumLoaderFetch\n {...props}\n loader={async (...args) => {\n const enums = getEnumsMap(await enumsLoader(...args));\n const { params } = args[0];\n const { moduleName, name, force, locale } = params;\n\n const getEnumMap = async (moduleName) => {\n return (\n (() => {\n return (\n force !== true &&\n prevLocaleRef.current === locale &&\n enumsRef.current.get(moduleName)\n );\n })() ||\n (await (async () => {\n const loader = enums.get(moduleName);\n const output = await (async () => {\n if (typeof loader === \"function\") {\n return new Map(\n (await loader({ locale })).map((item) => {\n return [item.value.toString(), item];\n })\n );\n }\n if (Array.isArray(loader)) {\n return new Map(\n loader.map((item) => [item.value.toString(), item])\n );\n }\n if (typeof loader === \"object\") {\n return new Map(\n Object.keys(loader).map((key) => [\n key.toString(),\n loader[key],\n ])\n );\n }\n console.warn(\"枚举值loader的设置可能不正确\");\n return new Map();\n })();\n enumsRef.current.set(moduleName, output);\n prevLocaleRef.current = locale;\n return output;\n })())\n );\n };\n if (Array.isArray(moduleName)) {\n return await Promise.all(\n moduleName.map((target) =>\n getEnumMap(target).then((enumMap) => Array.from(enumMap.values()))\n )\n );\n }\n\n const enumMap = await getEnumMap(moduleName);\n if (!isNil(name)) {\n return enumMap.get(name.toString());\n }\n return Array.from(enumMap.values());\n }}\n />\n );\n};\n\nconst Enum = ({ moduleName, name, force, children, ...props }) => {\n const preset = usePreset();\n return (\n <EnumLoader\n {...props}\n params={{\n moduleName,\n locale: preset?.locale,\n enums: preset?.enums,\n name,\n force,\n }}\n loader={({ params }) => params.enums}\n >\n {children}\n </EnumLoader>\n );\n};\n\nEnum.defaultProps = {\n force: false,\n};\n\nexport default Enum;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__LjVhc\",\"state-result-tag\":\"style_state-result-tag__CssDz__LjVhc\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__LjVhc\",\"event-tag\":\"style_event-tag__cg6SE__LjVhc\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__LjVhc\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__LjVhc\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__LjVhc\",\"show-bg\":\"style_show-bg__OcL+R__LjVhc\",\"tag-text\":\"style_tag-text__JHCt+__LjVhc\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__LjVhc\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\",\n props?.onClick ? style[\"event-tag\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__LjVhc\",\"is-resize\":\"style_is-resize__ut6RW__LjVhc\",\"is-moving\":\"style_is-moving__BJ9wR__LjVhc\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__LjVhc\",\"is-computed\":\"style_is-computed__B9rIF__LjVhc\",\"options-column\":\"style_options-column__vsPTr__LjVhc\",\"options-btn\":\"style_options-btn__U3uoy__LjVhc\",\"tooltip\":\"style_tooltip__vJlkv__LjVhc\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__LjVhc\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__LjVhc\",\"columns-control\":\"style_columns-control__5-5ZF__LjVhc\",\"columns-control-content\":\"style_columns-control-content__MoeUI__LjVhc\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__LjVhc\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__LjVhc\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__LjVhc\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__LjVhc\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__LjVhc\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__LjVhc\",\"is-drag\":\"style_is-drag__U68aw__LjVhc\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__LjVhc\",\"sortable-drag\":\"style_sortable-drag__K5hWd__LjVhc\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__LjVhc\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__LjVhc\",\"sort-btn\":\"style_sort-btn__KvNLr__LjVhc\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__LjVhc\",\"sort-icon\":\"style_sort-icon__dB85I__LjVhc\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__LjVhc\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__LjVhc\",\"tag\":\"columns_tag__bQZLG__LjVhc\",\"avatar\":\"columns_avatar__SLPI+__LjVhc\",\"hover\":\"columns_hover__oAwHg__LjVhc\",\"primary\":\"columns_primary__6KtaA__LjVhc\",\"loading\":\"columns_loading__gtBay__LjVhc\",\"options\":\"columns_options__WvDZD__LjVhc\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n rowKey,\n}) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","baseLoaders","description","EnumLoaderFetch","withFetch","_ref","data","children","getEnumsMap","memoize","enums","Map","concat","Object","keys","assign","map","EnumLoader","_ref2","loader","enumsLoader","props","global","enumsRef","useGlobalContext","prevLocaleRef","useRef","_jsx","async","arguments","params","length","undefined","moduleName","name","force","locale","getEnumMap","current","get","output","item","toString","Array","isArray","console","warn","set","Promise","all","then","enumMap","from","values","isNil","Enum","_ref3","preset","usePreset","_ref4","defaultProps","tagTypeEnum","default","skill","color","borderColor","result","filterResult","success","progress","danger","info","other","StateTag","showBorder","text","type","showBackground","className","filterName","tagColor","useMemo","_tagTypeEnum$type","_tagTypeEnum$type2","_jsxs","Space","classnames","style","align","size","Tag","background","border","onClick","list","width","ButtonGroup","filter","hidden","more","Button","icon","Icon","ellipsis","Typography","Text","tooltip","overlayClassName","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","useState","columnsStyle","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","columnTypes","date","render","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","_ref11","omit","avatar","_ref12","Image","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","options","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","justify","Col","Tooltip","LoadingButton","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","forEach","col","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","preventDefault","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","setDataFunc","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","useRefCallback","startTransition","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","useEffect","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","onMouseDown","clientX","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","document","documentElement","addEventListener","removeEventListener","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","Table","getScrollEl","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","ref","useResize","el","clientWidth","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","scroller","getContainer","getScrollTarget","querySelector","AntdTable","x","_len","args","_key","pageData","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","featureId","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","importMessages","totalCount","forwardRef","pageSizeKey","toUpperCase","setPageSize","fetchParams"],"sourceRoot":""}
1
+ {"version":3,"file":"static/js/2814.74bb4433.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","components/Enum/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["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 { useRef } from \"react\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\nimport memoize from \"lodash/memoize\";\nimport isNil from \"lodash/isNil\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\nconst EnumLoaderFetch = withFetch(({ data, children }) => {\n return typeof children === \"function\"\n ? children(data)\n : children || data?.description;\n});\n\nconst getEnumsMap = memoize((enums) => {\n return new Map(\n baseLoaders.concat(\n Object.keys(Object.assign({}, enums)).map((key) => [key, enums[key]])\n )\n );\n});\n\nconst EnumLoader = ({ loader: enumsLoader, ...props }) => {\n const {\n global: { enumsRef },\n } = useGlobalContext();\n const prevLocaleRef = useRef(null);\n return (\n <EnumLoaderFetch\n {...props}\n loader={async (...args) => {\n const enums = getEnumsMap(await enumsLoader(...args));\n const { params } = args[0];\n const { moduleName, name, force, locale } = params;\n\n const getEnumMap = async (moduleName) => {\n return (\n (() => {\n return (\n force !== true &&\n prevLocaleRef.current === locale &&\n enumsRef.current.get(moduleName)\n );\n })() ||\n (await (async () => {\n const loader = enums.get(moduleName);\n const output = await (async () => {\n if (typeof loader === \"function\") {\n return new Map(\n (await loader({ locale })).map((item) => {\n return [item.value.toString(), item];\n })\n );\n }\n if (Array.isArray(loader)) {\n return new Map(\n loader.map((item) => [item.value.toString(), item])\n );\n }\n if (typeof loader === \"object\") {\n return new Map(\n Object.keys(loader).map((key) => [\n key.toString(),\n loader[key],\n ])\n );\n }\n console.warn(\"枚举值loader的设置可能不正确\");\n return new Map();\n })();\n enumsRef.current.set(moduleName, output);\n prevLocaleRef.current = locale;\n return output;\n })())\n );\n };\n if (Array.isArray(moduleName)) {\n return await Promise.all(\n moduleName.map((target) =>\n getEnumMap(target).then((enumMap) => Array.from(enumMap.values()))\n )\n );\n }\n\n const enumMap = await getEnumMap(moduleName);\n if (!isNil(name)) {\n return enumMap.get(name.toString());\n }\n return Array.from(enumMap.values());\n }}\n />\n );\n};\n\nconst Enum = ({ moduleName, name, force, children, ...props }) => {\n const preset = usePreset();\n return (\n <EnumLoader\n {...props}\n params={{\n moduleName,\n locale: preset?.locale,\n enums: preset?.enums,\n name,\n force,\n }}\n loader={({ params }) => params.enums}\n >\n {children}\n </EnumLoader>\n );\n};\n\nEnum.defaultProps = {\n force: false,\n};\n\nexport default Enum;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__TJtVF\",\"state-result-tag\":\"style_state-result-tag__CssDz__TJtVF\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__TJtVF\",\"event-tag\":\"style_event-tag__cg6SE__TJtVF\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__TJtVF\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__TJtVF\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__TJtVF\",\"show-bg\":\"style_show-bg__OcL+R__TJtVF\",\"tag-text\":\"style_tag-text__JHCt+__TJtVF\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__TJtVF\"};","import React, { useMemo } from \"react\";\nimport classnames from \"classnames\";\n\nimport style from \"./style.module.scss\";\nimport { Space, Tag } from \"antd\";\n\nconst tagTypeEnum = {\n default: \"#666666\",\n skill: {\n color: \"#666666\",\n borderColor: \"#EEEEEE\",\n },\n result: \"#666666\",\n filterResult: \"#5CB8B2\",\n success: \"#027A48\",\n progress: \"#F09700\",\n danger: \"#D14343\",\n info: \"#155ACF\",\n other: \"#6740C3\",\n};\n\nconst StateTag = ({\n showBorder,\n text,\n type,\n showBackground,\n className,\n filterName,\n ...props\n}) => {\n const tagColor = useMemo(\n () => ({\n color: tagTypeEnum?.[type]?.color || tagTypeEnum[type],\n borderColor: tagTypeEnum?.[type]?.borderColor || tagTypeEnum[type],\n }),\n [type]\n );\n\n return (\n <Space\n data-testid={\"components-core-state-tag\"}\n className={classnames(\n style[\"state-tag-wrapper\"],\n type === \"filterResult\" ? style[\"state-tag-filter-result-wrapper\"] : \"\"\n )}\n align=\"center\"\n size={4}\n >\n {filterName ? (\n <span className={style[\"state-tag-filter-name\"]}>{filterName}:</span>\n ) : null}\n <Tag\n color={tagColor.color}\n {...props}\n style={{\n background: showBackground ? tagColor.color + \"0F\" : \"none\",\n color: tagColor.color,\n border: showBorder ? `1px solid ${tagColor.borderColor}` : \"none\",\n }}\n className={classnames(\n style[\"state-tag\"],\n className,\n type === \"result\" ? style[\"state-result-tag\"] : \"\",\n type === \"skill\" ? style[\"state-skill-tag\"] : \"\",\n style[`state-tag-${type}`],\n showBackground ? style[\"show-bg\"] : \"\",\n showBorder ? style[\"show-border\"] : \"\",\n props?.onClick ? style[\"event-tag\"] : \"\"\n )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__TJtVF\",\"is-resize\":\"style_is-resize__ut6RW__TJtVF\",\"is-moving\":\"style_is-moving__BJ9wR__TJtVF\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__TJtVF\",\"is-computed\":\"style_is-computed__B9rIF__TJtVF\",\"options-column\":\"style_options-column__vsPTr__TJtVF\",\"options-btn\":\"style_options-btn__U3uoy__TJtVF\",\"tooltip\":\"style_tooltip__vJlkv__TJtVF\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__TJtVF\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__TJtVF\",\"columns-control\":\"style_columns-control__5-5ZF__TJtVF\",\"columns-control-content\":\"style_columns-control-content__MoeUI__TJtVF\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__TJtVF\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__TJtVF\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__TJtVF\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__TJtVF\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__TJtVF\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__TJtVF\",\"is-drag\":\"style_is-drag__U68aw__TJtVF\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__TJtVF\",\"sortable-drag\":\"style_sortable-drag__K5hWd__TJtVF\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__TJtVF\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__TJtVF\",\"sort-btn\":\"style_sort-btn__KvNLr__TJtVF\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__TJtVF\",\"sort-icon\":\"style_sort-icon__dB85I__TJtVF\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__TJtVF\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__TJtVF\",\"tag\":\"columns_tag__bQZLG__TJtVF\",\"avatar\":\"columns_avatar__SLPI+__TJtVF\",\"hover\":\"columns_hover__oAwHg__TJtVF\",\"primary\":\"columns_primary__6KtaA__TJtVF\",\"loading\":\"columns_loading__gtBay__TJtVF\",\"options\":\"columns_options__WvDZD__TJtVF\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n rowKey,\n}) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","baseLoaders","description","EnumLoaderFetch","withFetch","_ref","data","children","getEnumsMap","memoize","enums","Map","concat","Object","keys","assign","map","EnumLoader","_ref2","loader","enumsLoader","props","global","enumsRef","useGlobalContext","prevLocaleRef","useRef","_jsx","async","arguments","params","length","undefined","moduleName","name","force","locale","getEnumMap","current","get","output","item","toString","Array","isArray","console","warn","set","Promise","all","then","enumMap","from","values","isNil","Enum","_ref3","preset","usePreset","_ref4","defaultProps","tagTypeEnum","default","skill","color","borderColor","result","filterResult","success","progress","danger","info","other","StateTag","showBorder","text","type","showBackground","className","filterName","tagColor","useMemo","_tagTypeEnum$type","_tagTypeEnum$type2","_jsxs","Space","classnames","style","align","size","Tag","background","border","onClick","list","width","ButtonGroup","filter","hidden","more","Button","icon","Icon","ellipsis","Typography","Text","tooltip","overlayClassName","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","useState","columnsStyle","resolve","colItem","event","finally","isColValueEmpty","emptyOf","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","_ref17","columnTypes","date","render","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","_ref11","omit","avatar","_ref12","Image","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","options","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","transform","groupBy","fixed","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","justify","Col","Tooltip","LoadingButton","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","forEach","col","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","preventDefault","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","setDataFunc","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","useRefCallback","startTransition","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","useEffect","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","onMouseDown","clientX","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","document","documentElement","addEventListener","removeEventListener","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","Table","getScrollEl","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","ref","useResize","el","clientWidth","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","scroller","getContainer","getScrollTarget","querySelector","AntdTable","x","_len","args","_key","pageData","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","refresh","reload","requestParams","fetchProps","isComplete","setData","loadMore","dataFormat","featureId","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","FormattedMessage","defaultMessage","paramsType","currentName","pageSize","page","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","pageSizeOptions","IntlProvider","importMessages","totalCount","forwardRef","pageSizeKey","toUpperCase","setPageSize","fetchParams"],"sourceRoot":""}