@kne-components/components-core 0.3.6 → 0.3.8

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 (164) hide show
  1. package/build/asset-manifest.json +109 -109
  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/{1045.c8683f55.chunk.css → 1045.accb2796.chunk.css} +2 -2
  6. package/build/static/css/{1045.c8683f55.chunk.css.map → 1045.accb2796.chunk.css.map} +1 -1
  7. package/build/static/css/1153.f1d47d46.chunk.css +2 -0
  8. package/build/static/css/{1153.174adc51.chunk.css.map → 1153.f1d47d46.chunk.css.map} +1 -1
  9. package/build/static/css/1554.1d55e556.chunk.css +2 -0
  10. package/build/static/css/{1554.ca9206f3.chunk.css.map → 1554.1d55e556.chunk.css.map} +1 -1
  11. package/build/static/css/2716.823de112.chunk.css +2 -0
  12. package/build/static/css/{2716.fb87303a.chunk.css.map → 2716.823de112.chunk.css.map} +1 -1
  13. package/build/static/css/4200.5c94106b.chunk.css +2 -0
  14. package/build/static/css/{4200.499854a0.chunk.css.map → 4200.5c94106b.chunk.css.map} +1 -1
  15. package/build/static/css/4666.13dc9380.chunk.css +2 -0
  16. package/build/static/css/{4666.94e612e9.chunk.css.map → 4666.13dc9380.chunk.css.map} +1 -1
  17. package/build/static/css/{5371.0bc63181.chunk.css → 5371.d0f7e06e.chunk.css} +2 -2
  18. package/build/static/css/{5371.0bc63181.chunk.css.map → 5371.d0f7e06e.chunk.css.map} +1 -1
  19. package/build/static/css/5422.310e1746.chunk.css +2 -0
  20. package/build/static/css/{5422.1b680153.chunk.css.map → 5422.310e1746.chunk.css.map} +1 -1
  21. package/build/static/css/5939.3ca38e02.chunk.css +2 -0
  22. package/build/static/css/{5939.1aa01785.chunk.css.map → 5939.3ca38e02.chunk.css.map} +1 -1
  23. package/build/static/css/{624.0f5a1518.chunk.css → 624.7e444e52.chunk.css} +2 -2
  24. package/build/static/css/{624.0f5a1518.chunk.css.map → 624.7e444e52.chunk.css.map} +1 -1
  25. package/build/static/css/6401.ad14a7de.chunk.css +2 -0
  26. package/build/static/css/{6401.d45fe089.chunk.css.map → 6401.ad14a7de.chunk.css.map} +1 -1
  27. package/build/static/css/663.2b351b88.chunk.css +12 -0
  28. package/build/static/css/{663.a3eda5d8.chunk.css.map → 663.2b351b88.chunk.css.map} +1 -1
  29. package/build/static/css/7227.512b1bd4.chunk.css +2 -0
  30. package/build/static/css/{7227.15f712f7.chunk.css.map → 7227.512b1bd4.chunk.css.map} +1 -1
  31. package/build/static/css/{7253.839b9b81.chunk.css → 7253.b98e67c6.chunk.css} +2 -2
  32. package/build/static/css/{7253.839b9b81.chunk.css.map → 7253.b98e67c6.chunk.css.map} +1 -1
  33. package/build/static/css/7277.8c85618a.chunk.css +2 -0
  34. package/build/static/css/{7277.31d5ee91.chunk.css.map → 7277.8c85618a.chunk.css.map} +1 -1
  35. package/build/static/css/{7334.b2a571d4.chunk.css → 7334.caeed1d4.chunk.css} +2 -2
  36. package/build/static/css/{7334.b2a571d4.chunk.css.map → 7334.caeed1d4.chunk.css.map} +1 -1
  37. package/build/static/css/{7866.1c189b29.chunk.css → 7866.dae33b92.chunk.css} +2 -2
  38. package/build/static/css/{7866.1c189b29.chunk.css.map → 7866.dae33b92.chunk.css.map} +1 -1
  39. package/build/static/css/8278.fcb465e6.chunk.css +2 -0
  40. package/build/static/css/{8278.52f2260d.chunk.css.map → 8278.fcb465e6.chunk.css.map} +1 -1
  41. package/build/static/css/{8503.f3282ca3.chunk.css → 8503.ebfee031.chunk.css} +2 -2
  42. package/build/static/css/{8503.f3282ca3.chunk.css.map → 8503.ebfee031.chunk.css.map} +1 -1
  43. package/build/static/css/8634.726f66b4.chunk.css +2 -0
  44. package/build/static/css/8634.726f66b4.chunk.css.map +1 -0
  45. package/build/static/css/9119.e9ce052d.chunk.css +2 -0
  46. package/build/static/css/{9119.1bfe3bcf.chunk.css.map → 9119.e9ce052d.chunk.css.map} +1 -1
  47. package/build/static/css/9791.5bdbda51.chunk.css +2 -0
  48. package/build/static/css/{9791.f53006b9.chunk.css.map → 9791.5bdbda51.chunk.css.map} +1 -1
  49. package/build/static/js/{1045.62a6fea8.chunk.js → 1045.9e73f95d.chunk.js} +2 -2
  50. package/build/static/js/{1045.62a6fea8.chunk.js.map → 1045.9e73f95d.chunk.js.map} +1 -1
  51. package/build/static/js/{1153.99a26875.chunk.js → 1153.b9171501.chunk.js} +3 -3
  52. package/build/static/js/{1153.99a26875.chunk.js.map → 1153.b9171501.chunk.js.map} +1 -1
  53. package/build/static/js/1489.9ae7bb96.chunk.js +2 -0
  54. package/build/static/js/1489.9ae7bb96.chunk.js.map +1 -0
  55. package/build/static/js/1554.cf310150.chunk.js +3 -0
  56. package/build/static/js/{1554.db47165e.chunk.js.map → 1554.cf310150.chunk.js.map} +1 -1
  57. package/build/static/js/1624.7656d27c.chunk.js +3 -0
  58. package/build/static/js/1624.7656d27c.chunk.js.map +1 -0
  59. package/build/static/js/2470.ea137082.chunk.js +2 -0
  60. package/build/static/js/2470.ea137082.chunk.js.map +1 -0
  61. package/build/static/js/{2716.c9690c64.chunk.js → 2716.bf29712e.chunk.js} +3 -3
  62. package/build/static/js/{2716.c9690c64.chunk.js.map → 2716.bf29712e.chunk.js.map} +1 -1
  63. package/build/static/js/2818.73343977.chunk.js +2 -0
  64. package/build/static/js/2818.73343977.chunk.js.map +1 -0
  65. package/build/static/js/3245.6d2493d2.chunk.js +3 -0
  66. package/build/static/js/{3245.e18d89c5.chunk.js.LICENSE.txt → 3245.6d2493d2.chunk.js.LICENSE.txt} +3 -3
  67. package/build/static/js/3245.6d2493d2.chunk.js.map +1 -0
  68. package/build/static/js/3856.1c4c0238.chunk.js +2 -0
  69. package/build/static/js/{3856.55ab45a7.chunk.js.map → 3856.1c4c0238.chunk.js.map} +1 -1
  70. package/build/static/js/4200.a0c7214c.chunk.js +2 -0
  71. package/build/static/js/{4200.b51849f6.chunk.js.map → 4200.a0c7214c.chunk.js.map} +1 -1
  72. package/build/static/js/4344.1e218e01.chunk.js +2 -0
  73. package/build/static/js/4344.1e218e01.chunk.js.map +1 -0
  74. package/build/static/js/4474.b8b8989a.chunk.js +2 -0
  75. package/build/static/js/{4474.4539a5bb.chunk.js.map → 4474.b8b8989a.chunk.js.map} +1 -1
  76. package/build/static/js/{4666.38659381.chunk.js → 4666.a2a6a63b.chunk.js} +3 -3
  77. package/build/static/js/{4666.38659381.chunk.js.map → 4666.a2a6a63b.chunk.js.map} +1 -1
  78. package/build/static/js/{4671.963f0532.chunk.js → 4671.a8affe38.chunk.js} +1 -1
  79. package/build/static/js/{4982.473cee0a.chunk.js → 4982.248a99b8.chunk.js} +2 -2
  80. package/build/static/js/{4982.473cee0a.chunk.js.map → 4982.248a99b8.chunk.js.map} +1 -1
  81. package/build/static/js/5371.04d99a42.chunk.js +2 -0
  82. package/build/static/js/{5371.db9b7bc0.chunk.js.map → 5371.04d99a42.chunk.js.map} +1 -1
  83. package/build/static/js/5422.26676c80.chunk.js +2 -0
  84. package/build/static/js/{5422.d178feaf.chunk.js.map → 5422.26676c80.chunk.js.map} +1 -1
  85. package/build/static/js/{5939.ca3cb054.chunk.js → 5939.00b485f1.chunk.js} +2 -2
  86. package/build/static/js/5939.00b485f1.chunk.js.map +1 -0
  87. package/build/static/js/{624.1555fc62.chunk.js → 624.02a5bf5e.chunk.js} +2 -2
  88. package/build/static/js/{624.1555fc62.chunk.js.map → 624.02a5bf5e.chunk.js.map} +1 -1
  89. package/build/static/js/{663.c598bd9b.chunk.js → 663.c2a54511.chunk.js} +2 -2
  90. package/build/static/js/663.c2a54511.chunk.js.map +1 -0
  91. package/build/static/js/7227.ae0a1442.chunk.js +3 -0
  92. package/build/static/js/{7227.6af702dc.chunk.js.map → 7227.ae0a1442.chunk.js.map} +1 -1
  93. package/build/static/js/{7253.a2eb6b1f.chunk.js → 7253.4af34e91.chunk.js} +2 -2
  94. package/build/static/js/{7253.a2eb6b1f.chunk.js.map → 7253.4af34e91.chunk.js.map} +1 -1
  95. package/build/static/js/7277.42a3af18.chunk.js +2 -0
  96. package/build/static/js/7277.42a3af18.chunk.js.map +1 -0
  97. package/build/static/js/7334.84c039d3.chunk.js +2 -0
  98. package/build/static/js/{7334.62257543.chunk.js.map → 7334.84c039d3.chunk.js.map} +1 -1
  99. package/build/static/js/{7866.9cc46595.chunk.js → 7866.c1ec7c03.chunk.js} +2 -2
  100. package/build/static/js/{7866.9cc46595.chunk.js.map → 7866.c1ec7c03.chunk.js.map} +1 -1
  101. package/build/static/js/{8278.085698e8.chunk.js → 8278.c853ecb3.chunk.js} +2 -2
  102. package/build/static/js/{8278.085698e8.chunk.js.map → 8278.c853ecb3.chunk.js.map} +1 -1
  103. package/build/static/js/8481.757cd524.chunk.js +2 -0
  104. package/build/static/js/8481.757cd524.chunk.js.map +1 -0
  105. package/build/static/js/8503.98dd7b65.chunk.js +2 -0
  106. package/build/static/js/{8503.54f37a55.chunk.js.map → 8503.98dd7b65.chunk.js.map} +1 -1
  107. package/build/static/js/9119.a1f1316a.chunk.js +2 -0
  108. package/build/static/js/{9119.f1254534.chunk.js.map → 9119.a1f1316a.chunk.js.map} +1 -1
  109. package/build/static/js/{9791.3b45a700.chunk.js → 9791.135c76d6.chunk.js} +2 -2
  110. package/build/static/js/{9791.3b45a700.chunk.js.map → 9791.135c76d6.chunk.js.map} +1 -1
  111. package/build/static/js/main.e8d0bfdf.js +2 -0
  112. package/build/static/js/{main.18e5a8b8.js.map → main.e8d0bfdf.js.map} +1 -1
  113. package/package.json +2 -2
  114. package/build/static/css/1153.174adc51.chunk.css +0 -2
  115. package/build/static/css/1554.ca9206f3.chunk.css +0 -2
  116. package/build/static/css/2716.fb87303a.chunk.css +0 -2
  117. package/build/static/css/4200.499854a0.chunk.css +0 -2
  118. package/build/static/css/4666.94e612e9.chunk.css +0 -2
  119. package/build/static/css/5422.1b680153.chunk.css +0 -2
  120. package/build/static/css/5939.1aa01785.chunk.css +0 -2
  121. package/build/static/css/6401.d45fe089.chunk.css +0 -2
  122. package/build/static/css/663.a3eda5d8.chunk.css +0 -12
  123. package/build/static/css/7227.15f712f7.chunk.css +0 -2
  124. package/build/static/css/7277.31d5ee91.chunk.css +0 -2
  125. package/build/static/css/8278.52f2260d.chunk.css +0 -2
  126. package/build/static/css/8634.1fe05b34.chunk.css +0 -2
  127. package/build/static/css/8634.1fe05b34.chunk.css.map +0 -1
  128. package/build/static/css/9119.1bfe3bcf.chunk.css +0 -2
  129. package/build/static/css/9791.f53006b9.chunk.css +0 -2
  130. package/build/static/js/1554.db47165e.chunk.js +0 -3
  131. package/build/static/js/1624.3f17507d.chunk.js +0 -3
  132. package/build/static/js/1624.3f17507d.chunk.js.map +0 -1
  133. package/build/static/js/2818.d69cf475.chunk.js +0 -2
  134. package/build/static/js/2818.d69cf475.chunk.js.map +0 -1
  135. package/build/static/js/3245.e18d89c5.chunk.js +0 -3
  136. package/build/static/js/3245.e18d89c5.chunk.js.map +0 -1
  137. package/build/static/js/3856.55ab45a7.chunk.js +0 -2
  138. package/build/static/js/4200.b51849f6.chunk.js +0 -2
  139. package/build/static/js/4344.a21580a0.chunk.js +0 -2
  140. package/build/static/js/4344.a21580a0.chunk.js.map +0 -1
  141. package/build/static/js/4474.4539a5bb.chunk.js +0 -2
  142. package/build/static/js/5371.db9b7bc0.chunk.js +0 -2
  143. package/build/static/js/5422.d178feaf.chunk.js +0 -2
  144. package/build/static/js/5939.ca3cb054.chunk.js.map +0 -1
  145. package/build/static/js/6213.d35184d6.chunk.js +0 -2
  146. package/build/static/js/6213.d35184d6.chunk.js.map +0 -1
  147. package/build/static/js/663.c598bd9b.chunk.js.map +0 -1
  148. package/build/static/js/6900.a7098e68.chunk.js +0 -2
  149. package/build/static/js/6900.a7098e68.chunk.js.map +0 -1
  150. package/build/static/js/7227.6af702dc.chunk.js +0 -3
  151. package/build/static/js/7277.db403d00.chunk.js +0 -2
  152. package/build/static/js/7277.db403d00.chunk.js.map +0 -1
  153. package/build/static/js/7334.62257543.chunk.js +0 -2
  154. package/build/static/js/8481.35f80f44.chunk.js +0 -2
  155. package/build/static/js/8481.35f80f44.chunk.js.map +0 -1
  156. package/build/static/js/8503.54f37a55.chunk.js +0 -2
  157. package/build/static/js/9119.f1254534.chunk.js +0 -2
  158. package/build/static/js/main.18e5a8b8.js +0 -2
  159. /package/build/static/js/{1153.99a26875.chunk.js.LICENSE.txt → 1153.b9171501.chunk.js.LICENSE.txt} +0 -0
  160. /package/build/static/js/{1554.db47165e.chunk.js.LICENSE.txt → 1554.cf310150.chunk.js.LICENSE.txt} +0 -0
  161. /package/build/static/js/{1624.3f17507d.chunk.js.LICENSE.txt → 1624.7656d27c.chunk.js.LICENSE.txt} +0 -0
  162. /package/build/static/js/{2716.c9690c64.chunk.js.LICENSE.txt → 2716.bf29712e.chunk.js.LICENSE.txt} +0 -0
  163. /package/build/static/js/{4666.38659381.chunk.js.LICENSE.txt → 4666.a2a6a63b.chunk.js.LICENSE.txt} +0 -0
  164. /package/build/static/js/{7227.6af702dc.chunk.js.LICENSE.txt → 7227.ae0a1442.chunk.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"static/js/9119.f1254534.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js","common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","components/Enum/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/locale/index.js","webpack://@kne-components/components-core/./src/components/Layout/PageHeader/style.module.scss?b470","components/Layout/PageHeader/index.js","components/Layout/TablePage.js","components/Layout/StateBarPage.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","components/Features/index.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/context.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.js","components/Filter/FilterProvider.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","webpack://@kne-components/components-core/./src/common/components/TreeField/style.module.scss?bcd6","common/components/TreeField/index.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__j5Yjz\",\"is-resize\":\"style_is-resize__ut6RW__j5Yjz\",\"is-moving\":\"style_is-moving__BJ9wR__j5Yjz\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__j5Yjz\",\"is-computed\":\"style_is-computed__B9rIF__j5Yjz\",\"options-column\":\"style_options-column__vsPTr__j5Yjz\",\"options-btn\":\"style_options-btn__U3uoy__j5Yjz\",\"tooltip\":\"style_tooltip__vJlkv__j5Yjz\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__j5Yjz\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__j5Yjz\",\"columns-control\":\"style_columns-control__5-5ZF__j5Yjz\",\"columns-control-content\":\"style_columns-control-content__MoeUI__j5Yjz\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__j5Yjz\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__j5Yjz\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__j5Yjz\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__j5Yjz\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__j5Yjz\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__j5Yjz\",\"is-drag\":\"style_is-drag__U68aw__j5Yjz\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__j5Yjz\",\"sortable-drag\":\"style_sortable-drag__K5hWd__j5Yjz\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__j5Yjz\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__j5Yjz\",\"sort-btn\":\"style_sort-btn__KvNLr__j5Yjz\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__j5Yjz\",\"sort-icon\":\"style_sort-icon__dB85I__j5Yjz\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__j5Yjz\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__j5Yjz\",\"scroller-inner\":\"style_scroller-inner__NJSE0__j5Yjz\",\"is-moving\":\"style_is-moving__jGuy0__j5Yjz\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__j5Yjz\",\"tag\":\"columns_tag__bQZLG__j5Yjz\",\"avatar\":\"columns_avatar__SLPI+__j5Yjz\",\"hover\":\"columns_hover__oAwHg__j5Yjz\",\"primary\":\"columns_primary__6KtaA__j5Yjz\",\"loading\":\"columns_loading__gtBay__j5Yjz\",\"options\":\"columns_options__WvDZD__j5Yjz\"};","import { Button } from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nconst Options = ({ list, ...props }) => {\n if (typeof list === \"function\") {\n return (\n <Fetch\n loader={list}\n render={({ data }) => {\n return <OptionsList {...props} list={data} />;\n }}\n />\n );\n }\n return <OptionsList {...props} list={list} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n rowKey,\n}) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n","const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__j5Yjz\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__j5Yjz\",\"no-start-icon\":\"style_no-start-icon__LnC1S__j5Yjz\",\"has-children\":\"style_has-children__m9tce__j5Yjz\",\"has-children-node\":\"style_has-children-node__2bhEB__j5Yjz\",\"is-root\":\"style_is-root__4hhOc__j5Yjz\",\"title\":\"style_title__+Hcar__j5Yjz\",\"active\":\"style_active__WU49K__j5Yjz\",\"no-collapse\":\"style_no-collapse__aIZBM__j5Yjz\",\"title-content\":\"style_title-content__cQXpK__j5Yjz\",\"loading\":\"style_loading__1pU4P__j5Yjz\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Spin } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport { useCallback, useEffect, useMemo } from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport { useFetch } from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {},\n nodeMapping = [];\n const traversal = (children, options) => {\n const { parentKey, depth } = Object.assign(\n {\n parentKey: \"root\",\n depth: 0,\n paths: [],\n },\n options\n );\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${\n item.key ||\n `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`\n }`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey,\n depth: depth + 1,\n });\n childrenKeys[currentKey] &&\n childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey,\n parentKey,\n depth,\n children: children,\n originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return { items: traversal(items), childrenKeys, nodeMapping };\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren =\n (Array.isArray(children) && children.length > 0) || fetchOptions;\n const { refresh, isLoading } = useFetch(\n Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions,\n onRequestSuccess: (data) => {\n onLoad(data);\n },\n })\n );\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (\n <div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\" />\n </div>\n );\n }\n };\n return (\n <Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && <Icon type={iconType} />}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (\n <Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />\n )}\n </div>\n {renderChildren()}\n </div>\n </Permissions>\n );\n};\n\nconst Menu = ({ className, allowCollapsed, pathMatch, ...props }) => {\n const { pathname, search } = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\",\n defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue(props, {\n defaultValue: \"defaultItems\",\n value: \"items\",\n onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems,\n defaultOpenKeys,\n links,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems,\n childrenKeys,\n nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false,\n hasChildren = false;\n const links = [],\n defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType) {\n hasStartIcon = true;\n }\n node.path && links.push({ path: node.path, key });\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys,\n links,\n items: targetItems,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({ path }) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, { pathname, search });\n }\n return (\n ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) ||\n ensureSlash(pathname + search) === ensureSlash(path)\n );\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__j5Yjz\"};","import { createElement } from \"react\";\nimport { Result, Tooltip } from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\n\nexport const computedIsPass = ({ permissions, request }) => {\n return Array.isArray(request) && request.length > 0\n ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1)\n : true;\n};\n\nexport const usePermissions = () => {\n const { global } = useGlobalContext();\n const { permissions, permissionsPath } = usePreset();\n return {\n permissions:\n global.permissions ||\n permissions ||\n (permissionsPath && get(global, permissionsPath)) ||\n [],\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","import { preset } from \"@kne/react-enum\";\nimport transform from \"lodash/transform\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\npreset({\n base: transform(\n baseLoaders,\n (result, value) => {\n result[value[0]] = value[1];\n },\n {}\n ),\n});\n\nexport { default } from \"@kne/react-enum\";\n","import {createContext, useContext as useReactContext} from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n menuCloseWidth: \"0px\",\n menuFixed: true,\n menuCloseButton: true,\n backgroundColor: null,\n header: null,\n headerHeight: 0,\n headerFixed: true,\n headerInfo: null,\n backUrl: null,\n title: null,\n titleExtra: null,\n titleLeftExtra: null,\n noMargin: false,\n noPadding: false,\n optionFooterHeight: 0,\n option: null,\n optionWidth: \"400px\",\n optionNoPadding: false,\n optionFixed: true,\n optionFooter: null,\n};\n\nexport const context = createContext({});\n\nexport const {Provider, Consumer} = context;\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport default context;\n","// extracted by mini-css-extract-plugin\nexport default {\"layout\":\"style_layout__k+lxR__j5Yjz\",\"page-content\":\"style_page-content__4XeN8__j5Yjz\",\"page-main\":\"style_page-main__P0yEF__j5Yjz\",\"page-main-content\":\"style_page-main-content__1OVPN__j5Yjz\",\"table-page\":\"style_table-page__JkbLf__j5Yjz\",\"helper-guide\":\"style_helper-guide__vzw4z__j5Yjz\",\"page-outer\":\"style_page-outer__2a6iH__j5Yjz\",\"no-margin\":\"style_no-margin__S6caT__j5Yjz\",\"page-menu\":\"style_page-menu__CZSa9__j5Yjz\",\"closed\":\"style_closed__hmnft__j5Yjz\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__j5Yjz\",\"page-menu-main\":\"style_page-menu-main__OXg2M__j5Yjz\",\"page-option-main\":\"style_page-option-main__LyfT3__j5Yjz\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__j5Yjz\",\"page-option\":\"style_page-option__diS2S__j5Yjz\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__j5Yjz\",\"page-option-footer\":\"style_page-option-footer__d7xE0__j5Yjz\",\"fixed-container\":\"style_fixed-container__1VZwY__j5Yjz\",\"is-fixed\":\"style_is-fixed__1aQhp__j5Yjz\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__j5Yjz\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__j5Yjz\",\"page-title\":\"style_page-title__zw-Fd__j5Yjz\",\"page-title-text\":\"style_page-title-text__Rj4RC__j5Yjz\",\"no-padding\":\"style_no-padding__V7Dwy__j5Yjz\",\"page-header\":\"style_page-header__a813p__j5Yjz\",\"page-header-info\":\"style_page-header-info__cMrZR__j5Yjz\",\"layout-menu\":\"style_layout-menu__yiab0__j5Yjz\",\"sub-menu\":\"style_sub-menu__dyqK7__j5Yjz\",\"no-collapsed\":\"style_no-collapsed__76h8W__j5Yjz\",\"has-not-children\":\"style_has-not-children__fnjRK__j5Yjz\",\"table-page-top\":\"style_table-page-top__bt1l9__j5Yjz\",\"error-component\":\"style_error-component__HvghB__j5Yjz\",\"state-bar-page\":\"style_state-bar-page__+aUM4__j5Yjz\",\"back-icon\":\"style_back-icon__79v2G__j5Yjz\"};","import style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst FixedContainer = ({ className, isFixed, children }) => {\n if (isFixed) {\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"],\n {\n [style[\"is-fixed\"]]: isFixed,\n }\n )}\n >\n {children}\n </div>\n );\n }\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"]\n )}\n >\n {children}\n </div>\n );\n};\n\nexport default FixedContainer;\n","import {Button, Col} from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"../style.module.scss\";\nimport FixedContainer from \"./FixedContainer\";\nimport {useContext} from \"../context\";\nimport Icon from \"@components/Icon\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport {useLocation} from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport isNotEmpty from \"@utils/isNotEmpty\";\nimport localStorage from \"@utils/localStorage\";\nimport {useMemo} from \"react\";\n\nconst pageMenuOpenKey = \"CORE_PAGE_MENU_OPEN_KEY\";\n\nexport const useMenuOpen = () => {\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n return useMemo(() => {\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n return isNotEmpty(get(pageResult, pathModuleName))\n ? get(pageResult, pathModuleName)\n : true;\n }, [pathModuleName]);\n};\n\nconst Menu = () => {\n const {pageProps, setPageProps} = useContext();\n const {menu, menuOpen, menuWidth, menuCloseWidth, menuFixed, menuCloseButton} = pageProps;\n\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n\n return menu ? (\n <Col\n className={classnames(style[\"page-menu\"],'core-page-menu', {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{\"--menu-width\": menuWidth, \"--menu-close-width\": menuCloseWidth}}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar\n className={style[\"page-menu-main\"]}>{typeof menu === 'function' ? menu({open: menuOpen}) : menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], 'core-page-menu-btn-outer', {\n [style[\"is-fixed\"]]: menuFixed,\n })}\n isFixed={menuFixed}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n icon={\n menuOpen ? (\n <Icon type=\"icon-arrow-bold-left\"/>\n ) : (\n <Icon type=\"icon-arrow-bold-right\"/>\n )\n }\n onClick={() => {\n setPageProps({menuOpen: !pageProps.menuOpen});\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n pageResult[pathModuleName] = !pageProps.menuOpen;\n localStorage.setItem(pageMenuOpenKey, pageResult);\n setPageProps({menuOpen: !pageProps.menuOpen});\n }}\n />\n </FixedContainer>\n ) : null}\n </Col>\n ) : null;\n};\n\nexport default Menu;\n","import { defaultProps, useContext } from \"../context\";\nimport isEqual from \"lodash/isEqual\";\nimport { useEffect, useRef } from \"react\";\nimport { Result } from \"antd\";\nimport Features from \"@components/Features\";\nimport { useMenuOpen } from \"./Menu\";\n\nconst PageInner = ({ children, isPass, ...props }) => {\n const { setPageProps } = useContext();\n const propsRef = useRef(null);\n const localMenuOpen = useMenuOpen();\n const localMenuOpenRef = useRef(localMenuOpen);\n localMenuOpenRef.current = localMenuOpen;\n useEffect(() => {\n if (!isEqual(propsRef.current, props)) {\n propsRef.current = props;\n /**\n * 解决两个页面都用header时,menuButton产生的跳动问题:如果下一个页面有header,\n * headerHeight由其header组件自己更新,不再统一重置为0。\n * optionFooter同理\n * */\n const targetProps = Object.assign(\n {},\n defaultProps,\n props,\n typeof localMenuOpenRef.current === \"boolean\"\n ? { menuOpen: localMenuOpenRef.current }\n : {}\n );\n if (targetProps.header && targetProps.headerHeight === 0) {\n delete targetProps[\"headerHeight\"];\n }\n if (targetProps.optionFooter && targetProps.optionFooterHeight === 0) {\n delete targetProps[\"optionFooter\"];\n }\n setPageProps(targetProps);\n }\n }, [props, setPageProps]);\n\n if (isPass === false) {\n return <Result status=\"403\" subTitle=\"暂未开放此功能\" />;\n }\n\n return children;\n};\n\nconst Page = ({ featureId, name, openFeatures, ...props }) => {\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({ isPass }) => <PageInner {...props} key={name} isPass={isPass} />}\n </Features>\n );\n }\n return <PageInner {...props} key={name} />;\n};\n\nPage.defaultProps = defaultProps;\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import { Col, Row, Space } from \"antd\";\nimport { useNavigate } from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({ title, filter, titleExtra, titleLeftExtra, backUrl }) => {\n const navigator = useNavigate();\n if (filter) {\n return (\n <Filter className={style[\"page-title\"]} {...filter} extra={titleExtra} />\n );\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (\n <Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col>\n <Space>\n {title ? (\n <div className={style[\"page-title-text\"]}>\n {backUrl ? (\n <Space>\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\" />\n </span>\n <span>{title}</span>\n </Space>\n ) : (\n title\n )}\n </div>\n ) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Space>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>\n );\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import {Alert, Button, Col, Layout as AntdLayout, Row} from \"antd\";\nimport {useCallback, useEffect, useState} from \"react\";\nimport {defaultProps, Provider} from \"./context\";\nimport Navigation, {navigationHeight} from \"@components/Navigation\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\nimport ReactErrorBoundary from \"@kne/react-error-boundary\";\nimport {Header, HeaderInfo, Menu, Option, PageTitle} from \"./Page\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport {usePermissions} from \"../Permissions\";\n\nconst {Content} = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent}/>;\n};\n\nconst Layout = ({className, children, theme, navigation}) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const {permissions} = usePermissions();\n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n\n return (\n <AntdLayout\n className={classnames(style[\"layout\"], className, 'core-layout')}\n style={Object.assign(\n {},\n {\n \"--nav-height\": navigationHeight + \"px\",\n \"--nav-height-base\": \"var(--nav-height)\",\n \"--scroll-left\": -scrollLeft + \"px\",\n },\n theme\n )}\n >\n {navigation && (\n <ErrorBoundary>\n <Navigation\n permissions={permissions}\n {...navigation}\n onChange={(path) => {\n navigation?.onChange && navigation.onChange(path);\n }}\n />\n </ErrorBoundary>\n )}\n <ErrorBoundary>\n <Content className={classnames(style[\"layout-content-wrap\"], 'core-layout-content-wrap')}>\n <Provider value={{pageProps, setPageProps}}>\n <ErrorBoundary>\n <Header/>\n </ErrorBoundary>\n <ErrorBoundary>\n <HeaderInfo/>\n </ErrorBoundary>\n <ErrorBoundary>\n <Row\n className={classnames(pageProps.className, style[\"page-outer\"])}\n wrap={false}\n style={{\n \"--nav-height\": `calc(${\n pageProps.headerFixed ? pageProps.headerHeight : 0\n }px + var(--nav-height-base))`,\n \"--nav-only-height\": `var(--nav-height-base)`,\n }}\n >\n <ErrorBoundary>\n <Menu/>\n </ErrorBoundary>\n <Col className={classnames(style[\"page-content\"], 'core-page-content', {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })} flex={1} style={{\"--background-color\": pageProps.backgroundColor}}>\n <div className={classnames(style[\"page-main\"], 'core-page-main')}>\n <ErrorBoundary>\n <PageTitle\n title={pageProps.title}\n backUrl={pageProps.backUrl}\n filter={pageProps.filter}\n titleExtra={pageProps.titleExtra}\n titleLeftExtra={pageProps.titleLeftExtra}\n />\n </ErrorBoundary>\n <div\n className={classnames(style[\"page-main-content\"], 'core-page-main-content', {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={classnames(style[\"helper-guide-page\"], 'core-helper-guide-page')}\n name={pageProps.helperGuideName}\n />\n )}\n {children}\n </ErrorBoundary>\n </div>\n </div>\n </Col>\n <ErrorBoundary>\n <Option/>\n </ErrorBoundary>\n </Row>\n </ErrorBoundary>\n </Provider>\n </Content>\n </ErrorBoundary>\n </AntdLayout>\n );\n};\n\nLayout.defaultProps = {\n navigation: {},\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"page-header\":\"style_page-header__l3LiS__j5Yjz\",\"main\":\"style_main__X1Ynh__j5Yjz\",\"icon-outer\":\"style_icon-outer__6F97H__j5Yjz\",\"title\":\"style_title__dNWQj__j5Yjz\",\"info\":\"style_info__yF-4c__j5Yjz\",\"overlay\":\"style_overlay__SWqqE__j5Yjz\",\"tags\":\"style_tags__5+zDU__j5Yjz\",\"tag-split\":\"style_tag-split__V6SqP__j5Yjz\",\"button-options\":\"style_button-options__f1-gI__j5Yjz\"};","import { Space, Row, Col } from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport { IntlProvider } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nexport const PageHeaderInner = ({\n className,\n title,\n iconType,\n info,\n tags,\n tagSplit,\n tagClassName,\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n}) => {\n return (\n <Row\n className={classnames(className, style[\"page-header\"])}\n wrap={false}\n gutter={10}\n >\n {addonBefore && <Col>{addonBefore}</Col>}\n <Col flex={1}>\n <Space direction=\"vertical\">\n <Row wrap={false}>\n <Col flex={1} className={style[\"main\"]}>\n <Space align=\"start\">\n {iconType && (\n <div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24} />\n </div>\n )}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (\n <Col\n flex={1}\n className={style[\"button-options\"]}\n style={{ \"--max-width\": buttonOptionsMaxWidth }}\n >\n <ButtonGroup {...buttonOptions} />\n </Col>\n )}\n </Row>\n {tags && (\n <Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (\n <div key={index} className={style[\"tags\"]}>\n {item}\n </div>\n );\n })}\n </Space>\n )}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>\n );\n};\n\nconst PageHeader = (props) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>\n );\n};\n\nPageHeaderInner.defaultProps = PageHeader.defaultProps = {\n tagSplit: <span className={style[\"tag-split\"]}>|</span>,\n tagClassName: \"\",\n};\n\nexport default PageHeader;\n","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__j5Yjz\",\"state-result-tag\":\"style_state-result-tag__CssDz__j5Yjz\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__j5Yjz\",\"event-tag\":\"style_event-tag__cg6SE__j5Yjz\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__j5Yjz\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__j5Yjz\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__j5Yjz\",\"show-bg\":\"style_show-bg__OcL+R__j5Yjz\",\"tag-text\":\"style_tag-text__JHCt+__j5Yjz\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__j5Yjz\"};","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","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__j5Yjz\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__j5Yjz\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__j5Yjz\",\"filter-title\":\"style_filter-title__PlIpS__j5Yjz\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__j5Yjz\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__j5Yjz\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__j5Yjz\",\"filter-line\":\"style_filter-line__E+cRh__j5Yjz\",\"clean-btn\":\"style_clean-btn__oSEvm__j5Yjz\",\"filter-item\":\"style_filter-item__Q2ncE__j5Yjz\",\"un-expand\":\"style_un-expand__4PFY8__j5Yjz\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__j5Yjz\",\"filter-label\":\"style_filter-label__qu26i__j5Yjz\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__j5Yjz\",\"option\":\"style_option__rd5Qo__j5Yjz\",\"is-active\":\"style_is-active__OArQI__j5Yjz\",\"is-visited\":\"style_is-visited__gZ5ni__j5Yjz\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__j5Yjz\",\"filter-item-label\":\"style_filter-item-label__C781J__j5Yjz\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__j5Yjz\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__j5Yjz\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__j5Yjz\",\"filter-tag\":\"style_filter-tag__dUGfu__j5Yjz\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__j5Yjz\",\"pop-util-content\":\"style_pop-util-content__bx5zP__j5Yjz\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__j5Yjz\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__j5Yjz\",\"pop-util-text\":\"style_pop-util-text__pzeUy__j5Yjz\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__j5Yjz\",\"filter-item-text\":\"style_filter-item-text__MA8tU__j5Yjz\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__j5Yjz\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__j5Yjz\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__j5Yjz\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__j5Yjz\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__j5Yjz\",\"range-picker\":\"style_range-picker__c6ngq__j5Yjz\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__j5Yjz\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__j5Yjz\",\"filter-advanced\":\"style_filter-advanced__4cyDy__j5Yjz\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__j5Yjz\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__j5Yjz\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__j5Yjz\"};","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport { useState } from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport { Col, Row, Space } from \"antd\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({ list, children }) => {\n const { value, onChange } = useContext();\n return (\n <div className={style[\"filter-line\"]}>\n {list.map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value\n ? get(value.get(props?.name), \"value\")\n : props?.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: props?.name,\n label: props?.label,\n value,\n })\n : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (\n <ComponentItem\n {...Object.assign({}, item.props, {\n key: item.key || item.props.name || index,\n value: value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange,\n })}\n />\n );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({\n className,\n list,\n displayLine,\n label,\n extra,\n children,\n}) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {label || (\n <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />\n )}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (\n <Space\n size={4}\n className={classnames(\n style[\"filter-item\"],\n style[\"option\"]\n )}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>\n ) : null}\n </Line>\n ))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (\n <>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>\n )}\n </Line>\n ))}\n </div>\n </Space>\n </IntlProvider>\n );\n};\n\nFilterLines.defaultProps = {\n displayLine: 1,\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import {Provider} from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport {useMemo} from \"react\";\nimport {isNotEmpty} from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport {IntlProvider} from \"@components/Intl\";\n\nconst FilterOuter = ({children, className, defaultValue = [], ...props}) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n {typeof children === 'function' ? children({props, value, onChange}) : children}\n </Provider>\n </IntlProvider>\n );\n};\n\nexport default FilterOuter;\n","import classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport FilterProvider from './FilterProvider';\n\nconst FilterOuter = ({children, className, ...props}) => {\n return <FilterProvider {...props}>\n {(context) => <div className={classnames(style[\"filter\"], className)}>\n {children(context)}\n </div>}\n </FilterProvider>\n\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = (props) => {\n return (\n <FilterOuter {...props}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nFilter.defaultProps = {\n defaultValue: [],\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import { useState } from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem =\n (WrappedComponent) =>\n ({ value, onChange, interceptor, label, ...props }) => {\n const [open, setOpen] = useState(false);\n return (\n <FilterItem label={label} open={open} active={isNotEmpty(value)}>\n <WrappedComponent\n allowClear={false}\n {...props}\n className={style[\"filter-item-inner\"]}\n value={\n typeof interceptor?.input === \"function\"\n ? interceptor.input(value)\n : value\n }\n onChange={\n typeof interceptor?.output === \"function\"\n ? (...args) => onChange(interceptor.output(...args))\n : onChange\n }\n valueType=\"all\"\n onOpenChange={setOpen}\n />\n </FilterItem>\n );\n };\n\nexport default withFieldItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"scroll-loader\":\"style_scroll-loader__Rcuti__j5Yjz\",\"is-popup\":\"style_is-popup__pCRv2__j5Yjz\"};","import SelectInnerInput from \"@common/components/SelectInnerInput\";\nimport { useMemo, useRef } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Space, Tree } from \"antd\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport get from \"lodash/get\";\nimport omit from \"lodash/omit\";\nimport memoize from \"lodash/memoize\";\n\nconst useSelectInnerContext = SelectInnerInput.useContext;\n\nconst TreeFieldInner = ({ value: selected, setValue: setSelect, size }) => {\n const { fetchApi, props } = useSelectInnerContext();\n const dataFormat = useRefCallback(props.dataFormat);\n const { single, isPopup, searchPlaceholder, ...others } = props;\n const fieldNamesRef = useRef(props.fieldNames);\n fieldNamesRef.current = props.fieldNames;\n const fetchData = fetchApi.data;\n const { treeData } = useMemo(\n () =>\n dataFormat(fetchData, {\n fieldNames: fieldNamesRef.current,\n }),\n [dataFormat, fetchData]\n );\n\n return (\n <Space direction=\"vertical\" size={16}>\n <SimpleBar\n className={classnames(style[\"scroll-loader\"], {\n [style[\"is-popup\"]]: props.isPopup,\n })}\n >\n <Tree\n {...omit(others, [\"value\", \"valueType\", \"children\", \"dataFormat\"])}\n size={size}\n checkable={!single}\n treeData={treeData}\n onCheck={setSelect}\n checkedKeys={selected}\n onSelect={\n single\n ? setSelect\n : (selectKeys) => {\n const selectKey = selectKeys[0];\n if (selectKey === void 0) {\n return;\n }\n setSelect((current) => {\n const newCurrent = current.slice(0);\n const index = newCurrent.indexOf(selectKey);\n if (index > -1) {\n newCurrent.splice(index, 1);\n } else {\n newCurrent.push(selectKey);\n }\n return newCurrent;\n });\n }\n }\n selectedKeys={single ? selected : undefined}\n />\n </SimpleBar>\n </Space>\n );\n};\n\nconst TreeField = ({ maxLength, dataFormat, ...props }) => {\n return (\n <SelectInnerInput\n {...props}\n dataFormat={(data) => {\n return dataFormat(data, { fieldNames: props.fieldNames });\n }}\n >\n {({ value, setValue }) => {\n return (\n <TreeFieldInner size={maxLength} value={value} setValue={setValue} />\n );\n }}\n </SelectInnerInput>\n );\n};\n\nTreeField.defaultProps = {\n searchPlaceholder: \"搜索\",\n maxLength: Number.MAX_VALUE,\n size: \"middle\",\n isPopup: true,\n checkStrictly: false,\n dataFormat: (data, { fieldNames }) => {\n const treeToList = memoize((nodeList, { fieldNames }) => {\n const list = [];\n const core = (nodeList) => {\n if (!(Array.isArray(nodeList) && nodeList.length > 0)) {\n return;\n }\n nodeList.forEach((node) => {\n const value = node[get(fieldNames, \"key\", \"key\")],\n label = node[get(fieldNames, \"title\", \"title\")],\n children = node[get(fieldNames, \"children\", \"children\")];\n list.push({ id: value, value, label });\n core(children);\n });\n };\n core(nodeList);\n return list;\n });\n\n return {\n treeData: data,\n list: treeToList(data, { fieldNames }),\n };\n },\n};\n\nexport default TreeField;\n","import { useState, useMemo } from \"react\";\nimport { Button, Col, Popover, Row } from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport { FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n onChange,\n children,\n}) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (\n <Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n overlayClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={\n <span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({ value: state, onChange: setState })}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>\n }\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label} />\n </span>\n </Popover>\n );\n};\n\nPopoverItem.defaultProps = {\n placeholder: \"请选择\",\n placement: \"bottomLeft\",\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input, InputNumber, Space } from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport { useIntl } from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({ id: \"over\" }, { count: range[0], unit });\n }\n if (isNumber(range[1])) {\n return formatMessage({ id: \"lessThan\" }, { count: range[1], unit });\n }\n })(range),\n value: [range[0] || null, range[1] || null],\n };\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Space.Compact>\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [target, get(value, \"value[1]\")],\n unit,\n formatMessage\n )\n );\n }}\n />\n <Input\n style={{\n width: 30,\n borderLeft: 0,\n borderRight: 0,\n pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [get(value, \"value[0]\"), target],\n unit,\n formatMessage\n )\n );\n }}\n />\n {unit && (\n <Input\n style={{\n width: 50,\n borderLeft: 0,\n }}\n value={unit}\n disabled\n />\n )}\n </Space.Compact>\n )}\n </PopoverItem>\n );\n};\n\nInputFilterItem.defaultProps = {\n onValidate: (value) => {\n const range = get(value, \"value\");\n return !(\n range &&\n isNumber(range[0]) &&\n isNumber(range[1]) &&\n range[1] < range[0]\n );\n },\n};\n\nexport default InputFilterItem;\n","import { DatePicker } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(\n ({ value, onChange, picker, ...props }) => {\n return (\n <DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n value &&\n onChange({\n label:\n picker !== \"date\"\n ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}`\n : value.format(format),\n value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />\n );\n }\n);\n\nDatePickerFilterItem.defaultProps = \"date\";\n\nexport default DatePickerFilterItem;\n","import { DatePicker, Flex } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, header, ...props }) => {\n return (\n <Flex vertical>\n {typeof header === \"function\" ? header({ value, onChange }) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n value={\n value &&\n Array.isArray(value.value) &&\n value.value.length === 2 &&\n value.value.map((item) => dayjs(item))\n }\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n onChange({\n label: value.map((item) => item.format(format)).join(\"~\"),\n value: value.map((item) => new Date(item.valueOf())),\n });\n }}\n />\n </Flex>\n );\n }\n);\n\nexport default DateRangePickerFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\nimport dayjs from \"dayjs\";\n\nconst TypeDateRangePickerFilterItem = ({\n label,\n value,\n onChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n onValidate={(item) => {\n const value = item?.value;\n return (\n value?.type && Array.isArray(value?.value) && value.value.length === 2\n );\n }}\n >\n {({ value, onChange }) => (\n <TypeDateRangePickerField\n {...props}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\")}\n onChange={(pickerValue) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n const value = pickerValue?.value || [];\n onChange({\n label: (() => {\n if (value[0] && !value[1]) {\n return `${dayjs(value[0]).format(format)}以后`;\n }\n if (!value[0] && value[1]) {\n return `${dayjs(value[1]).format(format)}以前`;\n }\n if (value[0] && value[1]) {\n return `${dayjs(value[0]).format(format)}~${dayjs(\n value[1]\n ).format(format)}`;\n }\n return \"\";\n })(),\n value: pickerValue,\n });\n }}\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default TypeDateRangePickerFilterItem;\n","import { FormattedMessage } from \"@components/Intl\";\nimport withFieldItem from \"../withFieldItem\";\nimport AdvancedSelectField, {\n UserField,\n} from \"@common/components/AdvancedSelectField\";\nimport SuperSelectField, {\n SuperSelectTableListField,\n SuperSelectUserField,\n} from \"@common/components/SuperSelectField\";\nimport FunctionSelectField from \"@common/components/FunctionSelectField\";\nimport AddressSelectField from \"@common/components/AddressSelectField\";\nimport IndustrySelectField from \"@common/components/IndustrySelectField\";\nimport CascaderField from \"@common/components/CascaderField\";\nimport TreeField from \"@common/components/TreeField\";\nimport InputFilterItemField from \"./InputFilterItem\";\nimport NumberRangeFilterItemField from \"./NumberRangeFilterItem\";\n\nconst withInputDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{ label }}\n >\n {(text) => {\n return (\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n );\n }}\n </FormattedMessage>\n );\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(\n SuperSelectTableListField\n);\nexport const SuperSelectUserFilterItem = withFieldItem(SuperSelectUserField);\nexport const UserFilterItem = withFieldItem(UserField);\nexport const FunctionSelectFilterItem = withFieldItem(FunctionSelectField);\nexport const IndustrySelectFilterItem = withFieldItem(IndustrySelectField);\n\nexport const CityFilterItem = withFieldItem(AddressSelectField);\n\nexport const CascaderFilterItem = withFieldItem(CascaderField);\n\nexport const TreeFilterItem = withFieldItem(TreeField);\nexport const InputFilterItem =\n withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(\n NumberRangeFilterItemField\n);\n\nexport { default as DatePickerFilterItem } from \"./DatePickerFilterItem\";\nexport { default as DateRangePickerFilterItem } from \"./DateRangePickerFilterItem\";\nexport { default as TypeDateRangePickerFilterItem } from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import {SearchInput as SearchInputField} from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\nimport {useIntl} from \"@components/Intl\";\n\nconst SearchInput = withFilterValue(({label, onChange, value, placeholder, ...props}) => {\n const {formatMessage} = useIntl({moduleName: 'Filter'});\n return (\n <SearchInputField\n {...props}\n placeholder={placeholder || formatMessage({id: 'inputPlaceholder'}, {label})}\n value={value?.value || \"\"}\n onSearch={(value) => {\n onChange({label: value, value});\n }}\n />\n );\n});\n\nexport default SearchInput;\n","import { App, Tag } from \"antd\";\nimport AddressSelectField, {\n getLabelForLocal,\n withAddressApi,\n} from \"@common/components/AddressSelectField\";\nimport { FormattedMessage, useIntl } from \"@components/Intl\";\nimport { usePreset } from \"@components/Global\";\nimport { useMemo } from \"react\";\nimport style from \"../../style.module.scss\";\n\nconst { CheckableTag } = Tag;\n\nconst CityFilterItemInner = ({\n value,\n onChange,\n single,\n maxLength,\n addressApi,\n ...props\n}) => {\n const { message } = App.useApp();\n const { locale } = usePreset();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const { code } = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: code, label: name } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: code, label: name })\n : (() => {\n const index = newValue.findIndex(\n ({ value }) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({ code }) =>\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({ value }) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const { city } = addressApi.getCity(value);\n return { value: city?.code, label: city?.name };\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nCityFilterItemInner.defaultProps = {\n single: false,\n maxLength: 5,\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import { Tag, App } from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport { useIntl } from \"@components/Intl\";\n\nconst { CheckableTag } = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single,\n maxLength,\n items,\n custom,\n}) => {\n const { message } = App.useApp();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <>\n {items.map(({ label, value: itemValue }) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({ value }) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: itemValue, label } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: itemValue, label })\n : (() => {\n const index = newValue.find(({ value }) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nListFilterItem.defaultProps = {\n single: false,\n maxLength: 5,\n items: [],\n};\n\nexport default ListFilterItem;\n","import { Input, Space, Button } from \"antd\";\nimport { useState, useEffect, useRef } from \"react\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport { useIntl } from \"@components/Intl\";\n\nconst InputFilterItem = ({ value, label, onChange, ...props }) => {\n const propsValue = value?.value;\n const [inputValue, setInputValue] = useState(propsValue || \"\");\n const [active, setActive] = useState(false);\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const searchHandler = () => {\n onChange(inputValue ? { label: inputValue, value: inputValue } : null);\n };\n const ref = useSimulationBlur(() => {\n setActive(false);\n searchHandler();\n });\n const inputValueRef = useRef(\"\");\n inputValueRef.current = inputValue;\n\n useEffect(() => {\n if (propsValue !== inputValueRef.current) {\n setInputValue(propsValue);\n }\n }, [propsValue]);\n return (\n <span ref={ref}>\n <Space.Compact>\n <Input\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n {...props}\n size=\"small\"\n value={inputValue}\n onFocus={() => {\n setActive(true);\n }}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n onPressEnter={searchHandler}\n />\n {active && (\n <Button size=\"small\" type=\"primary\" onClick={searchHandler}>\n {formatMessage({ id: \"search\" })}\n </Button>\n )}\n </Space.Compact>\n </span>\n );\n};\n\nexport default InputFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\n","import FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport {useContext as useFilter} from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\nimport FilterProvider from './FilterProvider';\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nFilter.FilterProvider = FilterProvider;\nexport default Filter;\nexport {fields, getFilterValue, useFilter, withFilterValue, SearchInput, FilterProvider};\nexport {default as AdvancedFilter, advancedFields} from \"./AdvancedFilter\";\nexport {default as FilterValueDisplay} from \"./FilterValueDisplay\";\nexport {default as FilterItem} from \"./FilterItem\";\nexport {default as FilterLines} from \"./FilterLines\";\nexport {default as PopoverItem} from \"./PopoverItem\";\nexport {default as withFieldItem} from \"./withFieldItem\";\nexport {default as FilterItemContainer} from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__j5Yjz\",\"inner\":\"style_inner__bMKeU__j5Yjz\",\"content\":\"style_content__xTfWZ__j5Yjz\",\"link\":\"style_link__93j7O__j5Yjz\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1679367216639,\n className: \"icon\",\n viewBox: \"0 0 1030 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 1696,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 201.171875,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.479711 385.587015v293.958522l258.791705 146.528403 258.791704-146.528403V385.587015l-251.127142-145.62669L252.479711 385.587015z\",\n fill: \"#FFFFFF\",\n opacity: 0.1,\n \"p-id\": 1697\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M778.629396 405.875564A20.739405 20.739405 0 0 1 766.456267 405.875564l-39.675383-21.641119a22.091975 22.091975 0 0 1 21.190261-39.224526l39.675383 21.190261a22.542831 22.542831 0 0 1-10.820559 42.380523z m-518.485122-6.76285a22.542831 22.542831 0 0 1-19.837691-12.173129 22.091975 22.091975 0 0 1 9.918845-30.207394l40.12624-20.739405a22.993688 22.993688 0 0 1 30.207394 9.918846 22.542831 22.542831 0 0 1-9.918846 30.207394L270.513977 396.858431a20.739405 20.739405 0 0 1-10.369703 2.254283z m399.909829-57.258792a22.542831 22.542831 0 0 1-10.820559-2.705139l-39.675383-21.190262a22.993688 22.993688 0 0 1-9.017133-30.65825 22.091975 22.091975 0 0 1 30.207394-9.017133l39.675383 21.190261a22.542831 22.542831 0 0 1-10.369702 42.380523z m-279.531109-4.057709a22.542831 22.542831 0 0 1-9.918846-45.085663l40.12624-20.288548a22.542831 22.542831 0 0 1 30.207394 9.467989 22.993688 22.993688 0 0 1-9.918846 33.814247l-40.12624 20.288548a20.739405 20.739405 0 0 1-10.369702 1.803427zM541.027953 277.381425a19.386835 19.386835 0 0 1-10.820559-2.70514L519.837692 270.618575l-8.566276 4.508567a22.542831 22.542831 0 0 1-20.288549-40.577097l18.935979-9.017132a23.895401 23.895401 0 0 1 20.739405 0l21.190261 11.722272a22.091975 22.091975 0 0 1 9.017133 30.207394 22.091975 22.091975 0 0 1-19.837692 9.918846z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1698\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1002.70514 289.554554a24.346258 24.346258 0 0 1-9.918846 0L513.074842 47.895401 33.814247 287.300271a22.542831 22.542831 0 0 1-30.207394-10.369703 22.993688 22.993688 0 0 1 9.918846-30.207394L503.155996 2.358882a22.993688 22.993688 0 0 1 20.288549 0l489.179441 244.364292a22.542831 22.542831 0 0 1-9.918846 45.085663z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1699\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.085663 762.052299a22.542831 22.542831 0 0 1-9.918846-40.577096l81.154193-39.675383A22.542831 22.542831 0 0 1 135.256988 721.475203l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.017132 0.901713z m889.540126-14.427412a24.346258 24.346258 0 0 1-9.918846 0l-80.703336-40.577096a22.542831 22.542831 0 0 1-10.369703-30.207394 22.091975 22.091975 0 0 1 30.207394-9.918846l80.703337 40.12624a22.542831 22.542831 0 0 1-9.918846 42.831379zM206.943192 683.15239a23.444545 23.444545 0 0 1-20.288548-12.623986 22.993688 22.993688 0 0 1 10.369702-30.207394l81.154193-39.675383a22.993688 22.993688 0 0 1 30.207394 10.369702 22.542831 22.542831 0 0 1-10.369702 30.207394l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.918846 2.254284z m566.275924-16.230839a26.600541 26.600541 0 0 1-9.918845 0l-80.703337-40.577097a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918845l80.703337 40.126239a22.993688 22.993688 0 0 1 9.918846 30.207395 22.542831 22.542831 0 0 1-20.288549 10.369702z m-405.770965-62.669071a22.091975 22.091975 0 0 1-20.288548-12.623986 22.542831 22.542831 0 0 1 13.525699-30.207394l81.154193-39.224527a22.542831 22.542831 0 0 1 30.207394 10.369703 22.091975 22.091975 0 0 1-10.369702 29.756537l-81.154193 39.675384a26.600541 26.600541 0 0 1-11.271416 2.254283z m242.560866-18.034265a19.837692 19.837692 0 0 1-9.918846-2.254284l-80.703336-40.577096a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918846l80.703337 40.12624a23.444545 23.444545 0 0 1 9.918845 30.658251 22.542831 22.542831 0 0 1-18.485121 12.173129z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1700\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.173129 1024a24.346258 24.346258 0 0 1-9.918846-2.254283L12.623986 783.242561a22.993688 22.993688 0 0 1-12.623986-20.288548V273.774572a23.444545 23.444545 0 0 1 10.820559-19.386835 21.641118 21.641118 0 0 1 21.641118 0l479.711452 238.954012L991.884581 253.486023a21.641118 21.641118 0 0 1 21.641118 0 23.444545 23.444545 0 0 1 10.820559 19.386835v490.081155a22.993688 22.993688 0 0 1-12.623986 20.288548l-490.081154 238.503156a22.542831 22.542831 0 0 1-9.467989 2.254283zM45.085663 748.526601l467.087466 225.428313 467.087466-225.428313V310.293959l-454.914337 225.428313a22.542831 22.542831 0 0 1-22.091975 0L45.085663 310.293959z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1701\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M511.722272 1020.393147a22.542831 22.542831 0 0 1-22.542831-22.542831V526.254283a22.542831 22.542831 0 0 1 45.085663 0v471.596033a22.542831 22.542831 0 0 1-22.542832 22.542831z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1702\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.623986 841.853922a18.935978 18.935978 0 0 1-9.918846-2.254283l-266.005411-128.043282a22.091975 22.091975 0 0 1-11.271415-20.288548V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832V676.38954l243.913435 117.222723 243.462579-117.222723V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832v307.48422a22.542831 22.542831 0 0 1-12.623986 20.288548l-266.00541 128.043282a19.837692 19.837692 0 0 1-11.722272 2.254283z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1703\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgFavicon);\nexport default __webpack_public_path__ + \"static/media/favicon.477a5bb996fd5b367fe0dddc29f67824.svg\";\nexport { ForwardRef as ReactComponent };","const importMessages = (locale) => {\n return ({\n 'en-US': () => import('./en-US'), 'zh-CN': () => import('./zh-CN')\n })[locale]();\n};\n\nexport default importMessages;","// extracted by mini-css-extract-plugin\nexport default {\"navigation-wrap\":\"style_navigation-wrap__VF8x2__j5Yjz\",\"navigation\":\"style_navigation__60RrS__j5Yjz\",\"logo\":\"style_logo__lB9RC__j5Yjz\",\"is-fixed\":\"style_is-fixed__kHFWj__j5Yjz\",\"main-menu\":\"style_main-menu__5TDBj__j5Yjz\",\"navigation-logo\":\"style_navigation-logo__q9qHu__j5Yjz\",\"navigation-list\":\"style_navigation-list__EYtkg__j5Yjz\",\"navigation-options\":\"style_navigation-options__0BdJU__j5Yjz\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__j5Yjz\",\"more-icon\":\"style_more-icon__gNMnt__j5Yjz\"};","import {Col, Layout, Menu, Row, Space} from \"antd\";\nimport {useLocation, useNavigate} from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport logo from \"./favicon.svg\";\nimport Image from \"@components/Image\";\nimport importMessages from \"./locale\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst {Header} = Layout;\n\nexport const navigationHeight = 48;\n\nconst SetTitle = ({name, mapping, defaultTitle}) => {\n const propsRef = useRef({\n mapping,\n defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({onReady}) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = ({\n permissions,\n list,\n headerLogo,\n rightOptions,\n isFixed,\n showIndex,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base,\n onChange,\n className,\n navigateTo,\n }) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({key, ...others}) => [key, others]));\n }, [list]);\n const nav = useNavigate();\n const navigate = typeof navigateTo === 'function' ? navigateTo : nav;\n const location = useLocation();\n const navigationRef = useRef();\n const resizeObserverRef = useRef(null);\n const [nameLabel, setNameLabel] = useState(\"更多\");\n const [ready, setReady] = useState(false);\n const pathModuleName = location.pathname\n .replace(new RegExp(`^${base}`), \"\")\n .split(\"/\")[1];\n const name = pathModuleName\n ? get(\n Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path =\n typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }),\n \"[0]\"\n )\n : \"home\";\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom =\n navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel =\n mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(\n navigationRef.current,\n mutationObserverInitConfig\n );\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex\n ? {\n label: indexLabel || (\n <FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\"/>\n ),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n }\n : false;\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (\n <SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\n />\n )}\n </FormattedMessage>\n <div className={classnames(style[\"navigation-wrap\"], className)}>\n <Header\n className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}\n >\n <Row justify=\"space-around\" wrap={false}>\n <Col\n className={classnames(\n \"navigation-logo\",\n style[\"navigation-logo\"]\n )}\n >\n <Image\n className={classnames(style[\"logo\"])}\n src={logo}\n alt=\"logo\"\n {...headerLogo}\n />\n </Col>\n <Col\n ref={navigationRef}\n flex={1}\n className={classnames(\n \"navigation-list\",\n style[\"navigation-list\"]\n )}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, path, permission}]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__j5Yjz\",\"has-children\":\"style_has-children__oQDqU__j5Yjz\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__j5Yjz\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__j5Yjz\",\"tab-step-control\":\"style_tab-step-control__EQaCl__j5Yjz\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__j5Yjz\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","_jsx","className","style","left","height","children","classnames","innerLeft","onMouseDown","preventDefault","body","Scroller","_ref2","scroller","getScrollTarget","setScrollerProps","ref","getScrollEl","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","props","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","_jsxs","x","defaultProps","querySelector","OptionsList","list","ButtonGroup","filter","hidden","map","type","more","Button","icon","Icon","_ref3","Fetch","loader","render","_ref4","data","ellipsis","Typography","Text","tooltip","overlayClassName","ColItem","isEmpty","emptyRender","hover","primary","onClick","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","value","emptyOf","isArray","length","values","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","other","_ref17","columnTypes","date","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","Enum","name","moduleName","force","_ref11","description","StateTag","omit","text","avatar","_ref12","Image","Avatar","size","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","options","_ref16","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","useMemo","transform","groupBy","fixed","get","result","key","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","align","justify","Col","Tooltip","LoadingButton","async","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","set","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","localStorage","getItem","setDataFunc","setItem","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","usePreset","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","target","startTransition","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","Map","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","Table","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_len","arguments","args","_key","pageData","locale","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","withFetch","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","params","fetchParams","dataType","JSON","parse","Number","Boolean","stringify","MenuItem","navigation","useNavigate","label","iconType","path","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","isLoading","Permissions","Spin","Menu","pathMatch","pathname","search","useLocation","selectedKey","setSelectKeyChange","items","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","node","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","_createElement","parentId","newOpenKeys","defaultItems","computedIsPass","permissions","some","usePermissions","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","message","isPass","Result","status","subTitle","createElement","preset","base","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","context","createContext","Provider","Consumer","useContext","useReactContext","isFixed","pageMenuOpenKey","pageProps","setPageProps","pathModuleName","split","FixedContainer","SimpleBar","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","isNotEmpty","localMenuOpenRef","targetProps","Page","openFeatures","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","MutationObserver","subtree","childList","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","Filter","extra","Space","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","setScrollLeft","_setPageProps","handlerScroll","Navigation","PageTitle","helperGuideName","HelperGuide","PageHeaderInner","info","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","direction","colorful","PageHeader","topArea","tableData","setTableData","PermissionsPage","stateBar","StateBar","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","showBorder","showBackground","filterName","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","Tag","background","border","treeTraverse","func","pId","parseProfile","memoize","profile","profileMap","output","features","keys","dependencies","depId","computedIsPaas","currentId","every","dependenciesTarget","useFeatureCall","debug","useFeatures","systemId","console","log","feature","Line","ComponentItem","FilterLines","displayLine","hasMore","isExpand","setIsExpand","filterValue","extraExpand","closable","onClose","newValue","valueBase","newFilterValue","FilterProvider","FilterOuter","others","FilterValueDisplay","active","WrappedComponent","interceptor","FilterItem","allowClear","input","valueType","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","selectedKeys","undefined","TreeField","maxLength","MAX_VALUE","checkStrictly","treeToList","nodeList","PopoverItem","onValidate","state","setState","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","InputFilterItem","useIntl","Compact","InputNumber","borderLeft","borderRight","pointerEvents","DatePickerFilterItem","withFieldItem","picker","DatePicker","startOf","endOf","Date","Flex","vertical","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","CheckableTag","CityFilterItemInner","addressApi","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","findIndex","error","getCityValue","getCity","withAddressApi","ListFilterItem","custom","itemValue","fields","propsValue","inputValue","setInputValue","setActive","searchHandler","useSimulationBlur","inputValueRef","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","MoreFilterLines","advancedFields","getFilterValue","useFilter","url","Link","href","SetTitle","mapping","defaultTitle","MenuReady","onReady","ready","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","navigateTo","nav","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","src","logo","alt","mode","_path","stateOption","isInner","Tabs","animated","tab"],"sourceRoot":""}
