@kne-components/components-core 0.1.47 → 0.1.49

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 (179) hide show
  1. package/build/asset-manifest.json +120 -120
  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/1151.6fa24bdd.chunk.css +2 -0
  6. package/build/static/css/{1151.20fc6619.chunk.css.map → 1151.6fa24bdd.chunk.css.map} +1 -1
  7. package/build/static/css/1153.37374bcd.chunk.css +2 -0
  8. package/build/static/css/1153.37374bcd.chunk.css.map +1 -0
  9. package/build/static/css/1190.fd2f2205.chunk.css.map +1 -1
  10. package/build/static/css/1454.74f228a5.chunk.css +2 -0
  11. package/build/static/css/{1454.f33bd39c.chunk.css.map → 1454.74f228a5.chunk.css.map} +1 -1
  12. package/build/static/css/1554.2b5a081d.chunk.css +2 -0
  13. package/build/static/css/{1554.1c355d25.chunk.css.map → 1554.2b5a081d.chunk.css.map} +1 -1
  14. package/build/static/css/2503.f9b6442a.chunk.css +2 -0
  15. package/build/static/css/{2503.ca29374c.chunk.css.map → 2503.f9b6442a.chunk.css.map} +1 -1
  16. package/build/static/css/2517.0b60ad88.chunk.css +2 -0
  17. package/build/static/css/{2517.c52a82e0.chunk.css.map → 2517.0b60ad88.chunk.css.map} +1 -1
  18. package/build/static/css/2526.2ea8f82a.chunk.css +2 -0
  19. package/build/static/css/{2526.7437cd77.chunk.css.map → 2526.2ea8f82a.chunk.css.map} +1 -1
  20. package/build/static/css/2716.6c65f7df.chunk.css +2 -0
  21. package/build/static/css/{2716.06fc6e66.chunk.css.map → 2716.6c65f7df.chunk.css.map} +1 -1
  22. package/build/static/css/2730.29b40393.chunk.css +2 -0
  23. package/build/static/css/{2730.e6871ddc.chunk.css.map → 2730.29b40393.chunk.css.map} +1 -1
  24. package/build/static/css/289.d9a87e01.chunk.css +2 -0
  25. package/build/static/css/{289.06da9206.chunk.css.map → 289.d9a87e01.chunk.css.map} +1 -1
  26. package/build/static/css/2999.6b625085.chunk.css +2 -0
  27. package/build/static/css/2999.6b625085.chunk.css.map +1 -0
  28. package/build/static/css/3040.c5583e04.chunk.css +2 -0
  29. package/build/static/css/3040.c5583e04.chunk.css.map +1 -0
  30. package/build/static/css/3333.60311859.chunk.css +2 -0
  31. package/build/static/css/{3333.45e6b752.chunk.css.map → 3333.60311859.chunk.css.map} +1 -1
  32. package/build/static/css/{3843.e3d74a00.chunk.css → 3843.ac8d776e.chunk.css} +2 -2
  33. package/build/static/css/{3843.e3d74a00.chunk.css.map → 3843.ac8d776e.chunk.css.map} +1 -1
  34. package/build/static/css/4666.4092a6aa.chunk.css +2 -0
  35. package/build/static/css/{4666.7ecfd719.chunk.css.map → 4666.4092a6aa.chunk.css.map} +1 -1
  36. package/build/static/css/5600.09a44a09.chunk.css +2 -0
  37. package/build/static/css/{5600.99e73046.chunk.css.map → 5600.09a44a09.chunk.css.map} +1 -1
  38. package/build/static/css/5846.7a58e408.chunk.css +2 -0
  39. package/build/static/css/5846.7a58e408.chunk.css.map +1 -0
  40. package/build/static/css/5868.7e074e10.chunk.css +2 -0
  41. package/build/static/css/5868.7e074e10.chunk.css.map +1 -0
  42. package/build/static/css/{5996.bd48d79d.chunk.css → 5996.fde4d7dc.chunk.css} +2 -2
  43. package/build/static/css/{5996.bd48d79d.chunk.css.map → 5996.fde4d7dc.chunk.css.map} +1 -1
  44. package/build/static/css/6779.9887bf26.chunk.css +2 -0
  45. package/build/static/css/{6779.b0e1970c.chunk.css.map → 6779.9887bf26.chunk.css.map} +1 -1
  46. package/build/static/css/7227.442c3520.chunk.css +2 -0
  47. package/build/static/css/{7227.17c23a37.chunk.css.map → 7227.442c3520.chunk.css.map} +1 -1
  48. package/build/static/css/8148.d813ba7c.chunk.css +2 -0
  49. package/build/static/css/{8148.e1ab5182.chunk.css.map → 8148.d813ba7c.chunk.css.map} +1 -1
  50. package/build/static/css/8208.40ab4266.chunk.css.map +1 -1
  51. package/build/static/css/8393.5c44137c.chunk.css +2 -0
  52. package/build/static/css/8393.5c44137c.chunk.css.map +1 -0
  53. package/build/static/css/{8725.ec7ed3f4.chunk.css → 8725.7d948685.chunk.css} +2 -2
  54. package/build/static/css/{8725.ec7ed3f4.chunk.css.map → 8725.7d948685.chunk.css.map} +1 -1
  55. package/build/static/css/9053.211f796a.chunk.css +2 -0
  56. package/build/static/css/{9053.8cbc5705.chunk.css.map → 9053.211f796a.chunk.css.map} +1 -1
  57. package/build/static/css/931.4ad0db5b.chunk.css +2 -0
  58. package/build/static/css/931.4ad0db5b.chunk.css.map +1 -0
  59. package/build/static/css/9449.891607a4.chunk.css +2 -0
  60. package/build/static/css/9449.891607a4.chunk.css.map +1 -0
  61. package/build/static/css/9689.3e664197.chunk.css +2 -0
  62. package/build/static/css/9689.3e664197.chunk.css.map +1 -0
  63. package/build/static/js/1153.f1797434.chunk.js +3 -0
  64. package/build/static/js/{1153.48034dd3.chunk.js.map → 1153.f1797434.chunk.js.map} +1 -1
  65. package/build/static/js/{1454.bb552c75.chunk.js → 1454.1b55078a.chunk.js} +3 -3
  66. package/build/static/js/{1454.bb552c75.chunk.js.map → 1454.1b55078a.chunk.js.map} +1 -1
  67. package/build/static/js/1554.892ab242.chunk.js +3 -0
  68. package/build/static/js/{1554.5bbca3ee.chunk.js.map → 1554.892ab242.chunk.js.map} +1 -1
  69. package/build/static/js/{1664.67315455.chunk.js → 1664.176bc2bc.chunk.js} +2 -2
  70. package/build/static/js/{1664.67315455.chunk.js.map → 1664.176bc2bc.chunk.js.map} +1 -1
  71. package/build/static/js/{2503.d158fbbb.chunk.js → 2503.6143aaeb.chunk.js} +2 -2
  72. package/build/static/js/{2503.d158fbbb.chunk.js.map → 2503.6143aaeb.chunk.js.map} +1 -1
  73. package/build/static/js/{2517.18ebb85e.chunk.js → 2517.f27b61c0.chunk.js} +2 -2
  74. package/build/static/js/{2517.18ebb85e.chunk.js.map → 2517.f27b61c0.chunk.js.map} +1 -1
  75. package/build/static/js/2526.6d92a326.chunk.js +2 -0
  76. package/build/static/js/{2526.d64653e0.chunk.js.map → 2526.6d92a326.chunk.js.map} +1 -1
  77. package/build/static/js/2716.d9a08df5.chunk.js +3 -0
  78. package/build/static/js/{2716.b8cdbe12.chunk.js.map → 2716.d9a08df5.chunk.js.map} +1 -1
  79. package/build/static/js/{2730.908cb61e.chunk.js → 2730.179ff9d2.chunk.js} +2 -2
  80. package/build/static/js/{2730.908cb61e.chunk.js.map → 2730.179ff9d2.chunk.js.map} +1 -1
  81. package/build/static/js/{289.dacd6fb7.chunk.js → 289.00863f96.chunk.js} +2 -2
  82. package/build/static/js/{289.dacd6fb7.chunk.js.map → 289.00863f96.chunk.js.map} +1 -1
  83. package/build/static/js/{2999.93ca66ed.chunk.js → 2999.35d29a6b.chunk.js} +2 -2
  84. package/build/static/js/{2999.93ca66ed.chunk.js.map → 2999.35d29a6b.chunk.js.map} +1 -1
  85. package/build/static/js/3040.4496f4be.chunk.js +2 -0
  86. package/build/static/js/3040.4496f4be.chunk.js.map +1 -0
  87. package/build/static/js/{3333.5bc8c977.chunk.js → 3333.6bb21c67.chunk.js} +2 -2
  88. package/build/static/js/{3333.5bc8c977.chunk.js.map → 3333.6bb21c67.chunk.js.map} +1 -1
  89. package/build/static/js/{36.4b0d3e32.chunk.js → 36.649f1ed9.chunk.js} +2 -2
  90. package/build/static/js/{36.4b0d3e32.chunk.js.map → 36.649f1ed9.chunk.js.map} +1 -1
  91. package/build/static/js/{3843.8b3ca220.chunk.js → 3843.9d7c3a23.chunk.js} +2 -2
  92. package/build/static/js/{3843.8b3ca220.chunk.js.map → 3843.9d7c3a23.chunk.js.map} +1 -1
  93. package/build/static/js/409.e3189885.chunk.js +2 -0
  94. package/build/static/js/409.e3189885.chunk.js.map +1 -0
  95. package/build/static/js/{4666.69c5682f.chunk.js → 4666.264b83f8.chunk.js} +3 -3
  96. package/build/static/js/{4666.69c5682f.chunk.js.map → 4666.264b83f8.chunk.js.map} +1 -1
  97. package/build/static/js/{5600.2e90c12d.chunk.js → 5600.6f174673.chunk.js} +2 -2
  98. package/build/static/js/{5600.2e90c12d.chunk.js.map → 5600.6f174673.chunk.js.map} +1 -1
  99. package/build/static/js/5846.c97ad505.chunk.js +2 -0
  100. package/build/static/js/5846.c97ad505.chunk.js.map +1 -0
  101. package/build/static/js/{5868.c0f97eda.chunk.js → 5868.e8a1eb9e.chunk.js} +2 -2
  102. package/build/static/js/{5868.c0f97eda.chunk.js.map → 5868.e8a1eb9e.chunk.js.map} +1 -1
  103. package/build/static/js/{5996.25137b28.chunk.js → 5996.22b126f4.chunk.js} +2 -2
  104. package/build/static/js/{5996.25137b28.chunk.js.map → 5996.22b126f4.chunk.js.map} +1 -1
  105. package/build/static/js/{6779.35a87a28.chunk.js → 6779.06aa3a5e.chunk.js} +2 -2
  106. package/build/static/js/{6779.35a87a28.chunk.js.map → 6779.06aa3a5e.chunk.js.map} +1 -1
  107. package/build/static/js/{7227.b7fc7694.chunk.js → 7227.f395d19a.chunk.js} +3 -3
  108. package/build/static/js/{7227.b7fc7694.chunk.js.map → 7227.f395d19a.chunk.js.map} +1 -1
  109. package/build/static/js/{7777.760f68a3.chunk.js → 7777.d3b5ba0b.chunk.js} +2 -2
  110. package/build/static/js/{7777.760f68a3.chunk.js.map → 7777.d3b5ba0b.chunk.js.map} +1 -1
  111. package/build/static/js/{8148.c0ea630c.chunk.js → 8148.6966dd40.chunk.js} +3 -3
  112. package/build/static/js/{8148.c0ea630c.chunk.js.map → 8148.6966dd40.chunk.js.map} +1 -1
  113. package/build/static/js/8393.c2cb9bb6.chunk.js +2 -0
  114. package/build/static/js/8393.c2cb9bb6.chunk.js.map +1 -0
  115. package/build/static/js/{8725.c6080743.chunk.js → 8725.de4f871e.chunk.js} +2 -2
  116. package/build/static/js/{8725.c6080743.chunk.js.map → 8725.de4f871e.chunk.js.map} +1 -1
  117. package/build/static/js/{9053.a573c8b4.chunk.js → 9053.71a389a4.chunk.js} +3 -3
  118. package/build/static/js/{9053.a573c8b4.chunk.js.map → 9053.71a389a4.chunk.js.map} +1 -1
  119. package/build/static/js/{931.e26b4e59.chunk.js → 931.13d6f77a.chunk.js} +2 -2
  120. package/build/static/js/{931.e26b4e59.chunk.js.map → 931.13d6f77a.chunk.js.map} +1 -1
  121. package/build/static/js/{9449.3a865a2e.chunk.js → 9449.e85c1558.chunk.js} +2 -2
  122. package/build/static/js/{9449.3a865a2e.chunk.js.map → 9449.e85c1558.chunk.js.map} +1 -1
  123. package/build/static/js/{main.15660af5.js → main.78e60326.js} +2 -2
  124. package/build/static/js/{main.15660af5.js.map → main.78e60326.js.map} +1 -1
  125. package/package.json +2 -2
  126. package/build/static/css/1151.20fc6619.chunk.css +0 -2
  127. package/build/static/css/1153.b63cc6d8.chunk.css +0 -2
  128. package/build/static/css/1153.b63cc6d8.chunk.css.map +0 -1
  129. package/build/static/css/1454.f33bd39c.chunk.css +0 -2
  130. package/build/static/css/1554.1c355d25.chunk.css +0 -2
  131. package/build/static/css/2503.ca29374c.chunk.css +0 -2
  132. package/build/static/css/2517.c52a82e0.chunk.css +0 -2
  133. package/build/static/css/2526.7437cd77.chunk.css +0 -2
  134. package/build/static/css/2716.06fc6e66.chunk.css +0 -2
  135. package/build/static/css/2730.e6871ddc.chunk.css +0 -2
  136. package/build/static/css/289.06da9206.chunk.css +0 -2
  137. package/build/static/css/2999.5f88757d.chunk.css +0 -2
  138. package/build/static/css/2999.5f88757d.chunk.css.map +0 -1
  139. package/build/static/css/3040.41bbe1d8.chunk.css +0 -2
  140. package/build/static/css/3040.41bbe1d8.chunk.css.map +0 -1
  141. package/build/static/css/3333.45e6b752.chunk.css +0 -2
  142. package/build/static/css/4666.7ecfd719.chunk.css +0 -2
  143. package/build/static/css/5600.99e73046.chunk.css +0 -2
  144. package/build/static/css/5846.bf802a9f.chunk.css +0 -2
  145. package/build/static/css/5846.bf802a9f.chunk.css.map +0 -1
  146. package/build/static/css/5868.9ed223e2.chunk.css +0 -2
  147. package/build/static/css/5868.9ed223e2.chunk.css.map +0 -1
  148. package/build/static/css/6779.b0e1970c.chunk.css +0 -2
  149. package/build/static/css/7227.17c23a37.chunk.css +0 -2
  150. package/build/static/css/8148.e1ab5182.chunk.css +0 -2
  151. package/build/static/css/8393.657a0ded.chunk.css +0 -2
  152. package/build/static/css/8393.657a0ded.chunk.css.map +0 -1
  153. package/build/static/css/9053.8cbc5705.chunk.css +0 -2
  154. package/build/static/css/931.d99634f2.chunk.css +0 -2
  155. package/build/static/css/931.d99634f2.chunk.css.map +0 -1
  156. package/build/static/css/9449.d0b6f15c.chunk.css +0 -2
  157. package/build/static/css/9449.d0b6f15c.chunk.css.map +0 -1
  158. package/build/static/css/9689.ddb8c9de.chunk.css +0 -2
  159. package/build/static/css/9689.ddb8c9de.chunk.css.map +0 -1
  160. package/build/static/js/1153.48034dd3.chunk.js +0 -3
  161. package/build/static/js/1554.5bbca3ee.chunk.js +0 -3
  162. package/build/static/js/2526.d64653e0.chunk.js +0 -2
  163. package/build/static/js/2716.b8cdbe12.chunk.js +0 -3
  164. package/build/static/js/3040.18cf7b83.chunk.js +0 -2
  165. package/build/static/js/3040.18cf7b83.chunk.js.map +0 -1
  166. package/build/static/js/409.0bde463a.chunk.js +0 -2
  167. package/build/static/js/409.0bde463a.chunk.js.map +0 -1
  168. package/build/static/js/5846.c118d076.chunk.js +0 -2
  169. package/build/static/js/5846.c118d076.chunk.js.map +0 -1
  170. package/build/static/js/8393.a7b831ca.chunk.js +0 -2
  171. package/build/static/js/8393.a7b831ca.chunk.js.map +0 -1
  172. /package/build/static/js/{1153.48034dd3.chunk.js.LICENSE.txt → 1153.f1797434.chunk.js.LICENSE.txt} +0 -0
  173. /package/build/static/js/{1454.bb552c75.chunk.js.LICENSE.txt → 1454.1b55078a.chunk.js.LICENSE.txt} +0 -0
  174. /package/build/static/js/{1554.5bbca3ee.chunk.js.LICENSE.txt → 1554.892ab242.chunk.js.LICENSE.txt} +0 -0
  175. /package/build/static/js/{2716.b8cdbe12.chunk.js.LICENSE.txt → 2716.d9a08df5.chunk.js.LICENSE.txt} +0 -0
  176. /package/build/static/js/{4666.69c5682f.chunk.js.LICENSE.txt → 4666.264b83f8.chunk.js.LICENSE.txt} +0 -0
  177. /package/build/static/js/{7227.b7fc7694.chunk.js.LICENSE.txt → 7227.f395d19a.chunk.js.LICENSE.txt} +0 -0
  178. /package/build/static/js/{8148.c0ea630c.chunk.js.LICENSE.txt → 8148.6966dd40.chunk.js.LICENSE.txt} +0 -0
  179. /package/build/static/js/{9053.a573c8b4.chunk.js.LICENSE.txt → 9053.71a389a4.chunk.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"static/js/2999.93ca66ed.chunk.js","mappings":"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","sources":["common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/ButtonGroup/style.module.scss?7e95","components/ButtonGroup/index.js","components/ConfirmButton/locale/index.js","webpack://@kne-components/components-core/./src/components/ConfirmButton/style.module.scss?9447","components/ConfirmButton/index.js","components/Enum/index.js","components/Filter/context.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.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/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/FormInfo/locale/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/TablePage.js","components/Layout/StateBarPage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"width-container\":\"style_width-container__JfEbg__9Lc6E\",\"hidden-container\":\"style_hidden-container__EdySA__9Lc6E\",\"hidden-inner\":\"style_hidden-inner__vAN59__9Lc6E\",\"menu-list\":\"style_menu-list__VDttR__9Lc6E\",\"btn-item\":\"style_btn-item__mp5MQ__9Lc6E\"};","import { startTransition, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { Button, Dropdown, Space } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport ConfirmButton from \"@components/ConfirmButton\";\nimport useResize from \"@common/hooks/useResize\";\nimport pick from \"lodash/pick\";\nimport style from \"./style.module.scss\";\nimport memoize from \"lodash/memoize\";\n\nconst areaWidthComputed = memoize(\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n const spaceWidth = (() => {\n if (compact) {\n return 0;\n }\n\n if ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) > -1) {\n return ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) + 1) * 8;\n }\n\n if (Number.isInteger(spaceProps.size)) {\n return spaceProps.size;\n }\n return 8;\n })();\n\n let targetLength = 0,\n targetWidth = 0;\n\n // 采取先加后减策略\n while (\n amountWidth >=\n targetWidth +\n buttonWidthList[targetLength] +\n targetLength * spaceWidth &&\n targetLength < buttonWidthList.length\n ) {\n targetWidth += buttonWidthList[targetLength];\n targetLength += 1;\n }\n\n while (\n amountWidth <\n targetWidth +\n (targetLength - 1) * spaceWidth +\n (targetLength < buttonWidthList.length\n ? moreBtnWidth + spaceWidth\n : 0) &&\n targetLength > 0\n ) {\n targetWidth -= buttonWidthList[targetLength - 1];\n targetLength -= 1;\n }\n\n return targetLength;\n },\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n return `${amountWidth}${moreBtnWidth}${buttonWidthList.join(\n \",\"\n )}${Object.values(spaceProps).join(\",\")}${compact && compact.toString()}`;\n }\n);\n\nconst ButtonGroup = ({ list, more, compact, ...props }) => {\n const spaceProps = pick(props, [\"size\", \"split\", \"align\", \"style\"]);\n const [showLength, setShowLength] = useState(list.length && 1);\n const computedLength = useRefCallback(() => {\n const el = targetRef.current,\n moreEl = moreRef.current,\n widthEl = ref.current;\n if (!el) {\n return;\n }\n\n const buttonEls = el.querySelectorAll(\".button-group-item\");\n if (!buttonEls) {\n return;\n }\n if (buttonEls.length === 0) {\n return;\n }\n\n const amountWidth = widthEl.clientWidth,\n moreBtnWidth = moreEl.clientWidth,\n buttonWidthList = [].map.call(buttonEls, (el) => el.offsetWidth);\n const targetLength = areaWidthComputed({\n amountWidth,\n moreBtnWidth,\n buttonWidthList,\n spaceProps,\n compact,\n });\n startTransition(() => {\n setShowLength(targetLength);\n });\n });\n const ref = useResize(computedLength);\n const targetRef = useResize(computedLength);\n const moreRef = useResize(computedLength);\n const otherList = list.slice(showLength);\n\n const renderButton = (renderItem, index, isDropdown) => {\n if (typeof renderItem === \"function\") {\n return renderItem({\n key: index,\n className: classnames(\"button-group-item\", style[\"btn-item\"]),\n isDropdown,\n });\n }\n const { className, confirm, ...props } = renderItem;\n const isConfirm = confirm || props.message;\n const CurrentButton = isConfirm ? ConfirmButton : LoadingButton;\n\n return (\n <CurrentButton\n danger={isConfirm && props.isDelete !== false}\n {...Object.assign(\n {},\n props,\n isConfirm && (props.isModal || isDropdown)\n ? {\n isModal: true,\n }\n : {}\n )}\n key={index}\n className={classnames(\n \"button-group-item\",\n style[\"btn-item\"],\n className\n )}\n />\n );\n };\n\n const SpaceComponent = compact ? Space.Compact : Space;\n\n return (\n <>\n <div className={style[\"width-container\"]} ref={ref} />\n <div className={style[\"hidden-container\"]}>\n <div className={style[\"hidden-inner\"]} ref={moreRef}>\n {more}\n </div>\n <div className={style[\"hidden-inner\"]} ref={targetRef}>\n <SpaceComponent {...spaceProps}>\n {list.map(renderButton)}\n </SpaceComponent>\n </div>\n </div>\n <SpaceComponent {...spaceProps}>\n {list\n .slice(0, showLength)\n .map((item, index) => renderButton(item, index, false))}\n {otherList.length > 0 && (\n <Dropdown\n overlayClassName={style[\"menu-list\"]}\n menu={{\n items: otherList.map((item, index) => {\n return {\n key: index,\n label: renderButton(item, index, true),\n };\n }),\n }}\n >\n {more}\n </Dropdown>\n )}\n </SpaceComponent>\n </>\n );\n};\n\nButtonGroup.defaultProps = {\n more: (\n <Button>\n 更多\n <Icon type=\"icon-arrow-thin-down\" />\n </Button>\n ),\n};\n\nexport default ButtonGroup;\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 {\"overlay\":\"style_overlay__99t5t__9Lc6E\",\"is-danger\":\"style_is-danger__gxyAB__9Lc6E\",\"title\":\"style_title__EEPu2__9Lc6E\",\"content\":\"style_content__mZZg5__9Lc6E\",\"has-title\":\"style_has-title__5+PEt__9Lc6E\"};","import React from \"react\";\nimport { Button, Popconfirm, Space, Typography } from \"antd\";\nimport importMessages from \"./locale\";\nimport Icon from \"@components/Icon\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport { useConfirmModal } from \"@components/Modal\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nexport const withConfirm = (WrappedComponent) => {\n const ConfirmComponent = createWithIntl({\n moduleName: \"ConfirmButton\",\n importMessages,\n })(\n ({\n title,\n message,\n isDelete = true,\n onClick,\n onCancel,\n disabled,\n showCancel,\n cancelText,\n isModal,\n okText,\n placement,\n getContainer,\n ...props\n }) => {\n const { formatMessage } = useIntl({ moduleName: \"ConfirmButton\" });\n const modal = useConfirmModal();\n if (isModal) {\n return (\n <WrappedComponent\n {...props}\n onClick={(e) => {\n modal({\n type: \"confirm\",\n title: title,\n getContainer,\n danger: isDelete,\n message: message || formatMessage({ id: \"message\" }),\n okText: okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" }),\n cancelText: cancelText || formatMessage({ id: \"cancel\" }),\n onCancel,\n onOk: onClick,\n });\n }}\n />\n );\n }\n return (\n <Popconfirm\n title={\n <Space\n direction=\"vertical\"\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n {title && (\n <Space size={0} align=\"start\" className={style[\"title\"]}>\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n {title}\n </Space>\n )}\n <Space\n size={0}\n align=\"start\"\n className={classnames(style[\"content\"], {\n [style[\"has-title\"]]: title,\n })}\n >\n {!title && (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n )}\n {message || formatMessage({ id: \"message\" })}\n </Space>\n </Space>\n }\n placement={placement}\n onConfirm={onClick}\n okButtonProps={{\n danger: isDelete,\n }}\n onCancel={onCancel}\n overlayClassName={classnames(style[\"overlay\"], {\n [style[\"is-danger\"]]: isDelete,\n })}\n getPopupContainer={getContainer}\n disabled={disabled}\n showCancel={showCancel}\n cancelText={cancelText}\n okText={\n okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" })\n }\n >\n <WrappedComponent {...props} disabled={disabled} />\n </Popconfirm>\n );\n }\n );\n\n ConfirmComponent.defaultProps = {\n isModal: false,\n showCancel: true,\n };\n\n return ConfirmComponent;\n};\n\nexport const ConfirmLink = withConfirm(Typography.Link);\nexport const ConfirmText = withConfirm(Typography.Text);\n\nexport default withConfirm(Button);\n","import { useRef } from \"react\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\nimport memoize from \"lodash/memoize\";\nimport isNil from \"lodash/isNil\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\nconst EnumLoaderFetch = withFetch(({ data, children }) => {\n return typeof children === \"function\"\n ? children(data)\n : children || data?.description;\n});\n\nconst getEnumsMap = memoize((enums) => {\n return new Map(\n baseLoaders.concat(\n Object.keys(Object.assign({}, enums)).map((key) => [key, enums[key]])\n )\n );\n});\n\nconst EnumLoader = ({ loader: enumsLoader, ...props }) => {\n const {\n global: { enumsRef },\n } = useGlobalContext();\n const prevLocaleRef = useRef(null);\n return (\n <EnumLoaderFetch\n {...props}\n loader={async (...args) => {\n const enums = getEnumsMap(await enumsLoader(...args));\n const { params } = args[0];\n const { moduleName, name, force, locale } = params;\n\n const getEnumMap = async (moduleName) => {\n return (\n (() => {\n return (\n force !== true &&\n prevLocaleRef.current === locale &&\n enumsRef.current.get(moduleName)\n );\n })() ||\n (await (async () => {\n const loader = enums.get(moduleName);\n const output = await (async () => {\n if (typeof loader === \"function\") {\n return new Map(\n (await loader({ locale })).map((item) => {\n return [item.value.toString(), item];\n })\n );\n }\n if (Array.isArray(loader)) {\n return new Map(\n loader.map((item) => [item.value.toString(), item])\n );\n }\n if (typeof loader === \"object\") {\n return new Map(\n Object.keys(loader).map((key) => [\n key.toString(),\n loader[key],\n ])\n );\n }\n console.warn(\"枚举值loader的设置可能不正确\");\n return new Map();\n })();\n enumsRef.current.set(moduleName, output);\n prevLocaleRef.current = locale;\n return output;\n })())\n );\n };\n if (Array.isArray(moduleName)) {\n return await Promise.all(\n moduleName.map((target) =>\n getEnumMap(target).then((enumMap) => Array.from(enumMap.values()))\n )\n );\n }\n\n const enumMap = await getEnumMap(moduleName);\n if (!isNil(name)) {\n return enumMap.get(name.toString());\n }\n return Array.from(enumMap.values());\n }}\n />\n );\n};\n\nconst Enum = ({ moduleName, name, force, children, ...props }) => {\n const preset = usePreset();\n return (\n <EnumLoader\n {...props}\n params={{\n moduleName,\n locale: preset?.locale,\n enums: preset?.enums,\n name,\n force,\n }}\n loader={({ params }) => params.enums}\n >\n {children}\n </EnumLoader>\n );\n};\n\nEnum.defaultProps = {\n force: false,\n};\n\nexport default Enum;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__9Lc6E\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__9Lc6E\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__9Lc6E\",\"filter-title\":\"style_filter-title__PlIpS__9Lc6E\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__9Lc6E\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__9Lc6E\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__9Lc6E\",\"filter-line\":\"style_filter-line__E+cRh__9Lc6E\",\"clean-btn\":\"style_clean-btn__oSEvm__9Lc6E\",\"filter-item\":\"style_filter-item__Q2ncE__9Lc6E\",\"un-expand\":\"style_un-expand__4PFY8__9Lc6E\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__9Lc6E\",\"filter-label\":\"style_filter-label__qu26i__9Lc6E\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__9Lc6E\",\"option\":\"style_option__rd5Qo__9Lc6E\",\"is-active\":\"style_is-active__OArQI__9Lc6E\",\"is-visited\":\"style_is-visited__gZ5ni__9Lc6E\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__9Lc6E\",\"filter-item-label\":\"style_filter-item-label__C781J__9Lc6E\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__9Lc6E\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__9Lc6E\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__9Lc6E\",\"filter-tag\":\"style_filter-tag__dUGfu__9Lc6E\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__9Lc6E\",\"pop-util-content\":\"style_pop-util-content__bx5zP__9Lc6E\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__9Lc6E\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__9Lc6E\",\"pop-util-text\":\"style_pop-util-text__pzeUy__9Lc6E\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__9Lc6E\",\"filter-item-text\":\"style_filter-item-text__MA8tU__9Lc6E\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__9Lc6E\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__9Lc6E\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__9Lc6E\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__9Lc6E\",\"range-picker\":\"style_range-picker__c6ngq__9Lc6E\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__9Lc6E\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__9Lc6E\"};","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 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 const ComponentItem = item.type;\n return (\n <ComponentItem\n {...item.props}\n key={item.key || item.props.name || index}\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 );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({ list, displayLine, label, extra, children }) => {\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\"])}\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=\"middle\">\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 FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport clone from \"lodash/clone\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useMemo } from \"react\";\nimport { isNotEmpty } from \"@components/Common\";\nimport importMessages from \"@components/FormInfo/locale\";\nimport { IntlProvider } from \"@components/Intl\";\n\nconst Filter = (props) => {\n const { extraExpand, className, ...others } = props;\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n <div className={classnames(style[\"filter\"], className)}>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </div>\n </Provider>\n </IntlProvider>\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, 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={value}\n onChange={onChange}\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__9Lc6E\",\"is-popup\":\"style_is-popup__pCRv2__9Lc6E\"};","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 { 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 } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, ...props }) => {\n return (\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 );\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 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\";\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 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);\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","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\";\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nexport default Filter;\nexport { fields, getFilterValue };\n\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 InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\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","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__9Lc6E\",\"inner\":\"style_inner__bMKeU__9Lc6E\",\"content\":\"style_content__xTfWZ__9Lc6E\",\"link\":\"style_link__93j7O__9Lc6E\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n 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__9Lc6E\",\"page-content\":\"style_page-content__4XeN8__9Lc6E\",\"page-main\":\"style_page-main__P0yEF__9Lc6E\",\"page-main-content\":\"style_page-main-content__1OVPN__9Lc6E\",\"table-page\":\"style_table-page__JkbLf__9Lc6E\",\"helper-guide\":\"style_helper-guide__vzw4z__9Lc6E\",\"page-outer\":\"style_page-outer__2a6iH__9Lc6E\",\"no-margin\":\"style_no-margin__S6caT__9Lc6E\",\"page-menu\":\"style_page-menu__CZSa9__9Lc6E\",\"closed\":\"style_closed__hmnft__9Lc6E\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__9Lc6E\",\"page-menu-main\":\"style_page-menu-main__OXg2M__9Lc6E\",\"page-option-main\":\"style_page-option-main__LyfT3__9Lc6E\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__9Lc6E\",\"page-option\":\"style_page-option__diS2S__9Lc6E\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__9Lc6E\",\"page-option-footer\":\"style_page-option-footer__d7xE0__9Lc6E\",\"fixed-container\":\"style_fixed-container__1VZwY__9Lc6E\",\"is-fixed\":\"style_is-fixed__1aQhp__9Lc6E\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__9Lc6E\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__9Lc6E\",\"page-title\":\"style_page-title__zw-Fd__9Lc6E\",\"page-title-text\":\"style_page-title-text__Rj4RC__9Lc6E\",\"no-padding\":\"style_no-padding__V7Dwy__9Lc6E\",\"page-header\":\"style_page-header__a813p__9Lc6E\",\"page-header-info\":\"style_page-header-info__cMrZR__9Lc6E\",\"layout-menu\":\"style_layout-menu__yiab0__9Lc6E\",\"sub-menu\":\"style_sub-menu__dyqK7__9Lc6E\",\"no-collapsed\":\"style_no-collapsed__76h8W__9Lc6E\",\"has-not-children\":\"style_has-not-children__fnjRK__9Lc6E\",\"table-page-top\":\"style_table-page-top__bt1l9__9Lc6E\",\"error-component\":\"style_error-component__HvghB__9Lc6E\",\"state-bar-page\":\"style_state-bar-page__+aUM4__9Lc6E\",\"back-icon\":\"style_back-icon__79v2G__9Lc6E\"};","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, 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\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{ \"--width\": menuWidth }}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar className={style[\"page-menu-main\"]}>{menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"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\";\n\nconst { Content } = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nconst Layout = ({ children, theme, navigation }) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const 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={style[\"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 {...navigation}\n onChange={(path) => {\n navigation?.onChange && navigation.onChange(path);\n }}\n />\n </ErrorBoundary>\n )}\n <ErrorBoundary>\n <Content className={style[\"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(${pageProps.headerHeight}px + var(--nav-height-base))`,\n \"--nav-only-height\": `var(--nav-height-base)`,\n }}\n >\n <ErrorBoundary>\n <Menu />\n </ErrorBoundary>\n <Col\n className={classnames(style[\"page-content\"], {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })}\n flex={1}\n style={{ \"--background-color\": pageProps.backgroundColor }}\n >\n <div className={style[\"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\"], {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={style[\"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","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__9Lc6E\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__9Lc6E\",\"no-start-icon\":\"style_no-start-icon__LnC1S__9Lc6E\",\"has-children\":\"style_has-children__m9tce__9Lc6E\",\"has-children-node\":\"style_has-children-node__2bhEB__9Lc6E\",\"is-root\":\"style_is-root__4hhOc__9Lc6E\",\"title\":\"style_title__+Hcar__9Lc6E\",\"active\":\"style_active__WU49K__9Lc6E\",\"no-collapse\":\"style_no-collapse__aIZBM__9Lc6E\",\"title-content\":\"style_title-content__cQXpK__9Lc6E\",\"loading\":\"style_loading__1pU4P__9Lc6E\"};","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, ...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 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]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\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__9Lc6E\",\"navigation\":\"style_navigation__60RrS__9Lc6E\",\"is-fixed\":\"style_is-fixed__kHFWj__9Lc6E\",\"navigation-logo\":\"style_navigation-logo__q9qHu__9Lc6E\",\"logo\":\"style_logo__lB9RC__9Lc6E\",\"navigation-list\":\"style_navigation-list__EYtkg__9Lc6E\",\"navigation-options\":\"style_navigation-options__0BdJU__9Lc6E\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__9Lc6E\",\"more-icon\":\"style_more-icon__gNMnt__9Lc6E\"};","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 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 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}) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({ key, ...others }) => [key, others]));\n }, [list]);\n const navigate = useNavigate();\n const location = useLocation();\n const navigationRef = useRef();\n const resizeObserverRef = useRef(null);\n const [nameLabel, setNameLabel] = useState(\"更多\");\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 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 (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]);\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 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 <Menu\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\" />\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, { permission }]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, { title, path, permission }]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__9Lc6E\"};","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 as useContext } from \"@kne/global-context\";\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 preset = useContext();\n return {\n permissions: get(preset, \"global.accountInfo.permissions\", []),\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__9Lc6E\",\"has-children\":\"style_has-children__oQDqU__9Lc6E\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__9Lc6E\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__9Lc6E\",\"tab-step-control\":\"style_tab-step-control__EQaCl__9Lc6E\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__9Lc6E\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__9Lc6E\",\"state-result-tag\":\"style_state-result-tag__CssDz__9Lc6E\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__9Lc6E\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__9Lc6E\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__9Lc6E\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__9Lc6E\",\"show-bg\":\"style_show-bg__OcL+R__9Lc6E\",\"tag-text\":\"style_tag-text__JHCt+__9Lc6E\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__9Lc6E\"};","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 )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__9Lc6E\",\"is-resize\":\"style_is-resize__ut6RW__9Lc6E\",\"is-moving\":\"style_is-moving__BJ9wR__9Lc6E\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__9Lc6E\",\"is-computed\":\"style_is-computed__B9rIF__9Lc6E\",\"options-column\":\"style_options-column__vsPTr__9Lc6E\",\"options-btn\":\"style_options-btn__U3uoy__9Lc6E\",\"tooltip\":\"style_tooltip__vJlkv__9Lc6E\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__9Lc6E\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__9Lc6E\",\"columns-control\":\"style_columns-control__5-5ZF__9Lc6E\",\"columns-control-content\":\"style_columns-control-content__MoeUI__9Lc6E\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__9Lc6E\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__9Lc6E\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__9Lc6E\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__9Lc6E\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__9Lc6E\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__9Lc6E\",\"is-drag\":\"style_is-drag__U68aw__9Lc6E\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__9Lc6E\",\"sortable-drag\":\"style_sortable-drag__K5hWd__9Lc6E\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__9Lc6E\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__9Lc6E\",\"sort-btn\":\"style_sort-btn__KvNLr__9Lc6E\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__9Lc6E\",\"sort-icon\":\"style_sort-icon__dB85I__9Lc6E\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__9Lc6E\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__9Lc6E\",\"tag\":\"columns_tag__bQZLG__9Lc6E\",\"avatar\":\"columns_avatar__SLPI+__9Lc6E\",\"hover\":\"columns_hover__oAwHg__9Lc6E\",\"primary\":\"columns_primary__6KtaA__9Lc6E\",\"loading\":\"columns_loading__gtBay__9Lc6E\",\"options\":\"columns_options__WvDZD__9Lc6E\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list, width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list.map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\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 if (expand) {\n return (\n <DisplayInfo {...api}>\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={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof api.children === \"function\" ? api.children(data) : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem\n type=\"hide-info\"\n primary\n isEmpty={isEmpty}\n emptyRender={emptyRender}\n >\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 { 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\";\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 = ({ columns, name, controllerOpen, tableWidth }) => {\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 } = usePreset();\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 return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !isEqual(record[column.name], prevRecord[column.name])\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 memoize from \"lodash/memoize\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\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],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = memoize(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\n const targetRenderWithProps = (colValue) => {\n const isEmpty = (\n emptyOf ||\n ((value) => value === \"\" || value === void 0 || value === null)\n )(colValue);\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: 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 });\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 }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","areaWidthComputed","memoize","_ref","amountWidth","moreBtnWidth","buttonWidthList","spaceProps","compact","spaceWidth","indexOf","size","isInteger","targetLength","targetWidth","length","_ref2","concat","join","Object","values","toString","ButtonGroup","_ref3","list","more","props","pick","showLength","setShowLength","useState","computedLength","useRefCallback","el","targetRef","current","moreEl","moreRef","widthEl","ref","buttonEls","querySelectorAll","clientWidth","map","call","offsetWidth","startTransition","useResize","otherList","slice","renderButton","renderItem","index","isDropdown","className","classnames","style","confirm","isConfirm","message","CurrentButton","ConfirmButton","LoadingButton","_createElement","danger","isDelete","assign","isModal","SpaceComponent","Space","Compact","_jsxs","_Fragment","children","_jsx","item","Dropdown","overlayClassName","menu","items","label","defaultProps","Button","Icon","type","locale","en-US","zh-CN","withConfirm","WrappedComponent","ConfirmComponent","createWithIntl","moduleName","importMessages","title","onClick","onCancel","disabled","showCancel","cancelText","okText","placement","getContainer","formatMessage","useIntl","modal","useConfirmModal","id","onOk","Popconfirm","direction","stopPropagation","align","onConfirm","okButtonProps","getPopupContainer","ConfirmLink","Typography","Link","ConfirmText","Text","baseLoaders","description","EnumLoaderFetch","withFetch","data","getEnumsMap","enums","Map","keys","EnumLoader","loader","enumsLoader","global","enumsRef","useGlobalContext","prevLocaleRef","useRef","async","arguments","params","undefined","name","force","getEnumMap","get","output","Array","isArray","console","warn","set","Promise","all","then","enumMap","from","isNil","Enum","preset","usePreset","_ref4","context","createContext","Provider","Line","onChange","useReactContext","ComponentItem","FilterLines","displayLine","extra","hasMore","isExpand","setIsExpand","IntlProvider","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","filterValue","extraExpand","StateTag","filterName","text","closable","onClose","newValue","splice","Filter","others","valueBase","useControlValue","useMemo","filter","isNotEmpty","newFilterValue","clone","delete","FilterValueDisplay","defaultValue","open","active","setOpen","FilterItem","allowClear","valueType","onOpenChange","useSelectInnerContext","SelectInnerInput","useContext","TreeFieldInner","selected","setValue","setSelect","fetchApi","dataFormat","single","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","SimpleBar","Tree","omit","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","push","selectedKeys","TreeField","maxLength","MAX_VALUE","checkStrictly","treeToList","nodeList","_ref5","core","forEach","node","PopoverItem","onValidate","state","setState","Popover","trigger","content","gutter","placeholder","Input","DatePickerFilterItem","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","AdvancedSelectFilterItem","AdvancedSelectField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItem","InputFilterItemField","transform","result","fields","getFilterValue","colorful","url","href","menuOpen","menuWidth","menuFixed","menuCloseButton","backgroundColor","header","headerHeight","headerFixed","headerInfo","backUrl","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","Consumer","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","useLocation","pathname","split","FixedContainer","icon","pageResult","PageInner","isPass","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","useEffect","isEqual","targetProps","Result","status","subTitle","Page","featureId","openFeatures","Features","offsetTop","offsetBottom","AntdAffix","targetKey","useLayoutEffect","callback","offsetHeight","resizeObserver","MutationObserver","observe","subtree","childList","disconnect","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","navigation","scrollLeft","setScrollLeft","_setPageProps","useCallback","scrollEl","getScrollEl","handlerScroll","addEventListener","removeEventListener","Navigation","path","PageTitle","helperGuideName","HelperGuide","permissions","Permissions","forwardRef","page","topArea","tableData","setTableData","PermissionsPage","Table","onRequestSuccess","stateBar","StateBar","MenuItem","iconType","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","refresh","isLoading","useFetch","auto","Spin","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","options","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","matchedPath","find","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","parentId","newOpenKeys","defaultItems","SetTitle","mapping","defaultTitle","document","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","base","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","RegExp","entries","permission","menuDom","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","setTimeout","Image","src","logo","alt","mode","_ref6","_path","computedIsPass","some","usePermissions","usePermissionsPass","tagName","Tooltip","createElement","stateOption","isInner","Tabs","animated","tab","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","info","other","showBorder","showBackground","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","Tag","background","border","width","ellipsis","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","resolve","colItem","event","finally","DisplayInfo","createWithFetch","api","expand","onExpand","Ellipsis","_ref17","columnTypes","date","render","isValid","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","serialNumberShort","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","_ref11","avatar","_ref12","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","hidden","sort","a","b","renderColumn","titleText","groupHeader","defaultActiveKey","ghost","bordered","List","Item","Checkbox","checked","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","handlerColumnsChange","animation","delayOnTouchStart","delay","preventDefault","visible","SearchInput","prefix","onSearch","dataSource","TableConfig","setConfig","ColumnsControlContent","controllerOpen","tableWidth","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","tablePageServerParams","getDataApi","saveConfig","useDebouncedCallback","setDataFunc","send","cache","isLocal","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","onMouseDown","clientX","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","handlerCancelResize","handlerResize","documentElement","columnsConfig","rowKey","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","emptyOf","disableColItem","otherColProps","targetRender","itemKey","colProps","targetRenderWithProps","hasOwnProperty","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","targetHeader","otherHeader","currentGroup","startIndex","groupColumn","hasGroupHeader","sortArrayToMap","setSort","mapSort","setMapSort","newSort","targetValue","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","scroller","getScrollTarget","querySelector","AntdTable","x","_len","args","_key","pageData","FeaturesColumnsConfig","TablePageInner","requestParams","fetchProps","isComplete","setData","loadMore","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","paramsType","currentName","pageSize","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","totalCount","pageSizeKey","toUpperCase","setPageSize","fetchParams"],"sourceRoot":""}