1
+ {"version":3,"file":"static/js/9119.a1f1316a.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/common/components/Scroller/style.module.scss?7480","common/components/Scroller/index.js","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/isColValueEmpty.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/tableLocalApis.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js","common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","components/Enum/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/locale/index.js","webpack://@kne-components/components-core/./src/components/Layout/PageHeader/style.module.scss?b470","components/Layout/PageHeader/index.js","components/Layout/TablePage.js","components/Layout/StateBarPage.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","components/Features/index.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/context.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.js","components/Filter/FilterProvider.js","components/Filter/FilterOuter.js","components/Filter/Filter.js","components/Filter/FilterItem.js","components/Filter/withFieldItem.js","webpack://@kne-components/components-core/./src/common/components/TreeField/style.module.scss?bcd6","common/components/TreeField/index.js","components/Filter/PopoverItem.js","components/Filter/fields/InputFilterItem.js","components/Filter/fields/NumberRangeFilterItem.js","components/Filter/fields/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/withFilterValue.js","components/Filter/SearchInput.js","components/Filter/AdvancedFilter/fields/CityFilterItem.js","components/Filter/AdvancedFilter/fields/ListFilterItem.js","components/Filter/AdvancedFilter/fields/InputFilterItem.js","components/Filter/AdvancedFilter/fields/index.js","components/Filter/AdvancedFilter/index.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__tRSYD\",\"is-resize\":\"style_is-resize__ut6RW__tRSYD\",\"is-moving\":\"style_is-moving__BJ9wR__tRSYD\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__tRSYD\",\"is-computed\":\"style_is-computed__B9rIF__tRSYD\",\"options-column\":\"style_options-column__vsPTr__tRSYD\",\"options-btn\":\"style_options-btn__U3uoy__tRSYD\",\"tooltip\":\"style_tooltip__vJlkv__tRSYD\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__tRSYD\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__tRSYD\",\"columns-control\":\"style_columns-control__5-5ZF__tRSYD\",\"columns-control-content\":\"style_columns-control-content__MoeUI__tRSYD\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__tRSYD\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__tRSYD\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__tRSYD\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__tRSYD\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__tRSYD\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__tRSYD\",\"is-drag\":\"style_is-drag__U68aw__tRSYD\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__tRSYD\",\"sortable-drag\":\"style_sortable-drag__K5hWd__tRSYD\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__tRSYD\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__tRSYD\",\"sort-btn\":\"style_sort-btn__KvNLr__tRSYD\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__tRSYD\",\"sort-icon\":\"style_sort-icon__dB85I__tRSYD\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__tRSYD\"};","// extracted by mini-css-extract-plugin\nexport default {\"scroller\":\"style_scroller__EfuqR__tRSYD\",\"scroller-inner\":\"style_scroller-inner__NJSE0__tRSYD\",\"is-moving\":\"style_is-moving__jGuy0__tRSYD\"};","import { createPortal } from \"react-dom\";\nimport { useEffect, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst ScrollBar = ({ onScroll, getContainer, ...scrollerProps }) => {\n const startRef = useRef(0);\n const [moving, setMoving] = useState(false);\n const movingRef = useRef(moving);\n movingRef.current = moving;\n const onScrollRef = useRef(onScroll);\n onScrollRef.current = onScroll;\n const ratioRef = useRef(1);\n ratioRef.current = scrollerProps.width / scrollerProps.innerWidth;\n\n useEffect(() => {\n const moveHandler = (e) => {\n movingRef.current &&\n onScrollRef.current(ratioRef.current * (e.clientX - startRef.current));\n startRef.current = e.clientX;\n };\n const upHandler = () => {\n setMoving(false);\n };\n document.addEventListener(\"mousemove\", moveHandler, true);\n document.addEventListener(\"mouseup\", upHandler, true);\n return () => {\n document.removeEventListener(\"mousemove\", moveHandler, true);\n document.removeEventListener(\"mouseup\", upHandler, true);\n };\n }, []);\n return createPortal(\n scrollerProps.hasScroller ? (\n <div\n className={style[\"scroller\"]}\n style={{\n left: scrollerProps.left,\n width: scrollerProps.width,\n height: 15, //scrollerProps.height\n }}\n >\n <div\n className={classnames(style[\"scroller-inner\"], {\n [style[\"is-moving\"]]: moving,\n })}\n style={{\n width: scrollerProps.innerWidth,\n left: scrollerProps.innerLeft,\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n startRef.current = e.clientX;\n setMoving(true);\n }}\n />\n </div>\n ) : null,\n getContainer() || document.body\n );\n};\n\nconst Scroller = ({ className, scroller, getScrollTarget, children }) => {\n const [scrollerProps, setScrollerProps] = useState({\n left: 0,\n width: 0,\n innerLeft: 0,\n innerWidth: 0,\n height: 0,\n hasScroller: false,\n });\n const ref = useRef(null);\n const getScrollEl = useRefCallback(() => {\n return ref.current && getScrollTarget(ref.current);\n });\n const getContainer = useRef();\n\n getContainer.current =\n typeof scroller === \"object\" && typeof scroller.getContainer === \"function\"\n ? scroller.getContainer\n : () => null;\n useEffect(() => {\n const container = getContainer.current() || document.documentElement;\n let scrollEl;\n const computed = () => {\n if (!scrollEl) {\n return;\n }\n const { left, width, top, height } = scrollEl.getBoundingClientRect();\n const scrollerHeight =\n scrollEl.offsetHeight - scrollEl.clientHeight || 15;\n const innerWidth =\n (width * scrollEl.clientWidth) / scrollEl.scrollWidth - 6;\n const innerLeft =\n (scrollEl.scrollLeft * scrollEl.clientWidth) / scrollEl.scrollWidth + 2;\n const containerRect = container.getBoundingClientRect();\n //console.log(endRef.current.vi);\n setScrollerProps((props) => {\n return Object.assign({}, props, {\n left,\n width,\n innerLeft,\n innerWidth,\n height: scrollerHeight,\n hasScroller:\n scrollEl.scrollWidth - scrollEl.clientWidth > 0 &&\n (container === document.documentElement\n ? top + height - container.offsetHeight > 0 &&\n top < container.offsetHeight\n : top < containerRect.top + containerRect.height &&\n top + height > containerRect.top + containerRect.height),\n });\n });\n };\n const resizeObserver = new ResizeObserver(computed);\n const refResizeObserver = new ResizeObserver(() => {\n scrollEl = getScrollEl();\n if (!scrollEl) {\n return;\n }\n resizeObserver.disconnect();\n computed();\n Array.from(scrollEl.children).forEach((item) => {\n resizeObserver.observe(item);\n });\n scrollEl.addEventListener(\"scroll\", computed);\n });\n\n refResizeObserver.observe(ref.current);\n\n window.addEventListener(\"scroll\", computed);\n container.addEventListener(\"scroll\", computed);\n return () => {\n window.removeEventListener(\"scroll\", computed);\n container.removeEventListener(\"scroll\", computed);\n };\n }, [getScrollEl]);\n if (!scroller) {\n return children;\n }\n return (\n <div\n className={classnames(style[\"scroller-outer\"], className)}\n ref={ref}\n style={{\n \"--scroller-bar-height\": scrollerProps?.hasScroller ? \"15px\" : \"0px\",\n }}\n >\n {children}\n <ScrollBar\n {...scrollerProps}\n getContainer={getContainer.current}\n onScroll={(x) => {\n const scrollEl = getScrollEl();\n scrollEl.scrollLeft += x;\n }}\n />\n </div>\n );\n};\n\nScroller.defaultProps = {\n scroller: true,\n getScrollTarget: () => document.querySelector(\".simplebar-content-wrapper\"),\n};\n\nexport default Scroller;\n","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__tRSYD\",\"tag\":\"columns_tag__bQZLG__tRSYD\",\"avatar\":\"columns_avatar__SLPI+__tRSYD\",\"hover\":\"columns_hover__oAwHg__tRSYD\",\"primary\":\"columns_primary__6KtaA__tRSYD\",\"loading\":\"columns_loading__gtBay__tRSYD\",\"options\":\"columns_options__WvDZD__tRSYD\"};","import { Button } from \"antd\";\nimport Fetch from \"@kne/react-fetch\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list = [], width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list\n .filter((item) => !item?.hidden)\n .map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nconst Options = ({ list, ...props }) => {\n if (typeof list === \"function\") {\n return (\n <Fetch\n loader={list}\n render={({ data }) => {\n return <OptionsList {...props} list={data} />;\n }}\n />\n );\n }\n return <OptionsList {...props} list={list} />;\n};\n\nexport default Options;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n },\n typeof ellipsis === \"object\" ? ellipsis : {}\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","const isColValueEmpty = (value, emptyOf) =>\n typeof emptyOf === \"function\"\n ? emptyOf(value)\n : (Array.isArray(value) && value.length === 0) ||\n (value &&\n typeof value === \"object\" &&\n Object.values(value).length === 0) ||\n value === \"\" ||\n value === void 0 ||\n value === null;\n\nexport default isColValueEmpty;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst DisplayInfo = createWithFetch({\n loading: null,\n})(({ data, children }) => {\n return children(data);\n});\n\nconst HideInfoComponent = ({\n api,\n expand,\n onExpand,\n ellipsis,\n hover,\n primary,\n emptyRender,\n isEmpty,\n}) => {\n const targetApi = Object.assign({}, api);\n if (expand) {\n return (\n <DisplayInfo {...targetApi}>\n {(data) => {\n return (\n <ColItem\n type=\"hide-info-expand\"\n item={data}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isColValueEmpty(data)}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof targetApi.children === \"function\"\n ? targetApi.children(data)\n : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem type=\"hide-info\" primary emptyRender={emptyRender}>\n <Button className=\"btn-no-padding\" type=\"link\" onClick={onExpand}>\n 查看\n </Button>\n </ColItem>\n );\n};\n\nexport default HideInfoComponent;\n","import columnsStyle from \"./columns.module.scss\";\nimport dayjs from \"dayjs\";\nimport OptionsList from \"./OptionsList\";\nimport classnames from \"classnames\";\nimport StateTag from \"@components/StateTag\";\nimport Image from \"@components/Image\";\nimport Enum from \"@components/Enum\";\nimport HideInfoComponent from \"./HideInfoComponent\";\nimport Ellipsis from \"./Ellipsis\";\nimport ColItem from \"./ColItem\";\nimport omit from \"lodash/omit\";\n\n// init:160px min:120px max:400px\nconst date = (item, { hover, primary, isEmpty, emptyRender, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"date\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM-DD\")}\n </ColItem>\n );\n};\n\nconst dateShort = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\"YYYY-MM\")}\n </ColItem>\n );\n};\n\n// init:240px min:120px max:400px\nconst dateRange = (\n item,\n { hover, primary, isEmpty, emptyRender, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"date-range\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {dayjs(item?.[0]).format(\"YYYY-MM-DD HH:mm\") +\n \"-\" +\n dayjs(item?.[1]).format(\"HH:mm\")}\n </ColItem>\n );\n};\n// init:190px min:190px max:400px\nconst datetime = (\n item,\n { hover, primary, emptyRender, isEmpty, hideSecond, ...props }\n) => {\n return (\n <ColItem\n {...props}\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty || !dayjs(item).isValid()}\n >\n {dayjs(item).format(\n hideSecond ? \"YYYY-MM-DD HH:mm\" : \"YYYY-MM-DD HH:mm:ss\"\n )}\n </ColItem>\n );\n};\n// init:190px min:100px max:400px\nconst serialNumber = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:120px min:100px max:400px\nconst serialNumberShort = (\n item,\n { hover, primary, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"serial-number-short\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item}\n </ColItem>\n );\n};\n// init:200px min:120px max:400px\nconst user = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:100px 100px 400px\nconst userName = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"user-name\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:240px 160px 400px\nconst contacts = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"contacts\"\n item={item}\n primary={primary}\n hover={hover}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:140px min:100px max:400px\nconst tag = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"tag\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n {item &&\n (item.isEnum ? (\n <Enum\n name={item.name}\n moduleName={item.moduleName}\n force={item.force}\n >\n {({ type, description }) => (\n <StateTag\n type={type}\n {...Object.assign(\n {},\n omit(item, [\"name\", \"isEnum\", \"moduleName\", \"force\"])\n )}\n text={description}\n />\n )}\n </Enum>\n ) : (\n <StateTag {...Object.assign({}, item)} />\n ))}\n </ColItem>\n );\n};\n// init:80px min:64px max:200px\nconst avatar = (item, { emptyRender, isEmpty, ...props }) => {\n return (\n <ColItem\n {...props}\n type=\"avatar\"\n item={item}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Image.Avatar {...Object.assign({}, item)} size={32} />\n </ColItem>\n );\n};\n// init:70px min:70px max:400px\nconst singleRow = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"single-row\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:80px min:80px max:400px\nconst hideInfo = (item, props) => {\n return <HideInfoComponent api={item} {...props} />;\n};\n// init:300px min:160px max:500px\nconst mainInfo = (\n item,\n { ellipsis, hover = true, primary = true, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"main-info\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n// init:400px 160px 600px\nconst description = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"description\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\n// init:180px min:120px max:400px\nconst options = (item, { width }) => {\n return (\n <OptionsList\n className={classnames(columnsStyle[\"col-item\"], columnsStyle[\"options\"])}\n list={item}\n width={width}\n />\n );\n};\n\nconst other = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"other\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst sensitiveInfo = (\n item,\n { hover, primary, ellipsis, emptyRender, isEmpty, ...props }\n) => {\n return (\n <ColItem\n {...props}\n type=\"sensitiveInfo\"\n item={item}\n hover={hover}\n primary={primary}\n emptyRender={emptyRender}\n isEmpty={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>{item}</Ellipsis>\n </ColItem>\n );\n};\n\nconst columnTypes = {\n date: {\n render: date,\n width: 160,\n min: 120,\n max: 400,\n },\n dateShort: {\n render: dateShort,\n width: 120,\n min: 100,\n max: 400,\n },\n dateRange: {\n render: dateRange,\n width: 240,\n min: 120,\n max: 400,\n },\n datetime: {\n render: datetime,\n width: 190,\n min: 190,\n max: 400,\n },\n serialNumber: {\n render: serialNumber,\n width: 190,\n min: 100,\n max: 400,\n },\n serialNumberShort: {\n render: serialNumberShort,\n width: 120,\n min: 100,\n max: 400,\n },\n user: {\n render: user,\n width: 200,\n min: 120,\n max: 400,\n },\n userName: {\n render: userName,\n width: 100,\n min: 100,\n max: 400,\n },\n contacts: {\n render: contacts,\n width: 240,\n min: 160,\n max: 400,\n },\n tag: {\n render: tag,\n width: 140,\n min: 100,\n max: 400,\n },\n avatar: {\n render: avatar,\n width: 80,\n min: 64,\n max: 200,\n },\n singleRow: {\n render: singleRow,\n width: 70,\n min: 70,\n max: 400,\n },\n hideInfo: {\n render: hideInfo,\n width: 120,\n min: 80,\n max: 400,\n },\n mainInfo: {\n render: mainInfo,\n width: 300,\n min: 160,\n max: 500,\n },\n description: {\n render: description,\n width: 400,\n min: 160,\n max: 600,\n },\n options: {\n render: options,\n width: 180,\n min: 120,\n max: 400,\n },\n sensitiveInfo: {\n render: sensitiveInfo,\n width: 200,\n min: 100,\n max: 400,\n },\n other: {\n render: other,\n width: 200,\n min: 120,\n max: 400,\n },\n otherSmall: {\n render: other,\n width: 100,\n min: 70,\n max: 400,\n },\n otherLarge: {\n render: other,\n width: 300,\n min: 120,\n max: 500,\n },\n};\n\nexport default columnTypes;\n","import { useMemo, useState } from \"react\";\nimport groupBy from \"lodash/groupBy\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport { SearchInput } from \"@components/Common\";\nimport style from \"./style.module.scss\";\nimport { Button, Checkbox, Col, Collapse, List, Row, Tooltip } from \"antd\";\nimport { ReactSortable } from \"react-sortablejs\";\nimport classnames from \"classnames\";\nimport transform from \"lodash/transform\";\nimport get from \"lodash/get\";\nimport set from \"lodash/set\";\nimport cloneDeep from \"lodash/cloneDeep\";\n\nconst { Panel } = Collapse;\n\nconst ColumnsControlContent = ({\n close,\n onConfirm,\n columns,\n config: defaultValue,\n}) => {\n const [config, onChange] = useState(defaultValue || {});\n\n const [searchText, setSearchText] = useState(\"\");\n const { leftFixedColumns, rightFixedColumns, visibleColumns, hiddenColumns } =\n useMemo(() => {\n return transform(\n Object.assign(\n {\n leftFixedColumns: [],\n rightFixedColumns: [],\n visibleColumns: [],\n hiddenColumns: [],\n },\n groupBy(columns, (item) => {\n if (item.fixed === \"right\") {\n return \"rightFixedColumns\";\n }\n if (item.fixed === true || item.fixed === \"left\") {\n return \"leftFixedColumns\";\n }\n return (get(config, `${item.name}.visible`) !== true &&\n item.hidden) ||\n get(config, `${item.name}.visible`) === false\n ? \"hiddenColumns\"\n : \"visibleColumns\";\n })\n ),\n (result, value, key) => {\n result[key] = value.sort((a, b) => {\n return (\n get(config, `${a.name}.rank`, 0) -\n get(config, `${b.name}.rank`, 0)\n );\n });\n },\n {}\n );\n }, [columns, config]);\n\n const handlerColumnsChange = (columns) => {\n const newConfig = cloneDeep(config);\n const columnsList = [].concat(\n columns.leftFixedColumns,\n columns.visibleColumns,\n columns.rightFixedColumns\n );\n (columns.hiddenColumns || []).forEach((col) => {\n set(newConfig, `${col.name}.visible`, false);\n });\n columnsList.forEach((col, index) => {\n set(newConfig, `${col.name}.rank`, index + 1);\n });\n onChange(newConfig);\n };\n\n const renderColumn = (item) => {\n return (\n <>\n {item.titleText || item.title || \"未命名列\"}\n {item.groupHeader && item.groupHeader.length > 0\n ? `(${item.groupHeader.map(({ title }) => title).join(\"-\")})`\n : \"\"}\n </>\n );\n };\n\n return (\n <div className={style[\"columns-control-content\"]}>\n <div className={style[\"columns-control-content-title\"]}>\n <Row align=\"middle\" justify=\"space-between\">\n <Col>编辑表格</Col>\n <Col>\n <Tooltip title=\"恢复默认\">\n <LoadingButton\n type=\"text\"\n icon={<Icon type=\"icon-huifumorenshezhi\" />}\n onClick={async () => {\n onConfirm && (await onConfirm({}));\n close();\n }}\n />\n </Tooltip>\n </Col>\n </Row>\n </div>\n <div className={style[\"columns-control-content-scroller\"]}>\n <Collapse\n defaultActiveKey={[\"active\", \"un-active\"]}\n ghost={true}\n bordered\n >\n <Panel key=\"active\" header=\"显示的信息\">\n <List className={style[\"columns-control-content-list\"]}>\n {leftFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `left-${index}`}\n >\n <Checkbox checked disabled>\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n <ReactSortable\n list={visibleColumns}\n filter=\".ignore-elements\"\n dragClass={style[\"sortable-drag\"]}\n ghostClass={style[\"sortable-ghost\"]}\n forceFallback\n setList={(visibleColumns) => {\n handlerColumnsChange({\n leftFixedColumns,\n visibleColumns,\n hiddenColumns,\n rightFixedColumns,\n });\n }}\n animation={300}\n delayOnTouchStart\n delay={2}\n >\n {visibleColumns.map((item, index) => (\n <List.Item\n className={classnames(\n style[\"columns-control-content-item\"],\n style[\"is-drag\"]\n )}\n key={item.name || `visible-${index}`}\n >\n <Icon\n type=\"icon-paixu\"\n className={style[\"columns-control-content-item-icon\"]}\n />\n <Checkbox\n checked\n disabled={\n item.fixed ||\n leftFixedColumns.length +\n visibleColumns.length +\n rightFixedColumns.length <=\n 1\n }\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: false }\n );\n onChange(newConfig);\n }}\n >\n {renderColumn(item)}\n </Checkbox>\n </List.Item>\n ))}\n </ReactSortable>\n {rightFixedColumns.map((item, index) => (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.name || `right-${index}`}\n >\n <Checkbox checked disabled>\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n ))}\n </List>\n </Panel>\n <Panel\n key=\"un-active\"\n header={\n <Row wrap={false} justify=\"space-between\">\n <Col>隐藏的信息</Col>\n <Col\n onClick={(e) => {\n e.stopPropagation();\n e.preventDefault();\n }}\n >\n <SearchInput\n prefix={<Icon type=\"icon-sousuo\" size={12} />}\n placeholder=\"搜索\"\n onSearch={(value) => {\n setSearchText(value);\n }}\n className={style[\"columns-control-content-input\"]}\n size=\"small\"\n />\n </Col>\n </Row>\n }\n >\n <List\n dataSource={hiddenColumns.filter(\n (item) =>\n typeof (item.titleText || item.title) === \"string\" &&\n (item.titleText || item.title).indexOf(searchText) > -1\n )}\n renderItem={(item) => {\n return (\n <List.Item\n className={style[\"columns-control-content-item\"]}\n key={item.key}\n >\n <Checkbox\n checked={false}\n onChange={(e) => {\n e.stopPropagation();\n e.preventDefault();\n const newConfig = Object.assign({}, config);\n newConfig[item.name] = Object.assign(\n {},\n newConfig[item.name],\n { visible: true }\n );\n onChange(newConfig);\n }}\n >\n {item.titleText || item.title || \"未命名列\"}\n </Checkbox>\n </List.Item>\n );\n }}\n />\n </Panel>\n </Collapse>\n </div>\n <Row\n className={style[\"columns-control-content-footer\"]}\n justify=\"end\"\n gutter={10}\n >\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n onChange(defaultValue || {});\n close();\n }}\n >\n 取消\n </Button>\n </Col>\n <Col>\n <LoadingButton\n type=\"primary\"\n size=\"small\"\n onClick={async () => {\n onConfirm && (await onConfirm(config));\n close();\n }}\n >\n 确定\n </LoadingButton>\n </Col>\n </Row>\n </div>\n );\n};\n\nexport default ColumnsControlContent;\n","import localStorage from \"@common/utils/localStorage\";\nimport get from \"lodash/get\";\n\nconst storageKey = \"COMPONENTS_CORE_TABLE_CONFIG\";\n\nconst getDataApi = (name) => {\n if (!name) {\n return {};\n }\n\n return {\n loader: () => get(localStorage.getItem(storageKey), name, {}),\n };\n};\n\nconst setDataFunc = (name, data) => {\n if (!name) {\n return;\n }\n return localStorage.setItem(\n storageKey,\n Object.assign({}, localStorage.getItem(storageKey), { [name]: data })\n );\n};\n\nconst tableLocalApis = { getDataApi, setDataFunc };\n\nexport default tableLocalApis;\n","import { startTransition, useEffect, useMemo, useRef, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport classnames from \"classnames\";\nimport columnTypes from \"./columnTypes\";\nimport get from \"lodash/get\";\nimport sumBy from \"lodash/sumBy\";\nimport transform from \"lodash/transform\";\nimport pick from \"lodash/pick\";\nimport { Col, Popover, Row } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport { usePreset } from \"@components/Global\";\nimport { useFetch } from \"@kne/react-fetch\";\nimport ColumnsControlContent from \"./ColumnsControlContent\";\nimport { useDebouncedCallback } from \"use-debounce\";\nimport style from \"./style.module.scss\";\nimport isEqual from \"lodash/isEqual\";\nimport findLastIndex from \"lodash/findLastIndex\";\nimport tableLocalApis from \"./tableLocalApis\";\n\nconst TableConfig = ({ title, columns, config, setConfig }) => {\n const [open, setOpen] = useState(false);\n return (\n <Row wrap={false}>\n <Col flex={1}>{title}</Col>\n <Col>\n <Popover\n open={open}\n onOpenChange={setOpen}\n trigger=\"click\"\n placement=\"bottomLeft\"\n overlayClassName={style[\"columns-control-overlay\"]}\n content={\n <ColumnsControlContent\n columns={columns}\n config={config}\n close={() => {\n setOpen(false);\n }}\n onConfirm={(newConfig) => {\n setConfig((config) => {\n return transform(\n newConfig,\n (result, value, key) => {\n result[key] = Object.assign(\n {},\n config[key],\n pick(value, [\"visible\", \"rank\"])\n );\n },\n {}\n );\n });\n }}\n />\n }\n >\n <span className={style[\"table-changer-setting\"]}>\n <Icon type=\"icon-shezhi\" />\n </span>\n </Popover>\n </Col>\n </Row>\n );\n};\n\nconst useTableConfig = ({\n columns,\n name,\n controllerOpen,\n tableWidth,\n rowKey,\n}) => {\n const [currentMoveColumnIndex, setCurrentMoveColumnIndex] = useState(null);\n const currentMoveColumnIndexRef = useRef(currentMoveColumnIndex);\n currentMoveColumnIndexRef.current = currentMoveColumnIndex;\n const currentMoveColumnRef = useRef(null);\n const startPointRef = useRef(null);\n const [config, setConfigBase] = useState({});\n const { tableServerApis: presetTableServerApis } = usePreset();\n const tableServerApis = presetTableServerApis\n ? presetTableServerApis\n : tableLocalApis;\n\n const tablePageServerParams = tableServerApis?.getDataApi(name);\n\n const saveConfig = useDebouncedCallback((name, target) => {\n tableServerApis?.setDataFunc(name, target);\n }, 500);\n\n const setConfig = useRefCallback((newConfig) => {\n startTransition(() => {\n setConfigBase((config) => {\n const target =\n typeof newConfig === \"function\" ? newConfig(config) : newConfig;\n name && controllerOpen && saveConfig(name, target);\n return target;\n });\n });\n });\n\n const { send } = useFetch(\n Object.assign({\n ...Object.assign({}, tablePageServerParams),\n auto: false,\n cache: `TABLE_CONFIG_${name}`,\n isLocal: true,\n onRequestSuccess: (data) => {\n setConfigBase(Object.assign({}, data));\n },\n })\n );\n\n const getTableConfig = useRefCallback(() => {\n if (name && controllerOpen && tablePageServerParams) {\n send({ force: false });\n }\n });\n\n useEffect(() => {\n getTableConfig();\n }, [getTableConfig]);\n\n const visibleColumns = useMemo(() => {\n return columns\n .filter((col) => {\n return !(\n get(config, `${col.name}.visible`) === false ||\n (get(config, `${col.name}.visible`) !== true && col.hidden === true)\n );\n })\n .sort((a, b) => {\n const computedIndex = (item) => {\n return (\n get(config, `${item.name}.rank`, 0) +\n (item.fixed === \"left\" ? -10000 : 0) +\n (item.fixed === \"right\" ? 10000 : 0)\n );\n };\n return computedIndex(a) - computedIndex(b);\n });\n }, [columns, config]);\n\n const lastNotOptionsColumnIndex = useMemo(() => {\n return findLastIndex(visibleColumns, ({ type }) => type !== \"options\");\n }, [visibleColumns]);\n\n const totalWidth = useMemo(() => {\n return sumBy(\n visibleColumns,\n ({ type, name }) =>\n get(config, `${name}.width`) || columnTypes[type].width\n );\n }, [visibleColumns, config]);\n\n const computedRealWidth = ({ width, index }) => {\n return lastNotOptionsColumnIndex === index\n ? width + Math.max(tableWidth - totalWidth - 2, 0)\n : width;\n };\n\n const resizeBarRender = useRefCallback((column, index) => {\n return (\n <span\n className={classnames(style[\"cell-resize-bar\"])}\n onMouseDown={(e) => {\n currentMoveColumnRef.current = Object.assign({}, column, { index });\n startPointRef.current = e.clientX;\n setCurrentMoveColumnIndex(index);\n }}\n >\n <Icon type=\"icon-paixu\" />\n </span>\n );\n });\n\n const resize = useRefCallback((delta) => {\n if (currentMoveColumnIndex === null) {\n return;\n }\n if (!currentMoveColumnRef.current) {\n return;\n }\n const { name, width, min, max, index } = currentMoveColumnRef.current;\n const currentWidth = Math.min(Math.max(width + delta, min), max);\n if (currentWidth < computedRealWidth({ width: min, index })) {\n return;\n }\n setConfig((config) => {\n return Object.assign({}, config, {\n [name]: Object.assign({}, config[name], {\n width: currentWidth,\n }),\n });\n });\n });\n\n const computedColumnProps = useRefCallback((column, index) => {\n const { name, width, min, max } = column;\n let targetColumn = column;\n if (index === visibleColumns.length - 1) {\n targetColumn = Object.assign({}, column, {\n className: \"has-config-btn\",\n title: (\n <TableConfig\n title={column?.title}\n columns={columns}\n config={config}\n setConfig={setConfig}\n />\n ),\n });\n }\n\n const movingClass = () => {\n return {\n className: classnames({\n [style[\"is-moving\"]]: currentMoveColumnIndexRef.current === index,\n }),\n };\n };\n const currentWidth = Math.min(\n Math.max(get(config, `${name}.width`) || width, min),\n max\n );\n\n const realWidth = computedRealWidth({ width: currentWidth, index });\n\n return Object.assign({}, targetColumn, {\n onHeaderCell: movingClass,\n onCell: movingClass,\n width: realWidth,\n shouldCellUpdate: (record, prevRecord) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(record) : record[rowKey];\n const prevItemKey =\n typeof rowKey === \"function\"\n ? rowKey(prevRecord)\n : prevRecord[rowKey];\n return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !(\n itemKey === prevItemKey &&\n isEqual(record[column.name], prevRecord[column.name])\n )\n );\n },\n title: (\n <>\n {targetColumn.title}\n {!(realWidth > currentWidth && realWidth > max) &&\n resizeBarRender(\n Object.assign({}, targetColumn, { width: realWidth }),\n index\n )}\n </>\n ),\n });\n });\n\n useEffect(() => {\n const handlerCancelResize = () => {\n setCurrentMoveColumnIndex(null);\n startPointRef.current = null;\n currentMoveColumnRef.current = null;\n };\n\n const handlerResize = (e) => {\n if (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnRef.current === null\n ) {\n return;\n }\n if (startPointRef.current === null) {\n startPointRef.current = e.clientX;\n return;\n }\n resize(e.clientX - startPointRef.current);\n };\n document.documentElement.addEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.addEventListener(\"mousemove\", handlerResize, true);\n return () => {\n document.documentElement.removeEventListener(\n \"mouseup\",\n handlerCancelResize,\n true\n );\n document.documentElement.removeEventListener(\n \"mousemove\",\n handlerResize,\n true\n );\n };\n }, [resize]);\n\n return {\n visibleColumns,\n currentMoveColumnIndex,\n resizeBarRender,\n columnsConfig: config,\n totalWidth,\n computedColumnProps,\n };\n};\n\nexport default useTableConfig;\n","import { useRef, useState } from \"react\";\nimport columnTypes from \"@components/Table/columnTypes\";\nimport isNil from \"lodash/isNil\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport isColValueEmpty from \"./isColValueEmpty\";\n\nconst useColumnTypeProps = ({ rowKey, renderProps }) => {\n const [expandInfo, setExpandInfo] = useState(null);\n const columnRenderPropsRef = useRef(renderProps);\n columnRenderPropsRef.current = renderProps;\n\n const computedColumnProps = useRefCallback(\n (col, index, { columnsConfig }) => {\n const {\n name,\n type,\n expandType,\n title,\n titleRender,\n fixed,\n emptyOf,\n emptyRender,\n groupHeader,\n sort,\n disableColItem,\n ...otherColProps\n } = col;\n const { render, width, min, max } = Object.assign(\n {},\n columnTypes[type || \"other\"],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = render;\n\n return {\n name,\n title: typeof titleRender === \"function\" ? titleRender(title) : title,\n min,\n max,\n width,\n fixed,\n groupHeader,\n sort,\n type,\n render: (item) => {\n const itemKey =\n typeof rowKey === \"function\" ? rowKey(item) : item[rowKey];\n const colProps = Object.assign(\n {},\n col,\n typeof col.render === \"function\"\n ? col.render({\n ...columnRenderPropsRef.current,\n name,\n target: item,\n })\n : {}\n );\n const targetRenderWithProps = (colValue) => {\n const isEmpty = isColValueEmpty(colValue, emptyOf);\n return targetRender(colValue, {\n ...otherColProps,\n name,\n width: get(columnsConfig, `${name}.width`) || width,\n min,\n max,\n isEmpty,\n emptyRender,\n hover: colProps.hover,\n colValue: Object.assign({}, item),\n renderProps: columnRenderPropsRef.current,\n primary: colProps.primary,\n ellipsis: colProps.ellipsis,\n expand: expandInfo === itemKey,\n onExpand: () => setExpandInfo(itemKey),\n });\n };\n\n const colValue =\n colProps.hasOwnProperty(\"valueOf\") &&\n typeof colProps.valueOf === \"function\"\n ? colProps.valueOf(\n item,\n Object.assign(\n {},\n columnRenderPropsRef.current,\n {\n name,\n },\n disableColItem\n ? { targetRender: targetRenderWithProps }\n : {}\n )\n )\n : get(item, name);\n return disableColItem ? colValue : targetRenderWithProps(colValue);\n },\n };\n }\n );\n\n return {\n expandInfo,\n computedColumnProps,\n };\n};\n\nexport default useColumnTypeProps;\n","import { useMemo } from \"react\";\n\nconst useGroupHeader = (columns) => {\n return useMemo(() => {\n const groupHeaderColumns = columns.filter(\n (item) => item.groupHeader && item.groupHeader.length > 0\n );\n if (groupHeaderColumns.length > 0) {\n const newColumns = columns.slice(0);\n const group = [];\n const appendGroupHeader = (column) => {\n const { groupHeader } = column;\n if (!(groupHeader && groupHeader.length > 0)) {\n return;\n }\n const columnIndex = newColumns.indexOf(column);\n const core = (groupHeader, group) => {\n const [targetHeader, ...otherHeader] = groupHeader;\n let currentGroup = group.find(\n (item) => item.name === targetHeader.name\n );\n if (!currentGroup) {\n currentGroup = Object.assign(\n { startIndex: columnIndex },\n targetHeader,\n { children: [] }\n );\n group.push(currentGroup);\n }\n if (otherHeader.length > 0) {\n core(otherHeader, currentGroup.children);\n } else {\n currentGroup.children.push(column);\n }\n };\n core(groupHeader, group);\n newColumns.splice(columnIndex, 1);\n };\n groupHeaderColumns.forEach(appendGroupHeader);\n group.forEach((groupColumn, index) => {\n newColumns.splice(groupColumn.startIndex + index, 0, groupColumn);\n });\n\n return { columns: newColumns, hasGroupHeader: true };\n }\n return { columns, hasGroupHeader: false };\n }, [columns]);\n};\n\nexport default useGroupHeader;\n","import useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport classnames from \"classnames\";\nimport clone from \"lodash/clone\";\nimport { useCallback, useMemo } from \"react\";\nimport style from \"./style.module.scss\";\n\nconst sortArrayToMap = (sort) =>\n new Map(\n (sort || []).map(({ name, sort }) => {\n return [name, sort];\n })\n );\n\nconst useSort = (props) => {\n const [sort, setSort] = useControlValue(props, {\n value: \"sort\",\n defaultValue: \"defaultSort\",\n onChange: \"onSortChange\",\n });\n\n const mapSort = useMemo(() => {\n return sortArrayToMap(sort);\n }, [sort]);\n\n const setMapSort = useCallback(\n (callback) => {\n return setSort((sort) => {\n const newSort = callback(sortArrayToMap(sort));\n return Array.from(newSort).map(([name, sort]) => ({ name, sort }));\n });\n },\n [setSort]\n );\n\n return useCallback(\n ({ single, name }) => (\n <div\n className={classnames(style[\"sort-btn\"], {\n [style[\"sort-active-desc\"]]: mapSort.get(name) === \"DESC\",\n [style[\"sort-active-asc\"]]: mapSort.get(name) === \"ASC\",\n })}\n onClick={() => {\n setMapSort((sort) => {\n const current = sort.get(name);\n const targetValue = (() => {\n if (current === \"DESC\") {\n return \"ASC\";\n }\n if (current === \"ASC\") {\n return null;\n }\n return \"DESC\";\n })();\n if (single) {\n return new Map(targetValue ? [[name, targetValue]] : []);\n }\n const newSort = clone(sort);\n targetValue ? newSort.set(name, targetValue) : newSort.delete(name);\n return newSort;\n });\n }}\n >\n <Icon type=\"icon-triangle-up\" className={style[\"sort-icon\"]} />\n <Icon type=\"icon-triangle-down\" className={style[\"sort-icon\"]} />\n </div>\n ),\n [mapSort, setMapSort]\n );\n};\n\nexport default useSort;\n","import style from \"./style.module.scss\";\nimport { Table as AntdTable } from \"antd\";\nimport { useEffect, useMemo, useRef, useState } from \"react\";\nimport classnames from \"classnames\";\nimport Scroller from \"@common/components/Scroller\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\nimport useResize from \"@common/hooks/useResize\";\nimport useTableConfig from \"./useTableConfig\";\nimport useColumnTypeProps from \"@components/Table/useColumnTypeProps\";\nimport useGroupHeader from \"./useGroupHeader\";\nimport useSort from \"./useSort\";\nimport useRefCallback from \"@kne/use-ref-callback\";\n\nconst Table = ({\n columns,\n className,\n getScrollEl,\n sticky,\n stickyOffset,\n pagination,\n columnRenderProps,\n rowKey,\n dataSource,\n controllerOpen,\n name,\n summary,\n scroll,\n onTablePropsReady,\n ...props\n}) => {\n const [tableWidth, setTableWidth] = useState(0);\n const [isLayout, setIsLayout] = useState(true);\n\n useEffect(() => {\n if (tableWidth) {\n setTimeout(() => {\n setIsLayout(false);\n }, 0);\n }\n }, [tableWidth]);\n const columnRenderPropsRef = useRef(columnRenderProps);\n columnRenderPropsRef.current = columnRenderProps;\n const ref = useResize(\n (el) => {\n setTableWidth(el.clientWidth);\n },\n { isDebounce: true }\n );\n const { expandInfo, computedColumnProps } = useColumnTypeProps({\n rowKey,\n renderProps: columnRenderProps,\n });\n\n const {\n columnsConfig,\n visibleColumns,\n computedColumnProps: computedColumnConfigProps,\n currentMoveColumnIndex,\n totalWidth,\n } = useTableConfig({\n columns,\n controllerOpen,\n name,\n computedColumnProps,\n tableWidth,\n rowKey,\n });\n\n const sortRender = useSort(props);\n\n const targetColumns = useMemo(() => {\n return visibleColumns.map((col, index) => {\n let target = computedColumnProps(col, index, {\n rowKey,\n expandInfo,\n columnsConfig,\n });\n\n if (target.sort && col.type !== \"options\") {\n target = Object.assign({}, target, {\n title: (\n <>\n {target.title}\n {sortRender({\n name: col.name,\n single:\n typeof target.sort === \"object\" ? target.sort.single : true,\n })}\n </>\n ),\n });\n }\n\n if (controllerOpen) {\n target = computedColumnConfigProps(target, index, {\n tableWidth,\n columnsConfig,\n });\n }\n\n return target;\n });\n }, [\n visibleColumns,\n tableWidth,\n columnsConfig,\n expandInfo,\n rowKey,\n controllerOpen,\n computedColumnProps,\n computedColumnConfigProps,\n sortRender,\n ]);\n\n const { columns: groupColumns, hasGroupHeader } =\n useGroupHeader(targetColumns);\n\n const onTablePropsReadyCallback = useRefCallback(onTablePropsReady);\n\n useEffect(() => {\n onTablePropsReadyCallback &&\n onTablePropsReadyCallback({\n columns,\n groupColumns,\n dataSource,\n visibleColumns,\n });\n }, [\n onTablePropsReadyCallback,\n groupColumns,\n dataSource,\n columns,\n visibleColumns,\n ]);\n\n return (\n <div\n className={classnames(className, style[\"table\"], {\n [style[\"is-resize\"]]: currentMoveColumnIndex !== null,\n [style[\"is-computed\"]]: isLayout,\n [style[\"has-group-header\"]]: hasGroupHeader,\n })}\n ref={ref}\n style={{\n \"--sticky-offset\": stickyOffset,\n }}\n >\n {!isLayout && (\n <Scroller\n className=\"table-page-scroller\"\n scroller={{ getContainer: getScrollEl }}\n getScrollTarget={(el) => {\n return (\n el.querySelector(\".ant-table-body\") ||\n el.querySelector(\".ant-table-content\")\n );\n }}\n >\n <AntdTable\n {...props}\n sticky={\n sticky\n ? {\n getContainer: getScrollEl,\n }\n : false\n }\n dataSource={dataSource}\n rowKey={rowKey}\n columns={groupColumns}\n scroll={Object.assign(\n {},\n { x: Math.max(tableWidth, totalWidth) },\n scroll\n )}\n pagination={pagination}\n summary={\n typeof summary === \"function\"\n ? (current, ...args) => {\n return summary(\n Object.assign(\n {},\n { pageData: current },\n { columns: groupColumns }\n ),\n ...args\n );\n }\n : null\n }\n />\n </Scroller>\n )}\n </div>\n );\n};\n\nTable.defaultProps = {\n controllerOpen: true,\n rowKey: \"id\",\n getScrollEl,\n columnRenderProps: {},\n sticky: false,\n stickyOffset: \"var(--nav-height)\",\n pagination: false,\n};\n\nexport default Table;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { withFetch } from \"@kne/react-fetch\";\nimport Table from \"./Table\";\nimport classnames from \"classnames\";\nimport Features from \"@components/Features\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { forwardRef, useMemo, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport localStorage from \"@common/utils/localStorage\";\nimport { getScrollEl } from \"@common/utils/importantContainer\";\n\nconst FeaturesColumnsConfig = ({ id, columns, children }) => {\n if (id) {\n return (\n <Features id={id}>\n {({ options }) =>\n children({\n columns: columns.filter((item) => {\n if (!item.name) {\n return true;\n }\n if (!Array.isArray(get(options, \"hiddenColumns\"))) {\n return true;\n }\n return options.hiddenColumns.indexOf(item.name) === -1;\n }),\n })\n }\n </Features>\n );\n }\n return children({ columns });\n};\n\nconst TablePageInner = withFetch(\n ({\n data,\n refresh,\n reload,\n requestParams,\n fetchProps,\n isComplete,\n setData,\n loadMore,\n send,\n dataFormat,\n className,\n featureId,\n columns,\n getColumns,\n pagination,\n columnRenderProps,\n summary,\n ...props\n }) => {\n const handlerDataFormat = useRefCallback(dataFormat);\n const formatData = useMemo(() => {\n return handlerDataFormat(data);\n }, [data, handlerDataFormat]);\n\n const tableProps = {\n dataSource: formatData.list,\n pagination: pagination.open\n ? {\n total: formatData.total,\n showTotal: (total) => (\n <>\n <FormattedMessage\n id=\"Page_Total\"\n moduleName=\"Table\"\n defaultMessage=\"共\"\n />\n <span className={style[\"total_text\"]}>{total}</span>\n <FormattedMessage\n id=\"Page_TotalCount\"\n moduleName=\"Table\"\n defaultMessage=\"条\"\n />\n </>\n ),\n current: get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n ),\n pageSize: pagination.pageSize,\n onChange: pagination.onChange\n ? pagination.onChange\n : (page, size) => {\n if (\n page !==\n get(\n requestParams,\n [pagination.paramsType, pagination.currentName],\n 1\n )\n ) {\n (pagination.requestType === \"refresh\" ? refresh : reload)({\n [pagination.paramsType]: {\n [pagination.currentName]: page,\n [pagination.pageSizeName]: size,\n },\n });\n } else {\n pagination.onShowSizeChange &&\n pagination.onShowSizeChange(page, size);\n }\n getScrollEl().scrollTop = 0;\n },\n size: pagination.size,\n showSizeChanger: pagination.showSizeChanger,\n showQuickJumper: pagination.showQuickJumper,\n pageSizeOptions: pagination.pageSizeOptions,\n }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n","const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__tRSYD\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__tRSYD\",\"no-start-icon\":\"style_no-start-icon__LnC1S__tRSYD\",\"has-children\":\"style_has-children__m9tce__tRSYD\",\"has-children-node\":\"style_has-children-node__2bhEB__tRSYD\",\"is-root\":\"style_is-root__4hhOc__tRSYD\",\"title\":\"style_title__+Hcar__tRSYD\",\"active\":\"style_active__WU49K__tRSYD\",\"no-collapse\":\"style_no-collapse__aIZBM__tRSYD\",\"title-content\":\"style_title-content__cQXpK__tRSYD\",\"loading\":\"style_loading__1pU4P__tRSYD\"};","import style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Spin } from \"antd\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport Permissions from \"@components/Permissions\";\nimport useControlValue from \"@kne/use-control-value\";\nimport Icon from \"@components/Icon\";\nimport { useCallback, useEffect, useMemo } from \"react\";\nimport ensureSlash from \"@kne/ensure-slash\";\nimport { useFetch } from \"@kne/react-fetch\";\n\nconst treeEnhance = (items) => {\n const childrenKeys = {},\n nodeMapping = [];\n const traversal = (children, options) => {\n const { parentKey, depth } = Object.assign(\n {\n parentKey: \"root\",\n depth: 0,\n paths: [],\n },\n options\n );\n if (!(Array.isArray(children) && children.length > 0)) {\n return null;\n }\n return children.map((item, index) => {\n const currentKey = `${\n item.key ||\n `${parentKey !== \"root\" ? `${parentKey}-` : \"\"}node-${index}`\n }`;\n if (!childrenKeys[parentKey]) {\n childrenKeys[parentKey] = [];\n }\n childrenKeys[parentKey].push(currentKey);\n const children = traversal(item.children, {\n parentKey: currentKey,\n depth: depth + 1,\n });\n childrenKeys[currentKey] &&\n childrenKeys[parentKey].push(...childrenKeys[currentKey]);\n const targetItem = Object.assign({}, item, {\n key: currentKey,\n parentKey,\n depth,\n children: children,\n originItem: item,\n });\n nodeMapping[currentKey] = targetItem;\n return targetItem;\n });\n };\n\n return { items: traversal(items), childrenKeys, nodeMapping };\n};\n\nconst MenuItem = (props) => {\n const navigation = useNavigate();\n const {\n id,\n className,\n label,\n iconType,\n path,\n request,\n onClick,\n isOpen,\n isSelected,\n onOpenChange,\n children,\n fetchOptions,\n depth,\n onLoad,\n allowCollapsed,\n } = props;\n\n const hasChildren =\n (Array.isArray(children) && children.length > 0) || fetchOptions;\n const { refresh, isLoading } = useFetch(\n Object.assign({}, fetchOptions, {\n auto: !allowCollapsed && fetchOptions,\n onRequestSuccess: (data) => {\n onLoad(data);\n },\n })\n );\n\n const renderChildren = () => {\n if (!hasChildren) {\n return null;\n }\n if (!allowCollapsed || (isOpen && children)) {\n return <div className={style[\"children-list\"]}>{children}</div>;\n }\n\n if (!allowCollapsed || (isOpen && isLoading)) {\n return (\n <div className={style[\"children-list\"]}>\n <Spin className={style[\"loading\"]} size=\"small\" />\n </div>\n );\n }\n };\n return (\n <Permissions request={request}>\n <div className={classnames(className, style[\"menu-item\"])}>\n <div\n className={classnames(style[\"title\"], {\n [style[\"active\"]]: isSelected,\n [style[\"has-children\"]]: hasChildren,\n [style[\"no-collapse\"]]: hasChildren && !allowCollapsed,\n [style[\"no-start-icon\"]]: !iconType,\n [style[\"is-root\"]]: depth === 0,\n })}\n onClick={(e) => {\n e.stopPropagation();\n if (!hasChildren && path) {\n navigation(path);\n return;\n }\n if (!hasChildren && !fetchOptions) {\n onClick?.(id, props);\n return;\n }\n if (!allowCollapsed) {\n return;\n }\n fetchOptions && refresh({});\n onOpenChange(!isOpen);\n }}\n >\n {iconType && <Icon type={iconType} />}\n <span className={style[\"title-content\"]}>{label}</span>\n {hasChildren && allowCollapsed && (\n <Icon\n type={isOpen ? \"icon-arrow-bold-down\" : \"icon-arrow-bold-right\"}\n />\n )}\n </div>\n {renderChildren()}\n </div>\n </Permissions>\n );\n};\n\nconst Menu = ({ className, allowCollapsed, pathMatch, ...props }) => {\n const { pathname, search } = useLocation();\n const [selectedKey, setSelectKeyChange] = useControlValue(props, {\n value: \"currentKey\",\n defaultValue: \"defaultCurrentKey\",\n });\n\n const [items, setItems] = useControlValue(props, {\n defaultValue: \"defaultItems\",\n value: \"items\",\n onChange: \"onItemsChange\",\n });\n\n const {\n items: targetItems,\n defaultOpenKeys,\n links,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n } = useMemo(() => {\n const {\n items: targetItems,\n childrenKeys,\n nodeMapping,\n } = treeEnhance(items);\n let hasStartIcon = false,\n hasChildren = false;\n const links = [],\n defaultOpenKeys = [];\n childrenKeys?.[\"root\"]?.forEach((key) => {\n const node = nodeMapping[key];\n if (node.iconType) {\n hasStartIcon = true;\n }\n node.path && links.push({ path: node.path, key });\n if (Array.isArray(node.children) && node.children.length > 0) {\n hasChildren = true;\n defaultOpenKeys.push(node.key);\n }\n });\n return {\n defaultOpenKeys,\n links,\n items: targetItems,\n childrenKeys,\n hasStartIcon,\n hasChildren,\n };\n }, [items]);\n useEffect(() => {\n const matchedPath = links.find(({ path }) => {\n if (typeof pathMatch === \"function\") {\n return pathMatch(path, { pathname, search });\n }\n return (\n ensureSlash(pathname.replace(/[#,?].*/, \"\")) === ensureSlash(path) ||\n ensureSlash(pathname + search) === ensureSlash(path)\n );\n });\n if (matchedPath) {\n setSelectKeyChange(matchedPath.key);\n }\n }, [links, pathname, search, setSelectKeyChange, pathMatch]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__tRSYD\"};","import { createElement } from \"react\";\nimport { Result, Tooltip } from \"antd\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\n\nexport const computedIsPass = ({ permissions, request }) => {\n return Array.isArray(request) && request.length > 0\n ? request.some((currentKey) => (permissions || []).indexOf(currentKey) > -1)\n : true;\n};\n\nexport const usePermissions = () => {\n const { global } = useGlobalContext();\n const { permissions, permissionsPath } = usePreset();\n return {\n permissions:\n global.permissions ||\n permissions ||\n (permissionsPath && get(global, permissionsPath)) ||\n [],\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","import { preset } from \"@kne/react-enum\";\nimport transform from \"lodash/transform\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\npreset({\n base: transform(\n baseLoaders,\n (result, value) => {\n result[value[0]] = value[1];\n },\n {}\n ),\n});\n\nexport { default } from \"@kne/react-enum\";\n","import {createContext, useContext as useReactContext} from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n menuCloseWidth: \"0px\",\n menuFixed: true,\n menuCloseButton: true,\n backgroundColor: null,\n header: null,\n headerHeight: 0,\n headerFixed: true,\n headerInfo: null,\n backUrl: null,\n title: null,\n titleExtra: null,\n titleLeftExtra: null,\n noMargin: false,\n noPadding: false,\n optionFooterHeight: 0,\n option: null,\n optionWidth: \"400px\",\n optionNoPadding: false,\n optionFixed: true,\n optionFooter: null,\n};\n\nexport const context = createContext({});\n\nexport const {Provider, Consumer} = context;\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport default context;\n","// extracted by mini-css-extract-plugin\nexport default {\"layout\":\"style_layout__k+lxR__tRSYD\",\"page-content\":\"style_page-content__4XeN8__tRSYD\",\"page-main\":\"style_page-main__P0yEF__tRSYD\",\"page-main-content\":\"style_page-main-content__1OVPN__tRSYD\",\"table-page\":\"style_table-page__JkbLf__tRSYD\",\"helper-guide\":\"style_helper-guide__vzw4z__tRSYD\",\"page-outer\":\"style_page-outer__2a6iH__tRSYD\",\"no-margin\":\"style_no-margin__S6caT__tRSYD\",\"page-menu\":\"style_page-menu__CZSa9__tRSYD\",\"closed\":\"style_closed__hmnft__tRSYD\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__tRSYD\",\"page-menu-main\":\"style_page-menu-main__OXg2M__tRSYD\",\"page-option-main\":\"style_page-option-main__LyfT3__tRSYD\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__tRSYD\",\"page-option\":\"style_page-option__diS2S__tRSYD\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__tRSYD\",\"page-option-footer\":\"style_page-option-footer__d7xE0__tRSYD\",\"fixed-container\":\"style_fixed-container__1VZwY__tRSYD\",\"is-fixed\":\"style_is-fixed__1aQhp__tRSYD\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__tRSYD\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__tRSYD\",\"page-title\":\"style_page-title__zw-Fd__tRSYD\",\"page-title-text\":\"style_page-title-text__Rj4RC__tRSYD\",\"no-padding\":\"style_no-padding__V7Dwy__tRSYD\",\"page-header\":\"style_page-header__a813p__tRSYD\",\"page-header-info\":\"style_page-header-info__cMrZR__tRSYD\",\"layout-menu\":\"style_layout-menu__yiab0__tRSYD\",\"sub-menu\":\"style_sub-menu__dyqK7__tRSYD\",\"no-collapsed\":\"style_no-collapsed__76h8W__tRSYD\",\"has-not-children\":\"style_has-not-children__fnjRK__tRSYD\",\"table-page-top\":\"style_table-page-top__bt1l9__tRSYD\",\"error-component\":\"style_error-component__HvghB__tRSYD\",\"state-bar-page\":\"style_state-bar-page__+aUM4__tRSYD\",\"back-icon\":\"style_back-icon__79v2G__tRSYD\"};","import style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst FixedContainer = ({ className, isFixed, children }) => {\n if (isFixed) {\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"],\n {\n [style[\"is-fixed\"]]: isFixed,\n }\n )}\n >\n {children}\n </div>\n );\n }\n return (\n <div\n className={classnames(\n className,\n \"fixed-container\",\n style[\"fixed-container\"]\n )}\n >\n {children}\n </div>\n );\n};\n\nexport default FixedContainer;\n","import {Button, Col} from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"../style.module.scss\";\nimport FixedContainer from \"./FixedContainer\";\nimport {useContext} from \"../context\";\nimport Icon from \"@components/Icon\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport {useLocation} from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport isNotEmpty from \"@utils/isNotEmpty\";\nimport localStorage from \"@utils/localStorage\";\nimport {useMemo} from \"react\";\n\nconst pageMenuOpenKey = \"CORE_PAGE_MENU_OPEN_KEY\";\n\nexport const useMenuOpen = () => {\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n return useMemo(() => {\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n return isNotEmpty(get(pageResult, pathModuleName))\n ? get(pageResult, pathModuleName)\n : true;\n }, [pathModuleName]);\n};\n\nconst Menu = () => {\n const {pageProps, setPageProps} = useContext();\n const {menu, menuOpen, menuWidth, menuCloseWidth, menuFixed, menuCloseButton} = pageProps;\n\n const location = useLocation();\n const pathModuleName = location.pathname.split(\"/\")[1];\n\n return menu ? (\n <Col\n className={classnames(style[\"page-menu\"],'core-page-menu', {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{\"--menu-width\": menuWidth, \"--menu-close-width\": menuCloseWidth}}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar\n className={style[\"page-menu-main\"]}>{typeof menu === 'function' ? menu({open: menuOpen}) : menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"page-menu-btn-outer\"], 'core-page-menu-btn-outer', {\n [style[\"is-fixed\"]]: menuFixed,\n })}\n isFixed={menuFixed}\n >\n <Button\n className={classnames(style[\"page-menu-btn\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n icon={\n menuOpen ? (\n <Icon type=\"icon-arrow-bold-left\"/>\n ) : (\n <Icon type=\"icon-arrow-bold-right\"/>\n )\n }\n onClick={() => {\n setPageProps({menuOpen: !pageProps.menuOpen});\n const pageResult = localStorage.getItem(pageMenuOpenKey) || {};\n pageResult[pathModuleName] = !pageProps.menuOpen;\n localStorage.setItem(pageMenuOpenKey, pageResult);\n setPageProps({menuOpen: !pageProps.menuOpen});\n }}\n />\n </FixedContainer>\n ) : null}\n </Col>\n ) : null;\n};\n\nexport default Menu;\n","import { defaultProps, useContext } from \"../context\";\nimport isEqual from \"lodash/isEqual\";\nimport { useEffect, useRef } from \"react\";\nimport { Result } from \"antd\";\nimport Features from \"@components/Features\";\nimport { useMenuOpen } from \"./Menu\";\n\nconst PageInner = ({ children, isPass, ...props }) => {\n const { setPageProps } = useContext();\n const propsRef = useRef(null);\n const localMenuOpen = useMenuOpen();\n const localMenuOpenRef = useRef(localMenuOpen);\n localMenuOpenRef.current = localMenuOpen;\n useEffect(() => {\n if (!isEqual(propsRef.current, props)) {\n propsRef.current = props;\n /**\n * 解决两个页面都用header时,menuButton产生的跳动问题:如果下一个页面有header,\n * headerHeight由其header组件自己更新,不再统一重置为0。\n * optionFooter同理\n * */\n const targetProps = Object.assign(\n {},\n defaultProps,\n props,\n typeof localMenuOpenRef.current === \"boolean\"\n ? { menuOpen: localMenuOpenRef.current }\n : {}\n );\n if (targetProps.header && targetProps.headerHeight === 0) {\n delete targetProps[\"headerHeight\"];\n }\n if (targetProps.optionFooter && targetProps.optionFooterHeight === 0) {\n delete targetProps[\"optionFooter\"];\n }\n setPageProps(targetProps);\n }\n }, [props, setPageProps]);\n\n if (isPass === false) {\n return <Result status=\"403\" subTitle=\"暂未开放此功能\" />;\n }\n\n return children;\n};\n\nconst Page = ({ featureId, name, openFeatures, ...props }) => {\n if (openFeatures === true) {\n return (\n <Features id={name}>\n {({ isPass }) => <PageInner {...props} key={name} isPass={isPass} />}\n </Features>\n );\n }\n return <PageInner {...props} key={name} />;\n};\n\nPage.defaultProps = defaultProps;\n\nexport default Page;\n","import { Affix as AntdAffix } from \"antd\";\n\nconst Affix = ({ isFixed, offsetTop, offsetBottom, onChange, ...props }) => {\n if (!isFixed) {\n return <div {...props} />;\n }\n return (\n <AntdAffix\n {...props}\n offsetTop={Number.isInteger(offsetTop) ? offsetTop - 0.1 : offsetTop}\n offsetBottom={offsetBottom}\n onChange={onChange}\n />\n );\n};\n\nexport default Affix;\n","import { useContext } from \"@components/Layout/context\";\nimport { useLayoutEffect, useRef } from \"react\";\n\nconst useContainerHeight = ({ targetKey }) => {\n const { setPageProps } = useContext();\n const ref = useRef(null);\n useLayoutEffect(() => {\n const callback = () => {\n setPageProps({\n [targetKey]: ref.current.offsetHeight,\n });\n };\n\n callback();\n const resizeObserver = new MutationObserver(callback);\n resizeObserver.observe(ref.current, { subtree: true, childList: true });\n return () => {\n resizeObserver.disconnect();\n };\n }, [setPageProps, targetKey]);\n\n return ref;\n};\n\nconst ContainerHeight = ({ targetKey, ...props }) => {\n const ref = useContainerHeight({ targetKey });\n return <div {...props} ref={ref} />;\n};\n\nexport default ContainerHeight;\n","import { useContext } from \"../context\";\nimport Affix from \"../Affix\";\nimport { navigationHeight } from \"@components/Navigation\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Header = () => {\n const { pageProps } = useContext();\n const { header, headerFixed } = pageProps;\n return header ? (\n <Affix\n isFixed={headerFixed}\n className={style[\"page-header\"]}\n offsetTop={navigationHeight}\n >\n <ContainerHeight targetKey=\"headerHeight\">{header}</ContainerHeight>\n </Affix>\n ) : null;\n};\n\nexport default Header;\n","import { useContext } from \"../context\";\nimport { useRef } from \"react\";\nimport style from \"../style.module.scss\";\nimport classnames from \"classnames\";\n\nconst HeaderInfo = () => {\n const { pageProps } = useContext();\n const { headerInfo } = pageProps;\n const headerInfoRef = useRef(null);\n return headerInfo ? (\n <div\n ref={headerInfoRef}\n className={classnames(style[\"page-header-info\"], \"page-header-info\")}\n >\n {headerInfo}\n </div>\n ) : null;\n};\n\nexport default HeaderInfo;\n","import { Col, Row, Space } from \"antd\";\nimport { useNavigate } from \"react-router-dom\";\nimport Filter from \"@components/Filter\";\nimport Icon from \"@components/Icon\";\nimport style from \"../style.module.scss\";\n\nconst PageTitle = ({ title, filter, titleExtra, titleLeftExtra, backUrl }) => {\n const navigator = useNavigate();\n if (filter) {\n return (\n <Filter className={style[\"page-title\"]} {...filter} extra={titleExtra} />\n );\n }\n if (!(title || titleLeftExtra || titleExtra)) {\n return null;\n }\n return (\n <Row justify=\"space-between\" align=\"middle\" className={style[\"page-title\"]}>\n <Col>\n <Space>\n {title ? (\n <div className={style[\"page-title-text\"]}>\n {backUrl ? (\n <Space>\n <span\n className={style[\"back-icon\"]}\n onClick={() => {\n navigator(backUrl);\n }}\n >\n <Icon type=\"icon-arrow-thin-left\" />\n </span>\n <span>{title}</span>\n </Space>\n ) : (\n title\n )}\n </div>\n ) : null}\n {titleLeftExtra ? titleLeftExtra : null}\n </Space>\n </Col>\n <Col>{titleExtra}</Col>\n </Row>\n );\n};\n\nexport default PageTitle;\n","import { Col, Space } from \"antd\";\nimport FixedContainer from \"./FixedContainer\";\nimport { useContext } from \"../context\";\nimport classnames from \"classnames\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport ContainerHeight from \"./ContainerHeight\";\nimport style from \"../style.module.scss\";\n\nconst Option = () => {\n const { pageProps } = useContext();\n const {\n option,\n optionWidth,\n optionFixed,\n optionFooter,\n optionFooterHeight,\n optionNoPadding,\n } = pageProps;\n return option ? (\n <Col\n className={classnames(style[\"page-option\"], \"page-option\")}\n style={{\n \"--width\": optionWidth,\n \"--foot-height\": optionFooterHeight + \"px\",\n }}\n >\n <FixedContainer\n className={style[\"page-option-inner\"]}\n isFixed={optionFixed}\n >\n <SimpleBar\n className={classnames(style[\"page-option-main\"], \"page-option-main\")}\n style={{ padding: optionNoPadding ? \"0px\" : \"var(--padding-width)\" }}\n >\n {option}\n </SimpleBar>\n {optionFooter ? (\n <ContainerHeight\n className={style[\"page-option-footer\"]}\n targetKey=\"optionFooterHeight\"\n >\n <Space align=\"center\">{optionFooter}</Space>\n </ContainerHeight>\n ) : null}\n </FixedContainer>\n </Col>\n ) : null;\n};\n\nexport default Option;\n","import {Alert, Button, Col, Layout as AntdLayout, Row} from \"antd\";\nimport {useCallback, useEffect, useState} from \"react\";\nimport {defaultProps, Provider} from \"./context\";\nimport Navigation, {navigationHeight} from \"@components/Navigation\";\nimport {getScrollEl} from \"@common/utils/importantContainer\";\nimport ReactErrorBoundary from \"@kne/react-error-boundary\";\nimport {Header, HeaderInfo, Menu, Option, PageTitle} from \"./Page\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport {usePermissions} from \"../Permissions\";\n\nconst {Content} = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent}/>;\n};\n\nconst Layout = ({className, children, theme, navigation}) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const {permissions} = usePermissions();\n const setPageProps = useCallback((value) => {\n return _setPageProps((pageProps) => {\n return Object.assign({}, pageProps, value);\n });\n }, []);\n useEffect(() => {\n const scrollEl = getScrollEl();\n const handlerScroll = () => {\n setScrollLeft(scrollEl.scrollLeft);\n };\n scrollEl.addEventListener(\"scroll\", handlerScroll);\n return () => {\n scrollEl.removeEventListener(\"scroll\", handlerScroll);\n };\n }, []);\n\n return (\n <AntdLayout\n className={classnames(style[\"layout\"], className, 'core-layout')}\n style={Object.assign(\n {},\n {\n \"--nav-height\": navigationHeight + \"px\",\n \"--nav-height-base\": \"var(--nav-height)\",\n \"--scroll-left\": -scrollLeft + \"px\",\n },\n theme\n )}\n >\n {navigation && (\n <ErrorBoundary>\n <Navigation\n permissions={permissions}\n {...navigation}\n onChange={(path) => {\n navigation?.onChange && navigation.onChange(path);\n }}\n />\n </ErrorBoundary>\n )}\n <ErrorBoundary>\n <Content className={classnames(style[\"layout-content-wrap\"], 'core-layout-content-wrap')}>\n <Provider value={{pageProps, setPageProps}}>\n <ErrorBoundary>\n <Header/>\n </ErrorBoundary>\n <ErrorBoundary>\n <HeaderInfo/>\n </ErrorBoundary>\n <ErrorBoundary>\n <Row\n className={classnames(pageProps.className, style[\"page-outer\"])}\n wrap={false}\n style={{\n \"--nav-height\": `calc(${\n pageProps.headerFixed ? pageProps.headerHeight : 0\n }px + var(--nav-height-base))`,\n \"--nav-only-height\": `var(--nav-height-base)`,\n }}\n >\n <ErrorBoundary>\n <Menu/>\n </ErrorBoundary>\n <Col className={classnames(style[\"page-content\"], 'core-page-content', {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })} flex={1} style={{\"--background-color\": pageProps.backgroundColor}}>\n <div className={classnames(style[\"page-main\"], 'core-page-main')}>\n <ErrorBoundary>\n <PageTitle\n title={pageProps.title}\n backUrl={pageProps.backUrl}\n filter={pageProps.filter}\n titleExtra={pageProps.titleExtra}\n titleLeftExtra={pageProps.titleLeftExtra}\n />\n </ErrorBoundary>\n <div\n className={classnames(style[\"page-main-content\"], 'core-page-main-content', {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={classnames(style[\"helper-guide-page\"], 'core-helper-guide-page')}\n name={pageProps.helperGuideName}\n />\n )}\n {children}\n </ErrorBoundary>\n </div>\n </div>\n </Col>\n <ErrorBoundary>\n <Option/>\n </ErrorBoundary>\n </Row>\n </ErrorBoundary>\n </Provider>\n </Content>\n </ErrorBoundary>\n </AntdLayout>\n );\n};\n\nLayout.defaultProps = {\n navigation: {},\n};\n\nexport default Layout;\n","import Page from \"./Page\";\nimport Permissions from \"@components/Permissions\";\n\nconst PermissionsPage = ({ permissions, ...props }) => {\n return (\n <Permissions {...Object.assign({}, permissions, { type: \"error\" })}>\n <Page {...props} />\n </Permissions>\n );\n};\n\nexport default PermissionsPage;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"page-header\":\"style_page-header__l3LiS__tRSYD\",\"main\":\"style_main__X1Ynh__tRSYD\",\"icon-outer\":\"style_icon-outer__6F97H__tRSYD\",\"title\":\"style_title__dNWQj__tRSYD\",\"info\":\"style_info__yF-4c__tRSYD\",\"overlay\":\"style_overlay__SWqqE__tRSYD\",\"tags\":\"style_tags__5+zDU__tRSYD\",\"tag-split\":\"style_tag-split__V6SqP__tRSYD\",\"button-options\":\"style_button-options__f1-gI__tRSYD\"};","import { Space, Row, Col } from \"antd\";\nimport classnames from \"classnames\";\nimport importMessages from \"../locale\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport { IntlProvider } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nexport const PageHeaderInner = ({\n className,\n title,\n iconType,\n info,\n tags,\n tagSplit,\n tagClassName,\n buttonOptions,\n buttonOptionsMaxWidth,\n addonBefore,\n addonAfter,\n}) => {\n return (\n <Row\n className={classnames(className, style[\"page-header\"])}\n wrap={false}\n gutter={10}\n >\n {addonBefore && <Col>{addonBefore}</Col>}\n <Col flex={1}>\n <Space direction=\"vertical\">\n <Row wrap={false}>\n <Col flex={1} className={style[\"main\"]}>\n <Space align=\"start\">\n {iconType && (\n <div className={style[\"icon-outer\"]}>\n <Icon colorful type={iconType} size={24} />\n </div>\n )}\n <div className={style[\"title\"]}>{title}</div>\n {info && <div className={style[\"info\"]}>{info}</div>}\n </Space>\n </Col>\n {buttonOptions && (\n <Col\n flex={1}\n className={style[\"button-options\"]}\n style={{ \"--max-width\": buttonOptionsMaxWidth }}\n >\n <ButtonGroup {...buttonOptions} />\n </Col>\n )}\n </Row>\n {tags && (\n <Space className={tagClassName} split={tagSplit} size={[16, 8]}>\n {tags.map((item, index) => {\n return (\n <div key={index} className={style[\"tags\"]}>\n {item}\n </div>\n );\n })}\n </Space>\n )}\n </Space>\n </Col>\n {addonAfter && <Col>{addonAfter}</Col>}\n </Row>\n );\n};\n\nconst PageHeader = (props) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"PageHeader\">\n <PageHeaderInner {...props} />\n </IntlProvider>\n );\n};\n\nPageHeaderInner.defaultProps = PageHeader.defaultProps = {\n tagSplit: <span className={style[\"tag-split\"]}>|</span>,\n tagClassName: \"\",\n};\n\nexport default PageHeader;\n","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__tRSYD\",\"state-result-tag\":\"style_state-result-tag__CssDz__tRSYD\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__tRSYD\",\"event-tag\":\"style_event-tag__cg6SE__tRSYD\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__tRSYD\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__tRSYD\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__tRSYD\",\"show-bg\":\"style_show-bg__OcL+R__tRSYD\",\"tag-text\":\"style_tag-text__JHCt+__tRSYD\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__tRSYD\"};","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","import { createContext, useContext, useEffect } from \"react\";\nimport { usePreset } from \"@components/Global\";\nimport get from \"lodash/get\";\nimport memoize from \"lodash/memoize\";\nimport omit from \"lodash/omit\";\n\nconst treeTraverse = (data, func, pId) => {\n if (!data) {\n return;\n }\n if (Array.isArray(data)) {\n data.forEach((item) => {\n treeTraverse(item, func, pId);\n });\n return;\n }\n func(Object.assign({}, omit(data, [\"children\"]), { parentId: pId }));\n treeTraverse(data.children, func, pId ? pId + \":\" + data.id : data.id);\n};\n\nconst parseProfile = memoize((profile) => {\n const profileMap = (() => {\n const output = new Map();\n treeTraverse(profile, (item) => {\n output.set(item.parentId ? item.parentId + \":\" + item.id : item.id, item);\n });\n return output;\n })();\n\n const features = ((profileMap) => {\n return Array.from(profileMap.keys()).filter((id) => {\n const item = profileMap.get(id);\n return !(\n Array.isArray(item.dependencies) &&\n item.dependencies.length > 0 &&\n item.dependencies.some((depId) => {\n return !profileMap.get(id);\n })\n );\n });\n })(profileMap);\n\n return { profile, features, profileMap };\n});\n\nconst useFeatures = () => {\n const preset = usePreset();\n const { profile, debug } = get(preset, \"features\", {\n debug: false,\n profile: {},\n });\n return Object.assign({}, parseProfile(profile), { debug });\n};\n\nconst computedIsPaas = (currentId, { profileMap, features }) => {\n const target = profileMap.get(currentId);\n return (\n features.indexOf(currentId) !== -1 &&\n target.close !== true &&\n get(target, \"dependencies\", []).every((id) => {\n const dependenciesTarget = profileMap.get(currentId);\n return features.indexOf(id) > -1 && dependenciesTarget.close !== true;\n })\n );\n};\n\nconst context = createContext(null);\n\nconst { Provider } = context;\n\nexport const useFeatureCall = (id) => {\n const { features, profile, profileMap, debug } = useFeatures();\n const systemId = profile.type === \"system\" ? profile.id : \"root\";\n const parentId = useContext(context);\n const currentId = parentId ? parentId + \":\" + id : systemId + \":\" + id;\n useEffect(() => {\n if (features && features.length > 0 && debug) {\n console.log(\n `[featureId] ${currentId},[state] ${computedIsPaas(currentId, {\n features,\n profileMap,\n })}`,\n profileMap.get(currentId)\n );\n }\n }, [features, profileMap, debug, currentId]);\n return {\n isPass:\n !(id && features && features.length > 0) ||\n computedIsPaas(currentId, { features, profileMap }),\n currentId,\n feature: profileMap.get(currentId),\n };\n};\n\nconst Features = ({ id, children }) => {\n const { isPass, feature, currentId } = useFeatureCall(id);\n return (\n <Provider value={currentId}>\n {typeof children === \"function\"\n ? children({\n isPass,\n options: isPass\n ? get(feature, \"options\")\n : get(feature, \"rejectedOptions\"),\n currentId,\n })\n : isPass && children}\n </Provider>\n );\n};\n\nexport default Features;\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__tRSYD\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__tRSYD\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__tRSYD\",\"filter-title\":\"style_filter-title__PlIpS__tRSYD\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__tRSYD\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__tRSYD\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__tRSYD\",\"filter-line\":\"style_filter-line__E+cRh__tRSYD\",\"clean-btn\":\"style_clean-btn__oSEvm__tRSYD\",\"filter-item\":\"style_filter-item__Q2ncE__tRSYD\",\"un-expand\":\"style_un-expand__4PFY8__tRSYD\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__tRSYD\",\"filter-label\":\"style_filter-label__qu26i__tRSYD\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__tRSYD\",\"option\":\"style_option__rd5Qo__tRSYD\",\"is-active\":\"style_is-active__OArQI__tRSYD\",\"is-visited\":\"style_is-visited__gZ5ni__tRSYD\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__tRSYD\",\"filter-item-label\":\"style_filter-item-label__C781J__tRSYD\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__tRSYD\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__tRSYD\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__tRSYD\",\"filter-tag\":\"style_filter-tag__dUGfu__tRSYD\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__tRSYD\",\"pop-util-content\":\"style_pop-util-content__bx5zP__tRSYD\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__tRSYD\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__tRSYD\",\"pop-util-text\":\"style_pop-util-text__pzeUy__tRSYD\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__tRSYD\",\"filter-item-text\":\"style_filter-item-text__MA8tU__tRSYD\",\"filter-item-number-range\":\"style_filter-item-number-range__U-OgQ__tRSYD\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__tRSYD\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__tRSYD\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__tRSYD\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__tRSYD\",\"range-picker\":\"style_range-picker__c6ngq__tRSYD\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__tRSYD\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__tRSYD\",\"filter-advanced\":\"style_filter-advanced__4cyDy__tRSYD\",\"filter-advanced-item-other\":\"style_filter-advanced-item-other__-v86K__tRSYD\",\"filter-advanced-item-other-inner\":\"style_filter-advanced-item-other-inner__sXLEV__tRSYD\",\"filter-advanced-more\":\"style_filter-advanced-more__OFXq4__tRSYD\"};","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","import classnames from \"classnames\";\nimport { useState } from \"react\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport { Col, Row, Space } from \"antd\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport importMessages from \"./locale\";\nimport { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst Line = ({ list, children }) => {\n const { value, onChange } = useContext();\n return (\n <div className={style[\"filter-line\"]}>\n {list.map((item, index) => {\n if (typeof item === \"function\") {\n return item((props) => {\n return {\n index,\n value: value\n ? get(value.get(props?.name), \"value\")\n : props?.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: props?.name,\n label: props?.label,\n value,\n })\n : props?.onChange,\n };\n });\n }\n const ComponentItem = item.type;\n return (\n <ComponentItem\n {...Object.assign({}, item.props, {\n key: item.key || item.props.name || index,\n value: value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value,\n onChange: onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange,\n })}\n />\n );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({\n className,\n list,\n displayLine,\n label,\n extra,\n children,\n}) => {\n const hasMore = list.length > displayLine;\n const [isExpand, setIsExpand] = useState(false);\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space\n className={classnames(style[\"filter-title\"], className)}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n {label || (\n <FormattedMessage\n id=\"filterText\"\n moduleName=\"Filter\"\n defaultMessage=\"筛选\"\n />\n )}\n </span>\n <Row justify=\"space-between\" wrap={false} align=\"top\">\n <Col className={style[\"filter-list\"]} flex={1}>\n {list.slice(0, displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {hasMore && isExpand === false && index === displayLine - 1 ? (\n <Space\n size={4}\n className={classnames(\n style[\"filter-item\"],\n style[\"option\"]\n )}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-down\"\n />\n </Space>\n ) : null}\n </Line>\n ))}\n </Col>\n <Col>{extra}</Col>\n </Row>\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\")}\n align=\"center\"\n size={16}\n >\n {children}\n </Space>\n <Space\n className={classnames(style[\"filter-title\"], \"filter-title-wrap\", {\n [style[\"filter-title-hidden\"]]: !(hasMore && isExpand),\n })}\n align=\"top\"\n size={16}\n >\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"moreText\"\n moduleName=\"Filter\"\n defaultMessage=\"更多\"\n />\n </span>\n <div className={style[\"filter-list\"]}>\n {list.slice(displayLine).map((item, index) => (\n <Line key={index} list={item}>\n {index === list.length - displayLine - 1 && (\n <>\n <Space\n size={4}\n className={classnames(style[\"un-expand-shadow\"])}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n <Space\n size={4}\n className={classnames(style[\"un-expand\"])}\n onClick={() => {\n setIsExpand((value) => !value);\n }}\n >\n <Space\n size={4}\n className={classnames(\n style[\"option\"],\n style[\"filter-item\"]\n )}\n >\n <FormattedMessage\n id=\"toggleUpText\"\n moduleName=\"Filter\"\n defaultMessage=\"收起\"\n />\n <Icon\n className={style[\"filter-item-option-icon\"]}\n type=\"icon-arrow-thin-up\"\n />\n </Space>\n </Space>\n </>\n )}\n </Line>\n ))}\n </div>\n </Space>\n </IntlProvider>\n );\n};\n\nFilterLines.defaultProps = {\n displayLine: 1,\n};\n\nexport default FilterLines;\n","import { Button, Space } from \"antd\";\nimport StateTag from \"@components/StateTag\";\nimport { FormattedMessage, IntlProvider } from \"@components/Intl\";\nimport style from \"@components/Filter/style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"@components/Filter/locale\";\n\nconst FilterValueDisplay = ({ value: filterValue, extraExpand, onChange }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Filter\">\n <Space className={style[\"filter-title\"]} align=\"top\" size={16}>\n <span className={style[\"filter-label\"]}>\n <FormattedMessage\n id=\"selectedText\"\n moduleName=\"Filter\"\n defaultMessage=\"您已选择\"\n />\n </span>\n {/*<div className={style[\"filter-list\"]}>*/}\n <div className={style[\"filter-line\"]}>\n {filterValue.map(({ name, label, value }, index) => {\n return (\n <StateTag\n key={name}\n type=\"filterResult\"\n filterName={label}\n text={\n Array.isArray(value)\n ? value\n .map((item) => {\n return item.label;\n })\n .join(\",\")\n : value.label\n }\n closable\n onClose={() => {\n const newValue = filterValue.slice(0);\n newValue.splice(index, 1);\n onChange(newValue);\n }}\n />\n );\n })}\n <Space size={4} className={classnames(style[\"un-expand-shadow\"])}>\n {extraExpand}\n <Button size=\"small\">\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n <Space size={4} className={classnames(style[\"un-expand\"])}>\n {extraExpand}\n <Button\n size=\"small\"\n onClick={() => {\n onChange([]);\n }}\n >\n <FormattedMessage\n id=\"clearAllText\"\n moduleName=\"Filter\"\n defaultMessage=\"清空全部\"\n />\n </Button>\n </Space>\n\n </div>\n {/*</div>*/}\n </Space>\n </IntlProvider>\n );\n};\n\nexport default FilterValueDisplay;\n","import {Provider} from \"./context\";\nimport useControlValue from \"@kne/use-control-value\";\nimport clone from \"lodash/clone\";\nimport {useMemo} from \"react\";\nimport {isNotEmpty} from \"@components/Common\";\nimport importMessages from \"./locale\";\n\nimport {IntlProvider} from \"@components/Intl\";\n\nconst FilterOuter = ({children, className, defaultValue = [], ...props}) => {\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n {typeof children === 'function' ? children({props, value, onChange}) : children}\n </Provider>\n </IntlProvider>\n );\n};\n\nexport default FilterOuter;\n","import classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport FilterProvider from './FilterProvider';\n\nconst FilterOuter = ({children, className, ...props}) => {\n return <FilterProvider {...props}>\n {(context) => <div className={classnames(style[\"filter\"], className)}>\n {children(context)}\n </div>}\n </FilterProvider>\n\n};\n\nexport default FilterOuter;\n","import FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport FilterOuter from \"./FilterOuter\";\n\nconst Filter = (props) => {\n return (\n <FilterOuter {...props}>\n {({ props, value, onChange }) => {\n const { extraExpand, ...others } = props;\n return (\n <>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </>\n );\n }}\n </FilterOuter>\n );\n};\n\nFilter.defaultProps = {\n defaultValue: [],\n};\n\nexport default Filter;\n","import classnames from \"classnames\";\nimport { Space } from \"antd\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst FilterItem = ({ open, active, label, children }) => {\n return (\n <Space className={style[\"filter-item-wrap\"]}>\n <div\n className={classnames(style[\"filter-item\"], {\n [style[\"is-active\"]]: active,\n [style[\"is-visited\"]]: open,\n })}\n >\n <Space className={style[\"filter-item-label\"]} size={4}>\n <div>{label}</div>\n <Icon\n className={style[\"filter-item-icon\"]}\n type=\"icon-triangle-down\"\n />\n </Space>\n <div className={style[\"filter-item-field\"]}>{children}</div>\n </div>\n </Space>\n );\n};\n\nexport default FilterItem;\n","import { useState } from \"react\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport FilterItem from \"./FilterItem\";\nimport style from \"./style.module.scss\";\n\nconst withFieldItem =\n (WrappedComponent) =>\n ({ value, onChange, interceptor, label, ...props }) => {\n const [open, setOpen] = useState(false);\n return (\n <FilterItem label={label} open={open} active={isNotEmpty(value)}>\n <WrappedComponent\n allowClear={false}\n {...props}\n className={style[\"filter-item-inner\"]}\n value={\n typeof interceptor?.input === \"function\"\n ? interceptor.input(value)\n : value\n }\n onChange={\n typeof interceptor?.output === \"function\"\n ? (...args) => onChange(interceptor.output(...args))\n : onChange\n }\n valueType=\"all\"\n onOpenChange={setOpen}\n />\n </FilterItem>\n );\n };\n\nexport default withFieldItem;\n","// extracted by mini-css-extract-plugin\nexport default {\"scroll-loader\":\"style_scroll-loader__Rcuti__tRSYD\",\"is-popup\":\"style_is-popup__pCRv2__tRSYD\"};","import SelectInnerInput from \"@common/components/SelectInnerInput\";\nimport { useMemo, useRef } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport { Space, Tree } from \"antd\";\nimport SimpleBar from \"@common/components/SimpleBar\";\nimport get from \"lodash/get\";\nimport omit from \"lodash/omit\";\nimport memoize from \"lodash/memoize\";\n\nconst useSelectInnerContext = SelectInnerInput.useContext;\n\nconst TreeFieldInner = ({ value: selected, setValue: setSelect, size }) => {\n const { fetchApi, props } = useSelectInnerContext();\n const dataFormat = useRefCallback(props.dataFormat);\n const { single, isPopup, searchPlaceholder, ...others } = props;\n const fieldNamesRef = useRef(props.fieldNames);\n fieldNamesRef.current = props.fieldNames;\n const fetchData = fetchApi.data;\n const { treeData } = useMemo(\n () =>\n dataFormat(fetchData, {\n fieldNames: fieldNamesRef.current,\n }),\n [dataFormat, fetchData]\n );\n\n return (\n <Space direction=\"vertical\" size={16}>\n <SimpleBar\n className={classnames(style[\"scroll-loader\"], {\n [style[\"is-popup\"]]: props.isPopup,\n })}\n >\n <Tree\n {...omit(others, [\"value\", \"valueType\", \"children\", \"dataFormat\"])}\n size={size}\n checkable={!single}\n treeData={treeData}\n onCheck={setSelect}\n checkedKeys={selected}\n onSelect={\n single\n ? setSelect\n : (selectKeys) => {\n const selectKey = selectKeys[0];\n if (selectKey === void 0) {\n return;\n }\n setSelect((current) => {\n const newCurrent = current.slice(0);\n const index = newCurrent.indexOf(selectKey);\n if (index > -1) {\n newCurrent.splice(index, 1);\n } else {\n newCurrent.push(selectKey);\n }\n return newCurrent;\n });\n }\n }\n selectedKeys={single ? selected : undefined}\n />\n </SimpleBar>\n </Space>\n );\n};\n\nconst TreeField = ({ maxLength, dataFormat, ...props }) => {\n return (\n <SelectInnerInput\n {...props}\n dataFormat={(data) => {\n return dataFormat(data, { fieldNames: props.fieldNames });\n }}\n >\n {({ value, setValue }) => {\n return (\n <TreeFieldInner size={maxLength} value={value} setValue={setValue} />\n );\n }}\n </SelectInnerInput>\n );\n};\n\nTreeField.defaultProps = {\n searchPlaceholder: \"搜索\",\n maxLength: Number.MAX_VALUE,\n size: \"middle\",\n isPopup: true,\n checkStrictly: false,\n dataFormat: (data, { fieldNames }) => {\n const treeToList = memoize((nodeList, { fieldNames }) => {\n const list = [];\n const core = (nodeList) => {\n if (!(Array.isArray(nodeList) && nodeList.length > 0)) {\n return;\n }\n nodeList.forEach((node) => {\n const value = node[get(fieldNames, \"key\", \"key\")],\n label = node[get(fieldNames, \"title\", \"title\")],\n children = node[get(fieldNames, \"children\", \"children\")];\n list.push({ id: value, value, label });\n core(children);\n });\n };\n core(nodeList);\n return list;\n });\n\n return {\n treeData: data,\n list: treeToList(data, { fieldNames }),\n };\n },\n};\n\nexport default TreeField;\n","import { useState, useMemo } from \"react\";\nimport { Button, Col, Popover, Row } from \"antd\";\nimport FilterItem from \"./FilterItem\";\nimport isNotEmpty from \"@common/utils/isNotEmpty\";\nimport classnames from \"classnames\";\nimport { FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst PopoverItem = ({\n value,\n label,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n onChange,\n children,\n}) => {\n const [state, setState] = useState(value);\n const [open, setOpen] = useState(false);\n const disabled = useMemo(() => {\n return onValidate && !onValidate(state);\n }, [onValidate, state]);\n return (\n <Popover\n open={open}\n trigger=\"click\"\n placement={placement}\n overlayClassName={classnames(style[\"pop-util-overlay\"], overlayClassName)}\n onOpenChange={(open) => {\n setOpen(open);\n setState(value);\n onOpenChange && onOpenChange(open);\n }}\n content={\n <span\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"pop-util-content\"]}>\n {children({ value: state, onChange: setState })}\n </div>\n <Row className={style[\"pop-util-footer\"]} justify=\"end\" gutter={8}>\n <Col>\n <Button\n size=\"small\"\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n }}\n >\n <FormattedMessage\n id=\"cancelText\"\n moduleName=\"Filter\"\n defaultMessage=\"取消\"\n />\n </Button>\n </Col>\n <Col>\n <Button\n size=\"small\"\n type=\"primary\"\n disabled={disabled}\n onClick={() => {\n setOpen(false);\n onOpenChange && onOpenChange(false);\n onChange && onChange(state);\n }}\n >\n <FormattedMessage\n id=\"determineText\"\n moduleName=\"Filter\"\n defaultMessage=\"确定\"\n />\n </Button>\n </Col>\n </Row>\n </span>\n }\n >\n <span>\n <FilterItem open={open} active={isNotEmpty(value)} label={label} />\n </span>\n </Popover>\n );\n};\n\nPopoverItem.defaultProps = {\n placeholder: \"请选择\",\n placement: \"bottomLeft\",\n};\n\nexport default PopoverItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input } from \"antd\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Input\n {...props}\n placeholder={placeholder || `请输入${label}`}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\", \"\")}\n onChange={(e) =>\n onChange(\n e.target.value\n ? { label: e.target.value, value: e.target.value }\n : null\n )\n }\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default InputFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport { Input, InputNumber, Space } from \"antd\";\nimport get from \"lodash/get\";\nimport isNumber from \"lodash/isNumber\";\nimport { useIntl } from \"@components/Intl\";\nimport style from \"../style.module.scss\";\nimport React from \"react\";\n\nconst computedFilterValue = (range, unit, formatMessage) => {\n if (!isNumber(range[0]) && !isNumber(range[1])) {\n return null;\n }\n\n return {\n label: ((range) => {\n if (isNumber(range[0]) && isNumber(range[1])) {\n return `${range[0]}-${range[1]}${unit || \"\"}`;\n }\n if (isNumber(range[0])) {\n return formatMessage({ id: \"over\" }, { count: range[0], unit });\n }\n if (isNumber(range[1])) {\n return formatMessage({ id: \"lessThan\" }, { count: range[1], unit });\n }\n })(range),\n value: [range[0] || null, range[1] || null],\n };\n};\n\nconst InputFilterItem = ({\n label,\n value,\n onChange,\n placeholder,\n onValidate,\n overlayClassName,\n placement,\n onOpenChange,\n unit,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n {...{ onValidate, overlayClassName, placement, onOpenChange }}\n >\n {({ value, onChange }) => (\n <Space.Compact>\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[0]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [target, get(value, \"value[1]\")],\n unit,\n formatMessage\n )\n );\n }}\n />\n <Input\n style={{\n width: 30,\n borderLeft: 0,\n borderRight: 0,\n pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n <InputNumber\n {...props}\n placeholder={\n placeholder || `${formatMessage({ id: \"pleaseInput\" })}${label}`\n }\n className={style[\"filter-item-number-range\"]}\n value={get(value, \"value[1]\", \"\")}\n onChange={(target) => {\n onChange(\n computedFilterValue(\n [get(value, \"value[0]\"), target],\n unit,\n formatMessage\n )\n );\n }}\n />\n {unit && (\n <Input\n style={{\n width: 50,\n borderLeft: 0,\n }}\n value={unit}\n disabled\n />\n )}\n </Space.Compact>\n )}\n </PopoverItem>\n );\n};\n\nInputFilterItem.defaultProps = {\n onValidate: (value) => {\n const range = get(value, \"value\");\n return !(\n range &&\n isNumber(range[0]) &&\n isNumber(range[1]) &&\n range[1] < range[0]\n );\n },\n};\n\nexport default InputFilterItem;\n","import { DatePicker } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DatePickerFilterItem = withFieldItem(\n ({ value, onChange, picker, ...props }) => {\n return (\n <DatePicker\n {...props}\n picker={picker}\n value={value && dayjs(value.value)}\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n value &&\n onChange({\n label:\n picker !== \"date\"\n ? `${value.startOf(picker).format(format)}~${value\n .endOf(picker)\n .format(format)}`\n : value.format(format),\n value: new Date(value.startOf(picker).valueOf()),\n });\n }}\n />\n );\n }\n);\n\nDatePickerFilterItem.defaultProps = \"date\";\n\nexport default DatePickerFilterItem;\n","import { DatePicker, Flex } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, header, ...props }) => {\n return (\n <Flex vertical>\n {typeof header === \"function\" ? header({ value, onChange }) : header}\n <DatePicker.RangePicker\n {...props}\n allowEmpty={[false, false]}\n value={\n value &&\n Array.isArray(value.value) &&\n value.value.length === 2 &&\n value.value.map((item) => dayjs(item))\n }\n onChange={(value) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n onChange({\n label: value.map((item) => item.format(format)).join(\"~\"),\n value: value.map((item) => new Date(item.valueOf())),\n });\n }}\n />\n </Flex>\n );\n }\n);\n\nexport default DateRangePickerFilterItem;\n","import PopoverItem from \"../PopoverItem\";\nimport TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport get from \"lodash/get\";\nimport style from \"../style.module.scss\";\nimport dayjs from \"dayjs\";\n\nconst TypeDateRangePickerFilterItem = ({\n label,\n value,\n onChange,\n ...props\n}) => {\n return (\n <PopoverItem\n label={label}\n value={value}\n onChange={onChange}\n onValidate={(item) => {\n const value = item?.value;\n return (\n value?.type && Array.isArray(value?.value) && value.value.length === 2\n );\n }}\n >\n {({ value, onChange }) => (\n <TypeDateRangePickerField\n {...props}\n className={style[\"filter-item-text\"]}\n value={get(value, \"value\")}\n onChange={(pickerValue) => {\n const { format } = Object.assign({ format: \"YYYY-MM-DD\" }, props);\n const value = pickerValue?.value || [];\n onChange({\n label: (() => {\n if (value[0] && !value[1]) {\n return `${dayjs(value[0]).format(format)}以后`;\n }\n if (!value[0] && value[1]) {\n return `${dayjs(value[1]).format(format)}以前`;\n }\n if (value[0] && value[1]) {\n return `${dayjs(value[0]).format(format)}~${dayjs(\n value[1]\n ).format(format)}`;\n }\n return \"\";\n })(),\n value: pickerValue,\n });\n }}\n />\n )}\n </PopoverItem>\n );\n};\n\nexport default TypeDateRangePickerFilterItem;\n","import { FormattedMessage } from \"@components/Intl\";\nimport withFieldItem from \"../withFieldItem\";\nimport AdvancedSelectField, {\n UserField,\n} from \"@common/components/AdvancedSelectField\";\nimport SuperSelectField, {\n SuperSelectTableListField,\n SuperSelectUserField,\n} from \"@common/components/SuperSelectField\";\nimport FunctionSelectField from \"@common/components/FunctionSelectField\";\nimport AddressSelectField from \"@common/components/AddressSelectField\";\nimport IndustrySelectField from \"@common/components/IndustrySelectField\";\nimport CascaderField from \"@common/components/CascaderField\";\nimport TreeField from \"@common/components/TreeField\";\nimport InputFilterItemField from \"./InputFilterItem\";\nimport NumberRangeFilterItemField from \"./NumberRangeFilterItem\";\n\nconst withInputDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"Filter\"\n values={{ label }}\n >\n {(text) => {\n return (\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n );\n }}\n </FormattedMessage>\n );\n\nexport const AdvancedSelectFilterItem = withFieldItem(AdvancedSelectField);\nexport const SuperSelectFilterItem = withFieldItem(SuperSelectField);\nexport const SuperSelectTableListFilterItem = withFieldItem(\n SuperSelectTableListField\n);\nexport const SuperSelectUserFilterItem = withFieldItem(SuperSelectUserField);\nexport const UserFilterItem = withFieldItem(UserField);\nexport const FunctionSelectFilterItem = withFieldItem(FunctionSelectField);\nexport const IndustrySelectFilterItem = withFieldItem(IndustrySelectField);\n\nexport const CityFilterItem = withFieldItem(AddressSelectField);\n\nexport const CascaderFilterItem = withFieldItem(CascaderField);\n\nexport const TreeFilterItem = withFieldItem(TreeField);\nexport const InputFilterItem =\n withInputDefaultPlaceholder(InputFilterItemField);\nexport const NumberRangeFilterItem = withInputDefaultPlaceholder(\n NumberRangeFilterItemField\n);\n\nexport { default as DatePickerFilterItem } from \"./DatePickerFilterItem\";\nexport { default as DateRangePickerFilterItem } from \"./DateRangePickerFilterItem\";\nexport { default as TypeDateRangePickerFilterItem } from \"./TypeDateRangePickerFilterItem\";\n","import transform from \"lodash/transform\";\n\nconst getFilterValue = (filterValue) => {\n return transform(\n filterValue,\n (result, { name, value }) => {\n result[name] = Array.isArray(value)\n ? value.map(({ value }) => value)\n : value?.value;\n },\n {}\n );\n};\n\nexport default getFilterValue;\n","import { useContext } from \"./context\";\nimport get from \"lodash/get\";\n\nconst withFilterValue = (WrappedComponent) => {\n return ({ name, label, ...props }) => {\n const { value, onChange } = useContext();\n return (\n <WrappedComponent\n {...props}\n label={label}\n onChange={\n onChange\n ? (value) =>\n onChange({\n name,\n label,\n value,\n })\n : props.onChange\n }\n value={value ? get(value.get(name), \"value\") : props.value}\n />\n );\n };\n};\n\nexport default withFilterValue;\n","import {SearchInput as SearchInputField} from \"@components/Common\";\nimport withFilterValue from \"./withFilterValue\";\nimport {useIntl} from \"@components/Intl\";\n\nconst SearchInput = withFilterValue(({label, onChange, value, placeholder, ...props}) => {\n const {formatMessage} = useIntl({moduleName: 'Filter'});\n return (\n <SearchInputField\n {...props}\n placeholder={placeholder || formatMessage({id: 'inputPlaceholder'}, {label})}\n value={value?.value || \"\"}\n onSearch={(value) => {\n onChange({label: value, value});\n }}\n />\n );\n});\n\nexport default SearchInput;\n","import { App, Tag } from \"antd\";\nimport AddressSelectField, {\n getLabelForLocal,\n withAddressApi,\n} from \"@common/components/AddressSelectField\";\nimport { FormattedMessage, useIntl } from \"@components/Intl\";\nimport { usePreset } from \"@components/Global\";\nimport { useMemo } from \"react\";\nimport style from \"../../style.module.scss\";\n\nconst { CheckableTag } = Tag;\n\nconst CityFilterItemInner = ({\n value,\n onChange,\n single,\n maxLength,\n addressApi,\n ...props\n}) => {\n const { message } = App.useApp();\n const { locale } = usePreset();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const cityList = useMemo(() => {\n return addressApi.getChinaHotCities();\n }, [addressApi]);\n return (\n <>\n {cityList.map((city) => {\n const { code } = city;\n const name = getLabelForLocal(city, locale);\n return (\n <CheckableTag\n key={code}\n size=\"small\"\n checked={\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: code, label: name } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: code, label: name })\n : (() => {\n const index = newValue.findIndex(\n ({ value }) => value === code\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {name}\n </CheckableTag>\n );\n })}\n <CheckableTag\n className={style[\"filter-advanced-item-other\"]}\n size=\"small\"\n checked={\n (single ? value?.value : value?.value && value.value.length > 0) &&\n !cityList.find(({ code }) =>\n single\n ? value?.value === code\n : !!(value || []).find(({ value }) => value === code)\n )\n }\n >\n <FormattedMessage\n id={\"otherText\"}\n moduleName=\"Filter\"\n defaultMessage=\"其他\"\n />\n <AddressSelectField\n {...props}\n className={style[\"filter-advanced-item-other-inner\"]}\n maxLength={maxLength}\n value={\n single ? value?.value : (value || []).map(({ value }) => value)\n }\n single={single}\n onChange={(value, ...args) => {\n const getCityValue = (value) => {\n const { city } = addressApi.getCity(value);\n return { value: city?.code, label: city?.name };\n };\n onChange(\n single\n ? getCityValue(value)\n : value.map((value) => getCityValue(value))\n );\n }}\n />\n </CheckableTag>\n </>\n );\n};\nCityFilterItemInner.defaultProps = {\n single: false,\n maxLength: 5,\n};\nconst CityFilterItem = withAddressApi(CityFilterItemInner);\nexport default CityFilterItem;\n","import { Tag, App } from \"antd\";\nimport isEqual from \"lodash/isEqual\";\nimport * as fields from \"../../fields\";\nimport { useIntl } from \"@components/Intl\";\n\nconst { CheckableTag } = Tag;\nconst ListFilterItem = ({\n value,\n onChange,\n label,\n single,\n maxLength,\n items,\n custom,\n}) => {\n const { message } = App.useApp();\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <>\n {items.map(({ label, value: itemValue }) => {\n return (\n <CheckableTag\n key={label}\n size=\"small\"\n checked={\n single\n ? isEqual(itemValue, value?.value)\n : !!(value || []).find(({ value }) => isEqual(itemValue, value))\n }\n onChange={(checked) => {\n if (single) {\n onChange(checked ? { value: itemValue, label } : null);\n return;\n }\n const newValue = (value || []).slice(0);\n checked\n ? newValue.push({ value: itemValue, label })\n : (() => {\n const index = newValue.find(({ value }) =>\n isEqual(itemValue, value)\n );\n newValue.splice(index, 1);\n })();\n if (newValue.length > maxLength) {\n message.error(\n formatMessage(\n { id: \"maxSelectedCount\" },\n { count: maxLength }\n )\n );\n return;\n }\n onChange(newValue);\n }}\n >\n {label}\n </CheckableTag>\n );\n })}\n {custom &&\n (() => {\n const ComponentItem = Object.values(fields).find(\n (item) => item === custom.type\n );\n if (!ComponentItem) {\n return null;\n }\n return (\n <ComponentItem\n {...custom.props}\n value={value}\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n onChange={onChange}\n />\n );\n })()}\n </>\n );\n};\n\nListFilterItem.defaultProps = {\n single: false,\n maxLength: 5,\n items: [],\n};\n\nexport default ListFilterItem;\n","import { Input, Space, Button } from \"antd\";\nimport { useState, useEffect, useRef } from \"react\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport { useIntl } from \"@components/Intl\";\n\nconst InputFilterItem = ({ value, label, onChange, ...props }) => {\n const propsValue = value?.value;\n const [inputValue, setInputValue] = useState(propsValue || \"\");\n const [active, setActive] = useState(false);\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n const searchHandler = () => {\n onChange(inputValue ? { label: inputValue, value: inputValue } : null);\n };\n const ref = useSimulationBlur(() => {\n setActive(false);\n searchHandler();\n });\n const inputValueRef = useRef(\"\");\n inputValueRef.current = inputValue;\n\n useEffect(() => {\n if (propsValue !== inputValueRef.current) {\n setInputValue(propsValue);\n }\n }, [propsValue]);\n return (\n <span ref={ref}>\n <Space.Compact>\n <Input\n placeholder={`${formatMessage({ id: \"pleaseInput\" })}${label}`}\n {...props}\n size=\"small\"\n value={inputValue}\n onFocus={() => {\n setActive(true);\n }}\n onChange={(e) => {\n setInputValue(e.target.value);\n }}\n onPressEnter={searchHandler}\n />\n {active && (\n <Button size=\"small\" type=\"primary\" onClick={searchHandler}>\n {formatMessage({ id: \"search\" })}\n </Button>\n )}\n </Space.Compact>\n </span>\n );\n};\n\nexport default InputFilterItem;\n","import CityFilterItem from \"./CityFilterItem\";\nimport ListFilterItem from \"./ListFilterItem\";\nimport InputFilterItem from \"./InputFilterItem\";\n\nconst fields = { CityFilterItem, ListFilterItem, InputFilterItem };\n\nexport default fields;\n","import FilterOuter from \"../FilterOuter\";\nimport MoreFilterLines from \"../FilterLines\";\nimport { Flex } from \"antd\";\nimport advancedFields from \"./fields\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport get from \"lodash/get\";\nimport { useContext } from \"../context\";\nimport style from \"../style.module.scss\";\nimport FilterValueDisplay from \"../FilterValueDisplay\";\nimport importMessages from \"../locale\";\n\nconst Line = ({ list }) => {\n const { value, onChange } = useContext();\n return (\n <Flex gap={8}>\n {list.map((item, index) => {\n const ComponentItem = item.type;\n return (\n <Flex\n gap={16}\n key={item.key || item.props.name || index}\n align=\"center\"\n >\n <div className={style[\"filter-label\"]}>{item.props.label}:</div>\n <Flex wrap={true} align=\"center\">\n <ComponentItem\n {...item.props}\n value={\n value\n ? get(value.get(item.props.name), \"value\")\n : item.props.value\n }\n onChange={\n onChange\n ? (value) =>\n onChange({\n name: item.props.name,\n label: item.props.label,\n value,\n })\n : item.props.onChange\n }\n />\n </Flex>\n </Flex>\n );\n })}\n </Flex>\n );\n};\n\nconst AdvancedFilter = createWithIntl({ importMessages, moduleName: \"Filter\" })(\n (props) => {\n const { formatMessage } = useIntl({ moduleName: \"Filter\" });\n return (\n <FilterOuter {...props}>\n {({ value, onChange, props }) => {\n const { list, more } = props;\n return (\n <div>\n <Flex gap={8} vertical className={style[\"filter-advanced\"]}>\n {list.map((item, index) => {\n return <Line key={index} list={item} />;\n })}\n {more && (\n <MoreFilterLines\n className={style[\"filter-advanced-more\"]}\n label={`${formatMessage({ id: \"moreText\" })}:`}\n list={[more]}\n />\n )}\n </Flex>\n {value && value.length > 0 && (\n <FilterValueDisplay value={value} onChange={onChange} />\n )}\n </div>\n );\n }}\n </FilterOuter>\n );\n }\n);\n\nAdvancedFilter.fields = advancedFields;\nexport default AdvancedFilter;\n\nexport { advancedFields };\n","const FilterItemContainer = ({ children, ...props }) => {\n return children(props);\n};\n\nexport default FilterItemContainer;\n","import Filter from \"./Filter\";\nimport * as fields from \"./fields\";\nimport getFilterValue from \"./getFilterValue\";\nimport {useContext as useFilter} from \"./context\";\nimport withFilterValue from \"./withFilterValue\";\nimport SearchInput from \"./SearchInput\";\nimport FilterProvider from './FilterProvider';\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nFilter.useFilter = useFilter;\nFilter.SearchInput = SearchInput;\nFilter.withFilterValue = withFilterValue;\nFilter.FilterProvider = FilterProvider;\nexport default Filter;\nexport {fields, getFilterValue, useFilter, withFilterValue, SearchInput, FilterProvider};\nexport {default as AdvancedFilter, advancedFields} from \"./AdvancedFilter\";\nexport {default as FilterValueDisplay} from \"./FilterValueDisplay\";\nexport {default as FilterItem} from \"./FilterItem\";\nexport {default as FilterLines} from \"./FilterLines\";\nexport {default as PopoverItem} from \"./PopoverItem\";\nexport {default as withFieldItem} from \"./withFieldItem\";\nexport {default as FilterItemContainer} from \"./FilterItemContainer\";\nexport {\n NumberRangeFilterItem,\n InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\n SuperSelectFilterItem,\n SuperSelectTableListFilterItem,\n SuperSelectUserFilterItem,\n UserFilterItem,\n FunctionSelectFilterItem,\n IndustrySelectFilterItem,\n CascaderFilterItem,\n TreeFilterItem,\n DatePickerFilterItem,\n DateRangePickerFilterItem,\n TypeDateRangePickerFilterItem,\n} from \"./fields\";\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","// extracted by mini-css-extract-plugin\nexport default {\"helper-guide\":\"style_helper-guide__K5xFw__tRSYD\",\"inner\":\"style_inner__bMKeU__tRSYD\",\"content\":\"style_content__xTfWZ__tRSYD\",\"link\":\"style_link__93j7O__tRSYD\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nimport * as React from \"react\";\nfunction SvgFavicon(_ref, svgRef) {\n let {\n title,\n titleId,\n ...props\n } = _ref;\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1679367216639,\n className: \"icon\",\n viewBox: \"0 0 1030 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 1696,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 201.171875,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M252.479711 385.587015v293.958522l258.791705 146.528403 258.791704-146.528403V385.587015l-251.127142-145.62669L252.479711 385.587015z\",\n fill: \"#FFFFFF\",\n opacity: 0.1,\n \"p-id\": 1697\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M778.629396 405.875564A20.739405 20.739405 0 0 1 766.456267 405.875564l-39.675383-21.641119a22.091975 22.091975 0 0 1 21.190261-39.224526l39.675383 21.190261a22.542831 22.542831 0 0 1-10.820559 42.380523z m-518.485122-6.76285a22.542831 22.542831 0 0 1-19.837691-12.173129 22.091975 22.091975 0 0 1 9.918845-30.207394l40.12624-20.739405a22.993688 22.993688 0 0 1 30.207394 9.918846 22.542831 22.542831 0 0 1-9.918846 30.207394L270.513977 396.858431a20.739405 20.739405 0 0 1-10.369703 2.254283z m399.909829-57.258792a22.542831 22.542831 0 0 1-10.820559-2.705139l-39.675383-21.190262a22.993688 22.993688 0 0 1-9.017133-30.65825 22.091975 22.091975 0 0 1 30.207394-9.017133l39.675383 21.190261a22.542831 22.542831 0 0 1-10.369702 42.380523z m-279.531109-4.057709a22.542831 22.542831 0 0 1-9.918846-45.085663l40.12624-20.288548a22.542831 22.542831 0 0 1 30.207394 9.467989 22.993688 22.993688 0 0 1-9.918846 33.814247l-40.12624 20.288548a20.739405 20.739405 0 0 1-10.369702 1.803427zM541.027953 277.381425a19.386835 19.386835 0 0 1-10.820559-2.70514L519.837692 270.618575l-8.566276 4.508567a22.542831 22.542831 0 0 1-20.288549-40.577097l18.935979-9.017132a23.895401 23.895401 0 0 1 20.739405 0l21.190261 11.722272a22.091975 22.091975 0 0 1 9.017133 30.207394 22.091975 22.091975 0 0 1-19.837692 9.918846z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1698\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1002.70514 289.554554a24.346258 24.346258 0 0 1-9.918846 0L513.074842 47.895401 33.814247 287.300271a22.542831 22.542831 0 0 1-30.207394-10.369703 22.993688 22.993688 0 0 1 9.918846-30.207394L503.155996 2.358882a22.993688 22.993688 0 0 1 20.288549 0l489.179441 244.364292a22.542831 22.542831 0 0 1-9.918846 45.085663z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1699\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M45.085663 762.052299a22.542831 22.542831 0 0 1-9.918846-40.577096l81.154193-39.675383A22.542831 22.542831 0 0 1 135.256988 721.475203l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.017132 0.901713z m889.540126-14.427412a24.346258 24.346258 0 0 1-9.918846 0l-80.703336-40.577096a22.542831 22.542831 0 0 1-10.369703-30.207394 22.091975 22.091975 0 0 1 30.207394-9.918846l80.703337 40.12624a22.542831 22.542831 0 0 1-9.918846 42.831379zM206.943192 683.15239a23.444545 23.444545 0 0 1-20.288548-12.623986 22.993688 22.993688 0 0 1 10.369702-30.207394l81.154193-39.675383a22.993688 22.993688 0 0 1 30.207394 10.369702 22.542831 22.542831 0 0 1-10.369702 30.207394l-81.154193 39.675383a24.346258 24.346258 0 0 1-9.918846 2.254284z m566.275924-16.230839a26.600541 26.600541 0 0 1-9.918845 0l-80.703337-40.577097a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918845l80.703337 40.126239a22.993688 22.993688 0 0 1 9.918846 30.207395 22.542831 22.542831 0 0 1-20.288549 10.369702z m-405.770965-62.669071a22.091975 22.091975 0 0 1-20.288548-12.623986 22.542831 22.542831 0 0 1 13.525699-30.207394l81.154193-39.224527a22.542831 22.542831 0 0 1 30.207394 10.369703 22.091975 22.091975 0 0 1-10.369702 29.756537l-81.154193 39.675384a26.600541 26.600541 0 0 1-11.271416 2.254283z m242.560866-18.034265a19.837692 19.837692 0 0 1-9.918846-2.254284l-80.703336-40.577096a22.091975 22.091975 0 0 1-9.918846-30.207394 22.542831 22.542831 0 0 1 30.207394-9.918846l80.703337 40.12624a23.444545 23.444545 0 0 1 9.918845 30.658251 22.542831 22.542831 0 0 1-18.485121 12.173129z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1700\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.173129 1024a24.346258 24.346258 0 0 1-9.918846-2.254283L12.623986 783.242561a22.993688 22.993688 0 0 1-12.623986-20.288548V273.774572a23.444545 23.444545 0 0 1 10.820559-19.386835 21.641118 21.641118 0 0 1 21.641118 0l479.711452 238.954012L991.884581 253.486023a21.641118 21.641118 0 0 1 21.641118 0 23.444545 23.444545 0 0 1 10.820559 19.386835v490.081155a22.993688 22.993688 0 0 1-12.623986 20.288548l-490.081154 238.503156a22.542831 22.542831 0 0 1-9.467989 2.254283zM45.085663 748.526601l467.087466 225.428313 467.087466-225.428313V310.293959l-454.914337 225.428313a22.542831 22.542831 0 0 1-22.091975 0L45.085663 310.293959z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1701\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M511.722272 1020.393147a22.542831 22.542831 0 0 1-22.542831-22.542831V526.254283a22.542831 22.542831 0 0 1 45.085663 0v471.596033a22.542831 22.542831 0 0 1-22.542832 22.542831z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1702\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M512.623986 841.853922a18.935978 18.935978 0 0 1-9.918846-2.254283l-266.005411-128.043282a22.091975 22.091975 0 0 1-11.271415-20.288548V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832V676.38954l243.913435 117.222723 243.462579-117.222723V383.783589a22.542831 22.542831 0 0 1 22.542831-22.542832 22.542831 22.542831 0 0 1 22.542832 22.542832v307.48422a22.542831 22.542831 0 0 1-12.623986 20.288548l-266.00541 128.043282a19.837692 19.837692 0 0 1-11.722272 2.254283z\",\n fill: \"#FFFFFF\",\n \"p-id\": 1703\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgFavicon);\nexport default __webpack_public_path__ + \"static/media/favicon.477a5bb996fd5b367fe0dddc29f67824.svg\";\nexport { ForwardRef as ReactComponent };","const importMessages = (locale) => {\n return ({\n 'en-US': () => import('./en-US'), 'zh-CN': () => import('./zh-CN')\n })[locale]();\n};\n\nexport default importMessages;","// extracted by mini-css-extract-plugin\nexport default {\"navigation-wrap\":\"style_navigation-wrap__VF8x2__tRSYD\",\"navigation\":\"style_navigation__60RrS__tRSYD\",\"logo\":\"style_logo__lB9RC__tRSYD\",\"is-fixed\":\"style_is-fixed__kHFWj__tRSYD\",\"main-menu\":\"style_main-menu__5TDBj__tRSYD\",\"navigation-logo\":\"style_navigation-logo__q9qHu__tRSYD\",\"navigation-list\":\"style_navigation-list__EYtkg__tRSYD\",\"navigation-options\":\"style_navigation-options__0BdJU__tRSYD\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__tRSYD\",\"more-icon\":\"style_more-icon__gNMnt__tRSYD\"};","import {Col, Layout, Menu, Row, Space} from \"antd\";\nimport {useLocation, useNavigate} from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport {useEffect, useMemo, useRef, useState} from \"react\";\nimport classnames from \"classnames\";\nimport logo from \"./favicon.svg\";\nimport Image from \"@components/Image\";\nimport importMessages from \"./locale\";\nimport {FormattedMessage, IntlProvider} from \"@components/Intl\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\n\nconst {Header} = Layout;\n\nexport const navigationHeight = 48;\n\nconst SetTitle = ({name, mapping, defaultTitle}) => {\n const propsRef = useRef({\n mapping,\n defaultTitle,\n });\n useEffect(() => {\n const title = get(propsRef.current.mapping.get(name), \"title\");\n document.title = (title ? title + \"-\" : \"\") + propsRef.current.defaultTitle;\n }, [name]);\n return null;\n};\n\nconst MenuReady = ({onReady}) => {\n const ready = useRefCallback(onReady);\n useEffect(() => {\n ready();\n }, [ready]);\n return null;\n};\n\nconst Navigation = ({\n permissions,\n list,\n headerLogo,\n rightOptions,\n isFixed,\n showIndex,\n indexLabel,\n defaultTitle,\n overflowedIndicator,\n base,\n onChange,\n className,\n navigateTo,\n }) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({key, ...others}) => [key, others]));\n }, [list]);\n const nav = useNavigate();\n const navigate = typeof navigateTo === 'function' ? navigateTo : nav;\n const location = useLocation();\n const navigationRef = useRef();\n const resizeObserverRef = useRef(null);\n const [nameLabel, setNameLabel] = useState(\"更多\");\n const [ready, setReady] = useState(false);\n const pathModuleName = location.pathname\n .replace(new RegExp(`^${base}`), \"\")\n .split(\"/\")[1];\n const name = pathModuleName\n ? get(\n Array.from(mapping.entries()).find(([name, {path, permission}]) => {\n const _path =\n typeof path === \"function\" ? path(permission, permissions) : path;\n return _path.indexOf(\"/\" + pathModuleName) !== -1;\n }),\n \"[0]\"\n )\n : \"home\";\n\n useEffect(() => {\n const callback = () => {\n if (navigationRef.current) {\n const menuDom =\n navigationRef.current.querySelectorAll(`li[data-menu-id]`);\n let exist = false;\n for (let i = 0; i < menuDom.length; i++) {\n const dom = menuDom[i];\n const menuId = dom.getAttribute(\"data-menu-id\");\n if (menuId.indexOf(name) !== -1) {\n exist = true;\n break;\n }\n }\n let _nameLabel =\n mapping.get(name) && !exist ? get(mapping.get(name), \"title\") : \"\";\n setNameLabel(_nameLabel);\n }\n };\n const mutationObserverInitConfig = {\n attributes: true,\n childList: true,\n subtree: true,\n };\n if (ready && navigationRef && navigationRef.current) {\n callback();\n if (resizeObserverRef.current) {\n resizeObserverRef.current.disconnect();\n }\n resizeObserverRef.current = new MutationObserver(callback);\n resizeObserverRef.current.observe(\n navigationRef.current,\n mutationObserverInitConfig\n );\n }\n\n return () => {\n resizeObserverRef.current && resizeObserverRef.current.disconnect();\n };\n }, [name, mapping, ready]);\n const indexNav = showIndex\n ? {\n label: indexLabel || (\n <FormattedMessage id=\"indexLabel\" moduleName=\"Navigation\"/>\n ),\n key: \"home\",\n onClick: () => {\n onChange && onChange(\"/\");\n setTimeout(() => {\n navigate(\"/\");\n }, 0);\n },\n }\n : false;\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Navigation\">\n <FormattedMessage id=\"defaultTitle\" moduleName=\"Navigation\">\n {(text) => (\n <SetTitle\n defaultTitle={defaultTitle || text}\n mapping={mapping}\n name={name}\n />\n )}\n </FormattedMessage>\n <div className={classnames(style[\"navigation-wrap\"], className)}>\n <Header\n className={classnames(\"navigation\", style[\"navigation\"], {\n [style[\"is-fixed\"]]: isFixed,\n })}\n >\n <Row justify=\"space-around\" wrap={false}>\n <Col\n className={classnames(\n \"navigation-logo\",\n style[\"navigation-logo\"]\n )}\n >\n <Image\n className={classnames(style[\"logo\"])}\n src={logo}\n alt=\"logo\"\n {...headerLogo}\n />\n </Col>\n <Col\n ref={navigationRef}\n flex={1}\n className={classnames(\n \"navigation-list\",\n style[\"navigation-list\"]\n )}\n >\n <MenuReady\n onReady={() => {\n setReady(true);\n }}\n />\n <Menu className={classnames(style['main-menu'], 'navigation-main-menu')}\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\"/>\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, {permission}]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, {title, path, permission}]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__tRSYD\",\"has-children\":\"style_has-children__oQDqU__tRSYD\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__tRSYD\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__tRSYD\",\"tab-step-control\":\"style_tab-step-control__EQaCl__tRSYD\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__tRSYD\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n"],"names":["ScrollBar","_ref","onScroll","getContainer","scrollerProps","startRef","useRef","moving","setMoving","useState","movingRef","current","onScrollRef","ratioRef","width","innerWidth","useEffect","moveHandler","e","clientX","upHandler","document","addEventListener","removeEventListener","createPortal","hasScroller","_jsx","className","style","left","height","children","classnames","innerLeft","onMouseDown","preventDefault","body","Scroller","_ref2","scroller","getScrollTarget","setScrollerProps","ref","getScrollEl","useRefCallback","container","documentElement","scrollEl","computed","top","getBoundingClientRect","scrollerHeight","offsetHeight","clientHeight","clientWidth","scrollWidth","scrollLeft","containerRect","props","Object","assign","resizeObserver","ResizeObserver","disconnect","Array","from","forEach","item","observe","window","_jsxs","x","defaultProps","querySelector","OptionsList","list","ButtonGroup","filter","hidden","map","type","more","Button","icon","Icon","_ref3","Fetch","loader","render","_ref4","data","ellipsis","Typography","Text","tooltip","overlayClassName","ColItem","isEmpty","emptyRender","hover","primary","onClick","colValue","loading","setLoading","columnsStyle","Promise","resolve","colItem","event","finally","isColValueEmpty","value","emptyOf","isArray","length","values","DisplayInfo","createWithFetch","api","expand","onExpand","targetApi","Ellipsis","other","_ref17","columnTypes","date","dayjs","isValid","format","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","_ref5","serialNumberShort","_ref6","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","Enum","name","moduleName","force","_ref11","description","StateTag","omit","text","avatar","_ref12","Image","Avatar","size","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","options","_ref16","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","onConfirm","columns","config","defaultValue","onChange","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","useMemo","transform","groupBy","fixed","get","result","key","sort","a","b","renderColumn","_Fragment","titleText","title","groupHeader","join","Row","align","justify","Col","Tooltip","LoadingButton","async","defaultActiveKey","ghost","bordered","header","List","index","Item","Checkbox","checked","disabled","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","concat","col","set","handlerColumnsChange","animation","delayOnTouchStart","delay","stopPropagation","visible","wrap","SearchInput","prefix","placeholder","onSearch","dataSource","indexOf","renderItem","gutter","storageKey","getDataApi","localStorage","getItem","setDataFunc","setItem","TableConfig","setConfig","open","setOpen","flex","Popover","onOpenChange","trigger","placement","content","ColumnsControlContent","pick","controllerOpen","tableWidth","rowKey","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","presetTableServerApis","usePreset","tableLocalApis","tablePageServerParams","saveConfig","useDebouncedCallback","target","startTransition","send","useFetch","auto","cache","isLocal","onRequestSuccess","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","itemKey","prevItemKey","isEqual","handlerCancelResize","handlerResize","columnsConfig","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","disableColItem","otherColProps","isNil","targetRender","colProps","targetRenderWithProps","hasOwnProperty","valueOf","groupHeaderColumns","newColumns","slice","group","appendGroupHeader","columnIndex","core","targetHeader","otherHeader","currentGroup","find","startIndex","push","splice","groupColumn","hasGroupHeader","sortArrayToMap","Map","setSort","useControlValue","mapSort","setMapSort","useCallback","callback","newSort","single","targetValue","clone","delete","Table","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","setTimeout","useResize","el","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","AntdTable","_len","arguments","args","_key","pageData","locale","en-US","zh-CN","FeaturesColumnsConfig","id","Features","TablePageInner","withFetch","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","params","fetchParams","dataType","JSON","parse","Number","Boolean","stringify","MenuItem","navigation","useNavigate","label","iconType","path","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","isLoading","Permissions","Spin","Menu","pathMatch","pathname","search","useLocation","selectedKey","setSelectKeyChange","items","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","node","matchedPath","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","_createElement","parentId","newOpenKeys","defaultItems","computedIsPass","permissions","some","usePermissions","global","useGlobalContext","permissionsPath","usePermissionsPass","tagName","message","isPass","Result","status","subTitle","createElement","preset","base","menu","menuOpen","menuWidth","menuCloseWidth","menuFixed","menuCloseButton","backgroundColor","headerHeight","headerFixed","headerInfo","backUrl","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","context","createContext","Provider","Consumer","useContext","useReactContext","isFixed","pageMenuOpenKey","pageProps","setPageProps","pathModuleName","split","FixedContainer","SimpleBar","pageResult","PageInner","propsRef","localMenuOpen","useMenuOpen","isNotEmpty","localMenuOpenRef","targetProps","Page","openFeatures","offsetTop","offsetBottom","AntdAffix","isInteger","targetKey","useLayoutEffect","MutationObserver","subtree","childList","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","Filter","extra","Space","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","danger","location","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","setScrollLeft","_setPageProps","handlerScroll","Navigation","PageTitle","helperGuideName","HelperGuide","PageHeaderInner","info","tags","tagSplit","tagClassName","buttonOptions","buttonOptionsMaxWidth","addonBefore","addonAfter","direction","colorful","PageHeader","topArea","tableData","setTableData","PermissionsPage","stateBar","StateBar","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","showBorder","showBackground","filterName","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","Tag","background","border","treeTraverse","func","pId","parseProfile","memoize","profile","profileMap","output","features","keys","dependencies","depId","computedIsPaas","currentId","every","dependenciesTarget","useFeatureCall","debug","useFeatures","systemId","console","log","feature","Line","ComponentItem","FilterLines","displayLine","hasMore","isExpand","setIsExpand","filterValue","extraExpand","closable","onClose","newValue","valueBase","newFilterValue","FilterProvider","FilterOuter","others","FilterValueDisplay","active","WrappedComponent","interceptor","FilterItem","allowClear","input","valueType","useSelectInnerContext","SelectInnerInput","TreeFieldInner","selected","setValue","setSelect","fetchApi","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","Tree","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","selectedKeys","undefined","TreeField","maxLength","MAX_VALUE","checkStrictly","treeToList","nodeList","PopoverItem","onValidate","state","setState","Input","computedFilterValue","range","unit","formatMessage","isNumber","count","InputFilterItem","useIntl","Compact","InputNumber","borderLeft","borderRight","pointerEvents","DatePickerFilterItem","withFieldItem","picker","DatePicker","startOf","endOf","Date","Flex","vertical","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","withInputDefaultPlaceholder","AdvancedSelectFilterItem","AdvancedSelectField","SuperSelectFilterItem","SuperSelectField","SuperSelectTableListFilterItem","SuperSelectTableListField","SuperSelectUserFilterItem","SuperSelectUserField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItemField","NumberRangeFilterItem","NumberRangeFilterItemField","withFilterValue","SearchInputField","CheckableTag","CityFilterItemInner","addressApi","App","useApp","cityList","getChinaHotCities","city","code","getLabelForLocal","findIndex","error","getCityValue","getCity","withAddressApi","ListFilterItem","custom","itemValue","fields","propsValue","inputValue","setInputValue","setActive","searchHandler","useSimulationBlur","inputValueRef","onFocus","onPressEnter","gap","AdvancedFilter","createWithIntl","MoreFilterLines","advancedFields","getFilterValue","useFilter","url","Link","href","SetTitle","mapping","defaultTitle","MenuReady","onReady","ready","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","navigateTo","nav","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","setReady","RegExp","entries","permission","menuDom","querySelectorAll","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","src","logo","alt","mode","_path","stateOption","isInner","Tabs","animated","tab"],"sourceRoot":""}