1
+ {"version":3,"file":"static/js/2999.35d29a6b.chunk.js","mappings":"oKAAA,MA4BA,EA5BqB,CACnBA,QAAUC,IACR,MAAMC,EAASC,OAAOC,aAAaJ,QAAQC,GAC3C,IACE,MAAM,SAAEI,EAAQ,MAAEC,GAAUC,KAAKC,MAAMN,GACvC,GAAiB,WAAbG,GAAmC,SAAVC,EAC3B,OAAO,KAET,GAAiB,cAAbD,EACF,OAEF,MAAiB,WAAbA,EACKI,OAAOH,GAEC,YAAbD,EACKK,QAAQJ,GAEVA,CACT,CAAE,MAAOK,GACP,OAAO,IACT,GAEFC,QAASA,CAACX,EAAKK,KACb,MAAMD,SAAkBC,EACxBH,OAAOC,aAAaQ,QAAQX,EAAKM,KAAKM,UAAU,CAAER,WAAUC,UAAS,E,kLCvBzE,QAAkC,sCAAlC,EAA2F,uCAA3F,EAAiJ,mCAAjJ,EAAgM,gCAAhM,EAA2O,+B,mCCW3O,MAAMQ,EAAoBC,KACxBC,IAA0E,IAAzE,YAAEC,EAAW,aAAEC,EAAY,gBAAEC,EAAe,WAAEC,EAAU,QAAEC,GAASL,EAClE,MAAMM,EACAD,EACK,EAGL,CAAC,QAAS,SAAU,SAASE,QAAQH,EAAWI,OAAS,EACU,GAA7D,CAAC,QAAS,SAAU,SAASD,QAAQH,EAAWI,MAAQ,GAG9Df,OAAOgB,UAAUL,EAAWI,MACvBJ,EAAWI,KAEb,EAGT,IAAIE,EAAe,EACjBC,EAAc,EAGhB,KACEV,GACEU,EACER,EAAgBO,GAChBA,EAAeJ,GACnBI,EAAeP,EAAgBS,QAE/BD,GAAeR,EAAgBO,GAC/BA,GAAgB,EAGlB,KACET,EACEU,GACGD,EAAe,GAAKJ,GACpBI,EAAeP,EAAgBS,OAC5BV,EAAeI,EACf,IACRI,EAAe,GAEfC,GAAeR,EAAgBO,EAAe,GAC9CA,GAAgB,EAGlB,OAAOA,CAAY,IAErBG,IAA0E,IAAzE,YAAEZ,EAAW,aAAEC,EAAY,gBAAEC,EAAe,WAAEC,EAAU,QAAEC,GAASQ,EAClE,MAAM,GAANC,OAAUb,GAAWa,OAAGZ,GAAYY,OAAGX,EAAgBY,KACrD,MACDD,OAAGE,OAAOC,OAAOb,GAAYW,KAAK,MAAID,OAAGT,GAAWA,EAAQa,WAAU,IAIrEC,EAAcC,IAAwC,IAAvC,KAAEC,EAAI,KAAEC,EAAI,QAAEjB,KAAYkB,GAAOH,EACpD,MAAMhB,EAAaoB,IAAKD,EAAO,CAAC,OAAQ,QAAS,QAAS,WACnDE,EAAYC,IAAiBC,EAAAA,EAAAA,UAASN,EAAKT,QAAU,GACtDgB,EAAiBC,KAAe,KACpC,MAAMC,EAAKC,EAAUC,QACnBC,EAASC,EAAQF,QACjBG,EAAUC,EAAIJ,QAChB,IAAKF,EACH,OAGF,MAAMO,EAAYP,EAAGQ,iBAAiB,sBACtC,IAAKD,EACH,OAEF,GAAyB,IAArBA,EAAUzB,OACZ,OAGF,MAAMX,EAAckC,EAAQI,YAC1BrC,EAAe+B,EAAOM,YACtBpC,EAAkB,GAAGqC,IAAIC,KAAKJ,GAAYP,GAAOA,EAAGY,cAChDhC,EAAeZ,EAAkB,CACrCG,cACAC,eACAC,kBACAC,aACAC,aAEFsC,EAAAA,EAAAA,kBAAgB,KACdjB,EAAchB,EAAa,GAC3B,IAEE0B,GAAMQ,EAAAA,EAAAA,GAAUhB,GAChBG,GAAYa,EAAAA,EAAAA,GAAUhB,GACtBM,GAAUU,EAAAA,EAAAA,GAAUhB,GACpBiB,EAAYxB,EAAKyB,MAAMrB,GAEvBsB,EAAeA,CAACC,EAAYC,EAAOC,KACvC,GAA0B,oBAAfF,EACT,OAAOA,EAAW,CAChB/D,IAAKgE,EACLE,UAAWC,IAAW,oBAAqBC,GAC3CH,eAGJ,MAAM,UAAEC,EAAS,QAAEG,KAAY/B,GAAUyB,EACnCO,EAAYD,GAAW/B,EAAMiC,QAC7BC,EAAgBF,EAAYG,EAAAA,QAAgBC,EAAAA,QAElD,OACEC,EAAAA,EAAAA,eAACH,EAAa,CACZI,OAAQN,IAAgC,IAAnBhC,EAAMuC,YACvB9C,OAAO+C,OACT,CAAC,EACDxC,EACAgC,IAAchC,EAAMyC,SAAWd,GAC3B,CACEc,SAAS,GAEX,CAAC,GAEP/E,IAAKgE,EACLE,UAAWC,IACT,oBACAC,EACAF,IAEF,EAIAc,EAAiB5D,EAAU6D,EAAAA,MAAMC,QAAUD,EAAAA,MAEjD,OACEE,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAAC,SAAA,EACEC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAA0BjB,IAAKA,KAC/CgC,EAAAA,EAAAA,MAAA,OAAKjB,UAAWE,EAA0BiB,SAAA,EACxCC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAuBjB,IAAKF,EAAQoC,SACjDhD,KAEHiD,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAuBjB,IAAKL,EAAUuC,UACpDC,EAAAA,EAAAA,KAACN,EAAc,IAAK7D,EAAUkE,SAC3BjD,EAAKmB,IAAIO,WAIhBqB,EAAAA,EAAAA,MAACH,EAAc,IAAK7D,EAAUkE,SAAA,CAC3BjD,EACEyB,MAAM,EAAGrB,GACTe,KAAI,CAACgC,EAAMvB,IAAUF,EAAayB,EAAMvB,GAAO,KACjDJ,EAAUjC,OAAS,IAClB2D,EAAAA,EAAAA,KAACE,EAAAA,SAAQ,CACPC,iBAAkBrB,EAClBsB,KAAM,CACJC,MAAO/B,EAAUL,KAAI,CAACgC,EAAMvB,KACnB,CACLhE,IAAKgE,EACL4B,MAAO9B,EAAayB,EAAMvB,GAAO,QAGrCqB,SAEDhD,SAIN,EAIPH,EAAY2D,aAAe,CACzBxD,MACE8C,EAAAA,EAAAA,MAACW,EAAAA,OAAM,CAAAT,SAAA,CAAC,gBAENC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,6BAKjB,S,8HC1LA,MAOA,EAPwBC,IACf,CACL,QAASC,IAAM,gCACf,QAASC,IAAM,iCACfF,M,wDCHJ,QAA0B,8BAA1B,EAAoE,gCAApE,EAA4G,4BAA5G,EAAkJ,8BAAlJ,EAA4L,gC,eCQrL,MAAMG,EAAeC,IAC1B,MAAMC,GAAmBC,EAAAA,EAAAA,gBAAe,CACtCC,WAAY,gBACZC,eACF,GAHyBF,EAIvBxF,IAcO,IAdN,MACC2F,EAAK,QACLnC,EAAO,SACPM,GAAW,EAAI,QACf8B,EAAO,SACPC,EAAQ,SACRC,EAAQ,WACRC,EAAU,WACVC,EAAU,QACVhC,EAAO,OACPiC,EAAM,UACNC,EAAS,aACTC,KACG5E,GACJvB,EACC,MAAM,cAAEoG,IAAkBC,EAAAA,EAAAA,SAAQ,CAAEZ,WAAY,kBAC1Ca,GAAQC,EAAAA,EAAAA,mBACd,OAAIvC,GAEAO,EAAAA,EAAAA,KAACe,EAAgB,IACX/D,EACJqE,QAAUjG,IACR2G,EAAM,CACJrB,KAAM,UACNU,MAAOA,EACPQ,eACAtC,OAAQC,EACRN,QAASA,GAAW4C,EAAc,CAAEI,GAAI,YACxCP,OAAQA,GAGJG,EADAtC,EACc,CAAE0C,GAAI,UACN,CAAEA,GAAI,YACxBR,WAAYA,GAAcI,EAAc,CAAEI,GAAI,WAC9CX,WACAY,KAAMb,GACN,KAMRrB,EAAAA,EAAAA,KAACmC,EAAAA,WAAU,CACTf,OACEvB,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJyC,UAAU,WACVf,QAAUjG,IACRA,EAAEiH,iBAAiB,EACnBtC,SAAA,CAEDqB,IACCvB,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAAC1D,KAAM,EAAGqG,MAAM,QAAQ1D,UAAWE,EAAeiB,SAAA,EACtDC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAAC7B,UAAU,aAAa8B,KAAK,yBACjCU,MAGLvB,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJ1D,KAAM,EACNqG,MAAM,QACN1D,UAAWC,IAAWC,EAAkB,CACtC,CAACA,GAAqBsC,IACrBrB,SAAA,EAEDqB,IACApB,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAAC7B,UAAU,aAAa8B,KAAK,yBAEnCzB,GAAW4C,EAAc,CAAEI,GAAI,kBAItCN,UAAWA,EACXY,UAAWlB,EACXmB,cAAe,CACblD,OAAQC,GAEV+B,SAAUA,EACVnB,iBAAkBtB,IAAWC,EAAkB,CAC7C,CAACA,GAAqBS,IAExBkD,kBAAmBb,EACnBL,SAAUA,EACVC,WAAYA,EACZC,WAAYA,EACZC,OACEA,GAGIG,EADAtC,EACc,CAAE0C,GAAI,UACN,CAAEA,GAAI,YACzBlC,UAEDC,EAAAA,EAAAA,KAACe,EAAgB,IAAK/D,EAAOuE,SAAUA,KAC5B,IAUnB,OALAP,EAAiBT,aAAe,CAC9Bd,SAAS,EACT+B,YAAY,GAGPR,CAAgB,EAGZ0B,EAAc5B,EAAY6B,EAAAA,WAAWC,MACrCC,EAAc/B,EAAY6B,EAAAA,WAAWG,MAElD,EAAehC,EAAYN,EAAAA,O,wICpH3B,MAAMuC,EAAc,CAClB,CACE,SACA,IAAM,CACJ,CAAEhI,MAAO,IAAKiI,YAAa,UAC3B,CACEjI,MAAO,IACPiI,YAAa,YAInB,CACE,UACA,IAAM,CACJ,CAAEA,YAAa,eAAMjI,MAAO,KAC5B,CACEiI,YAAa,eACbjI,MAAO,OAIb,CACE,UACA,IAAM,CACJ,CAAEiI,YAAa,SAAKjI,MAAO,KAC3B,CACEiI,YAAa,SACbjI,MAAO,OAIb,CACE,YACA,IAAM,CACJ,CAAEiI,YAAa,2BAAQjI,MAAO,4BAC9B,CACEiI,YAAa,2BACbjI,MAAO,4BAET,CAAEiI,YAAa,eAAMjI,MAAO,gBAC5B,CACEiI,YAAa,2BACbjI,MAAO,8BAIb,CACE,iBACA,IAAM,CACJ,CACEA,MAAO,EACPiI,YAAa,gBAEf,CACEjI,MAAO,EACPiI,YAAa,gBAEf,CACEjI,MAAO,EACPiI,YAAa,gBAEf,CACEjI,MAAO,EACPiI,YAAa,gBAEf,CACEjI,MAAO,EACPiI,YAAa,sBAEf,CACEjI,MAAO,EACPiI,YAAa,wBAInB,CACE,aACA,IAAM,CACJ,CACEA,YAAa,eACbjI,MAAO,IAET,CACEiI,YAAa,eACbjI,MAAO,IAET,CACEiI,YAAa,eACbjI,MAAO,IAET,CACEiI,YAAa,eACbjI,MAAO,IAET,CACEiI,YAAa,eACbjI,MAAO,IAET,CACEiI,YAAa,iCACbjI,MAAO,IAET,CACEiI,YAAa,iCACbjI,MAAO,IAET,CACEiI,YAAa,qBACbjI,MAAO,IAET,CACEiI,YAAa,2BACbjI,MAAO,QAMTkI,GAAkBC,EAAAA,EAAAA,YAAUzH,IAAyB,IAAxB,KAAE0H,EAAI,SAAEpD,GAAUtE,EACnD,MAA2B,oBAAbsE,EACVA,EAASoD,GACTpD,IAAgB,OAAJoD,QAAI,IAAJA,OAAI,EAAJA,EAAMH,YAAW,IAG7BI,EAAc5H,KAAS6H,GACpB,IAAIC,IACTP,EAAYxG,OACVE,OAAO8G,KAAK9G,OAAO+C,OAAO,CAAC,EAAG6D,IAAQpF,KAAKvD,GAAQ,CAACA,EAAK2I,EAAM3I,UAK/D8I,EAAalH,IAAwC,IAArCmH,OAAQC,KAAgB1G,GAAOV,EACnD,MACEqH,QAAQ,SAAEC,KACRC,EAAAA,EAAAA,oBACEC,GAAgBC,EAAAA,EAAAA,QAAO,MAC7B,OACE/D,EAAAA,EAAAA,KAACiD,EAAe,IACVjG,EACJyG,OAAQO,iBACN,MAAMX,EAAQD,QAAkBM,KAAYO,aACtC,OAAEC,GAAQD,UAAA5H,QAAA,OAAA8H,EAAAF,UAAA,IACV,WAAE/C,EAAU,KAAEkD,EAAI,MAAEC,EAAK,OAAE1D,GAAWuD,EAEtCI,EAAaN,UAID,IAAVK,GACAP,EAAcrG,UAAYkD,GAC1BiD,EAASnG,QAAQ8G,IAAIrD,SAGlB,WACL,MAAMuC,EAASJ,EAAMkB,IAAIrD,GACnBsD,OAAe,UACG,oBAAXf,EACF,IAAIH,WACFG,EAAO,CAAE9C,YAAW1C,KAAKgC,GACvB,CAACA,EAAKlF,MAAM4B,WAAYsD,MAIjCwE,MAAMC,QAAQjB,GACT,IAAIH,IACTG,EAAOxF,KAAKgC,GAAS,CAACA,EAAKlF,MAAM4B,WAAYsD,MAG3B,kBAAXwD,EACF,IAAIH,IACT7G,OAAO8G,KAAKE,GAAQxF,KAAKvD,GAAQ,CAC/BA,EAAIiC,WACJ8G,EAAO/I,QAIbiK,QAAQC,KAAK,4EACN,IAAItB,KAtBQ,GA0BrB,OAFAM,EAASnG,QAAQoH,IAAI3D,EAAYsD,GACjCV,EAAcrG,QAAUkD,EACjB6D,CACR,EA7BM,GAgCX,GAAIC,MAAMC,QAAQxD,GAChB,aAAa4D,QAAQC,IACnB7D,EAAWjD,KAAKtD,GACd2J,EAAW3J,GAAQqK,MAAMC,GAAYR,MAAMS,KAAKD,EAAQvI,eAK9D,MAAMuI,QAAgBX,EAAWpD,GACjC,OAAKiE,IAAMf,GAGJK,MAAMS,KAAKD,EAAQvI,UAFjBuI,EAAQV,IAAIH,EAAKzH,WAG5B,GACA,EAIAyI,EAAOvI,IAAsD,IAArD,WAAEqE,EAAU,KAAEkD,EAAI,MAAEC,EAAK,SAAEtE,KAAa/C,GAAOH,EAC3D,MAAMwI,GAASC,EAAAA,EAAAA,aACf,OACEtF,EAAAA,EAAAA,KAACwD,EAAU,IACLxG,EACJkH,OAAQ,CACNhD,aACAP,OAAc,OAAN0E,QAAM,IAANA,OAAM,EAANA,EAAQ1E,OAChB0C,MAAa,OAANgC,QAAM,IAANA,OAAM,EAANA,EAAQhC,MACfe,OACAC,SAEFZ,OAAQ8B,IAAA,IAAC,OAAErB,GAAQqB,EAAA,OAAKrB,EAAOb,KAAK,EAACtD,SAEpCA,GACU,EAIjBqF,EAAK7E,aAAe,CAClB8D,OAAO,GAGT,S,m2BCvOO,MAAMmB,GAAUC,EAAAA,EAAAA,eAAc,CAAC,IAEzB,SAAEC,GAAaF,E,uDCH5B,SAAgB,OAAS,6BAA6B,mBAAmB,uCAAuC,0BAA0B,8CAA8C,eAAe,mCAAmC,sBAAsB,0CAA0C,kBAAkB,sCAAsC,iBAAiB,qCAAqC,cAAc,kCAAkC,YAAY,gCAAgC,cAAc,kCAAkC,YAAY,gCAAgC,qBAAqB,yCAAyC,eAAe,mCAAmC,mBAAmB,uCAAuC,OAAS,6BAA6B,YAAY,gCAAgC,aAAa,iCAAiC,mBAAmB,uCAAuC,oBAAoB,wCAAwC,oBAAoB,wCAAwC,kBAAkB,sCAAsC,kBAAkB,sCAAsC,aAAa,iCAAiC,mBAAmB,uCAAuC,mBAAmB,uCAAuC,mBAAmB,uCAAuC,kBAAkB,sCAAsC,gBAAgB,oCAAoC,oBAAoB,wCAAwC,mBAAmB,uCAAuC,qBAAqB,yCAAyC,4BAA4B,gDAAgD,iCAAiC,qDAAqD,2BAA2B,+CAA+C,eAAe,mCAAmC,uBAAuB,2CAA2C,yBAAyB,8C,0BCDjhE,MAOA,EAPwB7E,IACf,CACL,QAASC,IAAM,gCACf,QAASC,IAAM,iCACfF,M,mCCMJ,MAAMgF,EAAOlK,IAAyB,IAAxB,KAAEqB,EAAI,SAAEiD,GAAUtE,EAC9B,MAAM,MAAEV,EAAK,SAAE6K,IHLeC,EAAAA,EAAAA,YAAgBL,GGM9C,OACE3F,EAAAA,EAAAA,MAAA,OAAKjB,UAAWE,EAAM,eAAeiB,SAAA,CAClCjD,EAAKmB,KAAI,CAACgC,EAAMvB,KACf,MAAMoH,EAAgB7F,EAAKS,KAC3B,OACErB,EAAAA,EAAAA,eAACyG,EAAa,IACR7F,EAAKjD,MACTtC,IAAKuF,EAAKvF,KAAOuF,EAAKjD,MAAMoH,MAAQ1F,EACpC3D,MACEA,EACIwJ,IAAIxJ,EAAMwJ,IAAItE,EAAKjD,MAAMoH,MAAO,SAChCnE,EAAKjD,MAAMjC,MAEjB6K,SACEA,EACK7K,GACC6K,EAAS,CACPxB,KAAMnE,EAAKjD,MAAMoH,KACjB9D,MAAOL,EAAKjD,MAAMsD,MAClBvF,UAEJkF,EAAKjD,MAAM4I,UAEjB,IAGL7F,IACG,EAIJgG,EAAczJ,IAAoD,IAAnD,KAAEQ,EAAI,YAAEkJ,EAAW,MAAE1F,EAAK,MAAE2F,EAAK,SAAElG,GAAUzD,EAChE,MAAM4J,EAAUpJ,EAAKT,OAAS2J,GACvBG,EAAUC,IAAehJ,EAAAA,EAAAA,WAAS,GAEzC,OACEyC,EAAAA,EAAAA,MAACwG,EAAAA,aAAY,CAAClF,eAAgBA,EAAgBD,WAAW,SAAQnB,SAAA,EAC/DF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJf,UAAWC,IAAWC,EAAM,iBAC5BwD,MAAM,MACNrG,KAAM,GAAG8D,SAAA,EAETC,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAM,gBAAgBiB,SACpCO,IACCN,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,aACHf,WAAW,SACXqF,eAAe,oBAIrB1G,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAACC,QAAQ,gBAAgBC,MAAM,EAAOpE,MAAM,SAAQvC,SAAA,EACtDC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAC/H,UAAWE,EAAM,eAAgB8H,KAAM,EAAE7G,SAC3CjD,EAAKyB,MAAM,EAAGyH,GAAa/H,KAAI,CAACgC,EAAMvB,KACrCsB,EAAAA,EAAAA,KAAC2F,EAAI,CAAa7I,KAAMmD,EAAKF,SAC1BmG,IAAwB,IAAbC,GAAsBzH,IAAUsH,EAAc,GACxDnG,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJ1D,KAAM,EACN2C,UAAWC,IACTC,EAAM,eACNA,EAAc,QAEhBuC,QAASA,KACP+E,GAAarL,IAAWA,GAAM,EAC9BgF,SAAA,EAEFC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,WACHf,WAAW,SACXqF,eAAe,kBAEjBvG,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CACH7B,UAAWE,EAAM,2BACjB4B,KAAK,4BAGP,MAtBKhC,QA0BfsB,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,SAAEkG,WAGVjG,EAAAA,EAAAA,KAACL,EAAAA,MAAK,CACJf,UAAWC,IAAWC,EAAM,gBAAiB,qBAC7CwD,MAAM,SACNrG,KAAM,GAAG8D,SAERA,KAEHF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJf,UAAWC,IAAWC,EAAM,gBAAiB,oBAAqB,CAChE,CAACA,EAAM,0BAA2BoH,GAAWC,KAE/C7D,MAAM,MACNrG,KAAM,GAAG8D,SAAA,EAETC,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAM,gBAAgBiB,UACrCC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,WACHf,WAAW,SACXqF,eAAe,oBAGnBvG,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,eAAeiB,SAClCjD,EAAKyB,MAAMyH,GAAa/H,KAAI,CAACgC,EAAMvB,KAClCsB,EAAAA,EAAAA,KAAC2F,EAAI,CAAa7I,KAAMmD,EAAKF,SAC1BrB,IAAU5B,EAAKT,OAAS2J,EAAc,IACrCnG,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAAC,SAAA,EACEC,EAAAA,EAAAA,KAACL,EAAAA,MAAK,CACJ1D,KAAM,EACN2C,UAAWC,IAAWC,EAAM,qBAAqBiB,UAEjDF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJ1D,KAAM,EACN2C,UAAWC,IACTC,EAAc,OACdA,EAAM,gBACNiB,SAAA,EAEFC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,eACHf,WAAW,SACXqF,eAAe,kBAEjBvG,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CACH7B,UAAWE,EAAM,2BACjB4B,KAAK,6BAIXV,EAAAA,EAAAA,KAACL,EAAAA,MAAK,CACJ1D,KAAM,EACN2C,UAAWC,IAAWC,EAAM,cAC5BuC,QAASA,KACP+E,GAAarL,IAAWA,GAAM,EAC9BgF,UAEFF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJ1D,KAAM,EACN2C,UAAWC,IACTC,EAAc,OACdA,EAAM,gBACNiB,SAAA,EAEFC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,eACHf,WAAW,SACXqF,eAAe,kBAEjBvG,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CACH7B,UAAWE,EAAM,2BACjB4B,KAAK,gCA9CNhC,YAwDJ,EAInBqH,EAAYxF,aAAe,CACzByF,YAAa,GAGf,U,eC/KA,MAsEA,EAtE2BvK,IAAoD,IAAjDV,MAAO8L,EAAW,YAAEC,EAAW,SAAElB,GAAUnK,EACvE,OACEuE,EAAAA,EAAAA,KAACqG,EAAAA,aAAY,CAAClF,eAAgBA,EAAgBD,WAAW,SAAQnB,UAC/DF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAACf,UAAWE,EAAM,gBAAiBwD,MAAM,MAAMrG,KAAM,GAAG8D,SAAA,EAC5DC,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAM,gBAAgBiB,UACrCC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,eACHf,WAAW,SACXqF,eAAe,gCAIjB1G,EAAAA,EAAAA,MAAA,OAAKjB,UAAWE,EAAM,eAAeiB,SAAA,CAClC8G,EAAY5I,KAAI,CAAA3B,EAAyBoC,KAAW,IAAnC,KAAE0F,EAAI,MAAE9D,EAAK,MAAEvF,GAAOuB,EACtC,OACE0D,EAAAA,EAAAA,KAAC+G,EAAAA,QAAQ,CAEPrG,KAAK,eACLsG,WAAY1G,EACZ2G,KACExC,MAAMC,QAAQ3J,GACVA,EACGkD,KAAKgC,GACGA,EAAKK,QAEb9D,KAAK,UACRzB,EAAMuF,MAEZ4G,UAAQ,EACRC,QAASA,KACP,MAAMC,EAAWP,EAAYtI,MAAM,GACnC6I,EAASC,OAAO3I,EAAO,GACvBkH,EAASwB,EAAS,GAhBfhD,EAkBL,KAGNvE,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAAC1D,KAAM,EAAG2C,UAAWC,IAAWC,EAAM,qBAAqBiB,SAAA,CAC9D+G,GACD9G,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CAACvE,KAAK,QAAO8D,UAClBC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,eACHf,WAAW,SACXqF,eAAe,mCAIrB1G,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAAC1D,KAAM,EAAG2C,UAAWC,IAAWC,EAAM,cAAciB,SAAA,CACvD+G,GACD9G,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CACLvE,KAAK,QACLoF,QAASA,KACPuE,EAAS,GAAG,EACZ7F,UAEFC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,eACHf,WAAW,SACXqF,eAAe,yCAQd,E,2CC7DnB,MAAMe,EAAUtK,IACd,MAAM,YAAE8J,EAAW,UAAElI,KAAc2I,GAAWvK,GACvCwK,EAAW5B,GAAY6B,IAAgBzK,GAExCjC,GAAQ2M,EAAAA,EAAAA,UAAQ,IACbF,EAAUG,QAAQ1H,IAAS2H,EAAAA,EAAAA,YAAW3H,EAAKlF,UACjD,CAACyM,IAEEX,GAAca,EAAAA,EAAAA,UAAQ,IACnB,IAAIpE,IAAIvI,EAAMkD,KAAKgC,GAAS,CAACA,EAAKmE,KAAMnE,OAC9C,CAAClF,IAEJ,OACEiF,EAAAA,EAAAA,KAACqG,EAAAA,aAAY,CAACnF,WAAW,SAASC,eAAgBA,EAAAA,EAAepB,UAC/DC,EAAAA,EAAAA,KAAC0F,EAAQ,CACP3K,MAAO,CACLA,MAAO8L,EACPjB,SAAW3F,IACT,MAAM4H,EAAiBC,IAAMjB,GAC7B5G,EAAKlF,MACD8M,EAAehD,IAAI5E,EAAKmE,KAAMnE,GAC9B4H,EAAeE,OAAO9H,EAAKmE,MACvB,OAARwB,QAAQ,IAARA,GAAAA,EAAWnB,MAAMS,KAAK2C,EAAenL,UAAU,GAEjDqD,UAEFF,EAAAA,EAAAA,MAAA,OAAKjB,UAAWC,IAAWC,EAAc,OAAGF,GAAWmB,SAAA,EACrDC,EAAAA,EAAAA,KAAC+F,EAAW,IAAKwB,IAChBxM,GAASA,EAAMsB,OAAS,IACvB2D,EAAAA,EAAAA,KAACgI,EAAkB,CACjBjN,MAAOA,EACP6K,SAAUA,EACVkB,YAAaA,UAKR,EAInBQ,EAAO/G,aAAe,CACpB0H,aAAc,IAGhB,U,eCpDA,MAsBA,EAtBmBxM,IAAwC,IAAvC,KAAEyM,EAAI,OAAEC,EAAM,MAAE7H,EAAK,SAAEP,GAAUtE,EACnD,OACEuE,EAAAA,EAAAA,KAACL,EAAAA,MAAK,CAACf,UAAWE,EAAM,oBAAoBiB,UAC1CF,EAAAA,EAAAA,MAAA,OACEjB,UAAWC,IAAWC,EAAM,eAAgB,CAC1C,CAACA,EAAM,cAAeqJ,EACtB,CAACrJ,EAAM,eAAgBoJ,IACtBnI,SAAA,EAEHF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAACf,UAAWE,EAAM,qBAAsB7C,KAAM,EAAE8D,SAAA,EACpDC,EAAAA,EAAAA,KAAA,OAAAD,SAAMO,KACNN,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CACH7B,UAAWE,EAAM,oBACjB4B,KAAK,2BAGTV,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,qBAAqBiB,SAAEA,QAEzC,ECCZ,EAlBGgB,GACDtF,IAA2C,IAA1C,MAAEV,EAAK,SAAE6K,EAAQ,MAAEtF,KAAUtD,GAAOvB,EACnC,MAAOyM,EAAME,IAAWhL,EAAAA,EAAAA,WAAS,GACjC,OACE4C,EAAAA,EAAAA,KAACqI,EAAU,CAAC/H,MAAOA,EAAO4H,KAAMA,EAAMC,QAAQP,EAAAA,EAAAA,GAAW7M,GAAOgF,UAC9DC,EAAAA,EAAAA,KAACe,EAAgB,CACfuH,YAAY,KACRtL,EACJ4B,UAAWE,EAAM,qBACjB/D,MAAOA,EACP6K,SAAUA,EACV2C,UAAU,MACVC,aAAcJ,KAEL,E,0FCnBnB,QAAgC,oCAAhC,EAA+E,+B,sDCU/E,MAAMK,EAAwBC,EAAAA,EAAiBC,WAEzCC,EAAiBnN,IAAqD,IAAlDV,MAAO8N,EAAUC,SAAUC,EAAS,KAAE9M,GAAMR,EACpE,MAAM,SAAEuN,EAAQ,MAAEhM,GAAUyL,IACtBQ,EAAa3L,IAAeN,EAAMiM,aAClC,OAAEC,EAAM,QAAEC,EAAO,kBAAEC,KAAsB7B,GAAWvK,EACpDqM,GAAgBtF,EAAAA,EAAAA,QAAO/G,EAAMsM,YACnCD,EAAc5L,QAAUT,EAAMsM,WAC9B,MAAMC,EAAYP,EAAS7F,MACrB,SAAEqG,IAAa9B,EAAAA,EAAAA,UACnB,IACEuB,EAAWM,EAAW,CACpBD,WAAYD,EAAc5L,WAE9B,CAACwL,EAAYM,IAGf,OACEvJ,EAAAA,EAAAA,KAACL,EAAAA,MAAK,CAACyC,UAAU,WAAWnG,KAAM,GAAG8D,UACnCC,EAAAA,EAAAA,KAACyJ,EAAAA,EAAS,CACR7K,UAAWC,IAAWC,EAAwB,CAC5C,CAACA,GAAoB9B,EAAMmM,UAC1BpJ,UAEHC,EAAAA,EAAAA,KAAC0J,EAAAA,KAAI,IACCC,IAAKpC,EAAQ,CAAC,QAAS,YAAa,WAAY,eACpDtL,KAAMA,EACN2N,WAAYV,EACZM,SAAUA,EACVK,QAASd,EACTe,YAAajB,EACbkB,SACEb,EACIH,EACCiB,IACC,MAAMC,EAAYD,EAAW,QACX,IAAdC,GAGJlB,GAAWtL,IACT,MAAMyM,EAAazM,EAAQc,MAAM,GAC3BG,EAAQwL,EAAWlO,QAAQiO,GAMjC,OALIvL,GAAS,EACXwL,EAAW7C,OAAO3I,EAAO,GAEzBwL,EAAWC,KAAKF,GAEXC,CAAU,GACjB,EAGVE,aAAclB,EAASL,OAAW1E,OAGhC,EAINkG,EAAY/N,IAA0C,IAAzC,UAAEgO,EAAS,WAAErB,KAAejM,GAAOV,EACpD,OACE0D,EAAAA,EAAAA,KAAC0I,EAAAA,EAAgB,IACX1L,EACJiM,WAAa9F,GACJ8F,EAAW9F,EAAM,CAAEmG,WAAYtM,EAAMsM,aAC5CvJ,SAEDlD,IAA0B,IAAzB,MAAE9B,EAAK,SAAE+N,GAAUjM,EACnB,OACEmD,EAAAA,EAAAA,KAAC4I,EAAc,CAAC3M,KAAMqO,EAAWvP,MAAOA,EAAO+N,SAAUA,GAAY,GAGxD,EAIvBuB,EAAU9J,aAAe,CACvB6I,kBAAmB,eACnBkB,UAAWpP,OAAOqP,UAClBtO,KAAM,SACNkN,SAAS,EACTqB,eAAe,EACfvB,WAAYA,CAAC9F,EAAIoC,KAAsB,IAApB,WAAE+D,GAAY/D,EAC/B,MAAMkF,EAAajP,KAAQ,CAACkP,EAAQC,KAAsB,IAApB,WAAErB,GAAYqB,EAClD,MAAM7N,EAAO,GACP8N,EAAQF,IACNjG,MAAMC,QAAQgG,IAAaA,EAASrO,OAAS,GAGnDqO,EAASG,SAASC,IAChB,MAAM/P,EAAQ+P,EAAKvG,IAAI+E,EAAY,MAAO,QACxChJ,EAAQwK,EAAKvG,IAAI+E,EAAY,QAAS,UACtCvJ,EAAW+K,EAAKvG,IAAI+E,EAAY,WAAY,aAC9CxM,EAAKqN,KAAK,CAAElI,GAAIlH,EAAOA,QAAOuF,UAC9BsK,EAAK7K,EAAS,GACd,EAGJ,OADA6K,EAAKF,GACE5N,CAAI,IAGb,MAAO,CACL0M,SAAUrG,EACVrG,KAAM2N,EAAWtH,EAAM,CAAEmG,eAC1B,GAIL,UC9GMyB,EAActP,IASb,IATc,MACnBV,EAAK,MACLuF,EAAK,WACL0K,EAAU,iBACV7K,EAAgB,UAChBwB,EAAS,aACT6G,EAAY,SACZ5C,EAAQ,SACR7F,GACDtE,EACC,MAAOwP,EAAOC,IAAY9N,EAAAA,EAAAA,UAASrC,IAC5BmN,EAAME,IAAWhL,EAAAA,EAAAA,WAAS,GAC3BmE,GAAWmG,EAAAA,EAAAA,UAAQ,IAChBsD,IAAeA,EAAWC,IAChC,CAACD,EAAYC,IAChB,OACEjL,EAAAA,EAAAA,KAACmL,EAAAA,QAAO,CACNjD,KAAMA,EACNkD,QAAQ,QACRzJ,UAAWA,EACXxB,iBAAkBtB,IAAWC,EAAM,oBAAqBqB,GACxDqI,aAAeN,IACbE,EAAQF,GACRgD,EAASnQ,GACTyN,GAAgBA,EAAaN,EAAK,EAEpCmD,SACExL,EAAAA,EAAAA,MAAA,QACEwB,QAAUjG,IACRA,EAAEiH,iBAAiB,EACnBtC,SAAA,EAEFC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,oBAAoBiB,SACvCA,EAAS,CAAEhF,MAAOkQ,EAAOrF,SAAUsF,OAEtCrL,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAAC5H,UAAWE,EAAM,mBAAoB2H,QAAQ,MAAM6E,OAAQ,EAAEvL,SAAA,EAChEC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFC,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CACLvE,KAAK,QACLoF,QAASA,KACP+G,GAAQ,GACRI,GAAgBA,GAAa,EAAM,EACnCzI,UAEFC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,aACHf,WAAW,SACXqF,eAAe,sBAIrBvG,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFC,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CACLvE,KAAK,QACLyE,KAAK,UACLa,SAAUA,EACVF,QAASA,KACP+G,GAAQ,GACRI,GAAgBA,GAAa,GAC7B5C,GAAYA,EAASqF,EAAM,EAC3BlL,UAEFC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,gBACHf,WAAW,SACXqF,eAAe,2BAM1BxG,UAEDC,EAAAA,EAAAA,KAAA,QAAAD,UACEC,EAAAA,EAAAA,KAACqI,EAAU,CAACH,KAAMA,EAAMC,QAAQP,EAAAA,EAAAA,GAAW7M,GAAQuF,MAAOA,OAEpD,EAIdyK,EAAYxK,aAAe,CACzBgL,YAAa,qBACb5J,UAAW,cAGb,UCnDA,GArCwBlG,IAUjB,IAVkB,MACvB6E,EAAK,MACLvF,EAAK,SACL6K,EAAQ,YACR2F,EAAW,WACXP,EAAU,iBACV7K,EAAgB,UAChBwB,EAAS,aACT6G,KACGxL,GACJvB,EACC,OACEuE,EAAAA,EAAAA,KAAC+K,EAAW,CACVzK,MAAOA,EACPvF,MAAOA,EACP6K,SAAUA,EACJoF,aAAY7K,mBAAkBwB,YAAW6G,eAAYzI,SAE1DzD,IAAA,IAAC,MAAEvB,EAAK,SAAE6K,GAAUtJ,EAAA,OACnB0D,EAAAA,EAAAA,KAACwL,EAAAA,MAAK,IACAxO,EACJuO,YAAaA,GAAW,qBAAAhP,OAAU+D,GAClC1B,UAAWE,EAAM,oBACjB/D,MAAOwJ,IAAIxJ,EAAO,QAAS,IAC3B6K,SAAWxK,GACTwK,EACExK,EAAET,OAAOI,MACL,CAAEuF,MAAOlF,EAAET,OAAOI,MAAOA,MAAOK,EAAET,OAAOI,OACzC,OAGR,GAEQ,E,2BClClB,MAAM0Q,GAAuBC,GAC3BjQ,IAA4C,IAA3C,MAAEV,EAAK,SAAE6K,EAAQ,OAAE+F,KAAW3O,GAAOvB,EACpC,OACEuE,EAAAA,EAAAA,KAAC4L,EAAAA,WAAU,IACL5O,EACJ2O,OAAQA,EACR5Q,MAAOA,GAAS8Q,KAAM9Q,EAAMA,OAC5B6K,SAAW7K,IACT,MAAM,OAAE+Q,GAAWrP,OAAO+C,OAAO,CAAEsM,OAAQ,cAAgB9O,GAC3DjC,GACE6K,EAAS,CACPtF,MACa,SAAXqL,EAAiB,GAAApP,OACVxB,EAAMgR,QAAQJ,GAAQG,OAAOA,GAAO,KAAAvP,OAAIxB,EACxCiR,MAAML,GACNG,OAAOA,IACV/Q,EAAM+Q,OAAOA,GACnB/Q,MAAO,IAAIkR,KAAKlR,EAAMgR,QAAQJ,GAAQO,YACtC,GAEN,IAKRT,GAAqBlL,aAAe,OAEpC,YCHA,GAxBkCmL,GAChCjQ,IAAoC,IAAnC,MAAEV,EAAK,SAAE6K,KAAa5I,GAAOvB,EAC5B,OACEuE,EAAAA,EAAAA,KAAC4L,EAAAA,WAAWO,YAAW,IACjBnP,EACJoP,WAAY,EAAC,GAAO,GACpBrR,MACEA,GACA0J,MAAMC,QAAQ3J,EAAMA,QACG,IAAvBA,EAAMA,MAAMsB,QACZtB,EAAMA,MAAMkD,KAAKgC,GAAS4L,KAAM5L,KAElC2F,SAAW7K,IACT,MAAM,OAAE+Q,GAAWrP,OAAO+C,OAAO,CAAEsM,OAAQ,cAAgB9O,GAC3D4I,EAAS,CACPtF,MAAOvF,EAAMkD,KAAKgC,GAASA,EAAK6L,OAAOA,KAAStP,KAAK,KACrDzB,MAAOA,EAAMkD,KAAKgC,GAAS,IAAIgM,KAAKhM,EAAKiM,cACzC,GAEJ,I,gBCjBR,MAkDA,GAlDsCzQ,IAK/B,IALgC,MACrC6E,EAAK,MACLvF,EAAK,SACL6K,KACG5I,GACJvB,EACC,OACEuE,EAAAA,EAAAA,KAAC+K,EAAW,CACVzK,MAAOA,EACPvF,MAAOA,EACP6K,SAAUA,EACVoF,WAAa/K,IACX,MAAMlF,EAAY,OAAJkF,QAAI,IAAJA,OAAI,EAAJA,EAAMlF,MACpB,OACO,OAALA,QAAK,IAALA,OAAK,EAALA,EAAO2F,OAAQ+D,MAAMC,QAAa,OAAL3J,QAAK,IAALA,OAAK,EAALA,EAAOA,QAAiC,IAAvBA,EAAMA,MAAMsB,MAAY,EAExE0D,SAEDzD,IAAA,IAAC,MAAEvB,EAAK,SAAE6K,GAAUtJ,EAAA,OACnB0D,EAAAA,EAAAA,KAACqM,GAAAA,EAAwB,IACnBrP,EACJ4B,UAAWE,EAAM,oBACjB/D,MAAOwJ,IAAIxJ,EAAO,SAClB6K,SAAW0G,IACT,MAAM,OAAER,GAAWrP,OAAO+C,OAAO,CAAEsM,OAAQ,cAAgB9O,GACrDjC,GAAmB,OAAXuR,QAAW,IAAXA,OAAW,EAAXA,EAAavR,QAAS,GACpC6K,EAAS,CACPtF,MACMvF,EAAM,KAAOA,EAAM,GACf,GAANwB,OAAUsP,KAAM9Q,EAAM,IAAI+Q,OAAOA,GAAO,iBAErC/Q,EAAM,IAAMA,EAAM,GACf,GAANwB,OAAUsP,KAAM9Q,EAAM,IAAI+Q,OAAOA,GAAO,gBAEtC/Q,EAAM,IAAMA,EAAM,GACd,GAANwB,OAAUsP,KAAM9Q,EAAM,IAAI+Q,OAAOA,GAAO,KAAAvP,OAAIsP,KAC1C9Q,EAAM,IACN+Q,OAAOA,IAEJ,GAET/Q,MAAOuR,GACP,GAEJ,GAEQ,ECnBLC,GAA2Bb,EAAcc,EAAAA,IACzCC,GAAiBf,EAAcgB,EAAAA,IAC/BC,GAA2BjB,EAAckB,EAAAA,GACzCC,GAA2BnB,EAAcoB,EAAAA,GAEzCC,GAAiBrB,EAAcsB,EAAAA,IAE/BC,GAAqBvB,EAAcwB,EAAAA,IAEnCC,GAAiBzB,EAAcrB,GAC/B+C,IA9BVrM,GA+B2BsM,GA9B5B5R,IAAA,IAAC,YAAE8P,EAAW,MAAEjL,KAAUtD,GAAOvB,EAAA,OAE7BuE,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,0BACHf,WAAW,SACXxE,OAAQ,CAAE4D,SAAQP,SAEhBkH,IAEEjH,EAAAA,EAAAA,KAACe,GAAgB,IACX/D,EACJsD,MAAOA,EACPiL,YAAaA,GAAetE,KAIjB,GAjBtBlG,O,uBCXH,MAYA,GAZwB8F,GACfyG,KACLzG,GACA,CAAC0G,EAAM9R,KAAuB,IAArB,KAAE2I,EAAI,MAAErJ,GAAOU,EACtB8R,EAAOnJ,GAAQK,MAAMC,QAAQ3J,GACzBA,EAAMkD,KAAI3B,IAAA,IAAC,MAAEvB,GAAOuB,EAAA,OAAKvB,CAAK,IAC9BA,EAAMA,KAAK,GAEjB,CAAC,GCNL,GAJ4BU,IAA6B,IAA5B,SAAEsE,KAAa/C,GAAOvB,EACjD,OAAOsE,EAAS/C,EAAM,ECGxBsK,EAAOkG,OAASA,EAChBlG,EAAOmG,eAAiBA,GACxB,U,mCCNA,MAOA,EAPwB9M,IACf,CACL,QAASC,IAAM,gCACf,QAASC,IAAM,gCACfF,K,gDCJJ,MAOA,EAPwBA,IACf,CACL,QAASC,IAAM,+BACf,QAASC,IAAM,iCACfF,M,yDCHJ,QAA+B,mCAA/B,EAA0E,4BAA1E,EAAgH,8BAAhH,EAAqJ,2B,0BCOrJ,MAgCA,EAhCoBlF,IAA0B,IAAzB,KAAE2I,EAAI,UAAExF,GAAWnD,EACtC,OACEuE,EAAAA,EAAAA,KAACqG,EAAAA,aAAY,CAAClF,eAAgBA,EAAgBD,WAAW,cAAanB,UACpEC,EAAAA,EAAAA,KAACoF,EAAAA,QAAI,CAAClE,WAAW,cAAckD,KAAMA,EAAKrE,SACtCoD,GAEEA,GACAA,EAAKpI,QACHiF,EAAAA,EAAAA,KAAA,OAAKpB,UAAWC,IAAWC,EAAuBF,GAAWmB,UAC3DF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAACf,UAAWE,EAAeiB,SAAA,EAC/BC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACiN,UAAQ,EAAChN,KAAK,8BACpBV,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAiBiB,SAAEoD,EAAKkI,UACxClI,EAAKwK,MACJ9N,EAAAA,EAAAA,MAAC8C,EAAAA,WAAWC,KAAI,CACdhE,UAAWE,EACX8O,KAAMzK,EAAKwK,IACXhT,OAAO,SAAQoF,SAAA,CAChB,4BAECC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,wCASd,C,6KClCZ,MAAMH,EAAe,CAC1BH,KAAM,KACNuH,OAAQ,KACRkG,UAAU,EACVC,UAAW,QACXC,WAAW,EACXC,iBAAiB,EACjBC,gBAAiB,KACjBC,OAAQ,KACRC,aAAc,EACdC,aAAa,EACbC,WAAY,KACZC,QAAS,KACTlN,MAAO,KACPmN,WAAY,KACZC,eAAgB,KAChBC,UAAU,EACVC,WAAW,EACXC,mBAAoB,EACpBC,OAAQ,KACRC,YAAa,QACbC,iBAAiB,EACjBC,aAAa,EACbC,aAAc,MAGHxJ,GAAUC,EAAAA,EAAAA,eAAc,CAAC,IAEzB,SAAEC,EAAQ,SAAEuJ,GAAazJ,EAEzBmD,EAAaA,KACjB9C,EAAAA,EAAAA,YAAgBL,G,wFChCzB,SAAgB,OAAS,6BAA6B,eAAe,mCAAmC,YAAY,gCAAgC,oBAAoB,wCAAwC,aAAa,iCAAiC,eAAe,mCAAmC,aAAa,iCAAiC,YAAY,gCAAgC,YAAY,gCAAgC,OAAS,6BAA6B,kBAAkB,sCAAsC,iBAAiB,qCAAqC,mBAAmB,uCAAuC,uBAAuB,2CAA2C,cAAc,kCAAkC,oBAAoB,wCAAwC,qBAAqB,yCAAyC,kBAAkB,sCAAsC,WAAW,+BAA+B,sBAAsB,0CAA0C,gBAAgB,oCAAoC,aAAa,iCAAiC,kBAAkB,sCAAsC,aAAa,iCAAiC,cAAc,kCAAkC,mBAAmB,uCAAuC,cAAc,kCAAkC,WAAW,+BAA+B,eAAe,mCAAmC,mBAAmB,uCAAuC,iBAAiB,qCAAqC,kBAAkB,sCAAsC,iBAAiB,qCAAqC,YAAY,iC,eCE1rD,MA8BA,EA9BuB/J,IAAuC,IAAtC,UAAEmD,EAAS,QAAEsQ,EAAO,SAAEnP,GAAUtE,EACtD,OAAIyT,GAEAlP,EAAAA,EAAAA,KAAA,OACEpB,UAAWC,IACTD,EACA,kBACAE,EAAM,mBACN,CACE,CAACA,EAAM,aAAcoQ,IAEvBnP,SAEDA,KAKLC,EAAAA,EAAAA,KAAA,OACEpB,UAAWC,IACTD,EACA,kBACAE,EAAM,oBACNiB,SAEDA,GACG,E,+EChBV,MAAMoP,EAAkB,0BAgExB,EAnDaC,KACX,MAAM,UAAEC,EAAS,aAAEC,GAAiB3G,KAC9B,KAAEvI,EAAI,SAAEyN,EAAQ,UAAEC,EAAS,UAAEC,EAAS,gBAAEC,GAAoBqB,EAG5DE,GADWC,EAAAA,EAAAA,eACeC,SAASC,MAAM,KAAK,GAEpD,OAAOtP,GACLP,EAAAA,EAAAA,MAAC8G,EAAAA,IAAG,CACF/H,UAAWC,IAAWC,EAAM,aAAc,CACxC,CAACA,EAAc,SAAK+O,IAEtB/O,MAAO,CAAE,UAAWgP,GAAY/N,SAAA,EAEhCC,EAAAA,EAAAA,KAAC2P,EAAc,CAAC/Q,UAAWE,EAAM,mBAAoBoQ,QAASnB,EAAUhO,UACtEC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,wBAAwBiB,UAC5CC,EAAAA,EAAAA,KAACyJ,EAAAA,EAAS,CAAC7K,UAAWE,EAAM,kBAAkBiB,SAAEK,QAGnD4N,GACChO,EAAAA,EAAAA,KAAC2P,EAAc,CACb/Q,UAAWC,IAAWC,EAAM,uBAAwB,CAClD,CAACA,EAAM,aAAciP,IAEvBmB,QAASnB,EAAUhO,UAEnBC,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CACL5B,UAAWC,IAAWC,EAAM,iBAAkB,CAC5C,CAACA,EAAc,SAAK+O,IAEtB+B,KACE/B,GACE7N,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,0BAEXV,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,0BAGfW,QAASA,KACPiO,EAAa,CAAEzB,UAAWwB,EAAUxB,WACpC,MAAMgC,EAAahV,EAAAA,EAAaJ,QAAQ0U,IAAoB,CAAC,EAC7DU,EAAWN,IAAmBF,EAAUxB,SACxChT,EAAAA,EAAaQ,QAAQ8T,EAAiBU,GACtCP,EAAa,CAAEzB,UAAWwB,EAAUxB,UAAW,MAInD,QAEJ,IAAI,ECnEJiC,EAAYrU,IAAqC,IAApC,SAAEsE,EAAQ,OAAEgQ,KAAW/S,GAAOvB,EAC/C,MAAM,aAAE6T,GAAiB3G,IACnBqH,GAAWjM,EAAAA,EAAAA,QAAO,MAClBkM,EDKmBC,MACzB,MACMX,GADWC,EAAAA,EAAAA,eACeC,SAASC,MAAM,KAAK,GACpD,OAAOhI,EAAAA,EAAAA,UAAQ,KACb,MAAMmI,EAAahV,EAAAA,EAAaJ,QAAQ0U,IAAoB,CAAC,EAC7D,QAAOvH,EAAAA,EAAAA,GAAWrD,IAAIsL,EAAYN,KAC9BhL,IAAIsL,EAAYN,EACZ,GACP,CAACA,GAAgB,ECbEW,GAChBC,GAAmBpM,EAAAA,EAAAA,QAAOkM,GA4BhC,OA3BAE,EAAiB1S,QAAUwS,GAC3BG,EAAAA,EAAAA,YAAU,KACR,IAAKC,IAAQL,EAASvS,QAAST,GAAQ,CACrCgT,EAASvS,QAAUT,EAMnB,MAAMsT,EAAc7T,OAAO+C,OACzB,CAAC,EACDe,EACAvD,EACoC,mBAA7BmT,EAAiB1S,QACpB,CAAEoQ,SAAUsC,EAAiB1S,SAC7B,CAAC,GAEH6S,EAAYpC,QAAuC,IAA7BoC,EAAYnC,qBAC7BmC,EAA0B,aAE/BA,EAAYtB,cAAmD,IAAnCsB,EAAY3B,2BACnC2B,EAA0B,aAEnChB,EAAagB,EACf,IACC,CAACtT,EAAOsS,KAEI,IAAXS,GACK/P,EAAAA,EAAAA,KAACuQ,EAAAA,OAAM,CAACC,OAAO,MAAMC,SAAS,+CAGhC1Q,CAAQ,EAGX2Q,EAAOpU,IAAkD,IAAjD,UAAEqU,EAAS,KAAEvM,EAAI,aAAEwM,KAAiB5T,GAAOV,EACvD,OAAqB,IAAjBsU,GAEA5Q,EAAAA,EAAAA,KAAC6Q,EAAAA,QAAQ,CAAC5O,GAAImC,EAAKrE,SAChBlD,IAAA,IAAC,OAAEkT,GAAQlT,EAAA,OAAKwC,EAAAA,EAAAA,eAACyQ,EAAS,IAAK9S,EAAOtC,IAAK0J,EAAM2L,OAAQA,GAAU,KAInE1Q,EAAAA,EAAAA,eAACyQ,EAAS,IAAK9S,EAAOtC,IAAK0J,GAAQ,EAG5CsM,EAAKnQ,aAAeA,EAEpB,UC3CA,EAdc9E,IAA+D,IAA9D,QAAEyT,EAAO,UAAE4B,EAAS,aAAEC,EAAY,SAAEnL,KAAa5I,GAAOvB,EACrE,OAAKyT,GAIHlP,EAAAA,EAAAA,KAACgR,EAAAA,MAAS,IACJhU,EACJ8T,UAAW5V,OAAOgB,UAAU4U,GAAaA,EAAY,GAAMA,EAC3DC,aAAcA,EACdnL,SAAUA,KAPL5F,EAAAA,EAAAA,KAAA,UAAShD,GAQd,ECiBN,EALwBV,IAA8B,IAA7B,UAAE2U,KAAcjU,GAAOV,EAC9C,MAAMuB,EAtBmBpC,KAAoB,IAAnB,UAAEwV,GAAWxV,EACvC,MAAM,aAAE6T,GAAiB3G,IACnB9K,GAAMkG,EAAAA,EAAAA,QAAO,MAgBnB,OAfAmN,EAAAA,EAAAA,kBAAgB,KACd,MAAMC,EAAWA,KACf7B,EAAa,CACX,CAAC2B,GAAYpT,EAAIJ,QAAQ2T,cACzB,EAGJD,IACA,MAAME,EAAiB,IAAIC,iBAAiBH,GAE5C,OADAE,EAAeE,QAAQ1T,EAAIJ,QAAS,CAAE+T,SAAS,EAAMC,WAAW,IACzD,KACLJ,EAAeK,YAAY,CAC5B,GACA,CAACpC,EAAc2B,IAEXpT,CAAG,EAIE8T,CAAmB,CAAEV,cACjC,OAAOjR,EAAAA,EAAAA,KAAA,UAAShD,EAAOa,IAAKA,GAAO,ECNrC,EAde+T,KACb,MAAM,UAAEvC,GAAc1G,KAChB,OAAEuF,EAAM,YAAEE,GAAgBiB,EAChC,OAAOnB,GACLlO,EAAAA,EAAAA,KAAC6R,EAAK,CACJ3C,QAASd,EACTxP,UAAWE,EAAM,eACjBgS,UAAWgB,EAAAA,iBAAiB/R,UAE5BC,EAAAA,EAAAA,KAAC+R,EAAe,CAACd,UAAU,eAAclR,SAAEmO,MAE3C,IAAI,ECEV,EAdmB8D,KACjB,MAAM,UAAE3C,GAAc1G,KAChB,WAAE0F,GAAegB,EACjB4C,GAAgBlO,EAAAA,EAAAA,QAAO,MAC7B,OAAOsK,GACLrO,EAAAA,EAAAA,KAAA,OACEnC,IAAKoU,EACLrT,UAAWC,IAAWC,EAAM,oBAAqB,oBAAoBiB,SAEpEsO,IAED,IAAI,E,eCVV,MAyCA,EAzCkB5S,IAA6D,IAA5D,MAAE2F,EAAK,OAAEuG,EAAM,WAAE4G,EAAU,eAAEC,EAAc,QAAEF,GAAS7S,EACvE,MAAMyW,GAAYC,EAAAA,EAAAA,eAClB,OAAIxK,GAEA3H,EAAAA,EAAAA,KAACsH,EAAAA,QAAM,CAAC1I,UAAWE,EAAM,iBAAmB6I,EAAQ1B,MAAOsI,IAGzDnN,GAASoN,GAAkBD,GAI/B1O,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAACC,QAAQ,gBAAgBnE,MAAM,SAAS1D,UAAWE,EAAM,cAAciB,SAAA,EACzEC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFF,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAAAI,SAAA,CACHqB,GACCpB,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,mBAAmBiB,SACtCuO,GACCzO,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAAAI,SAAA,EACJC,EAAAA,EAAAA,KAAA,QACEpB,UAAWE,EAAM,aACjBuC,QAASA,KACP6Q,EAAU5D,EAAQ,EAClBvO,UAEFC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,4BAEbV,EAAAA,EAAAA,KAAA,QAAAD,SAAOqB,OAGTA,IAGF,KACHoN,GAAkC,WAGvCxO,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,SAAEwO,OA5BD,IA6BD,ECMV,EAzCe6D,KACb,MAAM,UAAE/C,GAAc1G,KAChB,OACJiG,EAAM,YACNC,EAAW,YACXE,EAAW,aACXC,EAAY,mBACZL,EAAkB,gBAClBG,GACEO,EACJ,OAAOT,GACL5O,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CACF/H,UAAWC,IAAWC,EAAM,eAAgB,eAC5CA,MAAO,CACL,UAAW+P,EACX,gBAAiBF,EAAqB,MACtC5O,UAEFF,EAAAA,EAAAA,MAAC8P,EAAc,CACb/Q,UAAWE,EAAM,qBACjBoQ,QAASH,EAAYhP,SAAA,EAErBC,EAAAA,EAAAA,KAACyJ,EAAAA,EAAS,CACR7K,UAAWC,IAAWC,EAAM,oBAAqB,oBACjDA,MAAO,CAAEuT,QAASvD,EAAkB,MAAQ,wBAAyB/O,SAEpE6O,IAEFI,GACChP,EAAAA,EAAAA,KAAC+R,EAAe,CACdnT,UAAWE,EAAM,sBACjBmS,UAAU,qBAAoBlR,UAE9BC,EAAAA,EAAAA,KAACL,EAAAA,MAAK,CAAC2C,MAAM,SAAQvC,SAAEiP,MAEvB,UAGN,IAAI,E,eCnCV,MAAM,QAAEsD,GAAYC,EAAAA,OAEdC,EAAiBA,KAEnBxS,EAAAA,EAAAA,KAACyS,EAAAA,MAAK,CACJxT,QAAQ,+GACRyT,UAAQ,EACRhS,KAAK,QACLiS,QACE3S,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CAACvE,KAAK,QAAQqD,QAAM,EAAC+B,QAASA,IAAMzG,OAAOgY,SAASC,SAAS9S,SAAC,mBAQvE+S,EAAiB9V,IACdgD,EAAAA,EAAAA,KAAC+S,EAAAA,EAAkB,IAAK/V,EAAOgW,eAAgBR,IAGlDS,EAASxX,IAAsC,IAArC,SAAEsE,EAAQ,MAAEmT,EAAK,WAAEC,GAAY1X,EAC7C,MAAO2X,EAAYC,IAAiBjW,EAAAA,EAAAA,UAAS,IACtCiS,EAAWiE,IAAiBlW,EAAAA,EAAAA,UAASX,OAAO+C,OAAO,CAAC,EAAGe,IACxD+O,GAAeiE,EAAAA,EAAAA,cAAaxY,GACzBuY,GAAejE,GACb5S,OAAO+C,OAAO,CAAC,EAAG6P,EAAWtU,MAErC,IAYH,OAXAqV,EAAAA,EAAAA,YAAU,KACR,MAAMoD,GAAWC,EAAAA,EAAAA,KACXC,EAAgBA,KACpBL,EAAcG,EAASJ,WAAW,EAGpC,OADAI,EAASG,iBAAiB,SAAUD,GAC7B,KACLF,EAASI,oBAAoB,SAAUF,EAAc,CACtD,GACA,KAGD7T,EAAAA,EAAAA,MAAC0S,EAAAA,OAAU,CACT3T,UAAWE,EAAc,OACzBA,MAAOrC,OAAO+C,OACZ,CAAC,EACD,CACE,eAAgBsS,EAAAA,iBAAmB,KACnC,oBAAqB,oBACrB,iBAAkBsB,EAAa,MAEjCF,GACAnT,SAAA,CAEDoT,IACCnT,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAAC6T,EAAAA,QAAU,IACLV,EACJvN,SAAWkO,KACC,OAAVX,QAAU,IAAVA,OAAU,EAAVA,EAAYvN,WAAYuN,EAAWvN,SAASkO,EAAK,OAKzD9T,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAACsS,EAAO,CAAC1T,UAAWE,EAAM,uBAAuBiB,UAC/CF,EAAAA,EAAAA,MAAC6F,EAAQ,CAAC3K,MAAO,CAAEsU,YAAWC,gBAAevP,SAAA,EAC3CC,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAAC4R,EAAM,OAET5R,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAACgS,EAAU,OAEbhS,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZF,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CACF5H,UAAWC,IAAWwQ,EAAUzQ,UAAWE,EAAM,eACjD4H,MAAM,EACN5H,MAAO,CACL,eAAe,QAADvC,OAAU8S,EAAUlB,aAAY,gCAC9C,oBAAoB,0BACpBpO,SAAA,EAEFC,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAACoP,EAAI,OAEPpP,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CACF/H,UAAWC,IAAWC,EAAM,gBAAiB,CAC3C,CAACA,EAAM,cAAeuQ,EAAUZ,WAElC7H,KAAM,EACN9H,MAAO,CAAE,qBAAsBuQ,EAAUpB,iBAAkBlO,UAE3DF,EAAAA,EAAAA,MAAA,OAAKjB,UAAWE,EAAM,aAAaiB,SAAA,EACjCC,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAAC+T,EAAS,CACR3S,MAAOiO,EAAUjO,MACjBkN,QAASe,EAAUf,QACnB3G,OAAQ0H,EAAU1H,OAClB4G,WAAYc,EAAUd,WACtBC,eAAgBa,EAAUb,oBAG9BxO,EAAAA,EAAAA,KAAA,OACEpB,UAAWC,IAAWC,EAAM,qBAAsB,CAChD,CAACA,EAAM,eAAgBuQ,EAAUX,YAChC3O,UAEHF,EAAAA,EAAAA,MAACiT,EAAa,CAAA/S,SAAA,CACXsP,EAAU2E,kBACThU,EAAAA,EAAAA,KAACiU,EAAAA,QAAW,CACVrV,UAAWE,EAAM,qBACjBsF,KAAMiL,EAAU2E,kBAGnBjU,aAKTC,EAAAA,EAAAA,KAAC8S,EAAa,CAAA/S,UACZC,EAAAA,EAAAA,KAACoS,EAAM,oBAOR,EAIjBa,EAAO1S,aAAe,CACpB4S,WAAY,CAAC,GAGf,U,eC9IA,MAQA,EARwB1X,IAAgC,IAA/B,YAAEyY,KAAgBlX,GAAOvB,EAChD,OACEuE,EAAAA,EAAAA,KAACmU,EAAAA,QAAW,IAAK1X,OAAO+C,OAAO,CAAC,EAAG0U,EAAa,CAAExT,KAAM,UAAUX,UAChEC,EAAAA,EAAAA,KAAC0Q,EAAI,IAAK1T,KACE,E,0BCAlB,MA+CA,GA/CkBoX,EAAAA,EAAAA,aAChB,CAAA3Y,EAUEoC,KACI,IAVJ,gBACEmW,EAAe,YACfE,EAAW,KACXG,EAAI,aACJzD,EAAY,KACZxM,EAAI,QACJkQ,KACGtX,GACJvB,EAGD,MAAO8Y,EAAWC,IAAgBpX,EAAAA,EAAAA,UAAS,MAC3C,OACEyC,EAAAA,EAAAA,MAAC4U,EAAe,CACdrQ,KAAMA,EACNwM,aAAcA,EACdsD,YAAaA,KACTG,EAAItU,SAAA,CAEPuU,GACCtU,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,kBAAkBiB,SAClB,oBAAZuU,EAAyBA,EAAQC,GAAaD,IAEtD,MACJzU,EAAAA,EAAAA,MAAA,OAAKjB,UAAWE,EAAM,cAAciB,SAAA,CACjCiU,IACChU,EAAAA,EAAAA,KAACiU,EAAAA,QAAW,CACVrV,UAAWC,IAAW,eAAgBC,EAAM,iBAC5CsF,KAAM4P,KAGVhU,EAAAA,EAAAA,KAAC0U,EAAAA,UAAK,IACA1X,EACJa,IAAKA,EACLuG,KAAMA,EACNuQ,iBAAmBxR,IACjBqR,EAAarR,EAAK,SAIR,I,eC5CxB,MAqBA,EArBqB1H,IAOd,IAPe,gBACpBuY,EAAe,YACfE,EAAW,KACXG,EAAI,SACJO,EAAQ,SACR7U,KACG/C,GACJvB,EACC,OACEoE,EAAAA,EAAAA,MAAC4U,EAAe,IAAKJ,EAAMH,YAAaA,KAAiBlX,EAAK+C,SAAA,EAC5DC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,kBAAkBiB,UACtCC,EAAAA,EAAAA,KAAC6U,EAAAA,QAAQ,IAAKD,MAEfZ,IACChU,EAAAA,EAAAA,KAACiU,EAAAA,QAAW,CAACrV,UAAWE,EAAM,gBAAiBsF,KAAM4P,IAEtDjU,IACe,C,gDCrBtB,SAAgB,KAAO,2BAA2B,oBAAoB,wCAAwC,gBAAgB,oCAAoC,eAAe,mCAAmC,oBAAoB,wCAAwC,UAAU,8BAA8B,MAAQ,4BAA4B,OAAS,6BAA6B,cAAc,kCAAkC,gBAAgB,oCAAoC,QAAU,+B,6ICUhf,MA6CM+U,EAAY9X,IAChB,MAAMmW,GAAahB,EAAAA,EAAAA,gBACb,GACJlQ,EAAE,UACFrD,EAAS,MACT0B,EAAK,SACLyU,EAAQ,KACRjB,EAAI,QACJkB,EAAO,QACP3T,EAAO,OACP4T,EAAM,WACNC,EAAU,aACV1M,EAAY,SACZzI,EAAQ,aACRoV,EAAY,MACZC,EAAK,OACLC,EAAM,eACNC,GACEtY,EAEEuY,EACH9Q,MAAMC,QAAQ3E,IAAaA,EAAS1D,OAAS,GAAM8Y,GAChD,QAAEK,EAAO,UAAEC,IAAcC,EAAAA,EAAAA,UAC7BjZ,OAAO+C,OAAO,CAAC,EAAG2V,EAAc,CAC9BQ,MAAOL,GAAkBH,EACzBR,iBAAmBxR,IACjBkS,EAAOlS,EAAK,KAqBlB,OACEnD,EAAAA,EAAAA,KAACmU,EAAAA,QAAW,CAACa,QAASA,EAAQjV,UAC5BF,EAAAA,EAAAA,MAAA,OAAKjB,UAAWC,IAAWD,EAAWE,EAAM,cAAciB,SAAA,EACxDF,EAAAA,EAAAA,MAAA,OACEjB,UAAWC,IAAWC,EAAa,MAAG,CACpC,CAACA,EAAc,QAAIoW,EACnB,CAACpW,EAAM,iBAAkByW,EACzB,CAACzW,EAAM,gBAAiByW,IAAgBD,EACxC,CAACxW,EAAM,mBAAoBiW,EAC3B,CAACjW,EAAM,YAAuB,IAAVsW,IAEtB/T,QAAUjG,IACRA,EAAEiH,kBACGkT,IAAezB,EAIfyB,GAAgBJ,EAIhBG,IAGLH,GAAgBK,EAAQ,CAAC,GACzBhN,GAAcyM,IAPL,OAAP5T,QAAO,IAAPA,GAAAA,EAAUY,EAAIjF,GAJdmW,EAAWW,EAWQ,EACrB/T,SAAA,CAEDgV,IAAY/U,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAMqU,KACzB/U,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAM,iBAAiBiB,SAAEO,IACzCiV,GAAeD,IACdtV,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CACHC,KAAMuU,EAAS,uBAAyB,6BA/C7CM,GAGAD,GAAmBL,GAAUlV,GACzBC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,iBAAiBiB,SAAEA,KAG7CuV,GAAmBL,GAAUQ,GAE9BzV,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,iBAAiBiB,UACrCC,EAAAA,EAAAA,KAAC4V,EAAAA,KAAI,CAAChX,UAAWE,EAAe,QAAG7C,KAAK,iBAH9C,EANS,SAoDK,EAIZmT,EAAO3T,IAA8C,IAA7C,UAAEmD,EAAS,eAAE0W,KAAmBtY,GAAOvB,EACnD,MAAM,SAAEgU,EAAQ,OAAEoG,IAAWrG,EAAAA,EAAAA,gBACtBsG,EAAaC,GAAsBtO,IAAgBzK,EAAO,CAC/DjC,MAAO,aACPkN,aAAc,uBAGT5H,EAAO2V,GAAYvO,IAAgBzK,EAAO,CAC/CiL,aAAc,eACdlN,MAAO,QACP6K,SAAU,mBAIVvF,MAAO4V,EAAW,gBAClBC,EAAe,MACfC,EAAK,aACLC,EAAY,aACZC,EAAY,YACZd,IACE7N,EAAAA,EAAAA,UAAQ,KAAO,IAAD4O,EAChB,MACEjW,MAAO4V,EAAW,aAClBG,EAAY,YACZG,GA9JelW,KACnB,MAAM+V,EAAe,CAAC,EACpBG,EAAc,GACVC,EAAYA,CAACzW,EAAU0W,KAC3B,MAAM,UAAEC,EAAS,MAAEtB,GAAU3Y,OAAO+C,OAClC,CACEkX,UAAW,OACXtB,MAAO,EACPuB,MAAO,IAETF,GAEF,OAAMhS,MAAMC,QAAQ3E,IAAaA,EAAS1D,OAAS,EAG5C0D,EAAS9B,KAAI,CAACgC,EAAMvB,KACzB,MAAMkY,EAAU,GAAAra,OACd0D,EAAKvF,KAAG,GAAA6B,OACS,SAAdma,EAAoB,GAAAna,OAAMma,EAAS,KAAM,GAAE,SAAAna,OAAQmC,IAEnD0X,EAAaM,KAChBN,EAAaM,GAAa,IAE5BN,EAAaM,GAAWvM,KAAKyM,GAC7B,MAAM7W,EAAWyW,EAAUvW,EAAKF,SAAU,CACxC2W,UAAWE,EACXxB,MAAOA,EAAQ,IAEjBgB,EAAaQ,IACXR,EAAaM,GAAWvM,QAAQiM,EAAaQ,IAC/C,MAAMC,EAAapa,OAAO+C,OAAO,CAAC,EAAGS,EAAM,CACzCvF,IAAKkc,EACLF,YACAtB,QACArV,SAAUA,EACV+W,WAAY7W,IAGd,OADAsW,EAAYK,GAAcC,EACnBA,CAAU,IAzBV,IA0BP,EAGJ,MAAO,CAAExW,MAAOmW,EAAUnW,GAAQ+V,eAAcG,cAAa,EAqHvDQ,CAAY1W,GAChB,IAAIgW,GAAe,EACjBd,GAAc,EAChB,MAAMY,EAAQ,GACZD,EAAkB,GAYpB,OAXY,OAAZE,QAAY,IAAZA,GAAsB,QAAVE,EAAZF,EAAqB,YAAC,IAAAE,GAAtBA,EAAwBzL,SAASnQ,IAC/B,MAAMoQ,EAAOyL,EAAY7b,GACrBoQ,EAAKiK,WACPsB,GAAe,GAEjBvL,EAAKgJ,MAAQqC,EAAMhM,KAAK,CAAE2J,KAAMhJ,EAAKgJ,KAAMpZ,QACvC+J,MAAMC,QAAQoG,EAAK/K,WAAa+K,EAAK/K,SAAS1D,OAAS,IACzDkZ,GAAc,EACdW,EAAgB/L,KAAKW,EAAKpQ,KAC5B,IAEK,CACLwb,kBACAC,QACA9V,MAAO4V,EACPG,eACAC,eACAd,cACD,GACA,CAAClV,KACJ+P,EAAAA,EAAAA,YAAU,KACR,MAAM4G,EAAcb,EAAMc,MAAK3a,IAAe,IAAd,KAAEwX,GAAMxX,EACtC,OACE4a,IAAYzH,EAAS0H,QAAQ,UAAW,OAASD,IAAYpD,IAC7DoD,IAAYzH,EAAWoG,KAAYqB,IAAYpD,EAAK,IAGpDkD,GACFjB,EAAmBiB,EAAYtc,IACjC,GACC,CAACyb,EAAO1G,EAAUoG,EAAQE,IAE7B,MAAOqB,EAAUC,GAAe5P,IAC9BhL,OAAO+C,OAAO,CAAC,EAAGxC,EAAO,CACvBkZ,gBAAiBlZ,EAAMkZ,iBAAmBA,IAE5C,CACEnb,MAAO,WACPkN,aAAc,kBACdrC,SAAU,iBAIR0R,GAAiB/D,EAAAA,EAAAA,cACrB,CAACxT,EAAU0W,KACT,MAAM,UAAEC,EAAS,MAAEtB,EAAK,YAAEU,EAAW,SAAEsB,EAAQ,MAAET,GAAUla,OAAO+C,OAChE,CACEkX,UAAW,KACXtB,MAAO,EACPuB,MAAO,IAETF,GAEF,OAAIhS,MAAMC,QAAQ3E,IAAaA,EAAS1D,OAAS,EACxC0D,EAAS9B,KACdpB,IAAyD,IAAxD,SAAEkD,EAAUrF,IAAKkc,EAAU,WAAEE,KAAe7W,GAAMpD,EACjD,OACEwC,EAAAA,EAAAA,eAACyV,EAAQ,IACHrY,OAAO+C,OAAO,CAAC,EAAGS,GACtBgC,GAAI2U,EACJW,SAAUb,EACVtB,MAAOA,EACPE,eAAgBA,EAChBJ,WACE0B,IAAed,GACdM,EAAaQ,IACZR,EAAaQ,GAAY5a,QAAQ8Z,IAAgB,EAErDzU,QAAS0U,EACTV,OAASlS,IACP6S,GAAU3V,IACR,MAAMuK,EAAQ7K,GACR0E,MAAMC,QAAQ3E,IAAaA,EAAS1D,OAAS,EACxC0D,EAAS9B,KAAKgC,GACZxD,OAAO+C,OAAO,CAAC,EAAGS,EAAM,CAC7BF,SACE+W,IAAe7W,EAAOkD,EAAOyH,EAAK3K,EAAKF,cAIxC,KAGT,OAAO6K,EAAKvK,EAAM,GAClB,EAEJ4U,QAASmC,GAAY,IAAIpb,QAAQ4a,IAAe,EAChDlc,IAAKkc,EACLpO,aAAcA,KACZ6O,GAAaD,IACX,MAAMI,EAAcJ,EAAS7Y,MAAM,GAMnC,OALI6Y,EAASpb,QAAQ4a,IAAe,EAClCY,EAAYnQ,OAAO+P,EAASpb,QAAQ4a,GAAa,GAEjDY,EAAYrN,KAAKyM,GAEZY,CAAW,GAClB,GAGHF,EAAevX,EAAU,CACxB2W,YACAtB,MAAOA,EAAQ,EACfU,cACAsB,WACAT,MAAO,IAAIA,EAAOC,KAEX,IAKZ,IAAI,GAEb,CAACZ,EAAUqB,EAAatB,EAAoBK,EAAcd,IAG5D,OACEtV,EAAAA,EAAAA,KAAA,OACEpB,UAAWC,IAAWD,EAAWE,EAAY,KAAG,CAC9C,CAACA,EAAM,uBAAwBuX,EAC/B,CAACvX,EAAM,sBAAuByW,IAC7BxV,SAEFuX,EAAerB,EAAa,CAAEH,cAAasB,cACxC,EAIVhI,EAAK7O,aAAe,CAClBkX,aAAc,GACdnC,gBAAgB,GAGlB,S,oJChQA,MACA,EAAe,IAA0B,4D,eCtDzC,MAMA,EANwB3U,IACZ,CACJ,QAASC,IAAM,+BAAmB,QAASC,IAAM,gCAClDF,M,0BCFP,QAAkC,sCAAlC,EAAqF,iCAArF,EAAiI,+BAAjI,EAAkL,sCAAlL,EAA+N,2BAA/N,EAA4Q,sCAA5Q,EAAuU,yCAAvU,EAA8a,gC,eCW9a,MAAM,OAAEiR,GAAWqB,EAAAA,OAENnB,EAAmB,GAE1B4F,EAAWjc,IAAsC,IAArC,KAAE2I,EAAI,QAAEuT,EAAO,aAAEC,GAAcnc,EAC/C,MAAMuU,GAAWjM,EAAAA,EAAAA,QAAO,CACtB4T,UACAC,iBAMF,OAJAxH,EAAAA,EAAAA,YAAU,KACR,MAAMhP,EAAQmD,IAAIyL,EAASvS,QAAQka,QAAQpT,IAAIH,GAAO,SACtDyT,SAASzW,OAASA,EAAQA,EAAQ,IAAM,IAAM4O,EAASvS,QAAQma,YAAY,GAC1E,CAACxT,IACG,IAAI,EAGPyP,EAAavX,IAaZ,IAba,YAClB4X,EAAW,KACXpX,EAAI,WACJgb,EAAU,aACVC,EAAY,QACZ7I,EAAO,UACP8I,EAAS,WACTC,EAAU,aACVL,EAAY,oBACZM,EAAmB,KACnBC,EAAI,SACJvS,EAAQ,UACRhH,GACDtC,EACC,MAAMqb,GAAUjQ,EAAAA,EAAAA,UAAQ,IACf,IAAIpE,IAAIxG,EAAKmB,KAAIpB,IAAA,IAAC,IAAEnC,KAAQ6M,GAAQ1K,EAAA,MAAK,CAACnC,EAAK6M,EAAO,MAC5D,CAACzK,IACEsb,GAAWjG,EAAAA,EAAAA,eACXS,GAAWpD,EAAAA,EAAAA,eACX6I,GAAgBtU,EAAAA,EAAAA,UAChBuU,GAAoBvU,EAAAA,EAAAA,QAAO,OAC1BwU,EAAWC,IAAgBpb,EAAAA,EAAAA,UAAS,gBACrCmS,EAAiBqD,EAASnD,SAC7B0H,QAAQ,IAAIsB,OAAO,IAADlc,OAAK4b,IAAS,IAChCzI,MAAM,KAAK,GACRtL,EAAOmL,EACThL,IACEE,MAAMS,KAAKyS,EAAQe,WAAWzB,MAAK1R,IAAmC,IAAjCnB,GAAM,KAAE0P,EAAI,WAAE6E,IAAapT,EAG9D,OAAgD,KAD9B,oBAATuO,EAAsBA,EAAK6E,EAAYzE,GAAeJ,GAClD9X,QAAQ,IAAMuT,EAAsB,IAEnD,OAEF,QACJa,EAAAA,EAAAA,YAAU,KACR,MAAMe,EAAWA,KACf,GAAIkH,EAAc5a,QAAS,CACzB,MAAMmb,EACJP,EAAc5a,QAAQM,iBAAiB,oBACzC,IAAI8a,GAAQ,EACZ,IAAK,IAAIC,EAAI,EAAGA,EAAIF,EAAQvc,OAAQyc,IAAK,CAGvC,IAA8B,IAFlBF,EAAQE,GACDC,aAAa,gBACrB/c,QAAQoI,GAAc,CAC/ByU,GAAQ,EACR,KACF,CACF,CACA,IAAIG,EACFrB,EAAQpT,IAAIH,KAAUyU,EAAQtU,IAAIoT,EAAQpT,IAAIH,GAAO,SAAW,GAClEoU,EAAaQ,EACf,GAEIC,EAA6B,CACjCC,YAAY,EACZzH,WAAW,EACXD,SAAS,GAcX,OAZI6G,GAAiBA,EAAc5a,UACjC0T,IACImH,EAAkB7a,SACpB6a,EAAkB7a,QAAQiU,aAE5B4G,EAAkB7a,QAAU,IAAI6T,iBAAiBH,GACjDmH,EAAkB7a,QAAQ8T,QACxB8G,EAAc5a,QACdwb,IAIG,KACLX,EAAkB7a,SAAW6a,EAAkB7a,QAAQiU,YAAY,CACpE,GACA,CAACtN,EAAMuT,IACV,MAAMwB,IAAWnB,GACb,CACE1X,MAAO2X,IACLjY,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CAACrE,GAAG,aAAaf,WAAW,eAE/CxG,IAAK,OACL2G,QAASA,KACPuE,GAAYA,EAAS,KACrBwT,YAAW,KACThB,EAAS,IAAI,GACZ,EAAE,GAIb,OACEvY,EAAAA,EAAAA,MAACwG,EAAAA,aAAY,CAAClF,eAAgBA,EAAgBD,WAAW,aAAYnB,SAAA,EACnEC,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CAACrE,GAAG,eAAef,WAAW,aAAYnB,SACvDkH,IACAjH,EAAAA,EAAAA,KAAC0X,EAAQ,CACPE,aAAcA,GAAgB3Q,EAC9B0Q,QAASA,EACTvT,KAAMA,OAIZpE,EAAAA,EAAAA,KAAA,OAAKpB,UAAWC,IAAWC,EAA0BF,GAAWmB,UAC9DC,EAAAA,EAAAA,KAAC4R,EAAM,CACLhT,UAAWC,IAAW,aAAcC,EAAqB,CACvD,CAACA,GAAoBoQ,IACpBnP,UAEHF,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAACC,QAAQ,eAAeC,MAAM,EAAM3G,SAAA,EACtCC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CACF/H,UAAWC,IACT,kBACAC,GACAiB,UAEFC,EAAAA,EAAAA,KAACqZ,EAAAA,QAAK,CACJza,UAAWC,IAAWC,GACtBwa,IAAKC,EACLC,IAAI,UACA1B,OAGR9X,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CACF9I,IAAKwa,EACLzR,KAAM,EACNhI,UAAWC,IACT,kBACAC,GACAiB,UAEFC,EAAAA,EAAAA,KAACoP,EAAAA,KAAI,CACHhF,aAAc,CAAChG,GACfqV,KAAK,aACLvB,oBACEA,IACErY,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CAAC1D,KAAM,EAAE8D,SAAA,EACbC,EAAAA,EAAAA,KAAA,QAAAD,SACGwY,IACCvY,EAAAA,EAAAA,KAACsG,EAAAA,iBAAgB,CACfrE,GAAG,sBACHf,WAAW,kBAIjBlB,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAmBiB,UAClCC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,8BAKnBL,MAAO,CACL8Y,KACG1U,MAAMS,KAAKyS,EAAQe,WACnB/Q,QAAOgD,IAA6B,IAA3BvG,GAAM,WAAEuU,IAAahO,EAC7B,GAA0B,kBAAfgO,EACT,OAAOzE,EAAYlY,QAAQ2c,IAAe,EAE5C,GAA0B,oBAAfA,EACT,OAAOA,EAAWzE,GAEpB,GAAIzP,MAAMC,QAAQiU,GAAa,CAC7B,IAAK,IAAI1Y,KAAQ0Y,EACf,GAAIzE,EAAYlY,QAAQiE,IAAS,EAC/B,OAAO,EAGX,OAAO,CACT,CACA,OAAO,CAAI,IAEZhC,KAAIyb,IAA0C,IAAxCtV,GAAM,MAAEhD,EAAK,KAAE0S,EAAI,WAAE6E,IAAae,EACvC,MAAMC,EACY,oBAAT7F,EACHA,EAAK6E,EAAYzE,GACjBJ,EACN,MAAO,CACLxT,MAAOc,EACP1G,IAAK0J,EACL/C,QAASA,KACPuE,GAAYA,EAAS+T,GACrBP,YAAW,KACThB,EAASuB,EAAM,GACd,EAAE,EAER,UAKX3Z,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAC/H,UAAWE,EAA4BiB,SAAEgY,aAIvC,EAInBlE,EAAWtT,aAAe,CACxB2O,SAAS,EACTgF,YAAa,GACbpX,KAAM,GACNkb,WAAW,EACXG,KAAM,IAGR,S,qLCtOA,QAAwB,4B,0BCMjB,MAAMyB,EAAiBne,IAA+B,IAA9B,YAAEyY,EAAW,QAAEc,GAASvZ,EACrD,QAAOgJ,MAAMC,QAAQsQ,IAAYA,EAAQ3Y,OAAS,IAC9C2Y,EAAQ6E,MAAMjD,IAAgB1C,GAAe,IAAIlY,QAAQ4a,IAAe,GACpE,EAGGkD,EAAiBA,KAC5B,MAAMzU,GAASsD,EAAAA,EAAAA,oBACf,MAAO,CACLuL,YAAa3P,IAAIc,EAAQ,iCAAkC,IAC5D,EAGU0U,EAAqBzd,IAAkB,IAAjB,QAAE0Y,GAAS1Y,EAC5C,MAAM,YAAE4X,GAAgB4F,IACxB,OAAOF,EAAe,CAAE1F,cAAac,WAAU,EAG3Cb,EAActX,IAQb,IARc,KACnB6D,EAAI,UACJ9B,EAAS,QACTob,EAAO,QACP/a,EAAO,QACP+V,EAAO,SACPjV,KACG/C,GACJH,EACC,MAAMkT,EAASgK,EAAmB,CAAE/E,YACpC,MAAwB,oBAAbjV,EACFA,EAAS,CAAEgQ,SAAQrP,OAAMsU,aAGnB,IAAXjF,EACKhQ,EAGI,UAATW,GACKV,EAAAA,EAAAA,KAACuQ,EAAAA,OAAM,CAACC,OAAO,MAAMC,SAAUxR,IAG3B,YAATyB,GAEAV,EAAAA,EAAAA,KAACia,EAAAA,QAAO,CAAC7Y,MAAOnC,EAAQc,UACrBma,EAAAA,EAAAA,eACCF,EACA,IAAKhd,EAAO4B,UAAWC,IAAWC,EAAgBF,IAClDmB,KAMD,IAAI,EAGboU,EAAY5T,aAAe,CACzBG,KAAM,SACNsZ,QAAS,OACT/a,QAAS,4EAGX,S,mFCnEA,SAAgB,YAAY,gCAAgC,eAAe,mCAAmC,kBAAkB,sCAAsC,oBAAoB,wCAAwC,mBAAmB,uCAAuC,kBAAkB,uC,eCa9S,MA6BA,EA7BiBxD,IAMV,IANW,UAChBmD,EAAS,KACT8B,EAAO,MAAK,YACZyZ,EAAc,GAAE,QAChBC,KACGpd,GACJvB,EACC,OACEuE,EAAAA,EAAAA,KAACqa,EAAAA,KAAI,IACCrd,EACJ,cAAa,4BACb4B,UAAWC,IACTC,EAAM,aACNA,EAAM,OAADvC,OAAQmE,EAAI,aACjB9B,EACA,CACE,CAACE,EAAM,oBAAqBsb,EAC5B,CAACtb,EAAM,iBAAkBqb,EAAYN,MAAM5Z,KAAWA,EAAKF,aAG/DjB,MAAO,CAAE,gBAAiBqb,EAAY9d,QACtCie,UAAU,EACVja,MAAO8Z,EAAYlc,KAAI3B,IAAoC,IAAnC,IAAEie,EAAG,MAAEja,EAAK,IAAE5F,KAAQsC,GAAOV,EACnD,MAAO,CAAEgE,MAAOia,GAAOja,EAAO5F,SAAQsC,EAAO,KAE/C,C,mFCtCN,SAAgB,YAAY,gCAAgC,mBAAmB,uCAAuC,kBAAkB,sCAAsC,kCAAkC,sDAAsD,wBAAwB,4CAA4C,yBAAyB,6CAA6C,UAAU,8BAA8B,WAAW,+BAA+B,oBAAoB,yC,0BCKtf,MAAMwd,EAAc,CAClBC,QAAS,UACTC,MAAO,CACLC,MAAO,UACPC,YAAa,WAEfrN,OAAQ,UACRsN,aAAc,UACdC,QAAS,UACTC,SAAU,UACVzb,OAAQ,UACR0b,KAAM,UACNC,MAAO,WAGHlU,EAAWtL,IAQV,IARW,WAChByf,EAAU,KACVjU,EAAI,KACJvG,EAAI,eACJya,EAAc,UACdvc,EAAS,WACToI,KACGhK,GACJvB,EACC,MAAM2f,GAAW1T,EAAAA,EAAAA,UACf,SAAA2T,EAAAC,EAAA,MAAO,CACLX,OAAkB,OAAXH,QAAW,IAAXA,GAAmB,QAARa,EAAXb,EAAc9Z,UAAK,IAAA2a,OAAR,EAAXA,EAAqBV,QAASH,EAAY9Z,GACjDka,aAAwB,OAAXJ,QAAW,IAAXA,GAAmB,QAARc,EAAXd,EAAc9Z,UAAK,IAAA4a,OAAR,EAAXA,EAAqBV,cAAeJ,EAAY9Z,GAC9D,GACD,CAACA,IAGH,OACEb,EAAAA,EAAAA,MAACF,EAAAA,MAAK,CACJ,cAAa,4BACbf,UAAWC,IACTC,EAAM,qBACG,iBAAT4B,EAA0B5B,EAAM,mCAAqC,IAEvEwD,MAAM,SACNrG,KAAM,EAAE8D,SAAA,CAEPiH,GACCnH,EAAAA,EAAAA,MAAA,QAAMjB,UAAWE,EAAM,yBAAyBiB,SAAA,CAAEiH,EAAW,OAC3D,MACJhH,EAAAA,EAAAA,KAACub,EAAAA,IAAG,CACFZ,MAAOS,EAAST,SACZ3d,EACJ8B,MAAO,CACL0c,WAAYL,EAAiBC,EAAST,MAAQ,KAAO,OACrDA,MAAOS,EAAST,MAChBc,OAAQP,EAAU,aAAA3e,OAAgB6e,EAASR,aAAgB,QAE7Dhc,UAAWC,IACTC,EAAM,aACNF,EACS,WAAT8B,EAAoB5B,EAAM,oBAAsB,GACvC,UAAT4B,EAAmB5B,EAAM,mBAAqB,GAC9CA,EAAM,aAADvC,OAAcmE,IACnBya,EAAiBrc,EAAM,WAAa,GACpCoc,EAAapc,EAAM,eAAiB,IACpCiB,UAEFC,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAM,YAAYiB,SAAEkH,QAEjC,EAIZF,EAASxG,aAAe,CACtBoa,MAAO,UACPja,KAAM,UACNwa,YAAY,EACZC,gBAAgB,EAChBlU,KAAM,GACNrI,UAAW,IAGb,S,kECnFA,SAAgB,MAAQ,4BAA4B,YAAY,gCAAgC,YAAY,gCAAgC,kBAAkB,sCAAsC,cAAc,kCAAkC,iBAAiB,qCAAqC,cAAc,kCAAkC,QAAU,8BAA8B,wBAAwB,4CAA4C,qBAAqB,yCAAyC,kBAAkB,sCAAsC,0BAA0B,8CAA8C,gCAAgC,oDAAoD,mCAAmC,uDAAuD,iCAAiC,qDAAqD,gCAAgC,oDAAoD,+BAA+B,mDAAmD,+BAA+B,mDAAmD,UAAU,8BAA8B,oCAAoC,wDAAwD,gBAAgB,oCAAoC,iBAAiB,qCAAqC,0BAA0B,8CAA8C,WAAW,+BAA+B,mBAAmB,uCAAuC,YAAY,gCAAgC,kBAAkB,uC,mGCAxlD,SAAgB,WAAW,iCAAiC,IAAM,4BAA4B,OAAS,+BAA+B,MAAQ,8BAA8B,QAAU,gCAAgC,QAAU,gCAAgC,QAAU,iC,yDCK1Q,MA+BA,EA/BoBnD,IAAiC,IAAhC,UAAEmD,EAAS,KAAE9B,EAAI,MAAE4e,GAAOjgB,EAC7C,OACEuE,EAAAA,EAAAA,KAAA,OACEpB,UAAWC,IAAWD,EAAWE,EAAM,mBACvCA,MAAO,CACL,cAAe4c,EAAQ,MACvB3b,UAEFC,EAAAA,EAAAA,KAACpD,EAAAA,QAAW,CACVE,KAAMA,EAAKmB,KAAI3B,IAAA,IAAC,UAAEsC,KAAc5B,GAAOV,EAAA,OACrCG,OAAO+C,OAAO,CAAC,EAAGxC,EAAO,CACvB4B,UAAWC,IACTD,EACA,iBACAE,EAAM,gBAER4B,KAAM,QACN,IAEJ3D,MACEiD,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CACLoP,MAAM5P,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,kBACjB9B,UAAU,iBACV8B,KAAK,YAIP,E,gDC9BV,MAqBA,EArBiBjF,IAA6B,IAA5B,SAAEsE,EAAQ,SAAE4b,GAAUlgB,EACtC,OACEuE,EAAAA,EAAAA,KAAC2C,EAAAA,WAAWG,KAAI,CACd6Y,SACEA,GACAlf,OAAO+C,OACL,CAAC,EACD,CACEoc,QAAS,CACPzb,iBAAkBrB,EAAe,QACjCiB,SAAUA,KAIjBA,SAEAA,GACe,EChBhB8b,EAAUpgB,IAYT,IAZU,KACfiF,EAAI,KACJT,EAAI,QACJ6b,EAAO,YACPC,EAAW,MACXC,EAAK,QACLC,EAAO,SACPlc,EAAQ,MACR2b,EAAK,MACL5c,EAAK,QACLuC,EAAO,SACP6a,GACDzgB,EACC,MAAO0gB,EAASC,IAAchf,EAAAA,EAAAA,WAAS,GACvC,OACE4C,EAAAA,EAAAA,KAAA,OACElB,MAAOrC,OAAO+C,OAAO,CAAC,EAAGV,EAAO,CAAE,cAAe4c,EAAQ,OACzD9c,UAAWC,IACTwd,EAAa,YACbA,EAAa3b,GACbob,EACI,KACA,CACE,CAACO,EAAoB,OAAIL,EACzB,CAACK,EAAsB,SAAIJ,EAC3B,CAACI,EAAsB,SAAIF,IAGnC9a,QAAUjG,IACe,oBAAZiG,GAA2Bya,GAAYK,IAChDC,GAAW,GACXtX,QAAQwX,QACNjb,EAAQ,CAAEpB,OAAMsc,QAASL,EAAUM,MAAOphB,KAC1CqhB,SAAQ,KACRL,GAAW,EAAM,IAErB,EACArc,SAED+b,EACGC,EAAY,CAAErb,OAAMT,OAAM+b,QAAOC,UAASlc,aAC1CA,GACA,EAIV8b,EAAQtb,aAAe,CACrBwb,YAAaA,IAAM,KAGrB,UCjDMW,GAAcC,EAAAA,EAAAA,iBAAgB,CAClCR,QAAS,MADSQ,EAEjBlhB,IAAyB,IAAxB,KAAE0H,EAAI,SAAEpD,GAAUtE,EACpB,OAAOsE,EAASoD,EAAK,IAiDvB,EA9C0B7G,IASnB,IAToB,IACzBsgB,EAAG,OACHC,EAAM,SACNC,EAAQ,SACRnB,EAAQ,MACRK,EAAK,QACLC,EAAO,YACPF,EAAW,QACXD,GACDxf,EACC,OAAIugB,GAEA7c,EAAAA,EAAAA,KAAC0c,EAAW,IAAKE,EAAG7c,SAChBoD,IAEEnD,EAAAA,EAAAA,KAAC6b,EAAO,CACNnb,KAAK,mBACLT,KAAMkD,EACN6Y,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SACF,oBAAjB6c,EAAI7c,SAA0B6c,EAAI7c,SAASoD,GAAQA,SASvEnD,EAAAA,EAAAA,KAAC6b,EAAO,CACNnb,KAAK,YACLub,SAAO,EACPH,QAASA,EACTC,YAAaA,EAAYhc,UAEzBC,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CAAC5B,UAAU,iBAAiB8B,KAAK,OAAOW,QAASyb,EAAS/c,SAAC,kBAG1D,E,uBCxCd,MAoSMkb,EAAQA,CACZhb,EAAI+c,KAEA,IADJ,MAAEhB,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAOggB,EAE5D,OACEhd,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,QACLT,KAAMA,EACN+b,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EAuBRgd,EAAc,CAClBC,KAAM,CACJC,OA5USD,CAACjd,EAAIxE,KAA0D,IAAxD,MAAEugB,EAAK,QAAEC,EAAO,QAAEH,EAAO,YAAEC,KAAgB/e,GAAOvB,EACpE,OACEuE,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,OACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,IAAYjQ,IAAM5L,GAAMmd,UAAUrd,SAE1C8L,IAAM5L,GAAM6L,OAAO,eACZ,EAiUV4P,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPC,UAAW,CACTJ,OAlUcI,CAChBtd,EAAI3D,KAEA,IADJ,MAAE0f,EAAK,QAAEC,EAAO,QAAEH,EAAO,YAAEC,KAAgB/e,GAAOV,EAElD,OACE0D,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,aACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,IAAYjQ,IAAM5L,GAAMmd,UAAUrd,SAE1C8L,IAAM5L,GAAM6L,OAAO,YACZ,EAoTV4P,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPE,UAAW,CACTL,OApTcK,CAChBvd,EAAIpD,KAEA,IADJ,MAAEmf,EAAK,QAAEC,EAAO,QAAEH,EAAO,YAAEC,KAAgB/e,GAAOH,EAElD,OACEmD,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,aACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ/b,SAEhB8L,IAAU,OAAJ5L,QAAI,IAAJA,OAAI,EAAJA,EAAO,IAAI6L,OAAO,oBACvB,IACAD,IAAU,OAAJ5L,QAAI,IAAJA,OAAI,EAAJA,EAAO,IAAI6L,OAAO,UAClB,EAoSV4P,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPG,SAAU,CACRN,OArSaM,CACfxd,EAAIsF,KAEA,IADJ,MAAEyW,EAAK,QAAEC,EAAO,YAAEF,EAAW,QAAED,EAAO,WAAE4B,KAAe1gB,GAAOuI,EAE9D,OACEvF,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJiD,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,IAAYjQ,IAAM5L,GAAMmd,UAAUrd,SAE1C8L,IAAM5L,GAAM6L,OACX4R,EAAa,mBAAqB,wBAE5B,EAsRVhC,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPK,aAAc,CACZR,OAvRiBQ,CACnB1d,EAAI0K,KAEA,IADJ,MAAEqR,EAAK,QAAEC,EAAO,YAAEF,EAAW,QAAED,KAAY9e,GAAO2N,EAElD,OACE3K,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,gBACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ/b,SAEhBE,GACO,EAyQVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPM,kBAAmB,CACjBT,OA1QsBS,CACxB3d,EAAIyZ,KAEA,IADJ,MAAEsC,EAAK,QAAEC,EAAO,YAAEF,EAAW,QAAED,KAAY9e,GAAO0c,EAElD,OACE1Z,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,sBACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ/b,SAEhBE,GACO,EA4PVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPO,KAAM,CACJV,OA7PSU,CACX5d,EAAI6d,KAEA,IADJ,MAAE9B,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAO8gB,EAE5D,OACE9d,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,OACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EA+OVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPS,SAAU,CACRZ,OAhPaY,CACf9d,EAAI+d,KAEA,IADJ,MAAEhC,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAOghB,EAE5D,OACEhe,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,YACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EAkOVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPW,SAAU,CACRd,OAnOac,CACfhe,EAAIie,KAEA,IADJ,MAAElC,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAOkhB,EAE5D,OACEle,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,WACLT,KAAMA,EACNgc,QAASA,EACTD,MAAOA,EACPD,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EAqNVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPa,IAAK,CACHhB,OAtNQgB,CAACle,EAAIme,KAA0C,IAAxC,YAAErC,EAAW,QAAED,KAAY9e,GAAOohB,EACnD,OACEpe,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,MACLT,KAAMA,EACN8b,YAAaA,EACbD,QAASA,EAAQ/b,SAEhBE,IACEA,EAAKoe,QACJre,EAAAA,EAAAA,KAACoF,EAAAA,QAAI,CACHhB,KAAMnE,EAAKmE,KACXlD,WAAYjB,EAAKiB,WACjBmD,MAAOpE,EAAKoE,MAAMtE,SAEjBue,IAAA,IAAC,KAAE5d,EAAI,YAAEsC,GAAasb,EAAA,OACrBte,EAAAA,EAAAA,KAAC+G,EAAAA,QAAQ,CACPrG,KAAMA,KACFjE,OAAO+C,OACT,CAAC,EACDmK,IAAK1J,EAAM,CAAC,OAAQ,SAAU,aAAc,WAE9CgH,KAAMjE,GACN,KAINhD,EAAAA,EAAAA,KAAC+G,EAAAA,QAAQ,IAAKtK,OAAO+C,OAAO,CAAC,EAAGS,OAE5B,EAyLVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPiB,OAAQ,CACNpB,OA1LWoB,CAACte,EAAIue,KAA0C,IAAxC,YAAEzC,EAAW,QAAED,KAAY9e,GAAOwhB,EACtD,OACExe,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,SACLT,KAAMA,EACN8b,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAACqZ,EAAAA,QAAMoF,OAAM,IAAKhiB,OAAO+C,OAAO,CAAC,EAAGS,GAAOhE,KAAM,MACzC,EAiLVyf,MAAO,GACP2B,IAAK,GACLC,IAAK,KAEPoB,UAAW,CACTvB,OAlLcuB,CAChBze,EAAI0e,KAEA,IADJ,MAAE3C,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAO2hB,EAE5D,OACE3e,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,aACLT,KAAMA,EACN+b,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EAoKVyb,MAAO,GACP2B,IAAK,GACLC,IAAK,KAEPsB,SAAU,CACRzB,OArKayB,CAAC3e,EAAMjD,KACfgD,EAAAA,EAAAA,KAAC6e,EAAiB,CAACjC,IAAK3c,KAAUjD,IAqKvC0e,MAAO,IACP2B,IAAK,GACLC,IAAK,KAEPwB,SAAU,CACR3B,OAvKa2B,CACf7e,EAAI8e,KAEA,IADJ,SAAEpD,EAAQ,MAAEK,GAAQ,EAAI,QAAEC,GAAU,EAAI,YAAEF,EAAW,QAAED,KAAY9e,GAAO+hB,EAE1E,OACE/e,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,YACLT,KAAMA,EACN+b,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EAyJVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPta,YAAa,CACXma,OA1JgBna,CAClB/C,EAAI+e,KAEA,IADJ,MAAEhD,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAOgiB,EAE5D,OACEhf,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,cACLT,KAAMA,EACN+b,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EA4IVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEP7G,QAAS,CACP0G,OA5IY1G,CAACxW,EAAIgf,KAAiB,IAAf,MAAEvD,GAAOuD,EAC9B,OACEjf,EAAAA,EAAAA,KAACkf,EAAW,CACVtgB,UAAWC,IAAWwd,EAAa,YAAaA,EAAsB,SACtEvf,KAAMmD,EACNyb,MAAOA,GACP,EAuIFA,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEP6B,cAAe,CACbhC,OArHkBgC,CACpBlf,EAAImf,KAEA,IADJ,MAAEpD,EAAK,QAAEC,EAAO,SAAEN,EAAQ,YAAEI,EAAW,QAAED,KAAY9e,GAAOoiB,EAE5D,OACEpf,EAAAA,EAAAA,KAAC6b,EAAO,IACF7e,EACJ0D,KAAK,gBACLT,KAAMA,EACN+b,MAAOA,EACPC,QAASA,EACTF,YAAaA,EACbD,QAASA,EAAQ/b,UAEjBC,EAAAA,EAAAA,KAAC+c,EAAQ,CAACpB,SAAUA,EAAS5b,SAAEE,KACvB,EAuGVyb,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEPrC,MAAO,CACLkC,OAAQlC,EACRS,MAAO,IACP2B,IAAK,IACLC,IAAK,KAEP+B,WAAY,CACVlC,OAAQlC,EACRS,MAAO,IACP2B,IAAK,GACLC,IAAK,KAEPgC,WAAY,CACVnC,OAAQlC,EACRS,MAAO,IACP2B,IAAK,IACLC,IAAK,MAIT,I,yLCpcA,MAAM,MAAEiC,GAAUC,EAAAA,SA+QlB,EA7Q8B/jB,IAKvB,IALwB,MAC7BgkB,EAAK,UACLld,EAAS,QACTmd,EACAC,OAAQ1X,GACTxM,EACC,MAAOkkB,EAAQ/Z,IAAYxI,EAAAA,EAAAA,UAAS6K,GAAgB,CAAC,IAE9C2X,EAAYC,IAAiBziB,EAAAA,EAAAA,UAAS,KACvC,iBAAE0iB,EAAgB,kBAAEC,EAAiB,eAAEC,EAAc,cAAEC,IAC3DvY,EAAAA,EAAAA,UAAQ,IACC4F,IACL7Q,OAAO+C,OACL,CACEsgB,iBAAkB,GAClBC,kBAAmB,GACnBC,eAAgB,GAChBC,cAAe,IAEjBC,IAAQR,GAAUzf,GACG,UAAfA,EAAKkgB,MACA,qBAEU,IAAflgB,EAAKkgB,OAAiC,SAAflgB,EAAKkgB,MACvB,oBAEuC,IAAxC5b,IAAIob,EAAO,GAADpjB,OAAK0D,EAAKmE,KAAI,cAC9BnE,EAAKmgB,SACmC,IAAxC7b,IAAIob,EAAO,GAADpjB,OAAK0D,EAAKmE,KAAI,aACtB,gBACA,qBAGR,CAACmJ,EAAQxS,EAAOL,KACd6S,EAAO7S,GAAOK,EAAMslB,MAAK,CAACC,EAAGC,IAEzBhc,IAAIob,EAAO,GAADpjB,OAAK+jB,EAAElc,KAAI,SAAS,GAC9BG,IAAIob,EAAO,GAADpjB,OAAKgkB,EAAEnc,KAAI,SAAS,IAEhC,GAEJ,CAAC,IAEF,CAACsb,EAASC,IAkBTa,EAAgBvgB,IAElBJ,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAAC,SAAA,CACGE,EAAKwgB,WAAaxgB,EAAKmB,OAAS,2BAChCnB,EAAKygB,aAAezgB,EAAKygB,YAAYrkB,OAAS,EAAC,IAAAE,OACxC0D,EAAKygB,YAAYziB,KAAI3B,IAAA,IAAC,MAAE8E,GAAO9E,EAAA,OAAK8E,CAAK,IAAE5E,KAAK,KAAI,KACxD,MAKV,OACEqD,EAAAA,EAAAA,MAAA,OAAKjB,UAAWE,EAAM,2BAA2BiB,SAAA,EAC/CC,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,iCAAiCiB,UACrDF,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAAClE,MAAM,SAASmE,QAAQ,gBAAe1G,SAAA,EACzCC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,SAAC,8BACLC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFC,EAAAA,EAAAA,KAACia,EAAAA,QAAO,CAAC7Y,MAAM,2BAAMrB,UACnBC,EAAAA,EAAAA,KAACZ,EAAAA,QAAa,CACZsB,KAAK,OACLkP,MAAM5P,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,0BACjBW,QAAS2C,UACPzB,SAAoBA,EAAU,CAAC,GAC/Bkd,GAAO,cAOnBzf,EAAAA,EAAAA,KAAA,OAAKpB,UAAWE,EAAM,oCAAoCiB,UACxDF,EAAAA,EAAAA,MAAC2f,EAAAA,SAAQ,CACPmB,iBAAkB,CAAC,SAAU,aAC7BC,OAAO,EACPC,UAAQ,EAAA9gB,SAAA,EAERC,EAAAA,EAAAA,KAACuf,EAAK,CAAcrR,OAAO,iCAAOnO,UAChCF,EAAAA,EAAAA,MAACihB,EAAAA,KAAI,CAACliB,UAAWE,EAAM,gCAAgCiB,SAAA,CACpD+f,EAAiB7hB,KAAI,CAACgC,EAAMvB,KAC3BsB,EAAAA,EAAAA,KAAC8gB,EAAAA,KAAKC,KAAI,CACRniB,UAAWE,EAAM,gCAAgCiB,UAGjDC,EAAAA,EAAAA,KAACghB,EAAAA,SAAQ,CAACC,SAAO,EAAC1f,UAAQ,EAAAxB,SACvBygB,EAAavgB,MAHXA,EAAKmE,MAAI,QAAA7H,OAAYmC,OAO9BsB,EAAAA,EAAAA,KAACkhB,EAAAA,cAAa,CACZpkB,KAAMkjB,EACNrY,OAAO,mBACPwZ,UAAWriB,EAAM,iBACjBsiB,WAAYtiB,EAAM,kBAClBuiB,eAAa,EACbC,QAAUtB,IAtEMN,KAC5B,MAAM6B,EAAYC,IAAU7B,GACtB8B,EAAc,GAAGllB,OACrBmjB,EAAQI,iBACRJ,EAAQM,eACRN,EAAQK,oBAETL,EAAQO,eAAiB,IAAIpV,SAAS6W,IACrC7c,IAAI0c,EAAU,GAADhlB,OAAKmlB,EAAItd,KAAI,aAAY,EAAM,IAE9Cqd,EAAY5W,SAAQ,CAAC6W,EAAKhjB,KACxBmG,IAAI0c,EAAU,GAADhlB,OAAKmlB,EAAItd,KAAI,SAAS1F,EAAQ,EAAE,IAE/CkH,EAAS2b,EAAU,EA0DLI,CAAqB,CACnB7B,mBACAE,iBACAC,gBACAF,qBACA,EAEJ6B,UAAW,IACXC,mBAAiB,EACjBC,MAAO,EAAE/hB,SAERigB,EAAe/hB,KAAI,CAACgC,EAAMvB,KACzBmB,EAAAA,EAAAA,MAACihB,EAAAA,KAAKC,KAAI,CACRniB,UAAWC,IACTC,EAAM,gCACNA,EAAM,YACNiB,SAAA,EAGFC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CACHC,KAAK,aACL9B,UAAWE,EAAM,wCAEnBkB,EAAAA,EAAAA,KAACghB,EAAAA,SAAQ,CACPC,SAAO,EACP1f,SACEtB,EAAKkgB,OACLL,EAAiBzjB,OACf2jB,EAAe3jB,OACf0jB,EAAkB1jB,QAClB,EAEJuJ,SAAWxK,IACTA,EAAEiH,kBACFjH,EAAE2mB,iBACF,MAAMR,EAAY9kB,OAAO+C,OAAO,CAAC,EAAGmgB,GACpC4B,EAAUthB,EAAKmE,MAAQ3H,OAAO+C,OAC5B,CAAC,EACD+hB,EAAUthB,EAAKmE,MACf,CAAE4d,SAAS,IAEbpc,EAAS2b,EAAU,EACnBxhB,SAEDygB,EAAavgB,OA3BXA,EAAKmE,MAAI,WAAA7H,OAAemC,QAgClCqhB,EAAkB9hB,KAAI,CAACgC,EAAMvB,KAC5BsB,EAAAA,EAAAA,KAAC8gB,EAAAA,KAAKC,KAAI,CACRniB,UAAWE,EAAM,gCAAgCiB,UAGjDC,EAAAA,EAAAA,KAACghB,EAAAA,SAAQ,CAACC,SAAO,EAAC1f,UAAQ,EAAAxB,SACvBE,EAAKwgB,WAAaxgB,EAAKmB,OAAS,8BAH9BnB,EAAKmE,MAAI,SAAA7H,OAAamC,UAvExB,WAgFXsB,EAAAA,EAAAA,KAACuf,EAAK,CAEJrR,QACErO,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAACE,MAAM,EAAOD,QAAQ,gBAAe1G,SAAA,EACvCC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,SAAC,oCACLC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CACFtF,QAAUjG,IACRA,EAAEiH,kBACFjH,EAAE2mB,gBAAgB,EAClBhiB,UAEFC,EAAAA,EAAAA,KAACiiB,EAAAA,YAAW,CACVC,QAAQliB,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,cAAczE,KAAM,KACvCsP,YAAY,eACZ4W,SAAWpnB,IACT8kB,EAAc9kB,EAAM,EAEtB6D,UAAWE,EAAM,iCACjB7C,KAAK,eAIZ8D,UAEDC,EAAAA,EAAAA,KAAC8gB,EAAAA,KAAI,CACHsB,WAAYnC,EAActY,QACvB1H,GAC2C,kBAAlCA,EAAKwgB,WAAaxgB,EAAKmB,SAC9BnB,EAAKwgB,WAAaxgB,EAAKmB,OAAOpF,QAAQ4jB,IAAe,IAE1DnhB,WAAawB,IAETD,EAAAA,EAAAA,KAAC8gB,EAAAA,KAAKC,KAAI,CACRniB,UAAWE,EAAM,gCAAgCiB,UAGjDC,EAAAA,EAAAA,KAACghB,EAAAA,SAAQ,CACPC,SAAS,EACTrb,SAAWxK,IACTA,EAAEiH,kBACFjH,EAAE2mB,iBACF,MAAMR,EAAY9kB,OAAO+C,OAAO,CAAC,EAAGmgB,GACpC4B,EAAUthB,EAAKmE,MAAQ3H,OAAO+C,OAC5B,CAAC,EACD+hB,EAAUthB,EAAKmE,MACf,CAAE4d,SAAS,IAEbpc,EAAS2b,EAAU,EACnBxhB,SAEDE,EAAKwgB,WAAaxgB,EAAKmB,OAAS,8BAhB9BnB,EAAKvF,QAjCd,mBA0DVmF,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CACF5H,UAAWE,EAAM,kCACjB2H,QAAQ,MACR6E,OAAQ,GAAGvL,SAAA,EAEXC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFC,EAAAA,EAAAA,KAACQ,EAAAA,OAAM,CACLvE,KAAK,QACLoF,QAASA,KACPuE,EAASqC,GAAgB,CAAC,GAC1BwX,GAAO,EACP1f,SACH,oBAIHC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFC,EAAAA,EAAAA,KAACZ,EAAAA,QAAa,CACZsB,KAAK,UACLzE,KAAK,QACLoF,QAAS2C,UACPzB,SAAoBA,EAAUod,GAC9BF,GAAO,EACP1f,SACH,wBAKD,E,8DCvQV,MAAMsiB,GAAc5mB,IAA4C,IAA3C,MAAE2F,EAAK,QAAEse,EAAO,OAAEC,EAAM,UAAE2C,GAAW7mB,EACxD,MAAOyM,EAAME,IAAWhL,EAAAA,EAAAA,WAAS,GACjC,OACEyC,EAAAA,EAAAA,MAAC2G,EAAAA,IAAG,CAACE,MAAM,EAAM3G,SAAA,EACfC,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAACC,KAAM,EAAE7G,SAAEqB,KACfpB,EAAAA,EAAAA,KAAC2G,EAAAA,IAAG,CAAA5G,UACFC,EAAAA,EAAAA,KAACmL,EAAAA,QAAO,CACNjD,KAAMA,EACNM,aAAcJ,EACdgD,QAAQ,QACRzJ,UAAU,aACVxB,iBAAkBrB,EAAM,2BACxBuM,SACErL,EAAAA,EAAAA,KAACuiB,EAAqB,CACpB7C,QAASA,EACTC,OAAQA,EACRF,MAAOA,KACLrX,GAAQ,EAAM,EAEhB7F,UAAYgf,IACVe,GAAW3C,GACFrS,IACLiU,GACA,CAAChU,EAAQxS,EAAOL,KACd6S,EAAO7S,GAAO+B,OAAO+C,OACnB,CAAC,EACDmgB,EAAOjlB,GACPuC,IAAKlC,EAAO,CAAC,UAAW,SACzB,GAEH,CAAC,IAEH,IAGPgF,UAEDC,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAM,yBAAyBiB,UAC9CC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,wBAIb,EAuOV,GAnOuBpE,IAAoD,IAAnD,QAAEojB,EAAO,KAAEtb,EAAI,eAAEoe,EAAc,WAAEC,GAAYnmB,EACnE,MAAOomB,EAAwBC,IAA6BvlB,EAAAA,EAAAA,UAAS,MAC/DwlB,GAA4B7e,EAAAA,EAAAA,QAAO2e,GACzCE,EAA0BnlB,QAAUilB,EACpC,MAAMG,GAAuB9e,EAAAA,EAAAA,QAAO,MAC9B+e,GAAgB/e,EAAAA,EAAAA,QAAO,OACtB4b,EAAQoD,IAAiB3lB,EAAAA,EAAAA,UAAS,CAAC,IACpC,gBAAE4lB,IAAoB1d,EAAAA,EAAAA,aACtB2d,EAAuC,OAAfD,QAAe,IAAfA,OAAe,EAAfA,EAAiBE,WAAW9e,GAEpD+e,GAAaC,EAAAA,GAAAA,uBAAqB,CAAChf,EAAMzJ,KAC9B,OAAfqoB,QAAe,IAAfA,GAAAA,EAAiBK,YAAYjf,EAAMzJ,EAAO,GACzC,KAEG2nB,EAAYhlB,KAAgBikB,KAChCnjB,EAAAA,EAAAA,kBAAgB,KACd2kB,GAAepD,IACb,MAAMhlB,EACiB,oBAAd4mB,EAA2BA,EAAU5B,GAAU4B,EAExD,OADAnd,GAAQoe,GAAkBW,EAAW/e,EAAMzJ,GACpCA,CAAM,GACb,GACF,KAGE,KAAE2oB,IAAS5N,EAAAA,EAAAA,UACfjZ,OAAO+C,OAAO,IACT/C,OAAO+C,OAAO,CAAC,EAAGyjB,GACrBtN,MAAM,EACN4N,MAAM,gBAADhnB,OAAkB6H,GACvBof,SAAS,EACT7O,iBAAmBxR,IACjB4f,EAActmB,OAAO+C,OAAO,CAAC,EAAG2D,GAAM,KAKtCsgB,EAAiBnmB,KAAe,KAChC8G,GAAQoe,GAAkBS,GAC5BK,EAAK,CAAEjf,OAAO,GAChB,KAGF+L,EAAAA,EAAAA,YAAU,KACRqT,GAAgB,GACf,CAACA,IAEJ,MAAMzD,GAAiBtY,EAAAA,EAAAA,UAAQ,IACtBgY,EACJ/X,QAAQ+Z,MAEkC,IAAvCnd,IAAIob,EAAO,GAADpjB,OAAKmlB,EAAItd,KAAI,eACiB,IAAvCG,IAAIob,EAAO,GAADpjB,OAAKmlB,EAAItd,KAAI,eAAuC,IAAfsd,EAAItB,UAGvDC,MAAK,CAACC,EAAGC,KACR,MAAMmD,EAAiBzjB,GAEnBsE,IAAIob,EAAO,GAADpjB,OAAK0D,EAAKmE,KAAI,SAAS,IACjB,SAAfnE,EAAKkgB,OAAoB,IAAQ,IAClB,UAAflgB,EAAKkgB,MAAoB,IAAQ,GAGtC,OAAOuD,EAAcpD,GAAKoD,EAAcnD,EAAE,KAE7C,CAACb,EAASC,IAEPgE,GAA4Bjc,EAAAA,EAAAA,UAAQ,IACjCkc,KAAc5D,GAAgBnjB,IAAA,IAAC,KAAE6D,GAAM7D,EAAA,MAAc,YAAT6D,CAAkB,KACpE,CAACsf,IAEE6D,GAAanc,EAAAA,EAAAA,UAAQ,IAClBoc,IACL9D,GACAza,IAAA,IAAC,KAAE7E,EAAI,KAAE0D,GAAMmB,EAAA,OACbhB,IAAIob,EAAO,GAADpjB,OAAK6H,EAAI,YAAa6Y,EAAYvc,GAAMgb,KAAK,KAE1D,CAACsE,EAAgBL,IAEdoE,EAAoBpZ,IAAuB,IAAtB,MAAE+Q,EAAK,MAAEhd,GAAOiM,EACzC,OAAOgZ,IAA8BjlB,EACjCgd,EAAQsI,KAAK1G,IAAImF,EAAaoB,EAAa,EAAG,GAC9CnI,CAAK,EAGLuI,EAAkB3mB,KAAe,CAAC4mB,EAAQxlB,KAE5CsB,EAAAA,EAAAA,KAAA,QACEpB,UAAWC,IAAWC,EAAM,oBAC5BqlB,YAAc/oB,IACZynB,EAAqBplB,QAAUhB,OAAO+C,OAAO,CAAC,EAAG0kB,EAAQ,CAAExlB,UAC3DokB,EAAcrlB,QAAUrC,EAAEgpB,QAC1BzB,EAA0BjkB,EAAM,EAChCqB,UAEFC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,mBAKX2jB,EAAS/mB,KAAgBgnB,IAC7B,GAA+B,OAA3B5B,EACF,OAEF,IAAKG,EAAqBplB,QACxB,OAEF,MAAM,KAAE2G,EAAI,MAAEsX,EAAK,IAAE2B,EAAG,IAAEC,EAAG,MAAE5e,GAAUmkB,EAAqBplB,QACxD8mB,EAAeP,KAAK3G,IAAI2G,KAAK1G,IAAI5B,EAAQ4I,EAAOjH,GAAMC,GACxDiH,EAAeR,EAAkB,CAAErI,MAAO2B,EAAK3e,WAGnD4jB,GAAW3C,GACFljB,OAAO+C,OAAO,CAAC,EAAGmgB,EAAQ,CAC/B,CAACvb,GAAO3H,OAAO+C,OAAO,CAAC,EAAGmgB,EAAOvb,GAAO,CACtCsX,MAAO6I,OAGX,IAGEC,EAAsBlnB,KAAe,CAAC4mB,EAAQxlB,KAClD,MAAM,KAAE0F,EAAI,MAAEsX,EAAK,IAAE2B,EAAG,IAAEC,GAAQ4G,EAClC,IAAIO,EAAeP,EACfxlB,IAAUshB,EAAe3jB,OAAS,IACpCooB,EAAehoB,OAAO+C,OAAO,CAAC,EAAG0kB,EAAQ,CACvCtlB,UAAW,iBACXwC,OACEpB,EAAAA,EAAAA,KAACqiB,GAAW,CACVjhB,MAAa,OAAN8iB,QAAM,IAANA,OAAM,EAANA,EAAQ9iB,MACfse,QAASA,EACTC,OAAQA,EACR2C,UAAWA,OAMnB,MAAMoC,EAAcA,KACX,CACL9lB,UAAWC,IAAW,CACpB,CAACC,EAAM,cAAe8jB,EAA0BnlB,UAAYiB,MAI5D6lB,EAAeP,KAAK3G,IACxB2G,KAAK1G,IAAI/Y,IAAIob,EAAO,GAADpjB,OAAK6H,EAAI,YAAasX,EAAO2B,GAChDC,GAGIqH,EAAYZ,EAAkB,CAAErI,MAAO6I,EAAc7lB,UAE3D,OAAOjC,OAAO+C,OAAO,CAAC,EAAGilB,EAAc,CACrCG,aAAcF,EACdG,OAAQH,EACRhJ,MAAOiJ,EACPG,iBAAkBA,CAACC,EAAQC,IAEe,OAAtCpC,EAA0BnlB,SAC1BmlB,EAA0BnlB,UAAYiB,GACtB,aAAhBwlB,EAAOxjB,OACN2P,KAAQ0U,EAAOb,EAAO9f,MAAO4gB,EAAWd,EAAO9f,OAGpDhD,OACEvB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAAC,SAAA,CACG0kB,EAAarjB,QACXujB,EAAYJ,GAAgBI,EAAYrH,IACzC2G,EACExnB,OAAO+C,OAAO,CAAC,EAAGilB,EAAc,CAAE/I,MAAOiJ,IACzCjmB,OAIR,IA2CJ,OAxCA0R,EAAAA,EAAAA,YAAU,KACR,MAAM6U,EAAsBA,KAC1BtC,EAA0B,MAC1BG,EAAcrlB,QAAU,KACxBolB,EAAqBplB,QAAU,IAAI,EAG/BynB,EAAiB9pB,IAEmB,OAAtCwnB,EAA0BnlB,SACO,OAAjColB,EAAqBplB,UAIO,OAA1BqlB,EAAcrlB,QAIlB4mB,EAAOjpB,EAAEgpB,QAAUtB,EAAcrlB,SAH/BqlB,EAAcrlB,QAAUrC,EAAEgpB,QAGa,EAQ3C,OANAvM,SAASsN,gBAAgBxR,iBACvB,UACAsR,GACA,GAEFpN,SAASsN,gBAAgBxR,iBAAiB,YAAauR,GAAe,GAC/D,KACLrN,SAASsN,gBAAgBvR,oBACvB,UACAqR,GACA,GAEFpN,SAASsN,gBAAgBvR,oBACvB,YACAsR,GACA,EACD,CACF,GACA,CAACb,IAEG,CACLrE,iBACA0C,yBACAuB,kBACAmB,cAAezF,EACfkE,aACAW,sBACD,E,kDCxRH,MA2GA,GA3G2B/oB,IAA8B,IAA7B,OAAE4pB,EAAM,YAAEC,GAAa7pB,EACjD,MAAO8pB,EAAYC,IAAiBpoB,EAAAA,EAAAA,UAAS,MACvCqoB,GAAuB1hB,EAAAA,EAAAA,QAAOuhB,GACpCG,EAAqBhoB,QAAU6nB,EAE/B,MAAMd,EAAsBlnB,KAC1B,CAACokB,EAAKhjB,EAAKpC,KAAyB,IAAvB,cAAE8oB,GAAe9oB,EAC5B,MAAM,KACJ8H,EAAI,KACJ1D,EAAI,WACJglB,EAAU,MACVtkB,EAAK,YACLukB,EAAW,MACXxF,EAAK,QACLyF,EAAO,YACP7J,EAAW,YACX2E,EAAW,KACXL,EAAI,eACJwF,KACGC,GACDpE,GACE,OAAEvE,EAAM,MAAEzB,EAAK,IAAE2B,EAAG,IAAEC,GAAQ7gB,OAAO+C,OACzC,CAAC,EACDyd,EAAYvc,GACH,aAATA,IACGyE,KAAMogB,IACPtoB,IAAKggB,EAAYyI,GAAc,SAAU,CAAC,QAAS,MAAO,SAExDK,EAAevqB,KAAQ2hB,GAE7B,MAAO,CACL/Y,OACAhD,MAA8B,oBAAhBukB,EAA6BA,EAAYvkB,GAASA,EAChEic,MACAC,MACA5B,QACAyE,QACAO,cACAL,OACA3f,OACAyc,OAASld,IACP,MAAM+lB,EACc,oBAAXX,EAAwBA,EAAOplB,GAAQA,EAAKolB,GAC/CY,EAAWxpB,OAAO+C,OACtB,CAAC,EACDkiB,EACsB,oBAAfA,EAAIvE,OACPuE,EAAIvE,OAAO,IACNsI,EAAqBhoB,QACxB2G,OACAzJ,OAAQsF,IAEV,CAAC,GAGDimB,EAAyBhK,IAC7B,MAAMJ,GACJ8J,GAAO,CACL7qB,GAAoB,KAAVA,QAA0B,IAAVA,GAA8B,OAAVA,IAChDmhB,GACF,OAAO6J,EAAa7J,EAAU,IACzB4J,EACH1hB,OACAsX,MAAOnX,IAAI6gB,EAAc,GAAD7oB,OAAK6H,EAAI,YAAasX,EAC9C2B,MACAC,MACAxB,UACAC,cACAC,MAAOiK,EAASjK,MAChBE,SAAUjc,EACVqlB,YAAaG,EAAqBhoB,QAClCwe,QAASgK,EAAShK,QAClBN,SAAUsK,EAAStK,SACnBkB,OAAQ0I,IAAeS,EACvBlJ,SAAUA,IAAM0I,EAAcQ,IAC9B,EAGE9J,EACJ+J,EAASE,eAAe,YACI,oBAArBF,EAAS/Z,QACZ+Z,EAAS/Z,QACPjM,EACAxD,OAAO+C,OACL,CAAC,EACDimB,EAAqBhoB,QACrB,CACE2G,QAEFyhB,EACI,CAAEE,aAAcG,GAChB,CAAC,IAGT3hB,IAAItE,EAAMmE,GAChB,OAAOyhB,EAAiB3J,EAAWgK,EAAsBhK,EAAS,EAErE,IAIL,MAAO,CACLqJ,aACAf,sBACD,EC/DH,GA/CwB9E,IACfhY,EAAAA,EAAAA,UAAQ,KACb,MAAM0e,EAAqB1G,EAAQ/X,QAChC1H,GAASA,EAAKygB,aAAezgB,EAAKygB,YAAYrkB,OAAS,IAE1D,GAAI+pB,EAAmB/pB,OAAS,EAAG,CACjC,MAAMgqB,EAAa3G,EAAQnhB,MAAM,GAC3B+nB,EAAQ,GACRC,EAAqBrC,IACzB,MAAM,YAAExD,GAAgBwD,EACxB,KAAMxD,GAAeA,EAAYrkB,OAAS,GACxC,OAEF,MAAMmqB,EAAcH,EAAWrqB,QAAQkoB,GACjCtZ,EAAOA,CAAC8V,EAAa4F,KACzB,MAAOG,KAAiBC,GAAehG,EACvC,IAAIiG,EAAeL,EAAMrP,MACtBhX,GAASA,EAAKmE,OAASqiB,EAAariB,OAElCuiB,IACHA,EAAelqB,OAAO+C,OACpB,CAAEonB,WAAYJ,GACdC,EACA,CAAE1mB,SAAU,KAEdumB,EAAMnc,KAAKwc,IAETD,EAAYrqB,OAAS,EACvBuO,EAAK8b,EAAaC,EAAa5mB,UAE/B4mB,EAAa5mB,SAASoK,KAAK+Z,EAC7B,EAEFtZ,EAAK8V,EAAa4F,GAClBD,EAAWhf,OAAOmf,EAAa,EAAE,EAOnC,OALAJ,EAAmBvb,QAAQ0b,GAC3BD,EAAMzb,SAAQ,CAACgc,EAAanoB,KAC1B2nB,EAAWhf,OAAOwf,EAAYD,WAAaloB,EAAO,EAAGmoB,EAAY,IAG5D,CAAEnH,QAAS2G,EAAYS,gBAAgB,EAChD,CACA,MAAO,CAAEpH,UAASoH,gBAAgB,EAAO,GACxC,CAACpH,I,kDCvCN,MAAMqH,GAAkB1G,GACtB,IAAI/c,KACD+c,GAAQ,IAAIpiB,KAAIxC,IAAqB,IAApB,KAAE2I,EAAI,KAAEic,GAAM5kB,EAC9B,MAAO,CAAC2I,EAAMic,EAAK,KA6DzB,GAzDiBrjB,IACf,MAAOqjB,EAAM2G,GAAWvf,KAAgBzK,EAAO,CAC7CjC,MAAO,OACPkN,aAAc,cACdrC,SAAU,iBAGNqhB,GAAUvf,EAAAA,EAAAA,UAAQ,IACfqf,GAAe1G,IACrB,CAACA,IAEE6G,GAAa3T,EAAAA,EAAAA,cAChBpC,GACQ6V,GAAS3G,IACd,MAAM8G,EAAUhW,EAAS4V,GAAe1G,IACxC,OAAO5b,MAAMS,KAAKiiB,GAASlpB,KAAI3B,IAAA,IAAE8H,EAAMic,GAAK/jB,EAAA,MAAM,CAAE8H,OAAMic,OAAM,GAAE,KAGtE,CAAC2G,IAGH,OAAOzT,EAAAA,EAAAA,cACL1W,IAAA,IAAC,OAAEqM,EAAM,KAAE9E,GAAMvH,EAAA,OACfgD,EAAAA,EAAAA,MAAA,OACEjB,UAAWC,IAAWC,EAAM,YAAa,CACvC,CAACA,EAAM,qBAA4C,SAAtBmoB,EAAQ1iB,IAAIH,GACzC,CAACtF,EAAM,oBAA2C,QAAtBmoB,EAAQ1iB,IAAIH,KAE1C/C,QAASA,KACP6lB,GAAY7G,IACV,MAAM5iB,EAAU4iB,EAAK9b,IAAIH,GACnBgjB,EACY,SAAZ3pB,EACK,MAEO,QAAZA,EACK,KAEF,OAET,GAAIyL,EACF,OAAO,IAAI5F,IAAI8jB,EAAc,CAAC,CAAChjB,EAAMgjB,IAAgB,IAEvD,MAAMD,EAAUrf,KAAMuY,GAEtB,OADA+G,EAAcD,EAAQtiB,IAAIT,EAAMgjB,GAAeD,EAAQpf,OAAO3D,GACvD+iB,CAAO,GACd,EACFpnB,SAAA,EAEFC,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,mBAAmB9B,UAAWE,EAAM,gBAC/CkB,EAAAA,EAAAA,KAACS,EAAAA,QAAI,CAACC,KAAK,qBAAqB9B,UAAWE,EAAM,iBAC7C,GAER,CAACmoB,EAASC,GACX,ECvDGxS,GAAQjZ,IAgBP,IAhBQ,QACbikB,EAAO,UACP9gB,EAAS,YACT6U,EAAW,OACX4T,EAAM,aACNC,EAAY,WACZC,EAAU,kBACVC,EAAiB,OACjBnC,EAAM,WACNjD,EAAU,eACVI,EAAc,KACdpe,EAAI,QACJqjB,EAAO,OACPC,EAAM,kBACNC,KACG3qB,GACJvB,EACC,MAAOgnB,EAAYmF,IAAiBxqB,EAAAA,EAAAA,UAAS,IACtCyqB,EAAUC,IAAe1qB,EAAAA,EAAAA,WAAS,IAEzCgT,EAAAA,EAAAA,YAAU,KACJqS,GACFrJ,YAAW,KACT0O,GAAY,EAAM,GACjB,EACL,GACC,CAACrF,KACyB1e,EAAAA,EAAAA,QAAOyjB,GACf/pB,QAAU+pB,EAC/B,MAAM3pB,GAAMQ,EAAAA,EAAAA,IACTd,IACCqqB,EAAcrqB,EAAGS,YAAY,GAE/B,CAAE+pB,YAAY,KAEV,WAAExC,EAAU,oBAAEf,GAAwBwD,GAAmB,CAC7D3C,SACAC,YAAakC,KAGT,cACJpC,EAAa,eACbpF,EACAwE,oBAAqByD,EAAyB,uBAC9CvF,EAAsB,WACtBmB,GACEqE,GAAe,CACjBxI,UACA8C,iBACApe,OACAogB,sBACA/B,eAGI0F,EAAaC,GAAQprB,GAErBqrB,GAAgB3gB,EAAAA,EAAAA,UAAQ,IACrBsY,EAAe/hB,KAAI,CAACyjB,EAAKhjB,KAC9B,IAAI/D,EAAS6pB,EAAoB9C,EAAKhjB,EAAO,CAC3C2mB,SACAE,aACAH,kBAyBF,OAtBIzqB,EAAO0lB,MAAqB,YAAbqB,EAAIhhB,OACrB/F,EAAS8B,OAAO+C,OAAO,CAAC,EAAG7E,EAAQ,CACjCyG,OACEvB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAAC,SAAA,CACGpF,EAAOyG,MACP+mB,EAAW,CACV/jB,KAAMsd,EAAItd,KACV8E,OACyB,kBAAhBvO,EAAO0lB,MAAoB1lB,EAAO0lB,KAAKnX,eAOtDsZ,IACF7nB,EAASstB,EAA0BttB,EAAQ+D,EAAO,CAChD+jB,aACA2C,mBAIGzqB,CAAM,KAEd,CACDqlB,EACAyC,EACA2C,EACAG,EACAF,EACA7C,EACAgC,EACAyD,EACAE,KAGMzI,QAAS4I,EAAY,eAAExB,GAC7ByB,GAAeF,GAEXG,EAA4BlrB,IAAeqqB,GAkBjD,OAhBAvX,EAAAA,EAAAA,YAAU,KACRoY,GACEA,EAA0B,CACxB9I,UACA4I,eACAlG,aACApC,kBACA,GACH,CACDwI,EACAF,EACAlG,EACA1C,EACAM,KAIAhgB,EAAAA,EAAAA,KAAA,OACEpB,UAAWC,IAAWD,EAAWE,EAAa,MAAG,CAC/C,CAACA,EAAM,cAA0C,OAA3B4jB,EACtB,CAAC5jB,EAAM,gBAAiB+oB,EACxB,CAAC/oB,EAAM,qBAAsBgoB,IAE/BjpB,IAAKA,EACLiB,MAAO,CACL,kBAAmBwoB,GACnBvnB,UAEA8nB,IACA7nB,EAAAA,EAAAA,KAACyoB,EAAAA,EAAQ,CACP7pB,UAAU,sBACV8pB,SAAU,CAAE9mB,aAAc6R,GAC1BkV,gBAAkBprB,GAEdA,EAAGqrB,cAAc,oBACjBrrB,EAAGqrB,cAAc,sBAEnB7oB,UAEFC,EAAAA,EAAAA,KAAC6oB,EAAAA,MAAS,IACJ7rB,EACJqqB,SACEA,GACI,CACEzlB,aAAc6R,GAItB2O,WAAYA,EACZiD,OAAQA,EACR3F,QAAS4I,EACTZ,OAAQjrB,OAAO+C,OACb,CAAC,EACD,CAAEspB,EAAG9E,KAAK1G,IAAImF,EAAYoB,IAC1B6D,GAEFH,WAAYA,EACZE,QACqB,oBAAZA,EACH,SAAChqB,GAAsB,IAAD,IAAAsrB,EAAA9kB,UAAA5H,OAAT2sB,EAAI,IAAAvkB,MAAAskB,EAAA,EAAAA,EAAA,KAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,EAAA,GAAAhlB,UAAAglB,GACf,OAAOxB,EACLhrB,OAAO+C,OACL,CAAC,EACD,CAAE0pB,SAAUzrB,GACZ,CAAEiiB,QAAS4I,OAEVU,EAEP,EACA,UAKR,EAIVtU,GAAMnU,aAAe,CACnBiiB,gBAAgB,EAChB6C,OAAQ,KACR5R,YAAW,IACX+T,kBAAmB,CAAC,EACpBH,QAAQ,EACRC,aAAc,oBACdC,YAAY,GAGd,Y,gBC9MA,MAOA,GAPwB5mB,IACf,CACL,QAASC,IAAM,+BACf,QAASC,IAAM,iCACfF,M,4BCSJ,MAAMwoB,GAAwB1tB,IAAgC,IAA/B,GAAEwG,EAAE,QAAEyd,EAAO,SAAE3f,GAAUtE,EACtD,OAAIwG,GAEAjC,EAAAA,EAAAA,KAAC6Q,GAAAA,QAAQ,CAAC5O,GAAIA,EAAGlC,SACdzD,IAAA,IAAC,QAAEma,GAASna,EAAA,OACXyD,EAAS,CACP2f,QAASA,EAAQ/X,QAAQ1H,IAClBA,EAAKmE,QAGLK,MAAMC,QAAQH,IAAIkS,EAAS,oBAGqB,IAA9CA,EAAQwJ,cAAcjkB,QAAQiE,EAAKmE,UAE5C,IAKHrE,EAAS,CAAE2f,WAAU,EAGxB0J,IAAiBlmB,EAAAA,EAAAA,YACrBrG,IAmBO,IAnBN,KACCsG,EAAI,QACJqS,EAAO,OACP3C,EAAM,cACNwW,EAAa,WACbC,EAAU,WACVC,EAAU,QACVC,EAAO,SACPC,EAAQ,KACRnG,EAAI,WACJra,EAAU,UACVrK,EAAS,UACT+R,EAAS,QACT+O,EAAO,WACPgK,EAAU,WACVnC,EAAU,kBACVC,EAAiB,QACjBC,KACGzqB,GACJH,EACC,MAAM8sB,EAAoBrsB,IAAe2L,GACnC2gB,GAAaliB,EAAAA,EAAAA,UAAQ,IAClBiiB,EAAkBxmB,IACxB,CAACA,EAAMwmB,IAEJE,EAAa,CACjBzH,WAAYwH,EAAW9sB,KACvByqB,aAAYA,EAAWrf,MACnB,CACE4hB,MAAOF,EAAWE,MAClBC,UAAYD,IACVjqB,EAAAA,EAAAA,MAAAC,EAAAA,SAAA,CAAAC,SAAA,EACEC,EAAAA,EAAAA,KAACsG,GAAAA,iBAAgB,CACfrE,GAAG,aACHf,WAAW,QACXqF,eAAe,YAEjBvG,EAAAA,EAAAA,KAAA,QAAMpB,UAAWE,EAAkB,WAAEiB,SAAE+pB,KACvC9pB,EAAAA,EAAAA,KAACsG,GAAAA,iBAAgB,CACfrE,GAAG,kBACHf,WAAW,QACXqF,eAAe,cAIrB9I,QAAS8G,IACP8kB,EACA,CAAC9B,EAAWyC,WAAYzC,EAAW0C,aACnC,GAEFC,SAAU3C,EAAW2C,SACrBtkB,SAAU2hB,EAAW3hB,SACjB2hB,EAAW3hB,SACX,CAACyO,EAAMpY,KAEHoY,IACA9P,IACE8kB,EACA,CAAC9B,EAAWyC,WAAYzC,EAAW0C,aACnC,IAG0B,YAA3B1C,EAAW4C,YAA4B3U,EAAU3C,GAAQ,CACxD,CAAC0U,EAAWyC,YAAa,CACvB,CAACzC,EAAW0C,aAAc5V,EAC1B,CAACkT,EAAW6C,cAAenuB,KAI/BsrB,EAAW8C,kBACT9C,EAAW8C,iBAAiBhW,EAAMpY,IAEtCwX,EAAAA,EAAAA,KAAc6W,UAAY,CAAC,EAEjCruB,KAAMsrB,EAAWtrB,KACjBsuB,gBAAiBhD,EAAWgD,gBAC5BC,gBAAiBjD,EAAWiD,kBAKpC,OACExqB,EAAAA,EAAAA,KAACqG,GAAAA,aAAY,CAAClF,eAAgBA,GAAgBD,WAAW,QAAOnB,UAC9DC,EAAAA,EAAAA,KAACmpB,GAAqB,CAAClnB,GAAI0O,EAAW+O,QAASA,EAAQ3f,SACpDwF,IAAA,IAAC,QAAEma,GAASna,EAAA,OACXvF,EAAAA,EAAAA,KAAC0U,GAAK,IACAjY,OAAO+C,OAAO,CAAC,EAAGxC,EAAO6sB,GAC7BjrB,UAAWC,IAAWD,EAAW,oBAAqB,CACpD,cAAe2qB,IAEjB7J,QAASA,EACT8H,kBAAmB,IACdA,EACH6B,gBACAC,aACAnmB,QAEFskB,QACqB,oBAAZA,EACH,WAAc,IAAD,IAAAsB,EAAA9kB,UAAA5H,OAAT2sB,EAAI,IAAAvkB,MAAAskB,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAJD,EAAIC,GAAAhlB,UAAAglB,GACN,OAAOxB,EACLhrB,OAAO+C,OACL,CAAC,EACD,CACE2D,OACAmmB,aACAD,gBACA7T,UACA3C,SACA4W,WACAnG,OACAra,aACAse,iBAECyB,GAGT,EACA,MAEN,KAGO,IAKrBI,GAAe7oB,aAAe,CAC5BgnB,WAAY,CAAC,EACbC,kBAAmB,CAAC,EACpBH,QAAQ,EACRpe,WAAa9F,IACJ,CACLrG,KAAMqG,EAAK+lB,SACXY,MAAO3mB,EAAKsnB,cAKlB,MA6CA,IA7CkBrW,EAAAA,EAAAA,aAAW,CAAAzJ,EAA2B9M,KAAS,IAAnC,WAAE0pB,KAAevqB,GAAO2N,EACpD4c,EAAa9qB,OAAO+C,OAClB,CAAC,EACD,CACE+qB,iBAAiB,EACjBC,iBAAiB,EACjBtiB,MAAM,EACN8hB,WAAY,OACZG,YAAa,SACbF,YAAa,cACbG,aAAc,UACdF,SAAU,IAEZ3C,GAEF,MAAMmD,EAAW,GAAAnuB,QACfS,EAAMoH,MAAQ,UACdumB,cAAa,qBACRT,EAAUU,IAAextB,EAAAA,EAAAA,UAC9BvC,GAAAA,EAAaJ,QAAQiwB,IAAgBnD,EAAW2C,UAE5ChmB,EAASlH,EAAMuqB,EAAWyC,YAC1Ba,GAAcnjB,EAAAA,EAAAA,UAAQ,KACnB,CACL,CAAC6f,EAAWyC,YAAavtB,OAAO+C,OAAO,CAAC,EAAG0E,EAAQ,CACjD,CAACqjB,EAAW6C,cAAeF,OAG9B,CAAChmB,EAAQqjB,EAAW6C,aAAc7C,EAAWyC,WAAYE,IAC5D,OACElqB,EAAAA,EAAAA,KAACopB,GAAc,IACTpsB,KACA6tB,EACJtD,WAAY9qB,OAAO+C,OAAO,CAAC,EAAG+nB,EAAY,CACxC2C,WACAG,iBAAkBA,CAAC5sB,EAASxB,KAC1BpB,GAAAA,EAAaQ,QAAQqvB,EAAazuB,GAClC2uB,EAAY3uB,EAAK,IAGrB4B,IAAKA,GACL,G","sources":["common/utils/localStorage.js","webpack://@kne-components/components-core/./src/components/ButtonGroup/style.module.scss?7e95","components/ButtonGroup/index.js","components/ConfirmButton/locale/index.js","webpack://@kne-components/components-core/./src/components/ConfirmButton/style.module.scss?9447","components/ConfirmButton/index.js","components/Enum/index.js","components/Filter/context.js","webpack://@kne-components/components-core/./src/components/Filter/style.module.scss?eebc","components/Filter/locale/index.js","components/Filter/FilterLines.js","components/Filter/FilterValueDisplay.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/DatePickerFilterItem.js","components/Filter/fields/DateRangePickerFilterItem.js","components/Filter/fields/TypeDateRangePickerFilterItem.js","components/Filter/fields/index.js","components/Filter/getFilterValue.js","components/Filter/FilterItemContainer.js","components/Filter/index.js","components/FormInfo/locale/index.js","components/HelperGuide/locale/index.js","webpack://@kne-components/components-core/./src/components/HelperGuide/style.module.scss?bc31","components/HelperGuide/index.js","components/Layout/context.js","webpack://@kne-components/components-core/./src/components/Layout/style.module.scss?8c20","components/Layout/Page/FixedContainer.js","components/Layout/Page/Menu.js","components/Layout/Page/Page.js","components/Layout/Affix.js","components/Layout/Page/ContainerHeight.js","components/Layout/Page/Header.js","components/Layout/Page/HeaderInfo.js","components/Layout/Page/PageTitle.js","components/Layout/Page/Option.js","components/Layout/Layout.js","components/Layout/PermissionsPage.js","components/Layout/TablePage.js","components/Layout/StateBarPage.js","webpack://@kne-components/components-core/./src/components/Menu/style.module.scss?ca16","components/Menu/index.js","components/Navigation/favicon.svg","components/Navigation/locale/index.js","webpack://@kne-components/components-core/./src/components/Navigation/style.module.scss?d5bc","components/Navigation/index.js","webpack://@kne-components/components-core/./src/components/Permissions/style.module.scss?e327","components/Permissions/index.js","webpack://@kne-components/components-core/./src/components/StateBar/style.module.scss?ecea","components/StateBar/index.js","webpack://@kne-components/components-core/./src/components/StateTag/style.module.scss?5aff","components/StateTag/index.js","webpack://@kne-components/components-core/./src/components/Table/style.module.scss?5d23","webpack://@kne-components/components-core/./src/components/Table/columns.module.scss?6c8d","components/Table/OptionsList.js","components/Table/Ellipsis.js","components/Table/ColItem.js","components/Table/HideInfoComponent.js","components/Table/columnTypes.js","components/Table/ColumnsControlContent.js","components/Table/useTableConfig.js","components/Table/useColumnTypeProps.js","components/Table/useGroupHeader.js","components/Table/useSort.js","components/Table/Table.js","components/Table/locale/index.js","components/Table/TablePage.js"],"sourcesContent":["const localStorage = {\n getItem: (key) => {\n const target = window.localStorage.getItem(key);\n try {\n const { dataType, value } = JSON.parse(target);\n if (dataType === \"object\" && value === \"null\") {\n return null;\n }\n if (dataType === \"undefined\") {\n return void 0;\n }\n if (dataType === \"number\") {\n return Number(value);\n }\n if (dataType === \"boolean\") {\n return Boolean(value);\n }\n return value;\n } catch (e) {\n return null;\n }\n },\n setItem: (key, value) => {\n const dataType = typeof value;\n window.localStorage.setItem(key, JSON.stringify({ dataType, value }));\n },\n};\n\nexport default localStorage;\n","// extracted by mini-css-extract-plugin\nexport default {\"width-container\":\"style_width-container__JfEbg__+6jdI\",\"hidden-container\":\"style_hidden-container__EdySA__+6jdI\",\"hidden-inner\":\"style_hidden-inner__vAN59__+6jdI\",\"menu-list\":\"style_menu-list__VDttR__+6jdI\",\"btn-item\":\"style_btn-item__mp5MQ__+6jdI\"};","import { startTransition, useState } from \"react\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport { Button, Dropdown, Space } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport LoadingButton from \"@components/LoadingButton\";\nimport ConfirmButton from \"@components/ConfirmButton\";\nimport useResize from \"@common/hooks/useResize\";\nimport pick from \"lodash/pick\";\nimport style from \"./style.module.scss\";\nimport memoize from \"lodash/memoize\";\n\nconst areaWidthComputed = memoize(\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n const spaceWidth = (() => {\n if (compact) {\n return 0;\n }\n\n if ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) > -1) {\n return ([\"small\", \"middle\", \"large\"].indexOf(spaceProps.size) + 1) * 8;\n }\n\n if (Number.isInteger(spaceProps.size)) {\n return spaceProps.size;\n }\n return 8;\n })();\n\n let targetLength = 0,\n targetWidth = 0;\n\n // 采取先加后减策略\n while (\n amountWidth >=\n targetWidth +\n buttonWidthList[targetLength] +\n targetLength * spaceWidth &&\n targetLength < buttonWidthList.length\n ) {\n targetWidth += buttonWidthList[targetLength];\n targetLength += 1;\n }\n\n while (\n amountWidth <\n targetWidth +\n (targetLength - 1) * spaceWidth +\n (targetLength < buttonWidthList.length\n ? moreBtnWidth + spaceWidth\n : 0) &&\n targetLength > 0\n ) {\n targetWidth -= buttonWidthList[targetLength - 1];\n targetLength -= 1;\n }\n\n return targetLength;\n },\n ({ amountWidth, moreBtnWidth, buttonWidthList, spaceProps, compact }) => {\n return `${amountWidth}${moreBtnWidth}${buttonWidthList.join(\n \",\"\n )}${Object.values(spaceProps).join(\",\")}${compact && compact.toString()}`;\n }\n);\n\nconst ButtonGroup = ({ list, more, compact, ...props }) => {\n const spaceProps = pick(props, [\"size\", \"split\", \"align\", \"style\"]);\n const [showLength, setShowLength] = useState(list.length && 1);\n const computedLength = useRefCallback(() => {\n const el = targetRef.current,\n moreEl = moreRef.current,\n widthEl = ref.current;\n if (!el) {\n return;\n }\n\n const buttonEls = el.querySelectorAll(\".button-group-item\");\n if (!buttonEls) {\n return;\n }\n if (buttonEls.length === 0) {\n return;\n }\n\n const amountWidth = widthEl.clientWidth,\n moreBtnWidth = moreEl.clientWidth,\n buttonWidthList = [].map.call(buttonEls, (el) => el.offsetWidth);\n const targetLength = areaWidthComputed({\n amountWidth,\n moreBtnWidth,\n buttonWidthList,\n spaceProps,\n compact,\n });\n startTransition(() => {\n setShowLength(targetLength);\n });\n });\n const ref = useResize(computedLength);\n const targetRef = useResize(computedLength);\n const moreRef = useResize(computedLength);\n const otherList = list.slice(showLength);\n\n const renderButton = (renderItem, index, isDropdown) => {\n if (typeof renderItem === \"function\") {\n return renderItem({\n key: index,\n className: classnames(\"button-group-item\", style[\"btn-item\"]),\n isDropdown,\n });\n }\n const { className, confirm, ...props } = renderItem;\n const isConfirm = confirm || props.message;\n const CurrentButton = isConfirm ? ConfirmButton : LoadingButton;\n\n return (\n <CurrentButton\n danger={isConfirm && props.isDelete !== false}\n {...Object.assign(\n {},\n props,\n isConfirm && (props.isModal || isDropdown)\n ? {\n isModal: true,\n }\n : {}\n )}\n key={index}\n className={classnames(\n \"button-group-item\",\n style[\"btn-item\"],\n className\n )}\n />\n );\n };\n\n const SpaceComponent = compact ? Space.Compact : Space;\n\n return (\n <>\n <div className={style[\"width-container\"]} ref={ref} />\n <div className={style[\"hidden-container\"]}>\n <div className={style[\"hidden-inner\"]} ref={moreRef}>\n {more}\n </div>\n <div className={style[\"hidden-inner\"]} ref={targetRef}>\n <SpaceComponent {...spaceProps}>\n {list.map(renderButton)}\n </SpaceComponent>\n </div>\n </div>\n <SpaceComponent {...spaceProps}>\n {list\n .slice(0, showLength)\n .map((item, index) => renderButton(item, index, false))}\n {otherList.length > 0 && (\n <Dropdown\n overlayClassName={style[\"menu-list\"]}\n menu={{\n items: otherList.map((item, index) => {\n return {\n key: index,\n label: renderButton(item, index, true),\n };\n }),\n }}\n >\n {more}\n </Dropdown>\n )}\n </SpaceComponent>\n </>\n );\n};\n\nButtonGroup.defaultProps = {\n more: (\n <Button>\n 更多\n <Icon type=\"icon-arrow-thin-down\" />\n </Button>\n ),\n};\n\nexport default ButtonGroup;\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 {\"overlay\":\"style_overlay__99t5t__+6jdI\",\"is-danger\":\"style_is-danger__gxyAB__+6jdI\",\"title\":\"style_title__EEPu2__+6jdI\",\"content\":\"style_content__mZZg5__+6jdI\",\"has-title\":\"style_has-title__5+PEt__+6jdI\"};","import React from \"react\";\nimport { Button, Popconfirm, Space, Typography } from \"antd\";\nimport importMessages from \"./locale\";\nimport Icon from \"@components/Icon\";\nimport { createWithIntl, useIntl } from \"@components/Intl\";\nimport { useConfirmModal } from \"@components/Modal\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nexport const withConfirm = (WrappedComponent) => {\n const ConfirmComponent = createWithIntl({\n moduleName: \"ConfirmButton\",\n importMessages,\n })(\n ({\n title,\n message,\n isDelete = true,\n onClick,\n onCancel,\n disabled,\n showCancel,\n cancelText,\n isModal,\n okText,\n placement,\n getContainer,\n ...props\n }) => {\n const { formatMessage } = useIntl({ moduleName: \"ConfirmButton\" });\n const modal = useConfirmModal();\n if (isModal) {\n return (\n <WrappedComponent\n {...props}\n onClick={(e) => {\n modal({\n type: \"confirm\",\n title: title,\n getContainer,\n danger: isDelete,\n message: message || formatMessage({ id: \"message\" }),\n okText: okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" }),\n cancelText: cancelText || formatMessage({ id: \"cancel\" }),\n onCancel,\n onOk: onClick,\n });\n }}\n />\n );\n }\n return (\n <Popconfirm\n title={\n <Space\n direction=\"vertical\"\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n {title && (\n <Space size={0} align=\"start\" className={style[\"title\"]}>\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n {title}\n </Space>\n )}\n <Space\n size={0}\n align=\"start\"\n className={classnames(style[\"content\"], {\n [style[\"has-title\"]]: title,\n })}\n >\n {!title && (\n <Icon className=\"title-icon\" type=\"icon-tishi-tianchong\" />\n )}\n {message || formatMessage({ id: \"message\" })}\n </Space>\n </Space>\n }\n placement={placement}\n onConfirm={onClick}\n okButtonProps={{\n danger: isDelete,\n }}\n onCancel={onCancel}\n overlayClassName={classnames(style[\"overlay\"], {\n [style[\"is-danger\"]]: isDelete,\n })}\n getPopupContainer={getContainer}\n disabled={disabled}\n showCancel={showCancel}\n cancelText={cancelText}\n okText={\n okText\n ? okText\n : isDelete\n ? formatMessage({ id: \"delete\" })\n : formatMessage({ id: \"confirm\" })\n }\n >\n <WrappedComponent {...props} disabled={disabled} />\n </Popconfirm>\n );\n }\n );\n\n ConfirmComponent.defaultProps = {\n isModal: false,\n showCancel: true,\n };\n\n return ConfirmComponent;\n};\n\nexport const ConfirmLink = withConfirm(Typography.Link);\nexport const ConfirmText = withConfirm(Typography.Text);\n\nexport default withConfirm(Button);\n","import { useRef } from \"react\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport { useGlobalContext, usePreset } from \"@components/Global\";\nimport memoize from \"lodash/memoize\";\nimport isNil from \"lodash/isNil\";\n\nconst baseLoaders = [\n [\n \"gender\",\n () => [\n { value: \"M\", description: \"男\" },\n {\n value: \"F\",\n description: \"女\",\n },\n ],\n ],\n [\n \"marital\",\n () => [\n { description: \"已婚\", value: \"Y\" },\n {\n description: \"未婚\",\n value: \"N\",\n },\n ],\n ],\n [\n \"confirm\",\n () => [\n { description: \"是\", value: \"Y\" },\n {\n description: \"否\",\n value: \"N\",\n },\n ],\n ],\n [\n \"political\",\n () => [\n { description: \"中共党员\", value: \"中共党员\" },\n {\n description: \"共青团员\",\n value: \"共青团员\",\n },\n { description: \"群众\", value: \"群众\" },\n {\n description: \"其他党派\",\n value: \"其他党派\",\n },\n ],\n ],\n [\n \"phoneStateEnum\",\n () => [\n {\n value: 0,\n description: \"空号\",\n },\n {\n value: 1,\n description: \"实号\",\n },\n {\n value: 2,\n description: \"停机\",\n },\n {\n value: 3,\n description: \"库无\",\n },\n {\n value: 4,\n description: \"沉默号\",\n },\n {\n value: 5,\n description: \"风险号\",\n },\n ],\n ],\n [\n \"degreeEnum\",\n () => [\n {\n description: \"初中\",\n value: 10,\n },\n {\n description: \"中专\",\n value: 20,\n },\n {\n description: \"高中\",\n value: 30,\n },\n {\n description: \"大专\",\n value: 40,\n },\n {\n description: \"本科\",\n value: 50,\n },\n {\n description: \"硕士研究生\",\n value: 60,\n },\n {\n description: \"博士研究生\",\n value: 70,\n },\n {\n description: \"博士后\",\n value: 75,\n },\n {\n description: \"学历不限\",\n value: 999,\n },\n ],\n ],\n];\n\nconst EnumLoaderFetch = withFetch(({ data, children }) => {\n return typeof children === \"function\"\n ? children(data)\n : children || data?.description;\n});\n\nconst getEnumsMap = memoize((enums) => {\n return new Map(\n baseLoaders.concat(\n Object.keys(Object.assign({}, enums)).map((key) => [key, enums[key]])\n )\n );\n});\n\nconst EnumLoader = ({ loader: enumsLoader, ...props }) => {\n const {\n global: { enumsRef },\n } = useGlobalContext();\n const prevLocaleRef = useRef(null);\n return (\n <EnumLoaderFetch\n {...props}\n loader={async (...args) => {\n const enums = getEnumsMap(await enumsLoader(...args));\n const { params } = args[0];\n const { moduleName, name, force, locale } = params;\n\n const getEnumMap = async (moduleName) => {\n return (\n (() => {\n return (\n force !== true &&\n prevLocaleRef.current === locale &&\n enumsRef.current.get(moduleName)\n );\n })() ||\n (await (async () => {\n const loader = enums.get(moduleName);\n const output = await (async () => {\n if (typeof loader === \"function\") {\n return new Map(\n (await loader({ locale })).map((item) => {\n return [item.value.toString(), item];\n })\n );\n }\n if (Array.isArray(loader)) {\n return new Map(\n loader.map((item) => [item.value.toString(), item])\n );\n }\n if (typeof loader === \"object\") {\n return new Map(\n Object.keys(loader).map((key) => [\n key.toString(),\n loader[key],\n ])\n );\n }\n console.warn(\"枚举值loader的设置可能不正确\");\n return new Map();\n })();\n enumsRef.current.set(moduleName, output);\n prevLocaleRef.current = locale;\n return output;\n })())\n );\n };\n if (Array.isArray(moduleName)) {\n return await Promise.all(\n moduleName.map((target) =>\n getEnumMap(target).then((enumMap) => Array.from(enumMap.values()))\n )\n );\n }\n\n const enumMap = await getEnumMap(moduleName);\n if (!isNil(name)) {\n return enumMap.get(name.toString());\n }\n return Array.from(enumMap.values());\n }}\n />\n );\n};\n\nconst Enum = ({ moduleName, name, force, children, ...props }) => {\n const preset = usePreset();\n return (\n <EnumLoader\n {...props}\n params={{\n moduleName,\n locale: preset?.locale,\n enums: preset?.enums,\n name,\n force,\n }}\n loader={({ params }) => params.enums}\n >\n {children}\n </EnumLoader>\n );\n};\n\nEnum.defaultProps = {\n force: false,\n};\n\nexport default Enum;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const context = createContext({});\n\nexport const { Provider } = context;\n\nexport const useContext = () => useReactContext(context);\n","// extracted by mini-css-extract-plugin\nexport default {\"filter\":\"style_filter__Xml45__+6jdI\",\"filter-item-icon\":\"style_filter-item-icon__kVCRK__+6jdI\",\"filter-item-option-icon\":\"style_filter-item-option-icon__q1fz3__+6jdI\",\"filter-title\":\"style_filter-title__PlIpS__+6jdI\",\"filter-title-hidden\":\"style_filter-title-hidden__NJ1ZB__+6jdI\",\"ad-filter-title\":\"style_ad-filter-title__5-OzD__+6jdI\",\"ad-filter-line\":\"style_ad-filter-line__ga6UH__+6jdI\",\"filter-line\":\"style_filter-line__E+cRh__+6jdI\",\"clean-btn\":\"style_clean-btn__oSEvm__+6jdI\",\"filter-item\":\"style_filter-item__Q2ncE__+6jdI\",\"un-expand\":\"style_un-expand__4PFY8__+6jdI\",\"ad-filter-selected\":\"style_ad-filter-selected__KbLfG__+6jdI\",\"filter-label\":\"style_filter-label__qu26i__+6jdI\",\"filter-item-wrap\":\"style_filter-item-wrap__rOq7H__+6jdI\",\"option\":\"style_option__rd5Qo__+6jdI\",\"is-active\":\"style_is-active__OArQI__+6jdI\",\"is-visited\":\"style_is-visited__gZ5ni__+6jdI\",\"un-expand-shadow\":\"style_un-expand-shadow__fj92e__+6jdI\",\"filter-item-label\":\"style_filter-item-label__C781J__+6jdI\",\"filter-item-field\":\"style_filter-item-field__Ltfr8__+6jdI\",\"filter-drop-tag\":\"style_filter-drop-tag__DD-2P__+6jdI\",\"filter-list-tag\":\"style_filter-list-tag__Qt5hA__+6jdI\",\"filter-tag\":\"style_filter-tag__dUGfu__+6jdI\",\"filter-tag-value\":\"style_filter-tag-value__p-SFv__+6jdI\",\"pop-util-content\":\"style_pop-util-content__bx5zP__+6jdI\",\"pop-util-overlay\":\"style_pop-util-overlay__LEASt__+6jdI\",\"pop-util-footer\":\"style_pop-util-footer__Xat1s__+6jdI\",\"pop-util-text\":\"style_pop-util-text__pzeUy__+6jdI\",\"filter-item-inner\":\"style_filter-item-inner__LVXgh__+6jdI\",\"filter-item-text\":\"style_filter-item-text__MA8tU__+6jdI\",\"filter-item-custom\":\"style_filter-item-custom__UusRa__+6jdI\",\"filter-item-custom-active\":\"style_filter-item-custom-active__uFtny__+6jdI\",\"filter-item-number-range-split\":\"style_filter-item-number-range-split__fVt8E__+6jdI\",\"filter-item-number-input\":\"style_filter-item-number-input__YPO6K__+6jdI\",\"range-picker\":\"style_range-picker__c6ngq__+6jdI\",\"cascader-select-wrap\":\"style_cascader-select-wrap__z5hu7__+6jdI\",\"cascader-dropdown-menu\":\"style_cascader-dropdown-menu__nhAH5__+6jdI\"};","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 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 const ComponentItem = item.type;\n return (\n <ComponentItem\n {...item.props}\n key={item.key || item.props.name || index}\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 );\n })}\n {children}\n </div>\n );\n};\n\nconst FilterLines = ({ list, displayLine, label, extra, children }) => {\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\"])}\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=\"middle\">\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 FilterLines from \"./FilterLines\";\nimport FilterValueDisplay from \"./FilterValueDisplay\";\nimport clone from \"lodash/clone\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport { useMemo } from \"react\";\nimport { isNotEmpty } from \"@components/Common\";\nimport importMessages from \"@components/FormInfo/locale\";\nimport { IntlProvider } from \"@components/Intl\";\n\nconst Filter = (props) => {\n const { extraExpand, className, ...others } = props;\n const [valueBase, onChange] = useControlValue(props);\n\n const value = useMemo(() => {\n return valueBase.filter((item) => isNotEmpty(item.value));\n }, [valueBase]);\n\n const filterValue = useMemo(() => {\n return new Map(value.map((item) => [item.name, item]));\n }, [value]);\n\n return (\n <IntlProvider moduleName=\"Filter\" importMessages={importMessages}>\n <Provider\n value={{\n value: filterValue,\n onChange: (item) => {\n const newFilterValue = clone(filterValue);\n item.value\n ? newFilterValue.set(item.name, item)\n : newFilterValue.delete(item.name);\n onChange?.(Array.from(newFilterValue.values()));\n },\n }}\n >\n <div className={classnames(style[\"filter\"], className)}>\n <FilterLines {...others} />\n {value && value.length > 0 && (\n <FilterValueDisplay\n value={value}\n onChange={onChange}\n extraExpand={extraExpand}\n />\n )}\n </div>\n </Provider>\n </IntlProvider>\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, 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={value}\n onChange={onChange}\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__+6jdI\",\"is-popup\":\"style_is-popup__pCRv2__+6jdI\"};","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 { 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 } from \"antd\";\nimport withFieldItem from \"../withFieldItem\";\nimport dayjs from \"dayjs\";\n\nconst DateRangePickerFilterItem = withFieldItem(\n ({ value, onChange, ...props }) => {\n return (\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 );\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 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\";\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 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);\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","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\";\n\nFilter.fields = fields;\nFilter.getFilterValue = getFilterValue;\nexport default Filter;\nexport { fields, getFilterValue };\n\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 InputFilterItem,\n CityFilterItem,\n AdvancedSelectFilterItem,\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","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__+6jdI\",\"inner\":\"style_inner__bMKeU__+6jdI\",\"content\":\"style_content__xTfWZ__+6jdI\",\"link\":\"style_link__93j7O__+6jdI\"};","import importMessages from \"./locale\";\nimport { IntlProvider } from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport { Space, Typography } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport Enum from \"@components/Enum\";\n\nconst HelperGuide = ({ name, className }) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"HelperGuide\">\n <Enum moduleName=\"helperGuide\" name={name}>\n {(data) => {\n return (\n data &&\n data.value && (\n <div className={classnames(style[\"helper-guide\"], className)}>\n <Space className={style[\"inner\"]}>\n <Icon colorful type=\"icon-color-bangzhuyindao\" />\n <span className={style[\"content\"]}>{data.content}</span>\n {data.url && (\n <Typography.Link\n className={style[\"link\"]}\n href={data.url}\n target=\"_blank\"\n >\n 查看帮助\n <Icon type=\"icon-shuangjiantou-right\" />\n </Typography.Link>\n )}\n </Space>\n </div>\n )\n );\n }}\n </Enum>\n </IntlProvider>\n );\n};\n\nexport default HelperGuide;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nexport const defaultProps = {\n menu: null,\n filter: null,\n menuOpen: true,\n menuWidth: \"240px\",\n 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__+6jdI\",\"page-content\":\"style_page-content__4XeN8__+6jdI\",\"page-main\":\"style_page-main__P0yEF__+6jdI\",\"page-main-content\":\"style_page-main-content__1OVPN__+6jdI\",\"table-page\":\"style_table-page__JkbLf__+6jdI\",\"helper-guide\":\"style_helper-guide__vzw4z__+6jdI\",\"page-outer\":\"style_page-outer__2a6iH__+6jdI\",\"no-margin\":\"style_no-margin__S6caT__+6jdI\",\"page-menu\":\"style_page-menu__CZSa9__+6jdI\",\"closed\":\"style_closed__hmnft__+6jdI\",\"page-menu-inner\":\"style_page-menu-inner__rmKpu__+6jdI\",\"page-menu-main\":\"style_page-menu-main__OXg2M__+6jdI\",\"page-option-main\":\"style_page-option-main__LyfT3__+6jdI\",\"page-menu-main-outer\":\"style_page-menu-main-outer__yY+-Q__+6jdI\",\"page-option\":\"style_page-option__diS2S__+6jdI\",\"page-option-inner\":\"style_page-option-inner__Fj1JH__+6jdI\",\"page-option-footer\":\"style_page-option-footer__d7xE0__+6jdI\",\"fixed-container\":\"style_fixed-container__1VZwY__+6jdI\",\"is-fixed\":\"style_is-fixed__1aQhp__+6jdI\",\"page-menu-btn-outer\":\"style_page-menu-btn-outer__iVJiW__+6jdI\",\"page-menu-btn\":\"style_page-menu-btn__BiTy8__+6jdI\",\"page-title\":\"style_page-title__zw-Fd__+6jdI\",\"page-title-text\":\"style_page-title-text__Rj4RC__+6jdI\",\"no-padding\":\"style_no-padding__V7Dwy__+6jdI\",\"page-header\":\"style_page-header__a813p__+6jdI\",\"page-header-info\":\"style_page-header-info__cMrZR__+6jdI\",\"layout-menu\":\"style_layout-menu__yiab0__+6jdI\",\"sub-menu\":\"style_sub-menu__dyqK7__+6jdI\",\"no-collapsed\":\"style_no-collapsed__76h8W__+6jdI\",\"has-not-children\":\"style_has-not-children__fnjRK__+6jdI\",\"table-page-top\":\"style_table-page-top__bt1l9__+6jdI\",\"error-component\":\"style_error-component__HvghB__+6jdI\",\"state-bar-page\":\"style_state-bar-page__+aUM4__+6jdI\",\"back-icon\":\"style_back-icon__79v2G__+6jdI\"};","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, 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\"], {\n [style[\"closed\"]]: !menuOpen,\n })}\n style={{ \"--width\": menuWidth }}\n >\n <FixedContainer className={style[\"page-menu-inner\"]} isFixed={menuFixed}>\n <div className={style[\"page-menu-main-outer\"]}>\n <SimpleBar className={style[\"page-menu-main\"]}>{menu}</SimpleBar>\n </div>\n </FixedContainer>\n {menuCloseButton ? (\n <FixedContainer\n className={classnames(style[\"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\";\n\nconst { Content } = AntdLayout;\n\nconst ErrorComponent = () => {\n return (\n <Alert\n message=\"系统出了点小问题,可刷新页面进行解决\"\n showIcon\n type=\"error\"\n action={\n <Button size=\"small\" danger onClick={() => window.location.reload()}>\n 刷新\n </Button>\n }\n />\n );\n};\n\nconst ErrorBoundary = (props) => {\n return <ReactErrorBoundary {...props} errorComponent={ErrorComponent} />;\n};\n\nconst Layout = ({ children, theme, navigation }) => {\n const [scrollLeft, setScrollLeft] = useState(0);\n const [pageProps, _setPageProps] = useState(Object.assign({}, defaultProps));\n const 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={style[\"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 {...navigation}\n onChange={(path) => {\n navigation?.onChange && navigation.onChange(path);\n }}\n />\n </ErrorBoundary>\n )}\n <ErrorBoundary>\n <Content className={style[\"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(${pageProps.headerHeight}px + var(--nav-height-base))`,\n \"--nav-only-height\": `var(--nav-height-base)`,\n }}\n >\n <ErrorBoundary>\n <Menu />\n </ErrorBoundary>\n <Col\n className={classnames(style[\"page-content\"], {\n [style[\"no-margin\"]]: pageProps.noMargin,\n })}\n flex={1}\n style={{ \"--background-color\": pageProps.backgroundColor }}\n >\n <div className={style[\"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\"], {\n [style[\"no-padding\"]]: pageProps.noPadding,\n })}\n >\n <ErrorBoundary>\n {pageProps.helperGuideName && (\n <HelperGuide\n className={style[\"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","import { TablePage as Table } from \"@components/Table\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport { forwardRef, useState } from \"react\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\nimport classnames from \"classnames\";\n\nconst TablePage = forwardRef(\n (\n {\n helperGuideName,\n permissions,\n page,\n openFeatures,\n name,\n topArea,\n ...props\n },\n ref\n ) => {\n const [tableData, setTableData] = useState(null);\n return (\n <PermissionsPage\n name={name}\n openFeatures={openFeatures}\n permissions={permissions}\n {...page}\n >\n {topArea ? (\n <div className={style[\"table-page-top\"]}>\n {typeof topArea === \"function\" ? topArea(tableData) : topArea}\n </div>\n ) : null}\n <div className={style[\"table-page\"]}>\n {helperGuideName && (\n <HelperGuide\n className={classnames(\"helper-guide\", style[\"helper-guide\"])}\n name={helperGuideName}\n />\n )}\n <Table\n {...props}\n ref={ref}\n name={name}\n onRequestSuccess={(data) => {\n setTableData(data);\n }}\n />\n </div>\n </PermissionsPage>\n );\n }\n);\n\nexport default TablePage;\n","import StateBar from \"@components/StateBar\";\nimport PermissionsPage from \"./PermissionsPage\";\nimport style from \"./style.module.scss\";\nimport HelperGuide from \"@components/HelperGuide\";\n\nconst StateBarPage = ({\n helperGuideName,\n permissions,\n page,\n stateBar,\n children,\n ...props\n}) => {\n return (\n <PermissionsPage {...page} permissions={permissions} {...props}>\n <div className={style[\"state-bar-page\"]}>\n <StateBar {...stateBar} />\n </div>\n {helperGuideName && (\n <HelperGuide className={style[\"helper-guide\"]} name={helperGuideName} />\n )}\n {children}\n </PermissionsPage>\n );\n};\n\nexport default StateBarPage;\n","// extracted by mini-css-extract-plugin\nexport default {\"menu\":\"style_menu__gvIvn__+6jdI\",\"all-no-start-icon\":\"style_all-no-start-icon__CA+zR__+6jdI\",\"no-start-icon\":\"style_no-start-icon__LnC1S__+6jdI\",\"has-children\":\"style_has-children__m9tce__+6jdI\",\"has-children-node\":\"style_has-children-node__2bhEB__+6jdI\",\"is-root\":\"style_is-root__4hhOc__+6jdI\",\"title\":\"style_title__+Hcar__+6jdI\",\"active\":\"style_active__WU49K__+6jdI\",\"no-collapse\":\"style_no-collapse__aIZBM__+6jdI\",\"title-content\":\"style_title-content__cQXpK__+6jdI\",\"loading\":\"style_loading__1pU4P__+6jdI\"};","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, ...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 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]);\n\n const [openKeys, setOpenKeys] = useControlValue(\n Object.assign({}, props, {\n defaultOpenKeys: props.defaultOpenKeys || defaultOpenKeys,\n }),\n {\n value: \"openKeys\",\n defaultValue: \"defaultOpenKeys\",\n onChange: \"onOpenChange\",\n }\n );\n\n const renderChildren = useCallback(\n (children, options) => {\n const { parentKey, depth, selectedKey, openKeys, paths } = Object.assign(\n {\n parentKey: null,\n depth: 0,\n paths: [],\n },\n options\n );\n if (Array.isArray(children) && children.length > 0) {\n return children.map(\n ({ children, key: currentKey, originItem, ...item }) => {\n return (\n <MenuItem\n {...Object.assign({}, item)}\n id={currentKey}\n parentId={parentKey}\n depth={depth}\n allowCollapsed={allowCollapsed}\n isSelected={\n currentKey === selectedKey ||\n (childrenKeys[currentKey] &&\n childrenKeys[currentKey].indexOf(selectedKey) > -1)\n }\n onClick={setSelectKeyChange}\n onLoad={(data) => {\n setItems((items) => {\n const core = (children) => {\n if (Array.isArray(children) && children.length > 0) {\n return children.map((item) => {\n return Object.assign({}, item, {\n children:\n originItem === item ? data : core(item.children),\n });\n });\n }\n return null;\n };\n\n return core(items);\n });\n }}\n isOpen={(openKeys || []).indexOf(currentKey) > -1}\n key={currentKey}\n onOpenChange={() => {\n setOpenKeys((openKeys) => {\n const newOpenKeys = openKeys.slice(0);\n if (openKeys.indexOf(currentKey) > -1) {\n newOpenKeys.splice(openKeys.indexOf(currentKey), 1);\n } else {\n newOpenKeys.push(currentKey);\n }\n return newOpenKeys;\n });\n }}\n >\n {renderChildren(children, {\n parentKey,\n depth: depth + 1,\n selectedKey,\n openKeys,\n paths: [...paths, currentKey],\n })}\n </MenuItem>\n );\n }\n );\n }\n return null;\n },\n [setItems, setOpenKeys, setSelectKeyChange, childrenKeys, allowCollapsed]\n );\n\n return (\n <div\n className={classnames(className, style[\"menu\"], {\n [style[\"all-no-start-icon\"]]: !hasStartIcon,\n [style[\"has-children-node\"]]: hasChildren,\n })}\n >\n {renderChildren(targetItems, { selectedKey, openKeys })}\n </div>\n );\n};\n\nMenu.defaultProps = {\n defaultItems: [],\n allowCollapsed: true,\n};\n\nexport default Menu;\n","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\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__+6jdI\",\"navigation\":\"style_navigation__60RrS__+6jdI\",\"is-fixed\":\"style_is-fixed__kHFWj__+6jdI\",\"navigation-logo\":\"style_navigation-logo__q9qHu__+6jdI\",\"logo\":\"style_logo__lB9RC__+6jdI\",\"navigation-list\":\"style_navigation-list__EYtkg__+6jdI\",\"navigation-options\":\"style_navigation-options__0BdJU__+6jdI\",\"menu-overlay\":\"style_menu-overlay__zU-vZ__+6jdI\",\"more-icon\":\"style_more-icon__gNMnt__+6jdI\"};","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 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 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}) => {\n const mapping = useMemo(() => {\n return new Map(list.map(({ key, ...others }) => [key, others]));\n }, [list]);\n const navigate = useNavigate();\n const location = useLocation();\n const navigationRef = useRef();\n const resizeObserverRef = useRef(null);\n const [nameLabel, setNameLabel] = useState(\"更多\");\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 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 (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]);\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 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 <Menu\n selectedKeys={[name]}\n mode=\"horizontal\"\n overflowedIndicator={\n overflowedIndicator || (\n <Space size={4}>\n <span>\n {nameLabel || (\n <FormattedMessage\n id=\"overflowedIndicator\"\n moduleName=\"Navigation\"\n />\n )}\n </span>\n <span className={style[\"more-icon\"]}>\n <Icon type=\"icon-arrow-thin-down\" />\n </span>\n </Space>\n )\n }\n items={[\n indexNav,\n ...Array.from(mapping.entries())\n .filter(([name, { permission }]) => {\n if (typeof permission === \"string\") {\n return permissions.indexOf(permission) > -1;\n }\n if (typeof permission === \"function\") {\n return permission(permissions);\n }\n if (Array.isArray(permission)) {\n for (let item of permission) {\n if (permissions.indexOf(item) > -1) {\n return true;\n }\n }\n return false;\n }\n return true;\n })\n .map(([name, { title, path, permission }]) => {\n const _path =\n typeof path === \"function\"\n ? path(permission, permissions)\n : path;\n return {\n label: title,\n key: name,\n onClick: () => {\n onChange && onChange(_path);\n setTimeout(() => {\n navigate(_path);\n }, 0);\n },\n };\n }),\n ]}\n />\n </Col>\n <Col className={style[\"navigation-options\"]}>{rightOptions}</Col>\n </Row>\n </Header>\n </div>\n </IntlProvider>\n );\n};\n\nNavigation.defaultProps = {\n isFixed: true,\n permissions: [],\n list: [],\n showIndex: true,\n base: \"\",\n};\n\nexport default Navigation;\n","// extracted by mini-css-extract-plugin\nexport default {\"outer\":\"style_outer__vbHB9__+6jdI\"};","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 as useContext } from \"@kne/global-context\";\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 preset = useContext();\n return {\n permissions: get(preset, \"global.accountInfo.permissions\", []),\n };\n};\n\nexport const usePermissionsPass = ({ request }) => {\n const { permissions } = usePermissions();\n return computedIsPass({ permissions, request });\n};\n\nconst Permissions = ({\n type,\n className,\n tagName,\n message,\n request,\n children,\n ...props\n}) => {\n const isPass = usePermissionsPass({ request });\n if (typeof children === \"function\") {\n return children({ isPass, type, request });\n }\n\n if (isPass === true) {\n return children;\n }\n\n if (type === \"error\") {\n return <Result status=\"403\" subTitle={message} />;\n }\n\n if (type === \"tooltip\") {\n return (\n <Tooltip title={message}>\n {createElement(\n tagName,\n { ...props, className: classnames(style[\"outer\"], className) },\n children\n )}\n </Tooltip>\n );\n }\n\n return null;\n};\n\nPermissions.defaultProps = {\n type: \"hidden\",\n tagName: \"span\",\n message: \"您暂无权限,请联系管理员\",\n};\n\nexport default Permissions;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-bar\":\"style_state-bar__3jfis__+6jdI\",\"has-children\":\"style_has-children__oQDqU__+6jdI\",\"tab-tab-control\":\"style_tab-tab-control__SopeO__+6jdI\",\"tab-radio-control\":\"style_tab-radio-control__R8X6-__+6jdI\",\"tab-step-control\":\"style_tab-step-control__EQaCl__+6jdI\",\"inner-state-bar\":\"style_inner-state-bar__lWmOz__+6jdI\"};","import { Tabs } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\n/**\n *\n * @param className\n * @param type 'tab' | 'radio' | 'step'\n * @param stateOption\n * @param isInner\n * @param props\n * @returns {JSX.Element}\n * @constructor\n */\nconst StateBar = ({\n className,\n type = \"tab\",\n stateOption = [],\n isInner,\n ...props\n}) => {\n return (\n <Tabs\n {...props}\n data-testid={\"components-core-state-bar\"}\n className={classnames(\n style[\"state-bar\"],\n style[`tab-${type}-control`],\n className,\n {\n [style[\"inner-state-bar\"]]: isInner,\n [style[\"has-children\"]]: stateOption.some((item) => !!item.children),\n }\n )}\n style={{ \"--total-count\": stateOption.length }}\n animated={false}\n items={stateOption.map(({ tab, label, key, ...props }) => {\n return { label: tab || label, key, ...props };\n })}\n />\n );\n};\n\nexport default StateBar;\n","// extracted by mini-css-extract-plugin\nexport default {\"state-tag\":\"style_state-tag__Kx27z__+6jdI\",\"state-result-tag\":\"style_state-result-tag__CssDz__+6jdI\",\"state-skill-tag\":\"style_state-skill-tag__k0bQE__+6jdI\",\"state-tag-filter-result-wrapper\":\"style_state-tag-filter-result-wrapper__QYS5z__+6jdI\",\"state-tag-filter-name\":\"style_state-tag-filter-name__iJaJd__+6jdI\",\"state-tag-filterResult\":\"style_state-tag-filterResult__KTkot__+6jdI\",\"show-bg\":\"style_show-bg__OcL+R__+6jdI\",\"tag-text\":\"style_tag-text__JHCt+__+6jdI\",\"state-tag-wrapper\":\"style_state-tag-wrapper__A-gTE__+6jdI\"};","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 )}\n >\n <span className={style[\"tag-text\"]}>{text}</span>\n </Tag>\n </Space>\n );\n};\n\nStateTag.defaultProps = {\n color: \"#666666\",\n type: \"default\",\n showBorder: false,\n showBackground: true,\n text: \"\",\n className: \"\",\n};\n\nexport default StateTag;\n","// extracted by mini-css-extract-plugin\nexport default {\"table\":\"style_table__z7kfz__+6jdI\",\"is-resize\":\"style_is-resize__ut6RW__+6jdI\",\"is-moving\":\"style_is-moving__BJ9wR__+6jdI\",\"cell-resize-bar\":\"style_cell-resize-bar__-mlUF__+6jdI\",\"is-computed\":\"style_is-computed__B9rIF__+6jdI\",\"options-column\":\"style_options-column__vsPTr__+6jdI\",\"options-btn\":\"style_options-btn__U3uoy__+6jdI\",\"tooltip\":\"style_tooltip__vJlkv__+6jdI\",\"table-changer-setting\":\"style_table-changer-setting__HcrwR__+6jdI\",\"width-changer-sign\":\"style_width-changer-sign__Aflyl__+6jdI\",\"columns-control\":\"style_columns-control__5-5ZF__+6jdI\",\"columns-control-content\":\"style_columns-control-content__MoeUI__+6jdI\",\"columns-control-content-title\":\"style_columns-control-content-title__P5sXV__+6jdI\",\"columns-control-content-scroller\":\"style_columns-control-content-scroller__CeYRV__+6jdI\",\"columns-control-content-footer\":\"style_columns-control-content-footer__0bQWm__+6jdI\",\"columns-control-content-input\":\"style_columns-control-content-input__G6yKq__+6jdI\",\"columns-control-content-list\":\"style_columns-control-content-list__aXvTs__+6jdI\",\"columns-control-content-item\":\"style_columns-control-content-item__jbyyE__+6jdI\",\"is-drag\":\"style_is-drag__U68aw__+6jdI\",\"columns-control-content-item-icon\":\"style_columns-control-content-item-icon__yJqZf__+6jdI\",\"sortable-drag\":\"style_sortable-drag__K5hWd__+6jdI\",\"sortable-ghost\":\"style_sortable-ghost__lKTd2__+6jdI\",\"columns-control-overlay\":\"style_columns-control-overlay__OxCIz__+6jdI\",\"sort-btn\":\"style_sort-btn__KvNLr__+6jdI\",\"sort-active-desc\":\"style_sort-active-desc__TIhMC__+6jdI\",\"sort-icon\":\"style_sort-icon__dB85I__+6jdI\",\"sort-active-asc\":\"style_sort-active-asc__RUBup__+6jdI\"};","// extracted by mini-css-extract-plugin\nexport default {\"col-item\":\"columns_col-item__Ym1Ec__+6jdI\",\"tag\":\"columns_tag__bQZLG__+6jdI\",\"avatar\":\"columns_avatar__SLPI+__+6jdI\",\"hover\":\"columns_hover__oAwHg__+6jdI\",\"primary\":\"columns_primary__6KtaA__+6jdI\",\"loading\":\"columns_loading__gtBay__+6jdI\",\"options\":\"columns_options__WvDZD__+6jdI\"};","import { Button } from \"antd\";\nimport classnames from \"classnames\";\nimport Icon from \"@components/Icon\";\nimport ButtonGroup from \"@components/ButtonGroup\";\nimport style from \"./style.module.scss\";\n\nconst OptionsList = ({ className, list, width }) => {\n return (\n <div\n className={classnames(className, style[\"options-column\"])}\n style={{\n \"--max-width\": width + \"px\",\n }}\n >\n <ButtonGroup\n list={list.map(({ className, ...props }) =>\n Object.assign({}, props, {\n className: classnames(\n className,\n \"btn-no-padding\",\n style[\"options-btn\"]\n ),\n type: \"link\",\n })\n )}\n more={\n <Button\n icon={<Icon type=\"icon-gengduo2\" />}\n className=\"btn-no-padding\"\n type=\"link\"\n />\n }\n />\n </div>\n );\n};\n\nexport default OptionsList;\n","import { Typography } from \"antd\";\nimport style from \"./style.module.scss\";\n\nconst Ellipsis = ({ children, ellipsis }) => {\n return (\n <Typography.Text\n ellipsis={\n ellipsis &&\n Object.assign(\n {},\n {\n tooltip: {\n overlayClassName: style[\"tooltip\"],\n children: children,\n },\n }\n )\n }\n >\n {children}\n </Typography.Text>\n );\n};\n\nexport default Ellipsis;\n","import { useState } from \"react\";\nimport classnames from \"classnames\";\nimport columnsStyle from \"./columns.module.scss\";\n\nconst ColItem = ({\n type,\n item,\n isEmpty,\n emptyRender,\n hover,\n primary,\n children,\n width,\n style,\n onClick,\n colValue,\n}) => {\n const [loading, setLoading] = useState(false);\n return (\n <div\n style={Object.assign({}, style, { \"--max-width\": width + \"px\" })}\n className={classnames(\n columnsStyle[\"col-item\"],\n columnsStyle[type],\n isEmpty\n ? null\n : {\n [columnsStyle[\"hover\"]]: hover,\n [columnsStyle[\"primary\"]]: primary,\n [columnsStyle[\"loading\"]]: loading,\n }\n )}\n onClick={(e) => {\n if (typeof onClick === \"function\" && !isEmpty && !loading) {\n setLoading(true);\n Promise.resolve(\n onClick({ item, colItem: colValue, event: e })\n ).finally(() => {\n setLoading(false);\n });\n }\n }}\n >\n {isEmpty\n ? emptyRender({ type, item, hover, primary, children })\n : children}\n </div>\n );\n};\n\nColItem.defaultProps = {\n emptyRender: () => \"-\",\n};\n\nexport default ColItem;\n","import { createWithFetch } from \"@kne/react-fetch\";\nimport Ellipsis from \"./Ellipsis\";\nimport { Button } from \"antd\";\nimport ColItem from \"./ColItem\";\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 if (expand) {\n return (\n <DisplayInfo {...api}>\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={isEmpty}\n >\n <Ellipsis ellipsis={ellipsis}>\n {typeof api.children === \"function\" ? api.children(data) : data}\n </Ellipsis>\n </ColItem>\n );\n }}\n </DisplayInfo>\n );\n }\n return (\n <ColItem\n type=\"hide-info\"\n primary\n isEmpty={isEmpty}\n emptyRender={emptyRender}\n >\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 { 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\";\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 = ({ columns, name, controllerOpen, tableWidth }) => {\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 } = usePreset();\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 return (\n currentMoveColumnIndexRef.current === null ||\n currentMoveColumnIndexRef.current === index ||\n column.type === \"hideInfo\" ||\n !isEqual(record[column.name], prevRecord[column.name])\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 memoize from \"lodash/memoize\";\nimport get from \"lodash/get\";\nimport useRefCallback from \"@kne/use-ref-callback\";\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],\n type === \"hideInfo\" &&\n !isNil(expandInfo) &&\n pick(columnTypes[expandType || \"other\"], [\"width\", \"min\", \"max\"])\n );\n const targetRender = memoize(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\n const targetRenderWithProps = (colValue) => {\n const isEmpty = (\n emptyOf ||\n ((value) => value === \"\" || value === void 0 || value === null)\n )(colValue);\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: 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 });\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 }\n : false,\n };\n\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"Table\">\n <FeaturesColumnsConfig id={featureId} columns={columns}>\n {({ columns }) => (\n <Table\n {...Object.assign({}, props, tableProps)}\n className={classnames(className, \"loading-container\", {\n \"is-loading\": !isComplete,\n })}\n columns={columns}\n columnRenderProps={{\n ...columnRenderProps,\n requestParams,\n fetchProps,\n data,\n }}\n summary={\n typeof summary === \"function\"\n ? (...args) => {\n return summary(\n Object.assign(\n {},\n {\n data,\n fetchProps,\n requestParams,\n refresh,\n reload,\n loadMore,\n send,\n dataFormat,\n pagination,\n },\n ...args\n )\n );\n }\n : null\n }\n />\n )}\n </FeaturesColumnsConfig>\n </IntlProvider>\n );\n }\n);\n\nTablePageInner.defaultProps = {\n pagination: {},\n columnRenderProps: {},\n sticky: true,\n dataFormat: (data) => {\n return {\n list: data.pageData,\n total: data.totalCount,\n };\n },\n};\n\nconst TablePage = forwardRef(({ pagination, ...props }, ref) => {\n pagination = Object.assign(\n {},\n {\n showSizeChanger: true,\n showQuickJumper: true,\n open: true,\n paramsType: \"data\",\n requestType: \"reload\",\n currentName: \"currentPage\",\n pageSizeName: \"perPage\",\n pageSize: 20, //size: \"small\",\n },\n pagination\n );\n const pageSizeKey = `${(\n props.name || \"common\"\n ).toUpperCase()}_TABLE_PAGE_SIZE`;\n const [pageSize, setPageSize] = useState(\n localStorage.getItem(pageSizeKey) || pagination.pageSize\n );\n const params = props[pagination.paramsType];\n const fetchParams = useMemo(() => {\n return {\n [pagination.paramsType]: Object.assign({}, params, {\n [pagination.pageSizeName]: pageSize,\n }),\n };\n }, [params, pagination.pageSizeName, pagination.paramsType, pageSize]);\n return (\n <TablePageInner\n {...props}\n {...fetchParams}\n pagination={Object.assign({}, pagination, {\n pageSize,\n onShowSizeChange: (current, size) => {\n localStorage.setItem(pageSizeKey, size);\n setPageSize(size);\n },\n })}\n ref={ref}\n />\n );\n});\n\nexport default TablePage;\n"],"names":["getItem","key","target","window","localStorage","dataType","value","JSON","parse","Number","Boolean","e","setItem","stringify","areaWidthComputed","memoize","_ref","amountWidth","moreBtnWidth","buttonWidthList","spaceProps","compact","spaceWidth","indexOf","size","isInteger","targetLength","targetWidth","length","_ref2","concat","join","Object","values","toString","ButtonGroup","_ref3","list","more","props","pick","showLength","setShowLength","useState","computedLength","useRefCallback","el","targetRef","current","moreEl","moreRef","widthEl","ref","buttonEls","querySelectorAll","clientWidth","map","call","offsetWidth","startTransition","useResize","otherList","slice","renderButton","renderItem","index","isDropdown","className","classnames","style","confirm","isConfirm","message","CurrentButton","ConfirmButton","LoadingButton","_createElement","danger","isDelete","assign","isModal","SpaceComponent","Space","Compact","_jsxs","_Fragment","children","_jsx","item","Dropdown","overlayClassName","menu","items","label","defaultProps","Button","Icon","type","locale","en-US","zh-CN","withConfirm","WrappedComponent","ConfirmComponent","createWithIntl","moduleName","importMessages","title","onClick","onCancel","disabled","showCancel","cancelText","okText","placement","getContainer","formatMessage","useIntl","modal","useConfirmModal","id","onOk","Popconfirm","direction","stopPropagation","align","onConfirm","okButtonProps","getPopupContainer","ConfirmLink","Typography","Link","ConfirmText","Text","baseLoaders","description","EnumLoaderFetch","withFetch","data","getEnumsMap","enums","Map","keys","EnumLoader","loader","enumsLoader","global","enumsRef","useGlobalContext","prevLocaleRef","useRef","async","arguments","params","undefined","name","force","getEnumMap","get","output","Array","isArray","console","warn","set","Promise","all","then","enumMap","from","isNil","Enum","preset","usePreset","_ref4","context","createContext","Provider","Line","onChange","useReactContext","ComponentItem","FilterLines","displayLine","extra","hasMore","isExpand","setIsExpand","IntlProvider","FormattedMessage","defaultMessage","Row","justify","wrap","Col","flex","filterValue","extraExpand","StateTag","filterName","text","closable","onClose","newValue","splice","Filter","others","valueBase","useControlValue","useMemo","filter","isNotEmpty","newFilterValue","clone","delete","FilterValueDisplay","defaultValue","open","active","setOpen","FilterItem","allowClear","valueType","onOpenChange","useSelectInnerContext","SelectInnerInput","useContext","TreeFieldInner","selected","setValue","setSelect","fetchApi","dataFormat","single","isPopup","searchPlaceholder","fieldNamesRef","fieldNames","fetchData","treeData","SimpleBar","Tree","omit","checkable","onCheck","checkedKeys","onSelect","selectKeys","selectKey","newCurrent","push","selectedKeys","TreeField","maxLength","MAX_VALUE","checkStrictly","treeToList","nodeList","_ref5","core","forEach","node","PopoverItem","onValidate","state","setState","Popover","trigger","content","gutter","placeholder","Input","DatePickerFilterItem","withFieldItem","picker","DatePicker","dayjs","format","startOf","endOf","Date","valueOf","RangePicker","allowEmpty","TypeDateRangePickerField","pickerValue","AdvancedSelectFilterItem","AdvancedSelectField","UserFilterItem","UserField","FunctionSelectFilterItem","FunctionSelectField","IndustrySelectFilterItem","IndustrySelectField","CityFilterItem","AddressSelectField","CascaderFilterItem","CascaderField","TreeFilterItem","InputFilterItem","InputFilterItemField","transform","result","fields","getFilterValue","colorful","url","href","menuOpen","menuWidth","menuFixed","menuCloseButton","backgroundColor","header","headerHeight","headerFixed","headerInfo","backUrl","titleExtra","titleLeftExtra","noMargin","noPadding","optionFooterHeight","option","optionWidth","optionNoPadding","optionFixed","optionFooter","Consumer","isFixed","pageMenuOpenKey","Menu","pageProps","setPageProps","pathModuleName","useLocation","pathname","split","FixedContainer","icon","pageResult","PageInner","isPass","propsRef","localMenuOpen","useMenuOpen","localMenuOpenRef","useEffect","isEqual","targetProps","Result","status","subTitle","Page","featureId","openFeatures","Features","offsetTop","offsetBottom","AntdAffix","targetKey","useLayoutEffect","callback","offsetHeight","resizeObserver","MutationObserver","observe","subtree","childList","disconnect","useContainerHeight","Header","Affix","navigationHeight","ContainerHeight","HeaderInfo","headerInfoRef","navigator","useNavigate","Option","padding","Content","AntdLayout","ErrorComponent","Alert","showIcon","action","location","reload","ErrorBoundary","ReactErrorBoundary","errorComponent","Layout","theme","navigation","scrollLeft","setScrollLeft","_setPageProps","useCallback","scrollEl","getScrollEl","handlerScroll","addEventListener","removeEventListener","Navigation","path","PageTitle","helperGuideName","HelperGuide","permissions","Permissions","forwardRef","page","topArea","tableData","setTableData","PermissionsPage","Table","onRequestSuccess","stateBar","StateBar","MenuItem","iconType","request","isOpen","isSelected","fetchOptions","depth","onLoad","allowCollapsed","hasChildren","refresh","isLoading","useFetch","auto","Spin","search","selectedKey","setSelectKeyChange","setItems","targetItems","defaultOpenKeys","links","childrenKeys","hasStartIcon","_childrenKeys$root","nodeMapping","traversal","options","parentKey","paths","currentKey","targetItem","originItem","treeEnhance","matchedPath","find","ensureSlash","replace","openKeys","setOpenKeys","renderChildren","parentId","newOpenKeys","defaultItems","SetTitle","mapping","defaultTitle","document","headerLogo","rightOptions","showIndex","indexLabel","overflowedIndicator","base","navigate","navigationRef","resizeObserverRef","nameLabel","setNameLabel","RegExp","entries","permission","menuDom","exist","i","getAttribute","_nameLabel","mutationObserverInitConfig","attributes","indexNav","setTimeout","Image","src","logo","alt","mode","_ref6","_path","computedIsPass","some","usePermissions","usePermissionsPass","tagName","Tooltip","createElement","stateOption","isInner","Tabs","animated","tab","tagTypeEnum","default","skill","color","borderColor","filterResult","success","progress","info","other","showBorder","showBackground","tagColor","_tagTypeEnum$type","_tagTypeEnum$type2","Tag","background","border","width","ellipsis","tooltip","ColItem","isEmpty","emptyRender","hover","primary","colValue","loading","setLoading","columnsStyle","resolve","colItem","event","finally","DisplayInfo","createWithFetch","api","expand","onExpand","Ellipsis","_ref17","columnTypes","date","render","isValid","min","max","dateShort","dateRange","datetime","hideSecond","serialNumber","serialNumberShort","user","_ref7","userName","_ref8","contacts","_ref9","tag","_ref10","isEnum","_ref11","avatar","_ref12","Avatar","singleRow","_ref13","hideInfo","HideInfoComponent","mainInfo","_ref14","_ref15","_ref16","OptionsList","sensitiveInfo","_ref18","otherSmall","otherLarge","Panel","Collapse","close","columns","config","searchText","setSearchText","leftFixedColumns","rightFixedColumns","visibleColumns","hiddenColumns","groupBy","fixed","hidden","sort","a","b","renderColumn","titleText","groupHeader","defaultActiveKey","ghost","bordered","List","Item","Checkbox","checked","ReactSortable","dragClass","ghostClass","forceFallback","setList","newConfig","cloneDeep","columnsList","col","handlerColumnsChange","animation","delayOnTouchStart","delay","preventDefault","visible","SearchInput","prefix","onSearch","dataSource","TableConfig","setConfig","ColumnsControlContent","controllerOpen","tableWidth","currentMoveColumnIndex","setCurrentMoveColumnIndex","currentMoveColumnIndexRef","currentMoveColumnRef","startPointRef","setConfigBase","tableServerApis","tablePageServerParams","getDataApi","saveConfig","useDebouncedCallback","setDataFunc","send","cache","isLocal","getTableConfig","computedIndex","lastNotOptionsColumnIndex","findLastIndex","totalWidth","sumBy","computedRealWidth","Math","resizeBarRender","column","onMouseDown","clientX","resize","delta","currentWidth","computedColumnProps","targetColumn","movingClass","realWidth","onHeaderCell","onCell","shouldCellUpdate","record","prevRecord","handlerCancelResize","handlerResize","documentElement","columnsConfig","rowKey","renderProps","expandInfo","setExpandInfo","columnRenderPropsRef","expandType","titleRender","emptyOf","disableColItem","otherColProps","targetRender","itemKey","colProps","targetRenderWithProps","hasOwnProperty","groupHeaderColumns","newColumns","group","appendGroupHeader","columnIndex","targetHeader","otherHeader","currentGroup","startIndex","groupColumn","hasGroupHeader","sortArrayToMap","setSort","mapSort","setMapSort","newSort","targetValue","sticky","stickyOffset","pagination","columnRenderProps","summary","scroll","onTablePropsReady","setTableWidth","isLayout","setIsLayout","isDebounce","useColumnTypeProps","computedColumnConfigProps","useTableConfig","sortRender","useSort","targetColumns","groupColumns","useGroupHeader","onTablePropsReadyCallback","Scroller","scroller","getScrollTarget","querySelector","AntdTable","x","_len","args","_key","pageData","FeaturesColumnsConfig","TablePageInner","requestParams","fetchProps","isComplete","setData","loadMore","getColumns","handlerDataFormat","formatData","tableProps","total","showTotal","paramsType","currentName","pageSize","requestType","pageSizeName","onShowSizeChange","scrollTop","showSizeChanger","showQuickJumper","totalCount","pageSizeKey","toUpperCase","setPageSize","fetchParams"],"sourceRoot":""}