@fudanda/admin-antd 0.0.0-stage → 2.20261024.1-beta.1

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 (482) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +58 -3
  3. package/THIRD_PARTY_NOTICES.md +55 -0
  4. package/dist/assets/libarchive-DxGirPmi.wasm +0 -0
  5. package/dist/assets/pdfium-BJ2Yip8Q.wasm +0 -0
  6. package/dist/assets/ppt-font-cjk-DxgKpThH.otf +0 -0
  7. package/dist/assets/ppt-native-Cz5DBbag.wasm +0 -0
  8. package/dist/assets/pptx.worker-CtaL8LO_.js +30 -0
  9. package/dist/assets/worker-C5LZNsKY.mjs +1650 -0
  10. package/dist/assets/worker-CDeo9jS-.js +40 -0
  11. package/dist/assets/worker-bundle-Dx5mKZOL.js +6 -0
  12. package/dist/automation.d.ts +3 -0
  13. package/dist/automation.js +15 -0
  14. package/dist/chunks/App-DNjXLysb.js +79 -0
  15. package/dist/chunks/AppModal-DJzQA6FR.js +1 -0
  16. package/dist/chunks/ArcBaseAdmin-BZrHGq2f.js +1 -0
  17. package/dist/chunks/ConfigurableTable-DzmZDd8F.js +55 -0
  18. package/dist/chunks/DashboardPage-BohGodSl.js +22 -0
  19. package/dist/chunks/DataScopePanel-B2-x8Jcz.js +1 -0
  20. package/dist/chunks/DateTimeText-CIt0Qy45.js +1 -0
  21. package/dist/chunks/DepartmentsPage-DMWY__Y_.js +1 -0
  22. package/dist/chunks/DictTag-2-adKbYg.js +1 -0
  23. package/dist/chunks/DictsPage-DILDyHi-.js +15 -0
  24. package/dist/chunks/EditFormModal-DNHOZHxM.js +1 -0
  25. package/dist/chunks/EmptyIllustration-DUC3RZmF.js +1 -0
  26. package/dist/chunks/EntityContextRuntime-DMklAv-k.js +1 -0
  27. package/dist/chunks/EntityContextRuntime-sslBZqYD.js +1 -0
  28. package/dist/chunks/EntityRelationButton-DWn1rC2J.js +8 -0
  29. package/dist/chunks/ExportButton-AzH4D0oW.js +1 -0
  30. package/dist/chunks/FileNameCell-DPyi64Rv.js +1 -0
  31. package/dist/chunks/FileStorageConfigsPage-CzuOgeK0.js +15 -0
  32. package/dist/chunks/FileTypeIcon-DIih3XQG.js +1 -0
  33. package/dist/chunks/FileViewerPreviewPanel-CMqVtGCr.js +41 -0
  34. package/dist/chunks/FilesPage-BaEBCOCs.js +43 -0
  35. package/dist/chunks/IdentitySecurityPage-BO7nY8id.js +1 -0
  36. package/dist/chunks/JsonPreviewPanel-Dhbza-Uu.js +1 -0
  37. package/dist/chunks/LogStatsScaffold-CLycj3da.js +1 -0
  38. package/dist/chunks/LoginLogsPage-DTmHi8u0.js +1 -0
  39. package/dist/chunks/LoginLogsTable-DVmHnC6V.js +1 -0
  40. package/dist/chunks/MarkdownPreviewPanel-DoiaAeRv.js +51 -0
  41. package/dist/chunks/MasterDetailLayout-sjPWw8BI.js +8 -0
  42. package/dist/chunks/MemberAssignmentSheet-Czbt6_zv.js +1 -0
  43. package/dist/chunks/MenuCommandPalette-BCOzf-Kq.js +8 -0
  44. package/dist/chunks/MenusPage-DN8DTGB1.js +1 -0
  45. package/dist/chunks/ModalFooter-RMlvqrO9.js +1 -0
  46. package/dist/chunks/MonacoPreviewPanel-Dnz7xpWP.js +1 -0
  47. package/dist/chunks/NavListPanel-vjIOIqK0.js +1 -0
  48. package/dist/chunks/OnlineSessionsPage-FoHYZKlR.js +1 -0
  49. package/dist/chunks/OperationLogsPage-BeRnGcBJ.js +1 -0
  50. package/dist/chunks/OperationLogsTable-COI-Lp-y.js +1 -0
  51. package/dist/chunks/PDFPreviewPanel-BIQuBnZZ.js +37 -0
  52. package/dist/chunks/PasswordInput-DGEJO9yx.js +1 -0
  53. package/dist/chunks/PositionsPage-DohI0luX.js +1 -0
  54. package/dist/chunks/PreferencesSheetBody-B9niQABW.js +43 -0
  55. package/dist/chunks/ProfilePage-CVTRv7xb.js +15 -0
  56. package/dist/chunks/RelationPanel-B1X6AVaM.js +36 -0
  57. package/dist/chunks/ResponsiveTableActions-y54aSdhs.js +1 -0
  58. package/dist/chunks/RolesPage-CtUw93L8.js +1 -0
  59. package/dist/chunks/ScrollArea-DqjJmHDN.js +11 -0
  60. package/dist/chunks/SearchToolbar-CvgYKUjr.js +1 -0
  61. package/dist/chunks/SessionClientTag-DIwnYodW.js +22 -0
  62. package/dist/chunks/SessionConflictModal-BLNuDsN_.js +1 -0
  63. package/dist/chunks/SettingRow-DVNmTJWC.js +1 -0
  64. package/dist/chunks/SettingsPage-BRnCxYQm.js +26 -0
  65. package/dist/chunks/StatCard-Czjfs0fa.js +4 -0
  66. package/dist/chunks/UTIF-QUtClmQd.js +1 -0
  67. package/dist/chunks/UserAvatar-B8CFnTCn.js +1 -0
  68. package/dist/chunks/UserDisplay-J0Re8z-7.js +1 -0
  69. package/dist/chunks/UserGroupsPage-CNwbejx-.js +1 -0
  70. package/dist/chunks/UserLogsPanels-BHeSxWrk.js +36 -0
  71. package/dist/chunks/UserTransferSelect-CAeyxdor.js +22 -0
  72. package/dist/chunks/UsersPage-BXt9fOru.js +36 -0
  73. package/dist/chunks/abnfDiagram-VCTEODGH-Z6OhNjoW.js +1 -0
  74. package/dist/chunks/activity-DBu4axwF.js +8 -0
  75. package/dist/chunks/arc-B3K1fDeF.js +1 -0
  76. package/dist/chunks/architecture-7GRP2DOG-CMtoOwin.js +1 -0
  77. package/dist/chunks/architectureDiagram-5GKGNRK7-V5A7S5fY.js +36 -0
  78. package/dist/chunks/archive-B_IKvysI.js +72 -0
  79. package/dist/chunks/array-BrHhzP_A.js +1 -0
  80. package/dist/chunks/arrow-left-CsxBMzKY.js +8 -0
  81. package/dist/chunks/avsc-C0VoJRmm.js +160 -0
  82. package/dist/chunks/blockDiagram-I7D4REHJ-CFKGJkc_.js +129 -0
  83. package/dist/chunks/browser-BKLM0ThC-mnGPrtB_.js +1 -0
  84. package/dist/chunks/browser-index-JqxD-45S.js +1 -0
  85. package/dist/chunks/builtin_esm-external-require-react-BsBndGeN.js +1 -0
  86. package/dist/chunks/bundle-DbfUnEV1.js +29 -0
  87. package/dist/chunks/c4Diagram-7LVT6UL2-BqYYoXPe.js +38 -0
  88. package/dist/chunks/channel-C9Dr7Z-W.js +1 -0
  89. package/dist/chunks/chart-data-DImT_Mzn.js +5 -0
  90. package/dist/chunks/chart-renderer-k-Rd8vdL.js +7 -0
  91. package/dist/chunks/chevron-down-mn2tSKQd.js +8 -0
  92. package/dist/chunks/chevron-right-EBApfX6q.js +15 -0
  93. package/dist/chunks/chevrons-up-down-2M6hY6wt.js +15 -0
  94. package/dist/chunks/chunk-2E4U76K2-DNbbdpCx.js +1 -0
  95. package/dist/chunks/chunk-2Q5K7J3B-CmAE3Vs0.js +1 -0
  96. package/dist/chunks/chunk-2ZTRR5NV-BjsSRgBv.js +2 -0
  97. package/dist/chunks/chunk-3Z5EZCMW-uYiqz-6y.js +1 -0
  98. package/dist/chunks/chunk-4HAMMTFA-Aw59LwS3.js +62 -0
  99. package/dist/chunks/chunk-5V3GS4D5-B_CVcJic.js +1 -0
  100. package/dist/chunks/chunk-5VM5RSS4-DMlsEAcl.js +15 -0
  101. package/dist/chunks/chunk-6AZGARVD-CgAiC5mV.js +1 -0
  102. package/dist/chunks/chunk-6EIED4P4-CXz5D9B0.js +1 -0
  103. package/dist/chunks/chunk-6K3QC6MW-DtaQ52mY.js +1 -0
  104. package/dist/chunks/chunk-6TQVIW2G-D0YDxefI.js +1 -0
  105. package/dist/chunks/chunk-747NJXEK-DGoElbDa.js +2 -0
  106. package/dist/chunks/chunk-75Z2AOVW-IO9R6faP.js +2 -0
  107. package/dist/chunks/chunk-CLGD4ZFX-tRS89bnq.js +1 -0
  108. package/dist/chunks/chunk-DU6HZSFF-Bx48E1rg.js +125 -0
  109. package/dist/chunks/chunk-F27PBJKO-DtLva7y0.js +1 -0
  110. package/dist/chunks/chunk-FOHPRMQF-B8MMrnxV.js +255 -0
  111. package/dist/chunks/chunk-GMAD6QVW-D41KnniX.js +72 -0
  112. package/dist/chunks/chunk-GVQU2GXP-CVzgM_ui.js +1 -0
  113. package/dist/chunks/chunk-I5DQTOEV-CoecQT42.js +1 -0
  114. package/dist/chunks/chunk-ICYGCRZG-lH3opfCY.js +1 -0
  115. package/dist/chunks/chunk-IH6LHLGP-tD-j3Rsy.js +1 -0
  116. package/dist/chunks/chunk-IMKFNOWR-CL9pLQhV.js +231 -0
  117. package/dist/chunks/chunk-JWPE2WC7-Wk0BVLn5.js +1 -0
  118. package/dist/chunks/chunk-KI3K4JFJ-C-3Y_9er.js +1 -0
  119. package/dist/chunks/chunk-L3NEJ4N5-CmvrS7Dt.js +1 -0
  120. package/dist/chunks/chunk-LNGE3PJU-BP1fsJRz.js +34 -0
  121. package/dist/chunks/chunk-OSK3NFVY-C9uWOXTC.js +10 -0
  122. package/dist/chunks/chunk-OUJLGHUK-Cm55l9bx.js +2 -0
  123. package/dist/chunks/chunk-P2QGCYS3-C9bc1yiM.js +1 -0
  124. package/dist/chunks/chunk-POPQ4Y6H-P1s5xaxM.js +1 -0
  125. package/dist/chunks/chunk-PWAF6VOD-IORmPx9D.js +1 -0
  126. package/dist/chunks/chunk-SHT3W25Y-Bip4melZ.js +168 -0
  127. package/dist/chunks/chunk-SVP7TREG-BKCgUOuy.js +88 -0
  128. package/dist/chunks/chunk-TICWLB2K-12W2EmSx.js +206 -0
  129. package/dist/chunks/chunk-TLUHSLCS-DsqF476v.js +1 -0
  130. package/dist/chunks/chunk-UY3FDG6J-71d_M6t3.js +1 -0
  131. package/dist/chunks/chunk-XHIXRSVI-C2X1-xC6.js +1 -0
  132. package/dist/chunks/chunk-XXDRQBXY-Bl6AoSZF.js +1 -0
  133. package/dist/chunks/chunk-Y2CYZVJY-DjEHBC-3.js +1 -0
  134. package/dist/chunks/circle-check-RKAno__V.js +8 -0
  135. package/dist/chunks/circle-x-BB5x-D-8.js +8 -0
  136. package/dist/chunks/classDiagram-ZZMXUADV-CZrpYcfK.js +1 -0
  137. package/dist/chunks/classDiagram-v2-VYDZK3BY-CZrpYcfK.js +1 -0
  138. package/dist/chunks/clipboard-ERcMSMRH.js +1 -0
  139. package/dist/chunks/clock-CniP1gZS.js +8 -0
  140. package/dist/chunks/confirm-BtBBEqk8.js +1 -0
  141. package/dist/chunks/controls-C5dPckUT.js +1 -0
  142. package/dist/chunks/copy-ofLPH1I0.js +8 -0
  143. package/dist/chunks/cose-bilkent-JH36ORCC-D9OUqkk5.js +1 -0
  144. package/dist/chunks/createLucideIcon-BtwfYE6A.js +83 -0
  145. package/dist/chunks/cynefin-OW5HDTMX-B8_kUynj.js +1 -0
  146. package/dist/chunks/cynefinDiagram-5FMLGOSQ-DhQChnCg.js +62 -0
  147. package/dist/chunks/cytoscape.esm-wDUnleWx.js +339 -0
  148. package/dist/chunks/dagre-GXQ25YYZ-CfbwC_a5.js +4 -0
  149. package/dist/chunks/dagre-ZVAWSfFw.js +1 -0
  150. package/dist/chunks/data-B05HzECj.js +28 -0
  151. package/dist/chunks/date-picker-CPUxgHVv.js +1 -0
  152. package/dist/chunks/defaultLocale-BvxIcb9Y.js +1 -0
  153. package/dist/chunks/deleteAction-CCocr5uV.js +1 -0
  154. package/dist/chunks/diagram-D9cwc7QH.js +5 -0
  155. package/dist/chunks/diagram-S7CK7UJ4-DVPbdtMm.js +30 -0
  156. package/dist/chunks/diagram-UQ7AKVKN-D_ZBhGLL.js +41 -0
  157. package/dist/chunks/diagram-VSXAHHWV-Dqypp-OX.js +3 -0
  158. package/dist/chunks/diagram-VX7I27RA-CbWJVJ_L.js +24 -0
  159. package/dist/chunks/diagram-Z3DM3KII-CUyP4-RY.js +24 -0
  160. package/dist/chunks/direct-engine-thps0u7R.js +5 -0
  161. package/dist/chunks/dist-Bauqz5on.js +1 -0
  162. package/dist/chunks/dist-CWj_XYki.js +1 -0
  163. package/dist/chunks/dist-D_KGQS7-.js +11 -0
  164. package/dist/chunks/dist-DdW4yNBK.js +1 -0
  165. package/dist/chunks/docx-preview-CPN81HCr.js +11 -0
  166. package/dist/chunks/download--5IybXxz.js +8 -0
  167. package/dist/chunks/drawing-D2Qrun-P.js +48 -0
  168. package/dist/chunks/ebnfDiagram-PWID7BFC-C5NMigjm.js +1 -0
  169. package/dist/chunks/ellipsis-Dux1Nxa5.js +8 -0
  170. package/dist/chunks/email-ByshRsFv.js +61 -0
  171. package/dist/chunks/emailHtml-BAKcRhSm.js +1 -0
  172. package/dist/chunks/erDiagram-RLTQ6QDP-B5rUHJPJ.js +99 -0
  173. package/dist/chunks/eventmodeling-NTZA5JFV-C74no5BH.js +1 -0
  174. package/dist/chunks/export-BkwewH6Q.js +1 -0
  175. package/dist/chunks/export-DlTz5dc2.js +341 -0
  176. package/dist/chunks/eye-off-BtJoIT5n.js +8 -0
  177. package/dist/chunks/feedback-BnjMKZpz.js +1 -0
  178. package/dist/chunks/file-utils-DyvnVEoH.js +1 -0
  179. package/dist/chunks/fit-CsnhEncA.js +1 -0
  180. package/dist/chunks/flowDiagram-HODETNUW-BuMvaSeo.js +1 -0
  181. package/dist/chunks/form-CQutQFiD.js +1 -0
  182. package/dist/chunks/funnel-BwQjQI4Y.js +8 -0
  183. package/dist/chunks/ganttDiagram-EL5Y4UJY-DIAlbvVg.js +292 -0
  184. package/dist/chunks/geo-DR0fL7r2.js +38 -0
  185. package/dist/chunks/gitGraph-4MIJSDKK-Ce5mOfp1.js +1 -0
  186. package/dist/chunks/gitGraphDiagram-WWUBYQGX-DN3G9xiQ.js +106 -0
  187. package/dist/chunks/graphlib-CYBMTUbW.js +1 -0
  188. package/dist/chunks/icons-CbRx5Om7.js +1 -0
  189. package/dist/chunks/illustrations-DT1eq6jI.js +1 -0
  190. package/dist/chunks/image-ez9hvzKT.js +17 -0
  191. package/dist/chunks/index.es-OAWlVkoK.js +16 -0
  192. package/dist/chunks/info-A6RAGUB7-BP6lMBIR.js +1 -0
  193. package/dist/chunks/info-BQa8C31Y.js +8 -0
  194. package/dist/chunks/infoDiagram-27XIBGKW-BhQtr_Ti.js +2 -0
  195. package/dist/chunks/init-Ca_Ibf4y.js +1 -0
  196. package/dist/chunks/ishikawaDiagram-5VMMS53U-CLR6CAi4.js +70 -0
  197. package/dist/chunks/journeyDiagram-3NMN7TZE-_-Q7sjsP.js +139 -0
  198. package/dist/chunks/json-viewer-DHYRjY8I.js +1 -0
  199. package/dist/chunks/jszip.min-hNOoGCeG.js +14 -0
  200. package/dist/chunks/kanban-definition-UXKFOSKX-D97mHeUZ.js +89 -0
  201. package/dist/chunks/katex-D5qu7EYh.js +257 -0
  202. package/dist/chunks/layout-grid-Bp9bwiQZ.js +8 -0
  203. package/dist/chunks/lib-BlRm3nk1.js +15 -0
  204. package/dist/chunks/lib-C1nFUu19.js +4 -0
  205. package/dist/chunks/lib-CqYXBtHb.js +1 -0
  206. package/dist/chunks/libarchive-DRzzJvQl.js +7 -0
  207. package/dist/chunks/line-BV7qVRkM.js +1 -0
  208. package/dist/chunks/line-qVHaOdPp.js +1 -0
  209. package/dist/chunks/linear-DXABSWHW.js +1 -0
  210. package/dist/chunks/list-0CbyOlT9.js +1 -0
  211. package/dist/chunks/list-DCcWnjUg.js +8 -0
  212. package/dist/chunks/listTableProps-DDynsnLF.js +1 -0
  213. package/dist/chunks/log-in-OzbNes8i.js +8 -0
  214. package/dist/chunks/lucide-react-VfAPsQQ5.js +8 -0
  215. package/dist/chunks/maplibre-gl-Bxi83GUP.js +819 -0
  216. package/dist/chunks/maplibre-shared-Oo0L8Lll.js +6 -0
  217. package/dist/chunks/maximize-CnmQ11E7.js +8 -0
  218. package/dist/chunks/media-DoGe_p4O.js +1 -0
  219. package/dist/chunks/menu-mQgsexFx.js +15 -0
  220. package/dist/chunks/mermaid-parser.core-DvCAQkzY.js +3 -0
  221. package/dist/chunks/mermaid.core-CxOC6yPr.js +15 -0
  222. package/dist/chunks/messages-CFyOVxEM.js +1 -0
  223. package/dist/chunks/mindmap-definition-YA3MSWOX-A2UgnMwx.js +96 -0
  224. package/dist/chunks/minimize-Bpau_zCe.js +8 -0
  225. package/dist/chunks/msg-BzZbudMm.js +7 -0
  226. package/dist/chunks/ofd-C7DKqJ6Z.js +33 -0
  227. package/dist/chunks/ofd-DrJyXIpS.js +14 -0
  228. package/dist/chunks/openDocument-DGzqlyJg.js +12 -0
  229. package/dist/chunks/options-B65xkxOY.js +1 -0
  230. package/dist/chunks/ordinal-NuFkISw7.js +1 -0
  231. package/dist/chunks/packet-AYTQ26CC-DS6h3a5l.js +1 -0
  232. package/dist/chunks/panzoom.es-DnuzxUQi.js +1 -0
  233. package/dist/chunks/parse-6ZQGx714.js +1 -0
  234. package/dist/chunks/parser-DC3PvpL4.js +72 -0
  235. package/dist/chunks/path-VUNELGFR.js +1 -0
  236. package/dist/chunks/pegDiagram-XKGWAZYB-DxQqpKfh.js +1 -0
  237. package/dist/chunks/pie-WAS4IAKB-BsaegmNA.js +1 -0
  238. package/dist/chunks/pieDiagram-E7YTZNPT-BUsnkTkJ.js +39 -0
  239. package/dist/chunks/postal-mime-DMcA5b7k.js +28 -0
  240. package/dist/chunks/ppt-B0WY5Gks.js +30 -0
  241. package/dist/chunks/ppt-BIiNnCyj.js +1 -0
  242. package/dist/chunks/pptx-DX5KDFZ7.js +109 -0
  243. package/dist/chunks/preload-helper-C-73SErw.js +1 -0
  244. package/dist/chunks/print-mask-Dguzv0rv.js +17 -0
  245. package/dist/chunks/printLayout-oeudvFkr.js +34 -0
  246. package/dist/chunks/printMask-LefOTJqk.js +8 -0
  247. package/dist/chunks/psd-hjeNFQZ-.js +36 -0
  248. package/dist/chunks/purify.es-BsWMI_aG.js +5 -0
  249. package/dist/chunks/quadrantDiagram-AXDQQJYC-BmQNSzhY.js +7 -0
  250. package/dist/chunks/radar-RG4KPBEZ-BoHdw2h7.js +1 -0
  251. package/dist/chunks/railroad-74A4TZTK-BifJffb4.js +1 -0
  252. package/dist/chunks/railroad-abnf-HS5TGJTU-CMEPumRO.js +1 -0
  253. package/dist/chunks/railroad-ebnf-LZEXJU2U-B06BgAeN.js +1 -0
  254. package/dist/chunks/railroad-peg-WCYAUIDC-CMjriUEs.js +1 -0
  255. package/dist/chunks/railroadDiagram-O6MQD6OU-B2t5KY26.js +1 -0
  256. package/dist/chunks/react-runtime-x2lFbSKq.js +11 -0
  257. package/dist/chunks/refresh-cw-Dz8O9-Hp.js +8 -0
  258. package/dist/chunks/rendered-slot-YhfmcMJr.js +1 -0
  259. package/dist/chunks/requirementDiagram-BXWQKSXE-CBBfNOAp.js +84 -0
  260. package/dist/chunks/rolldown-runtime-BKuNeK48.js +1 -0
  261. package/dist/chunks/rotate-ccw-D2__Zisi.js +8 -0
  262. package/dist/chunks/rotate-cw-BSTVLlWY.js +8 -0
  263. package/dist/chunks/rough.esm-CVrpq1dW.js +1 -0
  264. package/dist/chunks/sankeyDiagram-P5KCCOFB-Cp8SrFyb.js +40 -0
  265. package/dist/chunks/save-w-NwiMMY.js +8 -0
  266. package/dist/chunks/search-DYZU68h1.js +8 -0
  267. package/dist/chunks/search-filters-CRIhZ0gL.js +1 -0
  268. package/dist/chunks/sequenceDiagram-WJ2MYXX4-PDtVfEoj.js +162 -0
  269. package/dist/chunks/shield-alert-De_Hx56I.js +8 -0
  270. package/dist/chunks/sizeCapture-INFHLROL-DA-kAaXB.js +1 -0
  271. package/dist/chunks/skeleton-CrjMjJNr.js +1 -0
  272. package/dist/chunks/spreadsheet-BzbBEhmY.js +1 -0
  273. package/dist/chunks/spreadsheet-LR3SOG-x.js +58 -0
  274. package/dist/chunks/sql-wasm-browser-CFddXd9f.js +2 -0
  275. package/dist/chunks/src-C1iDJpBK.js +1 -0
  276. package/dist/chunks/src-vLpLkuQx.js +1 -0
  277. package/dist/chunks/stateDiagram-D77RDMKH-C1Sx8KUD.js +1 -0
  278. package/dist/chunks/stateDiagram-v2-MP3YSRHH-7wYLSzBX.js +1 -0
  279. package/dist/chunks/swimlanes-42K2YHIH-BmybX9eL.js +1 -0
  280. package/dist/chunks/swimlanesDiagram-VR7AAH4N-DxhXklfm.js +8 -0
  281. package/dist/chunks/tabs-BobA_IcO.js +1 -0
  282. package/dist/chunks/theme-controller-D-ATwFal.js +1 -0
  283. package/dist/chunks/timeline-definition-24CTP7MA-QS9QNm2i.js +120 -0
  284. package/dist/chunks/tinycolor-CG1wnM-U.js +1 -0
  285. package/dist/chunks/togeojson.es-BE8iM7U6.js +1 -0
  286. package/dist/chunks/toolbar-controls-CThS0xuP.js +15 -0
  287. package/dist/chunks/trash-tHBT8Mpw.js +8 -0
  288. package/dist/chunks/treeView-Q6P3EWNA-CN0l7whJ.js +1 -0
  289. package/dist/chunks/treemap-WGGIJYW6-C4P1fQxS.js +1 -0
  290. package/dist/chunks/typography-DKK_iHcj.js +1 -0
  291. package/dist/chunks/ui-BFsHoY7a.js +1 -0
  292. package/dist/chunks/ui-utils-ClxYogUQ.js +1 -0
  293. package/dist/chunks/upload-M-n6woFv.js +8 -0
  294. package/dist/chunks/useCrudOperationColumn-D935tixd.js +1 -0
  295. package/dist/chunks/useListPage-CbcOQG4m.js +1 -0
  296. package/dist/chunks/useModalViewport-HF7te75S.js +1 -0
  297. package/dist/chunks/useRowSelection-4GOMFmjG.js +1 -0
  298. package/dist/chunks/useStatusToggle-B2qZaoc-.js +1 -0
  299. package/dist/chunks/user-round-kYfBkPNu.js +15 -0
  300. package/dist/chunks/users-BXZLb4TY.js +8 -0
  301. package/dist/chunks/vennDiagram-4TSXK5OY-CVd73ycc.js +34 -0
  302. package/dist/chunks/view-B8ZvC8z3.js +1 -0
  303. package/dist/chunks/viewer-Ct88ypIL.js +24 -0
  304. package/dist/chunks/wardley-WFR3VGLG-cG9pRFwD.js +1 -0
  305. package/dist/chunks/wardleyDiagram-VM6X3IG4-B42d0Gqz.js +78 -0
  306. package/dist/chunks/wordDoc-BZY3ZnxN.js +152 -0
  307. package/dist/chunks/wordDocx-Bt2mlB3C.js +77 -0
  308. package/dist/chunks/wordMl-Y_ghyTZ8.js +1 -0
  309. package/dist/chunks/worker-engine-B4e92GsN.js +17369 -0
  310. package/dist/chunks/x-Ak9hw1R9.js +8 -0
  311. package/dist/chunks/xmind-CF9YwkOD.js +58 -0
  312. package/dist/chunks/xychartDiagram-S5SC5T6Z-B_Owv9Ho.js +7 -0
  313. package/dist/file-viewer/flyfish-viewer-assets.json +46 -0
  314. package/dist/file-viewer/vendor/docx/docx.worker.js +5 -0
  315. package/dist/file-viewer/vendor/docx/jszip.min.js +13 -0
  316. package/dist/file-viewer/vendor/xlsx/sheet.worker.js +107 -0
  317. package/dist/file-viewer/wasm/data/sql-wasm.wasm +0 -0
  318. package/dist/index.d.ts +5 -0
  319. package/dist/index.js +1 -0
  320. package/dist/public/avatars/avatar-01.svg +1 -0
  321. package/dist/public/avatars/avatar-02.svg +1 -0
  322. package/dist/public/avatars/avatar-03.svg +1 -0
  323. package/dist/public/avatars/avatar-04.svg +1 -0
  324. package/dist/public/avatars/avatar-05.svg +1 -0
  325. package/dist/public/avatars/avatar-06.svg +1 -0
  326. package/dist/public/avatars/avatar-07.svg +1 -0
  327. package/dist/public/avatars/avatar-08.svg +1 -0
  328. package/dist/public/avatars/avatar-09.svg +1 -0
  329. package/dist/public/avatars/avatar-10.svg +1 -0
  330. package/dist/public/avatars/avatar-11.svg +1 -0
  331. package/dist/public/avatars/avatar-12.svg +1 -0
  332. package/dist/public/monaco/vs/abap-D-t0cyap.js +1 -0
  333. package/dist/public/monaco/vs/apex-CcIm7xu6.js +1 -0
  334. package/dist/public/monaco/vs/assets/css.worker-URu8fCFR.js +97 -0
  335. package/dist/public/monaco/vs/assets/editor.worker-lj3bdIIn.js +30 -0
  336. package/dist/public/monaco/vs/assets/editorWebWorkerMain-CA_vMoUU.js +30 -0
  337. package/dist/public/monaco/vs/assets/html.worker-D1SL3iM8.js +474 -0
  338. package/dist/public/monaco/vs/assets/json.worker-CoJx_OPf.js +62 -0
  339. package/dist/public/monaco/vs/assets/ts.worker-BWKtMYOk.js +67722 -0
  340. package/dist/public/monaco/vs/azcli-BA0tQDCg.js +1 -0
  341. package/dist/public/monaco/vs/basic-languages/monaco.contribution.js +1 -0
  342. package/dist/public/monaco/vs/bat-C397hTD6.js +1 -0
  343. package/dist/public/monaco/vs/bicep-DF5aW17k.js +2 -0
  344. package/dist/public/monaco/vs/cameligo-plsz8qhj.js +1 -0
  345. package/dist/public/monaco/vs/clojure-Y2auQMzK.js +1 -0
  346. package/dist/public/monaco/vs/coffee-Bu45yuWE.js +1 -0
  347. package/dist/public/monaco/vs/cpp-CkKPQIni.js +1 -0
  348. package/dist/public/monaco/vs/csharp-CX28MZyh.js +1 -0
  349. package/dist/public/monaco/vs/csp-D8uWnyxW.js +1 -0
  350. package/dist/public/monaco/vs/css-CaeNmE3S.js +3 -0
  351. package/dist/public/monaco/vs/css.worker-CyhWkhHo.js +1 -0
  352. package/dist/public/monaco/vs/cssMode-CV6Ay48H.js +1 -0
  353. package/dist/public/monaco/vs/cypher-DVThT8BS.js +1 -0
  354. package/dist/public/monaco/vs/dart-CmGfCvrO.js +1 -0
  355. package/dist/public/monaco/vs/dockerfile-CZqqYdch.js +1 -0
  356. package/dist/public/monaco/vs/ecl-30fUercY.js +1 -0
  357. package/dist/public/monaco/vs/editor/editor.main.css +1 -0
  358. package/dist/public/monaco/vs/editor/editor.main.js +1 -0
  359. package/dist/public/monaco/vs/editor-KLE6jdfb.js +831 -0
  360. package/dist/public/monaco/vs/editor.js +1 -0
  361. package/dist/public/monaco/vs/editorWorkerHost-fVE1cjcC.js +35 -0
  362. package/dist/public/monaco/vs/elixir-xjPaIfzF.js +1 -0
  363. package/dist/public/monaco/vs/flow9-DqtmStfK.js +1 -0
  364. package/dist/public/monaco/vs/freemarker2-FWreY7v7.js +3 -0
  365. package/dist/public/monaco/vs/fsharp-BOMdg4U1.js +1 -0
  366. package/dist/public/monaco/vs/go-D_hbi-Jt.js +1 -0
  367. package/dist/public/monaco/vs/graphql-CKUU4kLG.js +1 -0
  368. package/dist/public/monaco/vs/handlebars-CZi4pHCH.js +1 -0
  369. package/dist/public/monaco/vs/hcl-DTaboeZW.js +1 -0
  370. package/dist/public/monaco/vs/html-j_7ZTNRU.js +1 -0
  371. package/dist/public/monaco/vs/html.worker-CA3iAimZ.js +1 -0
  372. package/dist/public/monaco/vs/htmlMode-27by_KM4.js +1 -0
  373. package/dist/public/monaco/vs/index-049xrXrp.js +1 -0
  374. package/dist/public/monaco/vs/index-CBVt3dzv.js +5 -0
  375. package/dist/public/monaco/vs/index.js +1 -0
  376. package/dist/public/monaco/vs/ini-CsNwO04R.js +1 -0
  377. package/dist/public/monaco/vs/initialize-DL0l1TGY.js +1 -0
  378. package/dist/public/monaco/vs/java-CI4ZMsH9.js +1 -0
  379. package/dist/public/monaco/vs/javascript-DTJl4Jn1.js +1 -0
  380. package/dist/public/monaco/vs/json.worker-BizpAl9O.js +1 -0
  381. package/dist/public/monaco/vs/jsonMode-DLUiMUrI.js +1 -0
  382. package/dist/public/monaco/vs/julia-BwzEvaQw.js +1 -0
  383. package/dist/public/monaco/vs/kotlin-IUYPiTV8.js +1 -0
  384. package/dist/public/monaco/vs/language/css/monaco.contribution.js +1 -0
  385. package/dist/public/monaco/vs/language/html/monaco.contribution.js +1 -0
  386. package/dist/public/monaco/vs/language/json/monaco.contribution.js +1 -0
  387. package/dist/public/monaco/vs/language/typescript/monaco.contribution.js +1 -0
  388. package/dist/public/monaco/vs/less-C0eDYdqa.js +2 -0
  389. package/dist/public/monaco/vs/lexon-iON-Kj97.js +1 -0
  390. package/dist/public/monaco/vs/liquid-CLJYelW6.js +1 -0
  391. package/dist/public/monaco/vs/loader.js +1368 -0
  392. package/dist/public/monaco/vs/lspLanguageFeatures-BIkJOWLw.js +2 -0
  393. package/dist/public/monaco/vs/lua-DtygF91M.js +1 -0
  394. package/dist/public/monaco/vs/m3-CsR4AuFi.js +1 -0
  395. package/dist/public/monaco/vs/main-BEx-Fmlo.js +15 -0
  396. package/dist/public/monaco/vs/main-DsK8pnKg.js +3 -0
  397. package/dist/public/monaco/vs/markdown-C_rD0bIw.js +1 -0
  398. package/dist/public/monaco/vs/mdx-CpzZIPHF.js +1 -0
  399. package/dist/public/monaco/vs/mips-CiYP61RB.js +1 -0
  400. package/dist/public/monaco/vs/monaco.contribution-9cKT3C7t.js +1 -0
  401. package/dist/public/monaco/vs/monaco.contribution-BE88ZNGY.js +1 -0
  402. package/dist/public/monaco/vs/monaco.contribution-BPhsneLd.js +1 -0
  403. package/dist/public/monaco/vs/monaco.contribution-BgRy6xDf.js +1 -0
  404. package/dist/public/monaco/vs/msdax-C38-sJlp.js +1 -0
  405. package/dist/public/monaco/vs/mysql-CdtbpvbG.js +1 -0
  406. package/dist/public/monaco/vs/nls/lang/cs.d.ts +1 -0
  407. package/dist/public/monaco/vs/nls/lang/cs.js +9 -0
  408. package/dist/public/monaco/vs/nls/lang/de.d.ts +1 -0
  409. package/dist/public/monaco/vs/nls/lang/de.js +9 -0
  410. package/dist/public/monaco/vs/nls/lang/es.d.ts +1 -0
  411. package/dist/public/monaco/vs/nls/lang/es.js +9 -0
  412. package/dist/public/monaco/vs/nls/lang/fr.d.ts +1 -0
  413. package/dist/public/monaco/vs/nls/lang/fr.js +9 -0
  414. package/dist/public/monaco/vs/nls/lang/it.d.ts +1 -0
  415. package/dist/public/monaco/vs/nls/lang/it.js +9 -0
  416. package/dist/public/monaco/vs/nls/lang/ja.d.ts +1 -0
  417. package/dist/public/monaco/vs/nls/lang/ja.js +9 -0
  418. package/dist/public/monaco/vs/nls/lang/ko.d.ts +1 -0
  419. package/dist/public/monaco/vs/nls/lang/ko.js +9 -0
  420. package/dist/public/monaco/vs/nls/lang/pl.d.ts +1 -0
  421. package/dist/public/monaco/vs/nls/lang/pl.js +9 -0
  422. package/dist/public/monaco/vs/nls/lang/pt-br.d.ts +1 -0
  423. package/dist/public/monaco/vs/nls/lang/pt-br.js +9 -0
  424. package/dist/public/monaco/vs/nls/lang/ru.d.ts +1 -0
  425. package/dist/public/monaco/vs/nls/lang/ru.js +9 -0
  426. package/dist/public/monaco/vs/nls/lang/tr.d.ts +1 -0
  427. package/dist/public/monaco/vs/nls/lang/tr.js +9 -0
  428. package/dist/public/monaco/vs/nls/lang/zh-cn.d.ts +1 -0
  429. package/dist/public/monaco/vs/nls/lang/zh-cn.js +9 -0
  430. package/dist/public/monaco/vs/nls/lang/zh-tw.d.ts +1 -0
  431. package/dist/public/monaco/vs/nls/lang/zh-tw.js +9 -0
  432. package/dist/public/monaco/vs/nls.messages-loader.js +1 -0
  433. package/dist/public/monaco/vs/objective-c-CntZFaHX.js +1 -0
  434. package/dist/public/monaco/vs/pascal-r6kuqfl_.js +1 -0
  435. package/dist/public/monaco/vs/pascaligo-BiXoTmXh.js +1 -0
  436. package/dist/public/monaco/vs/perl-DABw_TcH.js +1 -0
  437. package/dist/public/monaco/vs/pgsql-me_jFXeX.js +1 -0
  438. package/dist/public/monaco/vs/php-D_kh-9LK.js +1 -0
  439. package/dist/public/monaco/vs/pla-VfZjczW0.js +1 -0
  440. package/dist/public/monaco/vs/postiats-BBSzz8Pk.js +1 -0
  441. package/dist/public/monaco/vs/powerquery-Dt-g_2cc.js +1 -0
  442. package/dist/public/monaco/vs/powershell-B-7ap1zc.js +1 -0
  443. package/dist/public/monaco/vs/protobuf-BmtuEB1A.js +2 -0
  444. package/dist/public/monaco/vs/pug-BRpRNeEb.js +1 -0
  445. package/dist/public/monaco/vs/python-CqWUUgfu.js +1 -0
  446. package/dist/public/monaco/vs/qsharp-BzsFaUU9.js +1 -0
  447. package/dist/public/monaco/vs/r-f8dDdrp4.js +1 -0
  448. package/dist/public/monaco/vs/razor-hok5y9Km.js +1 -0
  449. package/dist/public/monaco/vs/redis-fvZQY4PI.js +1 -0
  450. package/dist/public/monaco/vs/redshift-45Et0LQi.js +1 -0
  451. package/dist/public/monaco/vs/restructuredtext-C7UUFKFD.js +1 -0
  452. package/dist/public/monaco/vs/ruby-CZO8zYTz.js +1 -0
  453. package/dist/public/monaco/vs/rust-Bfetafyc.js +1 -0
  454. package/dist/public/monaco/vs/sb-3GYllVck.js +1 -0
  455. package/dist/public/monaco/vs/scala-foMgrKo1.js +1 -0
  456. package/dist/public/monaco/vs/scheme-CHdMtr7p.js +1 -0
  457. package/dist/public/monaco/vs/scss-C1cmLt9V.js +3 -0
  458. package/dist/public/monaco/vs/shell-ClXCKCEW.js +1 -0
  459. package/dist/public/monaco/vs/solidity-MZ6ExpPy.js +1 -0
  460. package/dist/public/monaco/vs/sophia-DWkuSsPQ.js +1 -0
  461. package/dist/public/monaco/vs/sparql-AUGFYSyk.js +1 -0
  462. package/dist/public/monaco/vs/sql-32GpJSV2.js +1 -0
  463. package/dist/public/monaco/vs/st-CuDFIVZ_.js +1 -0
  464. package/dist/public/monaco/vs/swift-t-PfMj7W.js +1 -0
  465. package/dist/public/monaco/vs/systemverilog-Ch4vA8Yt.js +1 -0
  466. package/dist/public/monaco/vs/tcl-D74tq1nH.js +1 -0
  467. package/dist/public/monaco/vs/toggleHighContrast-qGX7E9o7.js +61 -0
  468. package/dist/public/monaco/vs/ts.worker-2QLmBukE.js +1 -0
  469. package/dist/public/monaco/vs/tsMode-B0S_kp2q.js +11 -0
  470. package/dist/public/monaco/vs/twig-C6taOxMV.js +1 -0
  471. package/dist/public/monaco/vs/typescript-_2t_511t.js +1 -0
  472. package/dist/public/monaco/vs/typespec-8OfoLt6R.js +1 -0
  473. package/dist/public/monaco/vs/vb-Dyb2648j.js +1 -0
  474. package/dist/public/monaco/vs/wgsl-BhLXMOR0.js +298 -0
  475. package/dist/public/monaco/vs/workers-BBttULjf.js +1 -0
  476. package/dist/public/monaco/vs/xml-cZjNDqDT.js +1 -0
  477. package/dist/public/monaco/vs/yaml-A1fOIdH6.js +1 -0
  478. package/dist/src-LbWcrSWe.js +3 -0
  479. package/dist/styles.css +2 -0
  480. package/dist/styles.d.ts +1 -0
  481. package/dist/types.d.ts +1 -0
  482. package/package.json +113 -4
@@ -0,0 +1,79 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{n as t,t as n}from"./preload-helper-C-73SErw.js";import{a as r,o as i}from"../src-LbWcrSWe.js";import{t as a}from"./typography-DKK_iHcj.js";import{i as o,t as s}from"./feedback-BnjMKZpz.js";import{n as c,t as l}from"./createLucideIcon-BtwfYE6A.js";import{i as u,n as d,r as f,t as p}from"./menu-mQgsexFx.js";import{n as m,t as h}from"./chevron-down-mn2tSKQd.js";import{n as g,t as _}from"./copy-ofLPH1I0.js";import{n as v,t as y}from"./download--5IybXxz.js";import{n as b,t as x}from"./ellipsis-Dux1Nxa5.js";import{n as S,t as C}from"./layout-grid-Bp9bwiQZ.js";import{i as ee,n as w,r as te,t as T}from"./user-round-kYfBkPNu.js";import{n as E,t as D}from"./maximize-CnmQ11E7.js";import{n as O,t as k}from"./minimize-Bpau_zCe.js";import{n as A,t as j}from"./refresh-cw-Dz8O9-Hp.js";import{n as M,t as N}from"./rotate-ccw-D2__Zisi.js";import{n as P,t as F}from"./search-DYZU68h1.js";import{n as I,t as ne}from"./shield-alert-De_Hx56I.js";import{n as re,t as ie}from"./upload-M-n6woFv.js";import{n as ae,t as oe}from"./x-Ak9hw1R9.js";import{C as se,_ as ce,a as le,d as ue}from"./ui-BFsHoY7a.js";import{i as de,t as fe}from"./confirm-BtBBEqk8.js";import{n as pe,t as me}from"./ModalFooter-RMlvqrO9.js";import{n as he,r as ge}from"./clipboard-ERcMSMRH.js";import{n as _e,t as ve}from"./EmptyIllustration-DUC3RZmF.js";import{i as ye,n as be,t as xe}from"./icons-CbRx5Om7.js";import{n as Se,t as Ce}from"./theme-controller-D-ATwFal.js";import{n as we,t as Te}from"./ScrollArea-DqjJmHDN.js";import Ee,{Activity as De,Suspense as Oe,ViewTransition as ke,createContext as Ae,lazy as je,startTransition as Me,useCallback as Ne,useContext as Pe,useEffect as L,useId as Fe,useLayoutEffect as Ie,useMemo as R,useRef as z,useState as B}from"react";import{readCachedPreferences as Le}from"@fudanda/react-core/lib/preference-cache";import{isScheduledDarkNow as Re,msUntilScheduleBoundary as ze,sanitizeImportedPreferences as Be,useOptionalPreferences as Ve,usePreferences as V}from"@fudanda/react-core/hooks/usePreferences";import{Fragment as H,jsx as U,jsxs as W}from"react/jsx-runtime";import{App as He,Avatar as Ue,BackTop as We,Breadcrumb as Ge,Button as G,ConfigProvider as K,Drawer as Ke,Dropdown as qe,Form as q,Input as J,Menu as Je,Modal as Ye,Result as Xe,Space as Ze,Spin as Qe,Tabs as $e,Tooltip as Y,theme as X}from"antd";import{GoaError as et}from"@fudanda/client";import tt from"dayjs";import{Link as nt,Navigate as rt,Route as Z,Routes as it,useLocation as Q,useNavigate as at,useOutlet as ot}from"react-router-dom";import{useIsMobile as st,usePrefersDark as ct}from"@fudanda/react-core/hooks/useMediaQuery";import{formatDateTime as lt}from"@fudanda/react-core/utils/date";import{EmbeddedIdentityLogin as ut,IdentityCallback as dt,LoginField as ft,LoginFormError as pt,useLoginForm as mt}from"@fudanda/elements-antd";import{useArcBase as ht}from"@fudanda/react-core";import{useAuth as gt}from"@fudanda/react-core/hooks/useAuth";import{AdminPathsContext as _t,useAdminOptions as vt,useAdminTitle as yt}from"@fudanda/react-core/admin/runtime";import{useCurrentUserMenuTree as bt}from"@fudanda/react-core/hooks/queries/menus";import{useMountedAdminModules as xt}from"@fudanda/react-core/admin/modules";import{foundationPagePaths as St}from"@fudanda/react-core/lib/foundation-mode";import{useTabsStore as Ct}from"@fudanda/react-core/hooks/useTabsStore";import{TabsMetaContext as wt}from"@fudanda/react-core/hooks/useTabMeta";import{formatTopbarClock as Tt}from"@fudanda/react-core/utils/topbar-clock";import{useLockScreen as Et}from"@fudanda/react-core/hooks/useLockScreen";import{useAutoLock as Dt}from"@fudanda/react-core/hooks/useAutoLock";import{useLayoutShortcuts as Ot}from"@fudanda/react-core/hooks/useLayoutShortcuts";import{useFavoriteMenus as kt}from"@fudanda/react-core/hooks/useFavoriteMenus";import{PreferencesProvider as At}from"@fudanda/react-core/hooks/PreferencesProvider";import jt from"dayjs/plugin/updateLocale";import"dayjs/locale/zh-cn";import"dayjs/locale/en";import{RealtimeBridge as Mt}from"@fudanda/react-core/providers/RealtimeBridge";import{useRecentMenus as Nt}from"@fudanda/react-core/hooks/useRecentMenus";import Pt from"antd/locale/zh_CN";import Ft from"antd/locale/en_US";import{getThemeColorVars as It}from"@fudanda/react-core/lib/theme-color";import{downloadBlob as Lt}from"@fudanda/react-core/utils/download";import"@fudanda/elements-antd/styles.css";import{ApiLoginConflictSchema as Rt}from"@fudanda/shared/api/identity";import{takeAuthInvalidatedReason as zt}from"@fudanda/react-core/utils/http-client";import{useIdentityCapabilities as Bt,usePublicCaptcha as Vt}from"@fudanda/react-core/hooks/queries/auth-public";var Ht,Ut;function Wt(){return(Wt=e((()=>{
2
+ /**
3
+ * @license lucide-react v1.53.0 - ISC
4
+ *
5
+ * This source code is licensed under the ISC license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */
8
+ c(),Ht={name:`house`,size:24,node:[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]],aliases:[`home`]},Ht.node,Ut=l(Ht)})))()}var Gt,Kt;function qt(){return(qt=e((()=>{
9
+ /**
10
+ * @license lucide-react v1.53.0 - ISC
11
+ *
12
+ * This source code is licensed under the ISC license.
13
+ * See the LICENSE file in the root directory of this source tree.
14
+ */
15
+ c(),Gt={name:`lock-keyhole`,size:24,node:[[`circle`,{cx:`12`,cy:`16`,r:`1`,key:`1au0dj`}],[`rect`,{x:`3`,y:`10`,width:`18`,height:`12`,rx:`2`,key:`6s8ecr`}],[`path`,{d:`M7 10V7a5 5 0 0 1 10 0v3`,key:`1pqi11`}]]},Gt.node,Kt=l(Gt)})))()}var Jt,Yt;function Xt(){return(Xt=e((()=>{
16
+ /**
17
+ * @license lucide-react v1.53.0 - ISC
18
+ *
19
+ * This source code is licensed under the ISC license.
20
+ * See the LICENSE file in the root directory of this source tree.
21
+ */
22
+ c(),Jt={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]},Jt.node,Yt=l(Jt)})))()}var Zt,Qt;function $t(){return($t=e((()=>{
23
+ /**
24
+ * @license lucide-react v1.53.0 - ISC
25
+ *
26
+ * This source code is licensed under the ISC license.
27
+ * See the LICENSE file in the root directory of this source tree.
28
+ */
29
+ c(),Zt={name:`moon`,size:24,node:[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]},Zt.node,Qt=l(Zt)})))()}var en,tn;function nn(){return(nn=e((()=>{
30
+ /**
31
+ * @license lucide-react v1.53.0 - ISC
32
+ *
33
+ * This source code is licensed under the ISC license.
34
+ * See the LICENSE file in the root directory of this source tree.
35
+ */
36
+ c(),en={name:`panel-left-close`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m16 15-3-3 3-3`,key:`14y99z`}]],aliases:[`sidebar-close`]},en.node,tn=l(en)})))()}var rn,an;function on(){return(on=e((()=>{
37
+ /**
38
+ * @license lucide-react v1.53.0 - ISC
39
+ *
40
+ * This source code is licensed under the ISC license.
41
+ * See the LICENSE file in the root directory of this source tree.
42
+ */
43
+ c(),rn={name:`panel-left-open`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M9 3v18`,key:`fh3hqa`}],[`path`,{d:`m14 9 3 3-3 3`,key:`8010ee`}]],aliases:[`sidebar-open`]},rn.node,an=l(rn)})))()}var sn,cn;function ln(){return(ln=e((()=>{
44
+ /**
45
+ * @license lucide-react v1.53.0 - ISC
46
+ *
47
+ * This source code is licensed under the ISC license.
48
+ * See the LICENSE file in the root directory of this source tree.
49
+ */
50
+ c(),sn={name:`pin`,size:24,node:[[`path`,{d:`M12 17v5`,key:`bb1du9`}],[`path`,{d:`M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z`,key:`1nkz8b`}]]},sn.node,cn=l(sn)})))()}var un,dn;function fn(){return(fn=e((()=>{
51
+ /**
52
+ * @license lucide-react v1.53.0 - ISC
53
+ *
54
+ * This source code is licensed under the ISC license.
55
+ * See the LICENSE file in the root directory of this source tree.
56
+ */
57
+ c(),un={name:`settings`,size:24,node:[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]},un.node,dn=l(un)})))()}var pn,mn;function hn(){return(hn=e((()=>{
58
+ /**
59
+ * @license lucide-react v1.53.0 - ISC
60
+ *
61
+ * This source code is licensed under the ISC license.
62
+ * See the LICENSE file in the root directory of this source tree.
63
+ */
64
+ c(),pn={name:`star`,size:24,node:[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]},pn.node,mn=l(pn)})))()}var gn,_n;function vn(){return(vn=e((()=>{
65
+ /**
66
+ * @license lucide-react v1.53.0 - ISC
67
+ *
68
+ * This source code is licensed under the ISC license.
69
+ * See the LICENSE file in the root directory of this source tree.
70
+ */
71
+ c(),gn={name:`sun`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]},gn.node,_n=l(gn)})))()}var yn,bn;function xn(){return(xn=e((()=>{
72
+ /**
73
+ * @license lucide-react v1.53.0 - ISC
74
+ *
75
+ * This source code is licensed under the ISC license.
76
+ * See the LICENSE file in the root directory of this source tree.
77
+ */
78
+ c(),yn={name:`user`,size:24,node:[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]},yn.node,bn=l(yn)})))()}function Sn(){try{sessionStorage.setItem(Tn,`1`)}catch{}}function Cn(){try{return sessionStorage.getItem(Tn)===`1`}catch{return!1}}function wn(){try{sessionStorage.removeItem(Tn)}catch{}}var Tn;function En(){return(En=e((()=>{Tn=`arcbase_post_login_home`})))()}var $,Dn;function On(){return(On=e((()=>{t(),$=/* #__PURE__ */ Object.assign({"./pages/dashboard/DashboardPage.tsx":()=>n(()=>import(`./DashboardPage-BohGodSl.js`),[],import.meta.url),"./pages/profile/ProfilePage.tsx":()=>n(()=>import(`./ProfilePage-CVTRv7xb.js`),[],import.meta.url),"./pages/system/departments/DepartmentsPage.tsx":()=>n(()=>import(`./DepartmentsPage-DMWY__Y_.js`),[],import.meta.url),"./pages/system/dicts/DictsPage.tsx":()=>n(()=>import(`./DictsPage-DILDyHi-.js`),[],import.meta.url),"./pages/system/file-configs/FileStorageConfigsPage.tsx":()=>n(()=>import(`./FileStorageConfigsPage-CzuOgeK0.js`),[],import.meta.url),"./pages/system/files/FilesPage.tsx":()=>n(()=>import(`./FilesPage-BaEBCOCs.js`),[],import.meta.url),"./pages/system/identity-security/IdentitySecurityPage.tsx":()=>n(()=>import(`./IdentitySecurityPage-BO7nY8id.js`),[],import.meta.url),"./pages/system/login-logs/LoginLogsPage.tsx":()=>n(()=>import(`./LoginLogsPage-DTmHi8u0.js`),[],import.meta.url),"./pages/system/menus/MenusPage.tsx":()=>n(()=>import(`./MenusPage-DN8DTGB1.js`),[],import.meta.url),"./pages/system/operation-logs/OperationLogsPage.tsx":()=>n(()=>import(`./OperationLogsPage-BeRnGcBJ.js`).then(e=>(e.n(),e.t)),[],import.meta.url),"./pages/system/positions/PositionsPage.tsx":()=>n(()=>import(`./PositionsPage-DohI0luX.js`),[],import.meta.url),"./pages/system/roles/RolesPage.tsx":()=>n(()=>import(`./RolesPage-CtUw93L8.js`),[],import.meta.url),"./pages/system/sessions/OnlineSessionsPage.tsx":()=>n(()=>import(`./OnlineSessionsPage-FoHYZKlR.js`),[],import.meta.url),"./pages/system/settings/SettingsPage.tsx":()=>n(()=>import(`./SettingsPage-BRnCxYQm.js`),[],import.meta.url),"./pages/system/user-groups/UserGroupsPage.tsx":()=>n(()=>import(`./UserGroupsPage-CNwbejx-.js`),[],import.meta.url),"./pages/users/UsersPage.tsx":()=>n(()=>import(`./UsersPage-BXt9fOru.js`),[],import.meta.url)}),Dn={"/":$[`./pages/dashboard/DashboardPage.tsx`],"/system/departments":$[`./pages/system/departments/DepartmentsPage.tsx`],"/system/positions":$[`./pages/system/positions/PositionsPage.tsx`],"/system/users":$[`./pages/users/UsersPage.tsx`],"/system/menus":$[`./pages/system/menus/MenusPage.tsx`],"/system/roles":$[`./pages/system/roles/RolesPage.tsx`],"/system/user-groups":$[`./pages/system/user-groups/UserGroupsPage.tsx`],"/system/dicts":$[`./pages/system/dicts/DictsPage.tsx`],"/system/settings":$[`./pages/system/settings/SettingsPage.tsx`],"/system/identity-security":$[`./pages/system/identity-security/IdentitySecurityPage.tsx`],"/system/file-configs":$[`./pages/system/file-configs/FileStorageConfigsPage.tsx`],"/system/files":$[`./pages/system/files/FilesPage.tsx`],"/system/sessions":$[`./pages/system/sessions/OnlineSessionsPage.tsx`],"/system/login-logs":$[`./pages/system/login-logs/LoginLogsPage.tsx`],"/system/operation-logs":$[`./pages/system/operation-logs/OperationLogsPage.tsx`],"/profile":$[`./pages/profile/ProfilePage.tsx`]}})))()}function kn({mode:e,showDate:t}){let[n,r]=B(()=>/* @__PURE__ */ new Date);return L(()=>{let e,t=setTimeout(()=>{r(/* @__PURE__ */ new Date),e=setInterval(()=>r(/* @__PURE__ */ new Date),6e4)},(60-(/* @__PURE__ */ new Date()).getSeconds())*1e3+50);return()=>{clearTimeout(t),e!==void 0&&clearInterval(e)}},[]),/* @__PURE__ */ U(`span`,{className:`admin-topbar-clock`,title:Tt(n,e,!0),children:Tt(n,e,t)})}function An(){return(An=e((()=>{})))()}function jn(e){return e.name===`ChunkLoadError`||/Failed to fetch dynamically imported module|error loading dynamically imported module|Importing a module script failed/i.test(e.message)}function Mn({children:e}){let{pathname:t}=Q();return/* @__PURE__ */ U(Nn,{resetKey:t,children:e})}var Nn;function Pn(){return(Pn=e((()=>{se(),A(),Wt(),g(),ge(),_e(),Nn=class extends Ee.Component{static contextType=_t;constructor(e){super(e),this.state={error:null,componentStack:null,resetKey:e.resetKey}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return e.resetKey===t.resetKey?null:{error:null,componentStack:null,resetKey:e.resetKey}}componentDidCatch(e,t){console.error(`[PageErrorBoundary] 捕获到运行时错误:`,e,t.componentStack),this.setState({componentStack:t.componentStack??null})}handleRetry=()=>{this.state.error&&jn(this.state.error)?globalThis.location.reload():this.setState({error:null,componentStack:null})};handleCopy=()=>{let{error:e,componentStack:t}=this.state;if(!e)return;let n=[`[ArcBase 页面错误报告]`,`时间: ${lt(/* @__PURE__ */ new Date)}`,`页面: ${globalThis.location.href}`,`浏览器: ${navigator.userAgent}`,``,`${e.name}: ${e.message}`,e.stack?`\n堆栈:\n${e.stack}`:``,t?`\n组件栈:${t}`:``].filter(Boolean).join(`
79
+ `);he(n,{success:`错误信息已复制,可粘贴给开发人员排查`,error:`复制失败,请手动选择复制`})};render(){if(!this.state.error)return this.props.children;let e=this.state.error,t=jn(e);return/* @__PURE__ */ U(`div`,{style:{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`safe center`,minHeight:`min(400px, 100dvh)`,maxHeight:`100dvh`,overflowY:`auto`,padding:`40px 24px`},children:/* @__PURE__ */ W(ue,{...ve(`Failure`,120),title:t?`页面资源加载失败`:`页面加载出错`,description:t?`可能是网络不稳定,或系统刚刚发布了新版本。点击重新加载获取最新页面。`:`当前页面遇到了一个意外错误。你可以尝试刷新页面,或返回首页继续操作。`,children:[!1,/* @__PURE__ */ W(`div`,{style:{display:`flex`,gap:12,marginTop:16,justifyContent:`center`},children:[/* @__PURE__ */ U(le,{icon:/* @__PURE__ */ U(j,{size:14}),theme:`solid`,type:`primary`,onClick:this.handleRetry,children:`重新加载`}),/* @__PURE__ */ U(le,{icon:/* @__PURE__ */ U(Ut,{size:14}),theme:`light`,type:`primary`,onClick:()=>{globalThis.location.href=this.context?.basePath??`./`},children:`返回首页`}),/* @__PURE__ */ U(le,{icon:/* @__PURE__ */ U(_,{size:14}),theme:`light`,type:`tertiary`,onClick:this.handleCopy,children:`复制错误信息`})]})]})})}}})))()}function Fn({lock:e,mode:t,onClose:n}){let r=gt(),{preferences:i}=V(),{message:a}=He.useApp();return e.isLocked?/* @__PURE__ */ U(Xe,{title:`屏幕已锁定`,subTitle:`输入锁屏密码继续使用管理台`,extra:/* @__PURE__ */ W(q,{style:{maxWidth:320,margin:`auto`},onFinish:({password:t})=>{e.unlock(t)||a.error(`锁屏密码不正确`)},children:[/* @__PURE__ */ U(q.Item,{name:`password`,rules:[{required:!0,message:`请输入锁屏密码`}],children:/* @__PURE__ */ U(J.Password,{autoFocus:!0,placeholder:`锁屏密码`})}),/* @__PURE__ */ U(G,{type:`primary`,htmlType:`submit`,children:`解锁`}),` `,/* @__PURE__ */ U(G,{onClick:()=>{e.clearLockPassword(),r.logout().catch(e=>{a.error(e instanceof Error?e.message:`退出失败,请重试`)})},children:`退出登录`})]})}):/* @__PURE__ */ U(Ye,{title:t===`change`?`修改锁屏密码`:`设置锁屏密码`,open:t!==null,onCancel:n,mask:{closable:i.modalClickMaskToClose},footer:null,destroyOnHidden:!0,children:/* @__PURE__ */ W(q,{layout:`vertical`,onFinish:r=>{t===`change`&&!e.verifyLockPassword(r.current??``)?a.error(`原锁屏密码不正确`):(e.setLockPassword(r.password),n(),a.success(`锁屏密码已保存`))},children:[t===`change`&&/* @__PURE__ */ U(q.Item,{name:`current`,label:`原锁屏密码`,rules:[{required:!0}],children:/* @__PURE__ */ U(J.Password,{autoComplete:`off`})}),/* @__PURE__ */ U(q.Item,{name:`password`,label:`新锁屏密码`,rules:[{required:!0},{min:4,message:`至少输入 4 位字符`}],children:/* @__PURE__ */ U(J.Password,{autoComplete:`new-password`})}),/* @__PURE__ */ U(q.Item,{name:`confirm`,label:`确认密码`,dependencies:[`password`],rules:[{required:!0},({getFieldValue:e})=>({validator:(t,n)=>n===e(`password`)?Promise.resolve():Promise.reject(/* @__PURE__ */ Error(`两次密码不一致`))})],children:/* @__PURE__ */ U(J.Password,{autoComplete:`new-password`})}),/* @__PURE__ */ U(G,{htmlType:`submit`,type:`primary`,children:`保存`})]},t)})}function In(){return(In=e((()=>{})))()}function Ln({name:e,size:t=16,fallback:n=null,...r}){return ye(),e?be(e,t,r)??n:n}function Rn(){return(Rn=e((()=>{xe()})))()}function zn(e){let t=e===`sunday`?0:1;return tt.updateLocale(`zh-cn`,{weekStart:t}),tt.updateLocale(`en`,{weekStart:t}),Promise.resolve()}function Bn(){return(Bn=e((()=>{tt.extend(jt)})))()}function Vn({children:e}){return/* @__PURE__ */ U(At,{onWeekStartChange:zn,children:e})}function Hn(){return(Hn=e((()=>{Bn()})))()}function Un({children:e,dark:t}){let{token:n}=X.useToken();return L(()=>{document.body.setAttribute(`theme-mode`,t?`dark`:`light`),document.body.style.colorScheme=t?`dark`:`light`,document.body.style.fontFamily=n.fontFamily;let e={"font-family":n.fontFamily??`-apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif`,"color-primary":n.colorPrimary,"color-primary-hover":n.colorPrimaryHover,"color-primary-active":n.colorPrimaryActive,"color-primary-light-default":n.colorPrimaryBg,"color-primary-light-hover":n.colorPrimaryBgHover,"color-primary-light-active":n.colorPrimaryBorder,"color-bg-0":n.colorBgLayout,"color-bg-1":n.colorBgContainer,"color-bg-2":n.colorBgElevated,"color-bg-3":n.colorBgSpotlight,"color-text-0":n.colorText,"color-text-1":n.colorTextSecondary,"color-text-2":n.colorTextTertiary,"color-text-3":n.colorTextQuaternary,"color-border":n.colorBorder,"color-fill-0":n.colorFillTertiary,"color-fill-1":n.colorFillSecondary,"color-fill-2":n.colorFill,"color-danger":n.colorError,"color-success":n.colorSuccess,"color-warning":n.colorWarning,"color-info":n.colorInfo,"color-danger-light-default":n.colorErrorBg,"color-success-light-default":n.colorSuccessBg,"color-warning-light-default":n.colorWarningBg,"border-radius-small":n.borderRadiusSM+`px`,"border-radius-medium":n.borderRadius+`px`,"border-radius-large":n.borderRadiusLG+`px`};for(let[t,n]of Object.entries(e))document.body.style.setProperty(`--arc-antd-`+t,n);for(let[e,t]of Object.entries({primary:n.colorPrimary,success:n.colorSuccess,warning:n.colorWarning,danger:n.colorError}))document.body.style.setProperty(`--arcbase-avatar-`+e,t)},[n,t]),/* @__PURE__ */ U(H,{children:e})}function Wn({children:e}){let t=Ve(),[n]=B(Le),{locale:r,theme:i}=vt(),a=R(()=>t?.preferences??{...n,colorMode:i??n.colorMode},[t?.preferences,n,i]),o=ct(),[c,l]=B(()=>/* @__PURE__ */ new Date);L(()=>{l(/* @__PURE__ */ new Date)},[a.scheduledDarkMode,a.scheduledDarkStart,a.scheduledDarkEnd]),L(()=>{let e=()=>{document.visibilityState===`visible`&&l(/* @__PURE__ */ new Date)};return document.addEventListener(`visibilitychange`,e),window.addEventListener(`focus`,e),()=>{document.removeEventListener(`visibilitychange`,e),window.removeEventListener(`focus`,e)}},[]),L(()=>{let e=ze(a,c);if(e===null)return;let t=setTimeout(()=>l(/* @__PURE__ */ new Date),e+50);return()=>clearTimeout(t)},[a,c]);let u=a.colorMode===`dark`||a.colorMode===`system`&&o||Re(a,c),d=It(a.themeColor,u),f={none:0,small:4,medium:6,large:12}[a.borderRadius],p=a.fontFamily===`mono`?`"Cascadia Code", Consolas, monospace`:a.fontFamily===`inter`?`Inter, "Microsoft YaHei", sans-serif`:a.fontFamily===`noto-sans-sc`?`"Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif`:X.defaultSeed.fontFamily;return L(()=>{document.body.style.setProperty(`--arcbase-ui-scale`,String(a.uiScale/100)),document.body.style.setProperty(`zoom`,String(a.uiScale/100)),document.body.dataset.reduceMotion=String(a.reduceMotion),document.body.style.filter=a.grayscale?`grayscale(1)`:a.colorBlind?`saturate(.75) contrast(1.1)`:``},[a.uiScale,a.reduceMotion,a.grayscale,a.colorBlind]),/* @__PURE__ */ U(Gn.Provider,{value:u,children:/* @__PURE__ */ U(K,{locale:r===`en-US`?Ft:Pt,theme:{algorithm:u?X.darkAlgorithm:X.defaultAlgorithm,token:{colorPrimary:d.primary,borderRadius:f,fontFamily:p,...a.reduceMotion?{motionDurationFast:`0s`,motionDurationMid:`0s`,motionDurationSlow:`0s`}:{}}},children:/* @__PURE__ */ W(He,{children:[/* @__PURE__ */ U(s,{}),/* @__PURE__ */ U(Ce.Provider,{value:{isDark:u,mode:a.colorMode,themeColor:a.themeColor,setThemeMode:e=>t?.setPreferences({colorMode:e}),setThemeColor:e=>t?.setPreferences({themeColor:e}),cycleTheme:()=>t?.setPreferences({colorMode:a.colorMode===`light`?`dark`:a.colorMode===`dark`?`system`:`light`}),resetTheme:()=>t?.resetPreference([`colorMode`,`themeColor`])},children:/* @__PURE__ */ U(Un,{dark:u,children:e})})]})})})}var Gn,Kn;function qn(){return(qn=e((()=>{se(),Se(),Gn=Ae(!1),Kn=()=>Pe(Gn)})))()}function Jn(){let{overrides:e,setPreferences:t}=V(),[n,r]=B(!1),[i,a]=B(``),s=Ne(()=>{he(JSON.stringify({overrides:e},null,2),{success:`偏好设置已复制到剪贴板`,error:`复制失败,请重试`})},[e]),c=Ne(()=>{Lt(new Blob([JSON.stringify({overrides:e},null,2)],{type:`application/json`}),`arcbase-preferences.json`),o.success(`偏好配置已导出为文件`)},[e]),[l,u]=B(!1),[d,f]=B(``);return{prefsVisible:n,setPrefsVisible:r,prefsSearch:i,setPrefsSearch:a,handleCopyPreferences:s,handleExportPreferences:c,importPrefsVisible:l,setImportPrefsVisible:u,importPrefsText:d,setImportPrefsText:f,handleImportPreferences:Ne(()=>{let e;try{e=JSON.parse(d)}catch{o.error(`JSON 解析失败,请检查格式`);return}let n=Be(e&&typeof e==`object`&&`overrides`in e?e.overrides:null);if(!n){o.error(`未识别到有效的偏好设置字段`);return}let r=t(n);u(!1),f(``),r.applied>0?o.success(`已导入 ${r.applied} 项设置${r.skipped?`,跳过 ${r.skipped} 项系统管理设置`:``}`):o.info(`所选设置由系统管理,未导入任何修改`)},[d,t])}}function Yn(){return(Yn=e((()=>{se(),ge()})))()}function Xn({homePaths:e,lock:t}){let{preferences:n,setPreferences:r,resetPreferences:i,hasEditablePreferences:a}=V(),o=Jn(),s=Kn(),[c,l]=B(null),u=()=>{o.setImportPrefsVisible(!1),o.setImportPrefsText(``)};return/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(Y,{title:`偏好设置`,children:/* @__PURE__ */ U(G,{type:`text`,"aria-label":`偏好设置`,icon:/* @__PURE__ */ U(dn,{size:17}),onClick:()=>o.setPrefsVisible(!0)})}),/* @__PURE__ */ W(K,{theme:{algorithm:s?X.darkAlgorithm:X.defaultAlgorithm},children:[/* @__PURE__ */ W(Ke,{title:/* @__PURE__ */ W(`div`,{className:`arc-preferences__title`,children:[`偏好设置`,/* @__PURE__ */ U(`span`,{children:`打造适合你的工作界面`})]}),open:o.prefsVisible,onClose:()=>o.setPrefsVisible(!1),size:`min(680px, 100vw)`,destroyOnHidden:!0,className:`arc-preferences`,styles:{body:{padding:0,display:`flex`,flexDirection:`column`,overflow:`hidden`}},footer:/* @__PURE__ */ W(`div`,{className:`arc-preferences__footer`,children:[/* @__PURE__ */ U(`p`,{children:`修改后自动保存;单项可通过「跟随系统」恢复默认。`}),/* @__PURE__ */ W(`div`,{className:`arc-preferences__actions`,children:[/* @__PURE__ */ U(G,{icon:/* @__PURE__ */ U(_,{size:14}),onClick:o.handleCopyPreferences,children:`复制`}),/* @__PURE__ */ U(G,{icon:/* @__PURE__ */ U(ie,{size:14}),disabled:!a,onClick:()=>o.setImportPrefsVisible(!0),children:`导入`}),/* @__PURE__ */ U(G,{icon:/* @__PURE__ */ U(y,{size:14}),onClick:o.handleExportPreferences,children:`导出`}),/* @__PURE__ */ U(G,{danger:!0,icon:/* @__PURE__ */ U(N,{size:14}),disabled:!a,onClick:()=>fe({title:`恢复系统默认`,content:`清除个人偏好覆盖,重新跟随系统当前默认值。确定恢复吗?`,okText:`重置`,cancelText:`取消`,onOk:i}),children:`恢复默认`})]})]}),children:[/* @__PURE__ */ U(`div`,{className:`arc-preferences__search`,children:/* @__PURE__ */ U(J,{allowClear:!0,prefix:/* @__PURE__ */ U(F,{size:16}),placeholder:`搜索全部设置,如主题、表格、锁屏`,"aria-label":`搜索偏好设置`,value:o.prefsSearch,onChange:e=>o.setPrefsSearch(e.target.value)})}),/* @__PURE__ */ U(Oe,{fallback:/* @__PURE__ */ U(`div`,{className:`arc-preferences__loading`,children:/* @__PURE__ */ U(Qe,{tip:`正在加载设置`})}),children:/* @__PURE__ */ U(Zn,{...o,preferences:n,setPreferences:r,navLayout:n.navLayout,mode:n.colorMode,handleThemeModeChange:e=>r({colorMode:e}),isDark:s,themeColor:n.themeColor,setThemeColor:e=>r({themeColor:e}),quickChatEnabled:!1,homePathOptions:e,autoLockMinutes:t.autoLockMinutes,setAutoLockMinutes:t.setAutoLockMinutes,hasPassword:t.hasPassword,clearLockPassword:t.clearLockPassword,openLockPasswordModal:l,onClearSearch:()=>o.setPrefsSearch(``)})})]}),/* @__PURE__ */ U(Fn,{lock:t,mode:c,onClose:()=>l(null)}),/* @__PURE__ */ W(Ye,{title:`导入偏好设置`,open:o.importPrefsVisible,onCancel:u,mask:{closable:n.modalClickMaskToClose},destroyOnHidden:!0,footer:/* @__PURE__ */ U(me,{onCancel:u,onOk:o.handleImportPreferences,okText:`导入`}),children:[/* @__PURE__ */ U(`p`,{children:`粘贴导出的配置。仅更新有效且允许个人调整的字段。`}),/* @__PURE__ */ U(J.TextArea,{rows:10,"aria-label":`偏好配置 JSON`,value:o.importPrefsText,onChange:e=>o.setImportPrefsText(e.target.value),placeholder:`{"overrides":{}}`})]})]})]})}var Zn;function Qn(){return(Qn=e((()=>{g(),v(),M(),P(),fn(),re(),qn(),pe(),de(),In(),Yn(),t(),Zn=je(()=>n(()=>import(`./PreferencesSheetBody-B9niQABW.js`),[],import.meta.url))})))()}var $n;function er(){return(er=e((()=>{$n=`route-back`})))()}function tr({animation:e,children:t}){return!e||e===`none`?/* @__PURE__ */ U(ke,{default:`none`,children:t}):/* @__PURE__ */ U(ke,{default:`none`,enter:nr[e],exit:rr[e],children:t})}var nr,rr;function ir(){return(ir=e((()=>{er(),nr={fade:`route-vt-fade-in`,"slide-up":`route-vt-slide-up-in`,"slide-left":{[$n]:`route-vt-slide-right-in`,default:`route-vt-slide-left-in`}},rr={fade:`route-vt-fade-out`,"slide-up":`route-vt-slide-up-out`,"slide-left":{[$n]:`route-vt-slide-right-out`,default:`route-vt-slide-left-out`}}})))()}function ar({keepAlivePaths:e,openPaths:t,refreshVersion:n,scrollContainerSelector:r=`.admin-content`,animation:i}){let a=ot(),{pathname:o}=Q(),s=z(/* @__PURE__ */ new Map),c=z(null),l=s.current,u=e.has(o),d=n[o]??0;if(u){let e=l.get(o);!e||e.version!==d?(l.delete(o),l.set(o,{element:a,version:d,scrollTop:e?.scrollTop??0})):(e.element=a,l.delete(o),l.set(o,e))}for(let n of[...l.keys()])(!e.has(n)||n!==o&&!t.has(n))&&l.delete(n);for(;l.size>or;){let e=[...l.keys()].find(e=>e!==o);if(!e)break;l.delete(e)}return Ie(()=>{let e=document.querySelector(r),t=c.current;if(e&&t&&t!==o){let n=l.get(t);n&&(n.scrollTop=e.scrollTop)}e&&(e.scrollTop=l.get(o)?.scrollTop??0),c.current=o},[o,r,l]),/* @__PURE__ */ W(H,{children:[[...l.entries()].map(([e,t])=>/* @__PURE__ */ U(De,{mode:e===o?`visible`:`hidden`,children:/* @__PURE__ */ U(tr,{animation:i,children:/* @__PURE__ */ U(`div`,{style:{height:`100%`},children:t.element})})},`${e}:${t.version}`)),!u&&/* @__PURE__ */ U(tr,{animation:i,children:/* @__PURE__ */ U(`div`,{style:{height:`100%`},children:a})},`${o}:${d}`)]})}var or;function sr(){return(sr=e((()=>{ir(),or=10})))()}function cr({menus:e,recentMenus:t,onClearRecents:n,onRemoveRecent:r}){let[i,a]=B(!1),[o,s]=B(!1),c=z(null),l=Ve()?.preferences.enableShortcuts??!0;return L(()=>{let e=()=>{s(!0),a(!0)},t=e=>{(e.ctrlKey||e.metaKey)&&e.key===`k`&&l&&(e.preventDefault(),s(!0),a(e=>!e)),e.key===`Escape`&&a(!1)};return globalThis.addEventListener(`open-menu-palette`,e),globalThis.addEventListener(`keydown`,t),()=>{globalThis.removeEventListener(`open-menu-palette`,e),globalThis.removeEventListener(`keydown`,t)}},[l]),L(()=>{if(i)return;let e=setTimeout(()=>{let e=document.activeElement;e instanceof HTMLElement&&e.blur(),c.current?.blur()},0);return()=>clearTimeout(e)},[i]),/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ W(`button`,{ref:c,type:`button`,className:`menu-search-trigger`,onClick:()=>{s(!0),a(!0)},title:`全局搜索 (Ctrl+K)`,"aria-label":`全局搜索`,"aria-expanded":i,children:[/* @__PURE__ */ U(`span`,{className:`menu-search-trigger__icon`,children:/* @__PURE__ */ U(F,{size:16,strokeWidth:1.8})}),/* @__PURE__ */ U(`span`,{className:`menu-search-trigger__label`,children:`全局搜索`}),/* @__PURE__ */ U(`kbd`,{className:`menu-search-trigger__kbd`,children:`Ctrl K`})]}),o&&/* @__PURE__ */ U(Oe,{fallback:null,children:/* @__PURE__ */ U(lr,{menus:e,recentMenus:t,onClearRecents:n,onRemoveRecent:r,open:i,onClose:()=>{a(!1),setTimeout(()=>{let e=document.activeElement;e instanceof HTMLElement&&e.blur(),c.current?.blur()},0)}})})]})}var lr;function ur(){return(ur=e((()=>{P(),t(),lr=je(()=>n(()=>import(`./MenuCommandPalette-BCOzf-Kq.js`),[],import.meta.url))})))()}function dr(e){return e.filter(e=>e.type!==`button`&&e.visible!==!1&&e.status===`enabled`)}function fr(e){return e.path||dr(e.children??[]).map(fr).find(Boolean)}function pr(e,t){for(let n of dr(e)){if(n.path===t)return[n];let e=pr(n.children??[],t);if(e.length)return[n,...e]}return[]}function mr({menus:e,path:t,title:n,isFavorite:r,toggleFavorite:i}){let{preferences:a}=V(),o=at(),s=pr(e,t),c=s.at(-1),l={title:/* @__PURE__ */ W(Ze,{size:4,children:[a.breadcrumbIcon&&/* @__PURE__ */ U(Ut,{size:13}),`首页`]}),onClick:a.breadcrumbClickable?()=>o(`/`):void 0},u=s.map((e,t)=>({title:/* @__PURE__ */ W(Ze,{size:4,children:[a.breadcrumbIcon&&e.icon&&/* @__PURE__ */ U(Ln,{name:e.icon}),` `,e.title]}),onClick:t<s.length-1&&a.breadcrumbClickable&&fr(e)?()=>o(fr(e)):void 0,...a.breadcrumbSubMenu&&t<s.length-1?{menu:{items:dr(e.children??[]).map(e=>({key:String(e.id),label:e.title,onClick:()=>{let t=fr(e);t&&o(t)}}))}}:{}}));return/* @__PURE__ */ W(Ze,{size:6,style:{marginBottom:12},children:[/* @__PURE__ */ U(Ge,{items:[...a.breadcrumbShowHome&&t!==`/`?[l]:[],...u.length?u:[{title:n}]]}),a.showFavorites&&c&&/* @__PURE__ */ U(G,{size:`small`,type:`text`,"aria-label":r(c.id)?`取消收藏此页`:`收藏此页`,onClick:()=>i(c.id),icon:/* @__PURE__ */ U(mn,{size:14,fill:r(c.id)?`currentColor`:`none`,style:{color:r(c.id)?`var(--arc-antd-color-warning)`:void 0}})})]})}function hr(){return(hr=e((()=>{Wt(),hn(),Rn()})))()}function gr(){let{pathname:e}=Q(),t=z(e),[n,r]=B(0);return L(()=>{if(t.current===e)return;t.current=e,r(20);let n=setInterval(()=>r(e=>Math.min(90,e+15)),100),i=setTimeout(()=>{clearInterval(n),r(100)},400),a=setTimeout(()=>r(0),700);return()=>{clearInterval(n),clearTimeout(i),clearTimeout(a)}},[e]),n>0?/* @__PURE__ */ U(`div`,{"aria-label":`页面切换进度`,role:`progressbar`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":n,style:{position:`fixed`,inset:`0 auto auto 0`,height:3,width:n+`%`,background:`var(--arc-antd-color-primary)`,zIndex:2e3,transition:`width .2s, opacity .3s`,opacity:n===100?0:1}}):null}function _r(){return(_r=e((()=>{})))()}function vr({menus:e,current:t,favorites:n}){let r=at(),i=(e,t)=>{let r=[...n.favorites],i=r.indexOf(e),a=i+t;i<0||a<0||a>=r.length||([r[i],r[a]]=[r[a],r[i]],n.reorder(r))},a=n.favorites.flatMap((t,a)=>{let o=e.find(e=>e.id===t);return o?[{key:String(t),label:o.title,children:[{key:t+`-open`,label:`打开页面`,onClick:()=>o.path&&r(o.path)},{key:t+`-up`,label:`上移`,disabled:a===0,onClick:()=>i(t,-1)},{key:t+`-down`,label:`下移`,disabled:a===n.favorites.length-1,onClick:()=>i(t,1)},{key:t+`-remove`,label:`取消收藏`,onClick:()=>n.toggle(t)}]}]:[]});return/* @__PURE__ */ U(qe,{menu:{items:[...a,...t?[{key:`current`,label:n.isFavorite(t.id)?`取消收藏此页`:`收藏此页`,onClick:()=>n.toggle(t.id)}]:[]]},children:/* @__PURE__ */ U(G,{"aria-label":`收藏菜单`,icon:/* @__PURE__ */ U(mn,{size:16})})})}function yr(){return(yr=e((()=>{hn()})))()}function br(e){return e===`vertical`?{x1:`0`,y1:`0`,x2:`0`,y2:`1`}:{x1:`0`,y1:`0`,x2:`1`,y2:`0`}}function xr([e,t]){return`color-mix(in srgb, var(--arc-antd-color-primary) ${e}%, ${t})`}var Sr,Cr,wr;function Tr(){return(Tr=e((()=>{Sr=`0 0 64 64`,Cr=2.5,wr=[{key:`top`,d:`M8 46 L8 29 C8 15 18 6 32 6 L32 18 C25 18 20 23 20 30 L20 46Z`,axis:`horizontal`,stops:[[52,`#fff`],[70,`#fff`]]},{key:`band`,d:`M32 6 C46 6 56 15 56 29 L56 46 L44 46 L44 30 C44 23 39 18 32 18Z`,axis:`vertical`,stops:[[92,`#000`],[88,`#fff`]]},{key:`base`,d:`M8 46 L56 46 L56 57 L8 57Z M25 32 L39 32 L39 39 L25 39Z`,axis:`horizontal`,stops:[[80,`#000`],[66,`#000`]]}]})))()}function Er({size:e=28,className:t}){let n=Fe().replaceAll(/[^a-zA-Z0-9]/g,``),r=vt().brand?.logo;if(r!==void 0)return/* @__PURE__ */ U(`span`,{className:[`app-logo`,t].filter(Boolean).join(` `),style:{width:e,height:e,display:`inline-flex`,alignItems:`center`,justifyContent:`center`},children:r});let i=e=>`app-logo-${e}-${n}`,a=[`app-logo`,t].filter(Boolean).join(` `);return/* @__PURE__ */ W(`svg`,{className:a,width:e,height:e,viewBox:Sr,fill:`none`,"aria-hidden":`true`,focusable:`false`,children:[/* @__PURE__ */ U(`defs`,{children:wr.map(e=>/* @__PURE__ */ W(`linearGradient`,{id:i(e.key),...br(e.axis),children:[/* @__PURE__ */ U(`stop`,{offset:`0`,style:{stopColor:xr(e.stops[0])}}),/* @__PURE__ */ U(`stop`,{offset:`1`,style:{stopColor:xr(e.stops[1])}})]},e.key))}),wr.map(e=>/* @__PURE__ */ U(`path`,{d:e.d,fill:`url(#${i(e.key)})`,stroke:`url(#${i(e.key)})`,strokeWidth:Cr,strokeLinejoin:`round`},e.key))]})}function Dr(){return(Dr=e((()=>{Tr()})))()}function Or(){return(Or=e((()=>{})))()}function kr(){return(kr=e((()=>{})))()}function Ar({onLogin:e}){let t=yt(),{brand:n}=vt(),r=at(),i=Q(),a=new URLSearchParams(i.search),s=a.get(`redirect`)??`/`,c=s.startsWith(`/`)&&!s.startsWith(`//`)&&!s.startsWith(`/login`)?s:`/`,l=a.get(`username`)??``,{resolveSessionConflict:u}=gt(),[d,p]=B(!1),[m,h]=B(null),[g,_]=B(!1),[v,y]=B(null),b=Bt(),x=Vt(b.data?.passwordLogin===!0),S=x.data?.enabled??!1,C=S||v!==null,ee=v?.captchaId??x.data?.captchaId,w=v?.svg??x.data?.svg,te=()=>{x.refetch()},T=R(()=>({username:[{required:!0,message:`请输入用户名/手机号`}],password:[{required:!0,message:`请输入密码`}],captchaCode:C?[{required:!0,message:`请输入验证码`}]:[]}),[C]),E=R(()=>({username:l,password:``,captchaCode:``}),[l]),D=mt(E,T),[O,k]=B(null),A=z(!1),j=D.setValue;L(()=>{if(A.current)return;A.current=!0;let e=zt();e&&(e.reason&&e.reason!==`rotated`&&e.reason!==`logout`?(k(e),e.username&&!l&&j(`username`,e.username)):o.warning({content:e.message,duration:6}))},[j,l]);let M=()=>{c===`/`&&Sn(),r(c,{replace:!0})},N=async t=>{if(!d){p(!0);try{let n=await e(t.username,t.password,ee,C?t.captchaCode:void 0);D.setValue(`captchaCode`,``),n.outcome.type===`captcha`?(y(n.outcome.value),D.setFormError(n.outcome.value.message)):M()}catch(e){if(e instanceof et&&e.status===409){let t=Rt.safeParse(e.details);if(t.success&&t.data.details.type===`sessionLimit`){h(t.data.details.value);return}}D.setFormError(e instanceof Error?e.message:`登录失败`),S&&te()}finally{p(!1)}}},P=async()=>{if(m&&!g){_(!0);try{await u(m.ticket),h(null),M()}catch(e){D.setFormError(e instanceof Error?e.message:`登录失败`),h(null)}finally{_(!1)}}},F=e=>{e.preventDefault();let t=D.validate();t&&N(t)},I=()=>b.data?b.data.externalLogin?/* @__PURE__ */ U(ut,{onSuccess:M}):/* @__PURE__ */ W(`form`,{className:`login-form`,onSubmit:F,noValidate:!0,children:[/* @__PURE__ */ U(ft,{...D.field(`username`),id:`login-username`,placeholder:`请输入用户名/手机号`,prefix:/* @__PURE__ */ U(bn,{}),size:`large`,autoComplete:`username`}),/* @__PURE__ */ U(ft,{...D.field(`password`),id:`login-password`,mode:`password`,placeholder:`请输入密码`,prefix:/* @__PURE__ */ U(Yt,{}),size:`large`,autoComplete:`current-password`}),C&&/* @__PURE__ */ W(`div`,{style:{display:`flex`,gap:8,alignItems:`flex-start`},children:[/* @__PURE__ */ U(`div`,{style:{flex:1},children:/* @__PURE__ */ U(ft,{...D.field(`captchaCode`),id:`login-captcha`,placeholder:`请输入验证码`,size:`large`,autoComplete:`one-time-code`})}),S?/* @__PURE__ */ U(`button`,{type:`button`,style:{...Ir,cursor:`pointer`},title:`点击刷新验证码`,onClick:te,children:/* @__PURE__ */ U(`img`,{src:w,alt:`登录验证码`,width:160,height:48})}):/* @__PURE__ */ U(`img`,{src:w,alt:`登录验证码`,width:180,height:48})]}),/* @__PURE__ */ U(pt,{message:D.formError}),/* @__PURE__ */ U(le,{htmlType:`submit`,type:`primary`,theme:`solid`,loading:d,block:!0,size:`large`,style:Fr,children:`登录`})]}):/* @__PURE__ */ W(`div`,{children:[/* @__PURE__ */ U(ce,{}),b.isError&&/* @__PURE__ */ U(le,{onClick:()=>{b.refetch()},children:`重新读取登录方式`})]}),re=Pr[O?.reason??``]??`会话已被强制下线`;return/* @__PURE__ */ W(`div`,{className:`login-page`,children:[/* @__PURE__ */ W(`div`,{className:`login-bg`,"aria-hidden":`true`,style:n?.loginImage?{backgroundImage:`url(${JSON.stringify(n.loginImage)})`,backgroundSize:`cover`,backgroundPosition:`center`}:void 0,children:[/* @__PURE__ */ U(`div`,{className:`login-wash login-wash-a`}),/* @__PURE__ */ U(`div`,{className:`login-wash login-wash-b`})]}),/* @__PURE__ */ W(`header`,{className:`login-topbar`,children:[/* @__PURE__ */ U(Er,{size:34}),/* @__PURE__ */ U(`span`,{className:`login-brand-name`,children:t})]}),/* @__PURE__ */ W(`main`,{className:`login-main`,children:[/* @__PURE__ */ W(`section`,{className:`login-hero`,children:[/* @__PURE__ */ U(`div`,{className:`login-eyebrow`,children:`企业级后台管理`}),/* @__PURE__ */ W(`h1`,{className:`login-headline`,children:[`高效管理,`,/* @__PURE__ */ U(`br`,{}),/* @__PURE__ */ U(`span`,{className:`login-headline-highlight`,children:`赋能业务增长`})]}),/* @__PURE__ */ U(`p`,{className:`login-desc`,children:`企业级后台管理系统,为团队提供高效、稳定、安全的一站式管理解决方案。`}),/* @__PURE__ */ U(`div`,{className:`login-feature-list`,children:[`精细化权限管理`,`安全审计机制`,`稳定可靠运行`,`多租户支持`].map(e=>/* @__PURE__ */ W(`div`,{className:`login-feature-item`,children:[/* @__PURE__ */ U(`span`,{className:`login-feature-check`,children:/* @__PURE__ */ U(f,{size:12,strokeWidth:3})}),e]},e))})]}),/* @__PURE__ */ W(`div`,{className:`login-card${b.data?.externalLogin?` login-card-external`:``}`,children:[/* @__PURE__ */ W(`div`,{className:`login-form-header`,children:[/* @__PURE__ */ U(Mr,{heading:3,style:{marginBottom:8,fontWeight:600},children:`欢迎回来`}),/* @__PURE__ */ U(Nr,{type:`tertiary`,style:{fontSize:14,display:`block`,marginBottom:24},children:`请输入您的账号信息以登录工作台`})]}),O&&/* @__PURE__ */ W(`div`,{className:`login-alert${O.reason===`concurrent-login`?` login-alert-danger`:``}`,role:`alert`,children:[/* @__PURE__ */ U(ne,{size:18,className:`login-alert-icon`,"aria-hidden":!0}),/* @__PURE__ */ W(`div`,{className:`login-alert-body`,children:[/* @__PURE__ */ U(`div`,{className:`login-alert-title`,children:re}),/* @__PURE__ */ U(`div`,{className:`login-alert-text`,children:O.message})]}),/* @__PURE__ */ U(`button`,{type:`button`,className:`login-alert-close`,"aria-label":`关闭提示`,onClick:()=>k(null),children:`×`})]}),/* @__PURE__ */ U(`div`,{style:{marginBottom:20},children:I()}),!1]})]}),/* @__PURE__ */ W(`footer`,{className:`login-footer`,children:[`© `,tt().year(),` `,n?.copyrightName??t,` · 高效 · 稳定 · 安全`,n?.icpNumber&&/* @__PURE__ */ W(`span`,{children:[` · `,n.icpUrl?/* @__PURE__ */ U(`a`,{href:n.icpUrl,target:`_blank`,rel:`noopener noreferrer`,children:n.icpNumber}):n.icpNumber]})]}),m&&/* @__PURE__ */ U(Oe,{fallback:null,children:/* @__PURE__ */ U(jr,{conflict:m,loading:g,onConfirm:()=>void P(),onCancel:()=>h(null)})})]})}var jr,Mr,Nr,Pr,Fr,Ir;function Lr(){return(Lr=e((()=>{se(),xn(),Xt(),I(),u(),En(),Dr(),Or(),kr(),t(),jr=je(()=>n(()=>import(`./SessionConflictModal-BLNuDsN_.js`),[],import.meta.url)),{Title:Mr,Text:Nr}=a,Pr={"concurrent-login":`已在其他设备登录`,"password-changed":`密码已修改`},Fr={marginTop:8,borderRadius:`var(--semi-border-radius-medium)`,height:42},Ir={flexShrink:0,borderRadius:`var(--semi-border-radius-small)`,overflow:`hidden`,border:`1px solid var(--semi-color-border)`,padding:0,background:`transparent`,lineHeight:0}})))()}function Rr({children:e,actions:t,mobile:n,collapsed:r,showTrigger:i,onToggle:a}){return/* @__PURE__ */ W(`header`,{className:`arc-layout-header`,children:[/* @__PURE__ */ W(`div`,{className:`arc-layout-header__navigation`,children:[i&&/* @__PURE__ */ U(G,{type:`text`,className:`arc-layout-icon-button`,"aria-label":n?`打开导航菜单`:r?`展开侧边栏`:`收起侧边栏`,icon:n?/* @__PURE__ */ U(p,{size:19}):U(r?an:tn,{size:18}),onClick:a}),/* @__PURE__ */ U(`div`,{className:`arc-layout-header__title`,children:e})]}),/* @__PURE__ */ U(`div`,{className:`arc-layout-header__actions`,children:t})]})}function zr(){return(zr=e((()=>{d(),nn(),on()})))()}function Br({width:e,collapsed:t,logo:n,children:r,title:i,rail:a,onToggle:o,onHover:s}){return/* @__PURE__ */ W(`aside`,{className:`arc-layout-sidebar`,"aria-label":`主导航`,style:{width:e},onMouseEnter:()=>s(!0),onMouseLeave:()=>s(!1),children:[a&&/* @__PURE__ */ W(`div`,{className:`arc-layout-rail`+(a.showLabels?` arc-layout-rail--labels`:``),children:[/* @__PURE__ */ U(`div`,{className:`arc-layout-logo arc-layout-logo--compact`,children:n}),/* @__PURE__ */ U(Te,{className:`arc-layout-rail__menu`,"aria-label":`导航分组`,children:a.items.map(e=>/* @__PURE__ */ U(Y,{title:e.label,placement:`right`,children:/* @__PURE__ */ W(`button`,{type:`button`,className:`arc-layout-rail__item`+(a.activeKey===e.key?` arc-layout-rail__item--active`:``),"aria-label":e.label,"aria-current":a.activeKey===e.key?`page`:void 0,onClick:()=>a.onSelect(e.key),children:[e.icon??/* @__PURE__ */ U(C,{size:20}),/* @__PURE__ */ U(`span`,{children:e.label})]})},e.key))})]}),/* @__PURE__ */ W(`div`,{className:`arc-layout-sidebar__column`,children:[/* @__PURE__ */ W(`div`,{className:`arc-layout-logo`+(t?` arc-layout-logo--compact`:``),children:[!a&&n,!t&&/* @__PURE__ */ U(`strong`,{children:i})]}),/* @__PURE__ */ U(Te,{className:`arc-layout-sidebar__scroll`,"aria-label":`导航菜单`,children:r}),/* @__PURE__ */ U(G,{type:`text`,className:`arc-layout-sidebar__trigger`,"aria-label":t?`展开侧边栏`:`收起侧边栏`,icon:U(t?an:tn,{size:17}),onClick:o})]})]})}function Vr(){return(Vr=e((()=>{S(),nn(),on(),we()})))()}function Hr(e,t){for(let n of e){if(n.path===t)return[n];let e=Hr(n.children??[],t);if(e.length)return[n,...e]}return[]}function Ur(e){return e.path||e.children?.map(Ur).find(Boolean)}function Wr(e,t=[]){return Object.fromEntries(e.flatMap(e=>[[e.key,t],...Object.entries(Wr(e.children??[],[...t,e.key]))]))}function Gr(e,t,n){let r=e.find(e=>!t.includes(e));if(r)return[...n[r]??[],r];let i=t.find(t=>!e.includes(t));return i?n[i]??[]:e}function Kr({items:e,path:t,collapsed:n=!1,accordion:r=!1,dark:i=!1,scrollIntoView:a,mode:o=`inline`,onSelect:s}){let{token:c}=X.useToken(),l=`color-mix(in srgb, ${c.colorPrimaryBg} 50%, ${c.colorPrimaryBgHover})`,[u,d]=B([]),f=z(null),p=R(()=>Wr(e),[e]),m=R(()=>Hr(e,t).map(e=>e.key),[e,t]),h=R(()=>{let t=e=>e.map(({children:e,...n})=>e?.length?{...n,children:t(e)}:n);return t(e)},[e]),g=o===`inline`;return L(()=>{d(e=>n?[]:r?m.slice(0,-1):[.../* @__PURE__ */ new Set([...e.filter(e=>e in p),...m.slice(0,-1)])])},[m,n,r,p]),L(()=>{if(!a||!g||n)return;let e=requestAnimationFrame(()=>f.current?.querySelector(`.ant-menu-item-selected`)?.scrollIntoView({block:`nearest`}));return()=>cancelAnimationFrame(e)},[t,u,a,g,n]),/* @__PURE__ */ U(`div`,{ref:f,className:`arc-layout-menu`,style:{"--arc-layout-menu-selected-bg":i?c.colorPrimary:l},children:/* @__PURE__ */ U(K,{theme:{components:{Menu:{itemSelectedBg:l}}},children:/* @__PURE__ */ U(Je,{className:`arc-layout-menu__items`,items:h,mode:o,theme:i?`dark`:`light`,inlineIndent:16,selectedKeys:m,...g?{inlineCollapsed:n,openKeys:u,onOpenChange:e=>d(r||n?Gr(e,u,p):e)}:{},onClick:({key:e})=>s(e)})})})}function qr(){return(qr=e((()=>{})))()}function Jr({preferences:e,dark:t,mobile:n,collapsed:r,maximized:i,title:a,brand:o,logo:s,menus:c,path:l,breadcrumb:u,actions:d,tabbar:f,children:p,onCollapse:m,onNavigate:h,onRestore:g}){let{token:_}=X.useToken(),v=R(()=>X.getDesignToken({algorithm:X.darkAlgorithm,token:{colorPrimary:_.colorPrimary}}),[_.colorPrimary]),[y,b]=B(!1),x=n?`vertical`:e.navLayout,S=x===`mixed`||x===`double`,C=R(()=>Hr(c,l)[0]??c[0],[c,l]),ee=S&&C?C.children?.length?C.children:[C]:c,w=x!==`horizontal`,te=e.sidebarHoverTrigger&&r&&y&&!n,T=r&&!te,E=x===`double`?e.doubleRailStyle===`icon-text`?80:56:0,D=E+(T?56:e.sidebarWidth),O=n||i||!w?0:E+(r?56:e.sidebarWidth),A=t||e.sidebarDarkMode,j=t||e.headerDarkMode,M=(e,t)=>t?e===`bg-0`?v.colorBgLayout:v.colorBgContainer:_.colorBgContainer,N={fontFamily:_.fontFamily,fontSize:_.fontSize,lineHeight:_.lineHeight,"--arc-layout-sidebar-width":`${O}px`,"--arc-layout-sidebar-bg":M(e.darkSidebarTone,A),"--arc-layout-header-bg":M(e.darkHeaderTone,j),"--arc-layout-sidebar-text":A?v.colorText:_.colorText,"--arc-layout-sidebar-border":A?v.colorBorderSecondary:_.colorBorderSecondary,"--arc-layout-header-text":j?v.colorText:_.colorText,"--arc-layout-header-border":j?v.colorBorderSecondary:_.colorBorderSecondary,"--arc-layout-tab-active-bg":j?v.colorPrimaryBg:_.colorPrimaryBg,"--arc-layout-tabbar-height":f?e.compactTabs?`35px`:`43px`:`0px`,"--arc-layout-content-bg":t?M(e.darkContentTone,!0):_.colorBgLayout,"--arc-layout-rail-width":`${E}px`},P=e=>{let t=n=>{for(let r of n){if(r.key===e)return r;let n=t(r.children??[]);if(n)return n}},r=t(c),i=r&&Ur(r);i&&(n&&m(!0),h(i))},F=(t,n=T,r=`inline`)=>/* @__PURE__ */ U(Kr,{items:t,path:l,collapsed:n,mode:r,accordion:e.sidebarAccordion,dark:r===`horizontal`?j:A,scrollIntoView:e.scrollMenuIntoView,onSelect:P}),I=S?c.map(e=>({...e,children:void 0})):c,ne={algorithm:A?X.darkAlgorithm:X.defaultAlgorithm};return/* @__PURE__ */ W(`section`,{className:`arc-admin-layout arc-admin-layout--`+x+(i?` arc-admin-layout--maximized`:``)+(e.sidebarToggleIconPosition===`left`?` arc-admin-layout--arrow-left`:``)+(e.sidebarStickyScroll?` arc-admin-layout--sticky-menu`:``),style:N,"data-layout-source":`react-antd-admin`,children:[!n&&!i&&w&&/* @__PURE__ */ U(K,{theme:ne,children:/* @__PURE__ */ U(Br,{width:D,collapsed:T,title:o,logo:s,onToggle:()=>m(!r),onHover:b,rail:x===`double`?{items:c,activeKey:C?.key??``,showLabels:e.doubleRailStyle===`icon-text`,onSelect:P}:void 0,children:F(ee)})}),/* @__PURE__ */ W(`div`,{className:`arc-layout-main`,children:[!i&&/* @__PURE__ */ U(K,{theme:{algorithm:j?X.darkAlgorithm:X.defaultAlgorithm},children:/* @__PURE__ */ W(Rr,{mobile:n,collapsed:r,showTrigger:n||x===`vertical`||x===`double`,onToggle:()=>m(!r),actions:d,children:[x===`horizontal`&&/* @__PURE__ */ W(`div`,{className:`arc-layout-header__brand`,children:[s,/* @__PURE__ */ U(`strong`,{children:o})]}),x===`horizontal`||x===`mixed`?F(I,!1,`horizontal`):u||/* @__PURE__ */ U(`span`,{className:`arc-layout-page-title`,children:a})]})}),!i&&(x===`horizontal`||x===`mixed`)&&u&&/* @__PURE__ */ U(K,{theme:{algorithm:j?X.darkAlgorithm:X.defaultAlgorithm},children:/* @__PURE__ */ U(`div`,{className:`arc-layout-breadcrumb`,children:u})}),/* @__PURE__ */ U(K,{theme:{algorithm:j?X.darkAlgorithm:X.defaultAlgorithm},children:f}),/* @__PURE__ */ U(Te,{as:`main`,horizontal:!0,"aria-label":`页面内容`,className:`admin-content arc-layout-content`+(e.contentWidth===`fixed`?` arc-layout-content--fixed`:``),children:/* @__PURE__ */ U(`div`,{className:`arc-layout-content__inner`,children:p})}),i&&!f&&/* @__PURE__ */ U(G,{className:`arc-layout-restore`,"aria-label":`退出内容全屏`,icon:/* @__PURE__ */ U(k,{size:16}),onClick:g,children:`退出全屏`})]}),n&&/* @__PURE__ */ U(K,{theme:ne,children:/* @__PURE__ */ U(Ke,{title:o,placement:`left`,size:Math.min(e.sidebarWidth+24,320),open:!r,onClose:()=>m(!0),className:`arc-layout-mobile-menu`,styles:{body:{padding:0,overflow:`hidden`,background:M(e.darkSidebarTone,A)}},children:/* @__PURE__ */ U(Te,{className:`arc-layout-mobile-menu__scroll`,"aria-label":`导航菜单`,style:{height:`100%`},children:F(c,!1)})})})]})}function Yr(){return(Yr=e((()=>{O(),zr(),Vr(),qr(),we()})))()}function Xr({tabs:e,store:t,path:n,preferences:r,maximized:i,onNavigate:a,onRefresh:o,onClose:s,onMaximize:c}){let l=z(null);L(()=>{let e=l.current?.querySelector(`.ant-tabs-nav-wrap`);if(!e||typeof IntersectionObserver>`u`)return;let t=/* @__PURE__ */ new Set,n=new IntersectionObserver(e=>{for(let t of e)t.target.dataset.clipped=String(t.intersectionRatio<.999)},{root:e,threshold:[0,.999,1]}),r=()=>{let r=new Set(e.querySelectorAll(`.ant-tabs-tab`));for(let e of t)r.has(e)||(n.unobserve(e),t.delete(e));for(let e of r)t.has(e)||(n.observe(e),t.add(e))};r();let i=new MutationObserver(r);return i.observe(e,{childList:!0,subtree:!0}),()=>{n.disconnect(),i.disconnect();for(let e of t)delete e.dataset.clipped}},[e.length,r.tabStyle,r.compactTabs]);let u=e.map(e=>e.key),[d,f]=B({keys:u,entering:/* @__PURE__ */ new Set});u.join(`\0`)!==d.keys.join(`\0`)&&f({keys:u,entering:new Set([...d.entering,...u.filter(e=>!d.keys.includes(e))].filter(e=>u.includes(e)))});let p=e=>f(t=>({...t,entering:new Set([...t.entering].filter(t=>t!==e))})),m=e=>[{key:`refresh`,label:`刷新`,icon:/* @__PURE__ */ U(j,{size:14}),onClick:()=>o(e.key)},{key:`pin`,label:e.pinned?`取消固定`:`固定`,disabled:e.key===`/`,icon:/* @__PURE__ */ U(cn,{size:14}),onClick:()=>e.pinned?t.unpinTab(e.key):t.pinTab(e.key)},{type:`divider`},{key:`close`,label:`关闭当前`,disabled:!e.closable||e.pinned,onClick:()=>s(e.key)},{key:`others`,label:`关闭其他`,onClick:()=>a(t.closeOthers(e.key))},{key:`left`,label:`关闭左侧`,onClick:()=>a(t.closeLeft(e.key))},{key:`right`,label:`关闭右侧`,onClick:()=>a(t.closeRight(e.key))},{key:`all`,label:`关闭全部`,onClick:()=>{t.closeAll(),a(`/`)}}],g=e.find(e=>e.key===n)??e[0];return/* @__PURE__ */ U(`div`,{ref:l,className:`arc-layout-tabbar arc-layout-tabbar--`+r.tabStyle+(r.compactTabs?` arc-layout-tabbar--compact`:``)+(r.autoHideTabs?` arc-layout-tabbar--autohide`:``),"data-tab-animation":r.reduceMotion?`none`:r.tabAnimation,children:/* @__PURE__ */ U($e,{activeKey:n,onChange:a,type:`editable-card`,hideAdd:!0,size:`small`,animated:!1,more:{trigger:`click`,icon:/* @__PURE__ */ U(`span`,{role:`img`,"aria-label":`更多标签页`,title:`更多标签页`,children:/* @__PURE__ */ U(x,{size:16})})},onEdit:(e,t)=>{t===`remove`&&typeof e==`string`&&s(e)},items:e.map(e=>({key:e.key,closable:e.closable&&!e.pinned,closeIcon:/* @__PURE__ */ U(oe,{size:12,"aria-label":`关闭`+e.title}),label:/* @__PURE__ */ U(qe,{trigger:[`contextMenu`],menu:{items:m(e)},children:/* @__PURE__ */ W(`span`,{className:`arc-layout-tab-label`+(d.entering.has(e.key)?` arc-layout-tab-label--entering`:``),onAnimationEnd:()=>p(e.key),draggable:e.key!==`/`&&!e.pinned,onDragStart:t=>t.dataTransfer.setData(`arcbase-tab`,e.key),onDragOver:e=>e.preventDefault(),onDrop:n=>{let r=n.dataTransfer.getData(`arcbase-tab`);r&&t.reorderTabs(r,e.key)},onDoubleClick:()=>{r.tabDoubleClickAction===`refresh`&&o(e.key),r.tabDoubleClickAction===`close`&&e.closable&&!e.pinned&&s(e.key)},children:[e.pinned&&/* @__PURE__ */ U(cn,{size:12}),r.showTabIcon&&e.icon&&/* @__PURE__ */ U(Ln,{name:e.icon}),e.title]})})})),tabBarExtraContent:/* @__PURE__ */ W(`div`,{className:`arc-layout-tabbar__actions`,children:[/* @__PURE__ */ U(Y,{title:`刷新当前页`,children:/* @__PURE__ */ U(G,{type:`text`,"aria-label":`刷新当前页`,icon:/* @__PURE__ */ U(j,{size:15}),onClick:()=>o(n)})}),g&&/* @__PURE__ */ U(qe,{trigger:[`click`],menu:{items:m(g)},children:/* @__PURE__ */ U(G,{type:`text`,"aria-label":`标签页操作`,icon:/* @__PURE__ */ U(h,{size:15})})}),r.showTabSwitcher&&/* @__PURE__ */ U(qe,{trigger:[`click`],menu:{selectedKeys:[n],items:e.map(e=>({key:e.key,label:e.title,icon:r.showTabIcon&&e.icon?/* @__PURE__ */ U(Ln,{name:e.icon}):void 0,onClick:()=>a(e.key)}))},children:/* @__PURE__ */ U(G,{type:`text`,"aria-label":`标签切换器`,title:`切换到已打开的标签页`,icon:/* @__PURE__ */ U(h,{size:15})})}),/* @__PURE__ */ U(Y,{title:i?`退出内容全屏`:`内容全屏`,children:/* @__PURE__ */ U(G,{type:`text`,"aria-label":i?`退出内容全屏`:`内容全屏`,icon:U(i?k:D,{size:15}),onClick:c})})]})})})}function Zr(){return(Zr=e((()=>{m(),b(),E(),O(),ln(),A(),ae(),Rn()})))()}function Qr(e){return/* @__PURE__ */ U(Xe,{status:e?`403`:`404`,title:e?`无权访问`:`页面不存在`,extra:/* @__PURE__ */ U(nt,{to:`/`,children:`返回首页`})})}function $r(e){let t=new URLSearchParams(e).get(`redirect`);return t&&t.startsWith(`/`)&&!t.startsWith(`//`)&&!t.includes(`\\`)&&!/^\/(login|auth\/callback)([/?#]|$)/.test(t)?t:`/`}function ei(){let e=st(),t=gt(),n=vt(),i=Q(),a=at(),o=bt(),s=xt(),{preferences:c,setPreferences:l,canEditPreference:u}=V(),{modal:d,message:f}=He.useApp(),p=Kn(),m=Et(),h=kt(),[g,_]=B(!1),[v,y]=B(e),[b,x]=B({});L(()=>{e&&y(!0)},[e]);let S=Ct(c.tabsMaxCount,void 0,c.keepTabs,c.tabEvictPolicy,c.openTabBehavior),{addTab:C,removeTab:ee,setActiveKey:w,tabs:E}=S,{data:O=[]}=o,k=R(()=>{let e=(t,n=[])=>t.flatMap(t=>t.type===`button`||t.visible===!1?[]:[...t.path?[{...t,path:t.path,breadcrumb:n}]:[],...e(t.children??[],[...n,t.title])]);return e(O)},[O]),A=Nt(k,i.pathname);Dt(m.autoLockMinutes,m.hasPassword(),m.isLocked,m.hasPassword,m.lock),Ot({enableShortcuts:c.enableShortcuts,enableLockScreen:m.hasPassword(),hasPassword:m.hasPassword,lock:m.lock,collapsed:v,handleCollapseChange:y,isContentFullscreen:g,setIsContentFullscreen:_}),L(()=>{c.sidebarHoverTrigger&&y(!0)},[c.sidebarHoverTrigger]);let j=R(()=>{let e=t=>t.filter(e=>e.type!==`button`&&e.visible!==!1&&e.status===`enabled`).map(t=>({key:String(t.id),path:t.path??void 0,label:t.title,icon:t.icon?/* @__PURE__ */ U(Ln,{name:t.icon}):void 0,children:t.children?.length?e(t.children):void 0})).filter(e=>e.path||e.children?.length);return e(O)},[O]),M=s.modules.flatMap(e=>e.pages),N=M.find(e=>e.path===i.pathname),P=k.find(e=>e.path===i.pathname),F=R(()=>/* @__PURE__ */ new Set([`/`,`/profile`,...k.map(e=>e.path)]),[k]),I=N?.title??P?.title??(i.pathname===`/profile`?`个人中心`:`首页`);L(()=>{(F.has(i.pathname)||N?.navigation===!1)&&(C(i.pathname,I,P?.icon??N?.icon),w(i.pathname))},[i.pathname,I,F,N?.navigation,P?.icon,N?.icon,C,w]),L(()=>{document.title=(c.dynamicTitle?I+` · `:``)+(n.brand?.name??`ArcBase`)},[c.dynamicTitle,I,n.brand?.name]);let ne=Ne(e=>Me(()=>x(t=>({...t,[e]:(t[e]??0)+1}))),[]),re=Ne(e=>{if(ee(e),e===i.pathname){let t=E.findIndex(t=>t.key===e);a(E[t-1]?.key??`/`)}},[ee,E,i.pathname,a]),ie=R(()=>({enabled:c.enableTabs,setTabMeta:S.setTabMeta,closeTab:re}),[c.enableTabs,S.setTabMeta,re]),ae=new Set(S.tabs.map(e=>e.key)),oe=new Set(c.enablePageCache&&c.enableTabs?[...k.filter(e=>e.keepAlive).map(e=>e.path),...M.filter(e=>e.keepAlive).map(e=>e.path)]:[]);if(o.isError||s.enabled&&s.query.isError)return/* @__PURE__ */ U(Xe,{status:`error`,title:`导航加载失败`,subTitle:(o.error??s.query.error)?.message,extra:/* @__PURE__ */ U(G,{onClick:()=>{o.refetch(),s.enabled&&s.query.refetch()},children:`重试`})});if(o.isPending||s.enabled&&s.query.isPending)return/* @__PURE__ */ U(r,{});let se=/* @__PURE__ */ U(Mn,{children:/* @__PURE__ */ U(Oe,{fallback:/* @__PURE__ */ U(r,{}),children:/* @__PURE__ */ U(ar,{keepAlivePaths:oe,openPaths:ae,refreshVersion:b,animation:c.reduceMotion?`none`:c.routeAnimation})})}),ce=/* @__PURE__ */ U(wt.Provider,{value:ie,children:se});if(m.hasPassword()&&m.isLocked)return/* @__PURE__ */ U(Fn,{lock:m,mode:null,onClose:()=>{}});if(N?.layout===`workspace`)return ce;let le=S.tabs.filter(e=>F.has(e.key)||M.some(n=>n.navigation===!1&&n.path===e.key&&(t.permissions.includes(`*`)||t.permissions.includes(n.permission)))).map(e=>e.title===e.key?{...e,title:k.find(t=>t.path===e.key)?.title??M.find(t=>t.path===e.key)?.title??(e.key===`/profile`?`个人中心`:e.title)}:e),ue=()=>{let e=()=>t.logout().catch(e=>{throw f.error(e instanceof Error?e.message:`退出失败,请重试`),e});c.confirmLogout?d.confirm({title:`退出登录`,content:`确定退出当前账号?`,onOk:e}):e().catch(()=>{})},de=/* @__PURE__ */ W(H,{children:[c.topbarClock!==`off`&&/* @__PURE__ */ U(kn,{mode:c.topbarClock,showDate:c.topbarClockShowDate}),c.showMenuSearch&&/* @__PURE__ */ U(cr,{menus:k,recentMenus:A.recents.flatMap(e=>{let t=k.find(t=>t.id===e);return t?[t]:[]}),onClearRecents:A.clear,onRemoveRecent:A.remove}),c.showFavorites&&/* @__PURE__ */ U(vr,{menus:k,current:P,favorites:h}),m.hasPassword()&&m.hasPassword()&&/* @__PURE__ */ U(Y,{title:`锁屏`,children:/* @__PURE__ */ U(G,{type:`text`,className:`arc-layout-desktop-action`,"aria-label":`锁屏`,icon:/* @__PURE__ */ U(Kt,{size:17}),onClick:m.lock})}),/* @__PURE__ */ U(Xn,{lock:m,homePaths:k.map(e=>({value:e.path,label:e.title}))}),/* @__PURE__ */ U(Y,{title:p?`切换浅色主题`:`切换深色主题`,children:/* @__PURE__ */ U(G,{type:`text`,"aria-label":p?`切换浅色主题`:`切换深色主题`,disabled:!u(`colorMode`),icon:U(p?_n:Qt,{size:17}),onClick:()=>l({colorMode:p?`light`:`dark`})})}),c.showFullscreen&&/* @__PURE__ */ U(Y,{title:`浏览器全屏`,children:/* @__PURE__ */ U(G,{type:`text`,className:`arc-layout-desktop-action`,"aria-label":`全屏`,icon:/* @__PURE__ */ U(D,{size:17}),onClick:()=>{document.fullscreenElement?document.exitFullscreen():document.documentElement.requestFullscreen()}})}),/* @__PURE__ */ U(qe,{trigger:[`click`],placement:`bottomRight`,menu:{items:[{key:`profile`,label:`个人中心`,icon:/* @__PURE__ */ U(T,{size:16}),onClick:()=>a(`/profile`)},...m.hasPassword()&&m.hasPassword()?[{key:`lock`,label:`锁屏`,icon:/* @__PURE__ */ U(Kt,{size:16}),onClick:m.lock}]:[],{type:`divider`},{key:`logout`,label:`退出登录`,icon:/* @__PURE__ */ U(te,{size:16}),onClick:ue}]},children:/* @__PURE__ */ W(`button`,{type:`button`,className:`arc-layout-user`,"aria-label":`账户菜单`,children:[/* @__PURE__ */ U(Ue,{size:28,src:t.user?.avatar||void 0,icon:/* @__PURE__ */ U(T,{size:16})}),/* @__PURE__ */ U(`span`,{className:`arc-layout-user__name`,children:t.user?.nickname??t.user?.username})]})})]});return/* @__PURE__ */ W(H,{children:[c.showProgressBar&&/* @__PURE__ */ U(gr,{}),/* @__PURE__ */ U(Jr,{preferences:c,dark:p,mobile:e,collapsed:v,maximized:g,title:I,brand:n.brand?.name??`ArcBase`,logo:c.showLogo?/* @__PURE__ */ U(Er,{size:28}):null,menus:j,path:i.pathname,onCollapse:y,onNavigate:a,onRestore:()=>_(!1),actions:de,breadcrumb:c.showBreadcrumb&&/* @__PURE__ */ U(mr,{menus:O,path:i.pathname,title:I,isFavorite:h.isFavorite,toggleFavorite:h.toggle}),tabbar:c.enableTabs?/* @__PURE__ */ U(Xr,{tabs:le,store:S,path:i.pathname,preferences:c,maximized:g,onNavigate:a,onRefresh:ne,onClose:re,onMaximize:()=>_(e=>!e)}):null,children:ce}),c.showBackTop&&/* @__PURE__ */ U(We,{target:()=>document.querySelector(`.admin-content`)})]})}function ti(){let{preferences:e,ready:t}=V(),n=at(),r=bt();L(()=>{if(!t||!r.isSuccess||!Cn())return;wn();let i=t=>t.some(t=>t.visible!==!1&&t.status===`enabled`&&t.type!==`button`&&(t.path===e.homePath||i(t.children??[])));e.homePath!==`/`&&(e.homePath===`/profile`||i(r.data??[]))&&n(e.homePath,{replace:!0})},[t,r.isSuccess,r.data,e.homePath,n]);let i=ii[`/`];return/* @__PURE__ */ U(i,{})}function ni(){let e=gt(),t=Q(),{client:n}=ht(),r=bt(),i=xt(),a=/* @__PURE__ */ new Set([`/`,`/profile`]),o=e=>e.forEach(e=>{e.type!==`button`&&e.path&&e.visible!==!1&&a.add(e.path),e.children&&o(e.children)});o(r.data??[]);let s={client:n,user:e.user,permissions:e.permissions,hasPermission:t=>e.permissions.includes(`*`)||e.permissions.includes(t)};return e.user?.requirePasswordChange&&t.pathname!==`/profile`?/* @__PURE__ */ U(rt,{to:`/profile?tab=security`,replace:!0}):/* @__PURE__ */ U(it,{children:/* @__PURE__ */ W(Z,{element:/* @__PURE__ */ U(ei,{}),children:[Object.entries(ii).map(([t,n])=>/* @__PURE__ */ U(Z,{path:t,element:a.has(t)?t===`/`?/* @__PURE__ */ U(ti,{}):/* @__PURE__ */ U(n,{user:e.user}):Qr(!0)},t)),i.modules.flatMap(e=>e.pages).map(e=>/* @__PURE__ */ U(Z,{path:e.path,element:(e.navigation===!1||a.has(e.path))&&s.hasPermission(e.permission)?/* @__PURE__ */ U(e.component,{...s}):Qr(!0)},e.path)),/* @__PURE__ */ U(Z,{path:`/login`,element:/* @__PURE__ */ U(rt,{to:$r(t.search),replace:!0})}),/* @__PURE__ */ U(Z,{path:`/forbidden`,element:Qr(!0)}),/* @__PURE__ */ U(Z,{path:`*`,element:Qr(St.has(t.pathname))})]})})}function ri(){let e=gt(),t=Q();return t.pathname===`/auth/callback`?/* @__PURE__ */ U(Wn,{children:/* @__PURE__ */ U(dt,{})}):e.status===`unavailable`?/* @__PURE__ */ U(Wn,{children:/* @__PURE__ */ U(Xe,{status:`error`,title:`会话校验失败`,subTitle:e.error?.message,extra:/* @__PURE__ */ U(G,{loading:e.refreshing,onClick:()=>void e.refresh(),children:`重试`})})}):e.status===`checking`?/* @__PURE__ */ U(Wn,{children:/* @__PURE__ */ U(r,{})}):e.user?/* @__PURE__ */ U(Vn,{children:/* @__PURE__ */ U(Mt,{children:/* @__PURE__ */ U(Wn,{children:/* @__PURE__ */ U(ni,{})})})}):/* @__PURE__ */ U(Wn,{children:/* @__PURE__ */ W(it,{children:[/* @__PURE__ */ U(Z,{path:`/login`,element:/* @__PURE__ */ U(Ar,{onLogin:e.login})}),/* @__PURE__ */ U(Z,{path:`*`,element:/* @__PURE__ */ U(rt,{to:`/login?redirect=`+encodeURIComponent(t.pathname+t.search),replace:!0})})]})})}var ii;function ai(){return(ai=e((()=>{E(),qt(),$t(),vn(),w(),ee(),En(),On(),An(),Pn(),In(),Rn(),Hn(),Qn(),qn(),sr(),ur(),i(),hr(),_r(),yr(),Lr(),Dr(),Yr(),Zr(),ii=Object.fromEntries(Object.entries(Dn).map(([e,t])=>[e,je(t)]))})))()}ai();export{ri as AntApp};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{n as t}from"./feedback-BnjMKZpz.js";import{n,t as r}from"./maximize-CnmQ11E7.js";import{n as i,t as a}from"./minimize-Bpau_zCe.js";import{n as o,t as s}from"./x-Ak9hw1R9.js";import{C as c}from"./ui-BFsHoY7a.js";import{n as l,t as u}from"./useModalViewport-HF7te75S.js";import{useState as d}from"react";import{useOptionalPreferences as f}from"@fudanda/react-core/hooks/usePreferences";import{jsx as p,jsxs as m}from"react/jsx-runtime";function h({title:e,onCancel:n,fullscreenable:i=!1,restoreViewport:o=!0,fullscreen:c,onToggleFullscreen:u,maskClosable:h,children:g,afterClose:_,visible:v,...y}){let[b,x]=d(!1),S=l(v,o,_),C=f()?.preferences.modalClickMaskToClose??!1,w=h??C,T=c!==void 0,E=T?c:b;return/* @__PURE__ */ p(t,{closeOnEsc:!0,header:/* @__PURE__ */ m(`div`,{className:`app-modal-header`,children:[/* @__PURE__ */ p(`span`,{className:`app-modal-title`,children:e}),/* @__PURE__ */ m(`div`,{className:`app-modal-actions`,children:[i&&/* @__PURE__ */ p(`button`,{type:`button`,className:`app-modal-icon-btn`,"aria-label":E?`还原`:`全屏`,onClick:()=>{T?u?.():x(e=>!e)},children:p(E?a:r,{size:15})}),/* @__PURE__ */ p(`button`,{type:`button`,className:`app-modal-icon-btn`,"aria-label":`关闭`,onClick:e=>n?.(e),children:/* @__PURE__ */ p(s,{size:15})})]})]}),closable:!1,fullScreen:E,maskClosable:w,onCancel:n,afterClose:S,visible:v,...y,children:g})}function g(){return(g=e((()=>{u(),c(),n(),i(),o()})))()}export{g as n,h as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{n as t,t as n}from"./preload-helper-C-73SErw.js";import{a as r,o as i}from"../src-LbWcrSWe.js";import{a,i as o}from"./feedback-BnjMKZpz.js";import{Component as s,Suspense as c,lazy as l,useEffect as u,useState as d}from"react";import{jsx as f}from"react/jsx-runtime";import{GoaClient as p}from"@fudanda/client";import{installRequestFeedback as m}from"@fudanda/react-core/utils/request-toast";import{goTransport as h}from"@fudanda/react-core/lib/go-transport";import{BrowserRouter as g}from"react-router-dom";import{QueryClientProvider as _}from"@tanstack/react-query";import{installScopedStorage as v}from"@fudanda/react-core/utils/storage";import{ArcBaseProvider as y}from"@fudanda/elements-antd";import{AdminOptionsContext as b,AdminPathsContext as x,normalizeAdminBasePath as S,normalizeAssetBasePath as C,validateAdminOptions as w}from"@fudanda/react-core/admin/runtime";import"antd/dist/reset.css";import{GoAuthProvider as T}from"@fudanda/react-core/providers/GoAuthProvider";import{createAdminQueryClient as E}from"@fudanda/react-core/lib/query";function D(e){return/* @__PURE__ */ f(T,{...e,provider:y,loading:/* @__PURE__ */ f(r,{})})}function O(){return(O=e((()=>{i()})))()}function k(e){w(e);let[t]=d(()=>({client:e.client??new p,cache:e.queryClient??E(),paths:{basePath:S(e.basePath),assetBasePath:C(e.assetBasePath??`./`)},original:{client:e.client,queryClient:e.queryClient,authSession:e.authSession}})),[i,a]=d(!1),[s,l]=d(null);if(u(()=>{let e,r,i,s=!1,c=document.body.getAttribute(`style`),u=document.documentElement.getAttribute(`style`),d=document.body.getAttribute(`data-reduce-motion`),f=document.body.getAttribute(`theme-mode`),p=document.title,g=document.documentElement.getAttribute(`lang`),_=document.querySelector(`link[rel="icon"]`),y=_?.getAttribute(`href`),b=_?.getAttribute(`type`);try{e=h.bind(t.client),i=v(),r=m({error:(e,t)=>o.error(t?e+` · 链路 ID:`+t:e),warning:o.warning}),n(async()=>{let{loader:e}=await import(`./dist-D_KGQS7-.js`).then(e=>(e.r(),e.n));return{loader:e}},[],import.meta.url).then(({loader:e})=>{s||(e.config({paths:{vs:`${t.paths.assetBasePath}monaco/vs`}}),a(!0))}).catch(e=>{s||l(e instanceof Error?e:Error(String(e)))})}catch(e){l(e instanceof Error?e:Error(String(e)))}return()=>{if(s=!0,!e)return;e(),t.cache.cancelQueries(),t.cache.clear(),i?.(),r?.();let n=(e,t,n)=>{n===null?e.removeAttribute(t):e.setAttribute(t,n)};n(document.body,`style`,c),n(document.documentElement,`style`,u),n(document.body,`theme-mode`,f),n(document.body,`data-reduce-motion`,d),document.title=p,n(document.documentElement,`lang`,g),_?(n(_,`href`,y??null),n(_,`type`,b??null)):document.querySelector(`link[rel="icon"]`)?.remove()}},[t]),u(()=>{e.locale&&(document.documentElement.lang=e.locale)},[e.locale]),s)throw s;if(t.original.client!==e.client||t.original.queryClient!==e.queryClient||t.original.authSession!==e.authSession||t.paths.basePath!==S(e.basePath)||t.paths.assetBasePath!==C(e.assetBasePath??`./`))throw Error(`Remount ArcBaseAdmin to change its client, cache or paths`);return i?/* @__PURE__ */ f(b.Provider,{value:e,children:/* @__PURE__ */ f(x.Provider,{value:t.paths,children:/* @__PURE__ */ f(_,{client:t.cache,children:/* @__PURE__ */ f(D,{client:t.client,authSession:e.authSession,children:/* @__PURE__ */ f(g,{basename:t.paths.basePath,children:/* @__PURE__ */ f(c,{fallback:e.loading??/* @__PURE__ */ f(r,{}),children:/* @__PURE__ */ f(j,{})})})})})})}):e.loading??/* @__PURE__ */ f(r,{})}function A(e){return/* @__PURE__ */ f(M,{fallback:e.errorFallback,children:/* @__PURE__ */ f(k,{...e})})}var j,M;function N(){return(N=e((()=>{a(),O(),i(),t(),j=l(()=>n(()=>import(`./App-DNjXLysb.js`).then(e=>({default:e.AntApp})),[],import.meta.url)),M=class extends s{state={error:null};static getDerivedStateFromError(e){return{error:e}}render(){return this.state.error?this.props.fallback?.(this.state.error)??/* @__PURE__ */ f(`div`,{role:`alert`,children:this.state.error.message}):this.props.children}}})))()}N();export{A as ArcBaseAdmin};
@@ -0,0 +1,55 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{s as t}from"./controls-C5dPckUT.js";import{t as n}from"./typography-DKK_iHcj.js";import{a as r,c as i,i as a,n as o,o as s,r as c,s as l,t as u}from"./search-filters-CRIhZ0gL.js";import{n as d,t as f}from"./rotate-ccw-D2__Zisi.js";import{C as p,a as m,b as h,f as g,g as _,p as v,u as y,y as b}from"./ui-BFsHoY7a.js";import{n as x,t as S}from"./DateTimeText-CIt0Qy45.js";import{n as C,t as w}from"./ui-utils-ClxYogUQ.js";import*as T from"react";import E,{Children as D,Fragment as ee,cloneElement as te,createContext as O,isValidElement as k,useCallback as ne,useContext as A,useEffect as j,useMemo as M,useRef as re,useState as N}from"react";import{usePreferences as ie}from"@fudanda/react-core/hooks/usePreferences";import{Fragment as ae,jsx as P,jsxs as F}from"react/jsx-runtime";import{BasicTable as oe,TableToolButton as se}from"@fudanda/table-antd";import{Empty as ce,Form as le,Pagination as ue,Transfer as de,Tree as fe}from"antd";import"@fudanda/table-antd/styles.css";import{QueryFilter as I}from"@ant-design/pro-components";import{filterMetaOf as L}from"@fudanda/shared/core";import{useDictItems as R}from"@fudanda/react-core/hooks/useDictItems";import{useIsMobile as pe}from"@fudanda/react-core/hooks/useMediaQuery";import{ARCBASE_OPERATION_COLUMN_SYMBOL as z}from"@fudanda/react-core/components/table-column-meta";import"@fudanda/react-core/utils/date";import{COMPACT_PAGINATION_PROPS as me,DESKTOP_PAGINATION_PROPS as he}from"@fudanda/react-core/hooks/usePagination";import{EMPTY_PLACEHOLDER as B}from"@fudanda/react-core/utils/empty-placeholder";function ge(){return(ge=e((()=>{})))()}function V(e,t){let n=e?.meta()?.description;return typeof n!=`string`||!n?t:n.split(/[;;((]/)[0].trim()||t}function H({page:e,name:t,dict:n,placeholder:i}){let{options:a}=R(n),s=e.bind(t),c={items:a,value:s.value,onChange:s.onChange};return n===`common_status`?/* @__PURE__ */ P(r,{...c}):/* @__PURE__ */ P(o,{placeholder:i,...c})}function U(e,t,n,r){let i=e.bind(t);switch(r?.kind){case`keyword`:return/* @__PURE__ */ P(c,{placeholder:r.fields?`搜索${r.fields}`:`搜索关键字`,...e.bindKeyword(t)},t);case`enum`:{let a=V(n,``),s=a?`全部${a}`:`全部`;if(r.dict)return/* @__PURE__ */ P(H,{page:e,name:t,dict:r.dict,placeholder:s},t);let c=r.options?r.options.map(e=>({value:e.value,label:e.label})):r.values.map(e=>({value:e,label:e}));return/* @__PURE__ */ P(o,{placeholder:s,items:c,value:i.value,onChange:i.onChange},t)}case`bool`:{let e=r.labels?[{value:`true`,label:r.labels[0]},{value:`false`,label:r.labels[1]}]:K;return/* @__PURE__ */ P(o,{placeholder:V(n,t),items:e,value:i.value===void 0?void 0:String(i.value),onChange:e=>i.onChange(e===`true`||e!==`false`&&void 0)},t)}case`id`:return/* @__PURE__ */ P(a,{placeholder:V(n,t),value:i.value,onChange:i.onChange},t);case`date-bound`:throw Error(`筛选键「${t}」是时间范围端点,请成对声明:['${t}', '<止端键>']`);default:throw Error(`筛选键「${t}」在契约 query 上没有 x-filter 语义,请在 overrides 里给出控件`)}}function _e({page:e,specs:t,overrides:n}){let r=e.filterSchema?.shape??{};return t.map(t=>{if(typeof t!=`string`)return{key:G(t),title:`时间范围`,control:n?.[t[0]]?.(e)??/* @__PURE__ */ P(u,{...e.bindRange(t)})};let i=r[t],a=L(i);return{key:t,title:a?.kind===`keyword`?`关键字`:V(i,t),control:n?.[t]?.(e)??U(e,t,i,a)}})}function W({page:e,specs:t,overrides:n}){let r=e.filterSchema?.shape??{},i=[],a=[];for(let o of t){if(typeof o!=`string`){let t=n?.[o[0]];a.push(t?/* @__PURE__ */ P(ee,{children:t(e)},G(o)):/* @__PURE__ */ P(u,{...e.bindRange(o)},G(o)));continue}let t=n?.[o];if(t){a.push(/* @__PURE__ */ P(ee,{children:t(e)},o));continue}let s=r[o],c=L(s),l=U(e,o,s,c);(c?.kind===`keyword`?i:a).push(l)}return{keyword:i,filters:a}}var G,K;function q(){return(q=e((()=>{s(),G=e=>typeof e==`string`?e:`${e[0]}~${e[1]}`,K=[{value:`true`,label:`是`},{value:`false`,label:`否`}]})))()}function J(e){return D.toArray(e).flatMap(e=>k(e)&&e.type===ee?J(e.props.children):[e])}function ve(e){if(!k(e))return`筛选条件`;if(e.props.searchLabel)return e.props.searchLabel;if(e.type===u)return`时间范围`;if(e.type===r)return`状态`;let t=e.props.placeholder;return Array.isArray(t)?`时间范围`:typeof t==`string`?t.replace(/^(搜索|全部|请输入)\s*/,``)||`关键字`:typeof e.props.children==`string`?e.props.children:`筛选条件`}function Y({control:e,id:t,title:n}){let r=k(e)?te(e,{id:t,"aria-label":n}):e;return/* @__PURE__ */ P(l.Provider,{value:!0,children:/* @__PURE__ */ P(`div`,{className:`arc-basic-table-search-field`,children:r})})}function ye(e){let t=e.page?_e({page:e.page,specs:e.filters,overrides:e.overrides}):J(/* @__PURE__ */ F(ae,{children:[e.keyword,e.filters]})).map((e,t)=>({key:`slot-${t}`,title:ve(e),control:e}));return e.page&&t.push(...J(e.extraFilters).map((e,t)=>({key:`extra-${t}`,title:ve(e),control:e}))),{columns:t.map(({key:e,title:t,control:n})=>({key:`arc-filter-${e}`,dataIndex:`arc-filter-${e}`,title:t,hideInTable:!0,hideInSetting:!0,formItemRender:()=>/* @__PURE__ */ P(Y,{control:n,title:t})})),fields:t,onSearch:e.page?e.page.toolbarProps.onSearch:e.onSearch,onReset:e.page?e.page.toolbarProps.onReset:e.onReset,actions:J(/* @__PURE__ */ F(ae,{children:[e.create,e.actions]})),headerTitle:e.actionTitle?.replace(/操作$/,`管理`)}}function be(e){return e?{search:{labelWidth:`auto`},form:{ignoreRules:!0},manualRequest:!0,onSubmit:e.onSearch,onReset:e.onReset,headerTitle:e.headerTitle}:{search:!1}}function xe({config:e}){return/* @__PURE__ */ F(`div`,{className:`arc-basic-table-grid-search`,children:[/* @__PURE__ */ P(I,{labelWidth:`auto`,onFinish:async()=>{e.onSearch()},onReset:e.onReset,children:e.fields.map(e=>/* @__PURE__ */ P(le.Item,{name:`arc-filter-${e.key}`,label:e.title,children:/* @__PURE__ */ P(Y,{control:e.control,title:e.title})},e.key))}),/* @__PURE__ */ P(`div`,{className:`arc-basic-table-grid-actions`,children:e.actions})]})}function X(){return(X=e((()=>{i(),q(),s()})))()}function Se({children:e,onResizeWidth:t,...n}){return/* @__PURE__ */ F(`th`,{...n,style:{...n.style,position:n.style?.position??(n.className?.includes(`cell-fix`)?`sticky`:`relative`)},children:[e,t&&/* @__PURE__ */ P(`span`,{role:`separator`,tabIndex:0,"aria-orientation":`vertical`,"aria-label":`调整列宽`,className:`arc-table-resize-handle`,onKeyDown:e=>{(e.key===`ArrowLeft`||e.key===`ArrowRight`)&&(e.preventDefault(),e.stopPropagation(),t(Math.max(60,e.currentTarget.parentElement.getBoundingClientRect().width+(e.key===`ArrowRight`?10:-10))))},onClick:e=>e.stopPropagation(),onPointerDown:e=>{e.preventDefault(),e.stopPropagation();let n=e.currentTarget;n.setPointerCapture(e.pointerId);let r=e.clientX,i=n.parentElement.getBoundingClientRect().width,a=e=>t(Math.max(60,i+e.clientX-r)),o=()=>{n.removeEventListener(`pointermove`,a),n.removeEventListener(`pointerup`,o),n.removeEventListener(`pointercancel`,o),n.removeEventListener(`lostpointercapture`,o)};n.addEventListener(`pointermove`,a),n.addEventListener(`pointerup`,o),n.addEventListener(`pointercancel`,o),n.addEventListener(`lostpointercapture`,o)}})]})}function Ce({currentPage:e,onPageChange:t,onPageSizeChange:n,pageSizeOpts:r,hoverShowPageSelect:i,showTotal:a,size:o,...s}){return{...s,current:e,size:o===`small`?`small`:void 0,pageSizeOptions:r,showTotal:a===!0?e=>`共 ${e} 条`:a===!1?void 0:a,onChange:(e,r)=>{r===s.pageSize?t?.(e):n?.(r)}}}function we(e){return/* @__PURE__ */ P(ue,{...Ce(e)})}function Te({searchConfig:e,adaptive:t=!1,toolBarRender:n=!1,options:r=!1,cardProps:i=!1,cardBordered:a=!1,pagination:o,empty:s,size:c,rowSelection:l,virtualized:u,resizable:d,expandedRowRender:f,expandRowByClick:p,defaultExpandAllRows:m,expandedRowKeys:h,onExpandedRowsChange:g,hideExpandedColumn:_,rowExpandable:v,childrenRecordName:y,columns:b,...x}){let[S,C]=N({}),w=({useFullRender:e,defaultHidden:t,minWidth:n,render:r,children:i,...a},o)=>{let s=String(a.key??a.dataIndex??o);return{...a,key:s,search:!1,width:S[s]??a.width,minWidth:n,children:i?.map(w),renderText:r?(e,t,n)=>r(e,t,n):void 0,onHeaderCell:d&&!i?(e=>({...a.onHeaderCell?.(e),onResizeWidth:e=>C(t=>({...t,[s]:Math.max(n??60,e)}))})):a.onHeaderCell}},T=[...b?.map(w)??[],...e?.columns??[]];return/* @__PURE__ */ P(oe,{...x,...be(e),adaptive:t,columns:T,options:r,toolBarRender:n,cardBordered:a,cardProps:i,components:{...x.components,header:{...x.components?.header,cell:d?Se:x.components?.header?.cell}},rowSelection:l&&!l.hidden?l:void 0,size:c==="default"?`large`:c,virtual:u&&typeof x.scroll?.x==`number`&&(t!==!1||typeof x.scroll.y==`number`),expandable:{...x.expandable,childrenColumnName:y,expandedRowRender:f,expandRowByClick:p,defaultExpandAllRows:m,expandedRowKeys:h,onExpandedRowsChange:g,showExpandColumn:!_,rowExpandable:v},locale:{...x.locale,emptyText:s??x.locale?.emptyText},pagination:o===!1?!1:o?Ce(o):!1})}function Z({dataSource:e=[],value:t=[],onChange:n,filter:r,type:i,renderSourceItem:a,renderSelectedItem:o,treeProps:s,inputProps:c,emptyContent:l,...u}){let[d,f]=N(``),p=e=>e.flatMap(e=>[e,...p(e.children??[])]),m=p(e).filter(e=>!e.children?.length&&!e.disabled),h=e=>String(e.value??e.key),g=new Set(t.map(String)),_=(e,t)=>typeof r==`function`?r(e,t):s?.filterTreeNode?s.filterTreeNode(e,t):String(t.label??``).toLocaleLowerCase().includes(e.toLocaleLowerCase()),v=e=>n?.(e.flatMap(e=>{let t=m.find(t=>h(t)===String(e));return t?[t.value??t.key]:[]})),y=e=>v(t.filter(t=>String(t)!==h(e)));return/* @__PURE__ */ P(de,{...u,dataSource:m,rowKey:h,targetKeys:t.map(String),showSearch:!!r,filterOption:_,render:e=>/* @__PURE__ */ P(`span`,{children:e.label??String(e.value??e.key)}),locale:{...u.locale,searchPlaceholder:c?.placeholder},onSearch:(e,t)=>{e===`left`&&f(t)},onChange:v,children:({direction:t,filteredItems:n,selectedKeys:r,onItemSelect:c})=>{if(t===`right`&&o)return/* @__PURE__ */ P(`div`,{style:{overflow:`auto`,height:300},children:n.length?n.map(e=>o({...e,onRemove:()=>y(e)})):/* @__PURE__ */ P(ce,{description:l?.right})});if(t===`left`&&i===`treeList`){let t=e=>e.flatMap(e=>{let n=e.children?t(e.children):void 0;return!n&&(g.has(h(e))||d&&!_(d,e))||e.children&&!n?.length?[]:[{key:h(e),title:s?.renderLabel?.(e.label,e)??e.label,children:n,disableCheckbox:!!e.disabled,selectable:!e.disabled}]});return/* @__PURE__ */ P(fe,{checkable:!0,checkStrictly:!0,defaultExpandAll:!0,height:300,treeData:t(e),checkedKeys:r,onCheck:(e,t)=>c(String(t.node.key),t.checked)})}if(t===`left`&&a)return/* @__PURE__ */ P(`div`,{style:{overflow:`auto`,height:300},children:n.length?n.map(e=>a({...e,checked:r.includes(h(e)),onChange:()=>c(h(e),!r.includes(h(e)))})):/* @__PURE__ */ P(ce,{description:d?l?.search:l?.left})})}})}function Ee(){return(Ee=e((()=>{ge(),X()})))()}function De({items:e,contentWidth:t,maxTagCount:n,tagColor:r,tagSize:i,popoverWidth:a,popoverTrigger:o,onClick:s,style:c}){return/* @__PURE__ */ P(`div`,{style:{width:t,maxWidth:`100%`,minWidth:0,overflow:`hidden`,cursor:s?`pointer`:void 0,...c},role:s?`button`:void 0,tabIndex:s?0:void 0,onClick:s,onKeyDown:s?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),s())}:void 0,children:n==null?/* @__PURE__ */ P(g,{items:[...e],renderMode:`collapse`,style:{width:t,maxWidth:`100%`,minWidth:0},visibleItemRenderer:e=>/* @__PURE__ */ P(b,{size:i,color:e.color??r,style:{flex:`0 0 auto`,marginRight:4},children:e.label},e.key),overflowRenderer:e=>e.length>0?/* @__PURE__ */ P(v,{position:`bottomLeft`,trigger:o,content:/* @__PURE__ */ P(_,{spacing:4,wrap:!0,style:{maxWidth:a},children:e.map(e=>/* @__PURE__ */ P(b,{size:i,color:e.color??r,children:e.label},e.key))}),children:/* @__PURE__ */ F(b,{size:i,color:`grey`,style:{flex:`0 0 auto`,cursor:`pointer`},children:[`+`,e.length]})}):null}):/* @__PURE__ */ P(h,{maxTagCount:n,showPopover:!0,size:i===`small`||i===`large`?i:void 0,popoverProps:o?{trigger:o}:void 0,tagList:[...e].map(e=>({tagKey:typeof e.key==`number`?e.key:String(e.key),children:e.label,color:e.color??r,size:i}))})})}function Oe(){return(Oe=e((()=>{p()})))()}function ke(e){return/* @__PURE__ */ P(n.Text,{ellipsis:{showTooltip:!0},style:{maxWidth:`100%`},children:e||B})}function Ae(e){return/* @__PURE__ */ P(n.Text,{code:!0,ellipsis:{showTooltip:!0},style:{maxWidth:`100%`},children:e||B})}function je({title:e,dataIndex:t,width:n,minWidth:r,contentWidth:i,maxTagCount:a,getItems:o,tagColor:s,tagSize:c,popoverWidth:l,popoverTrigger:u,empty:d=B,onClick:f}){return{title:e,dataIndex:t,...n==null?{minWidth:r}:{width:n},render:(e,t)=>{let n=o(e,t);return n.length===0?typeof d==`function`?d(e,t):d:/* @__PURE__ */ P(De,{items:n,contentWidth:i,maxTagCount:a,tagColor:s,tagSize:c,popoverWidth:l,popoverTrigger:u,onClick:f?()=>f(t):void 0})}}}function Me(e,t,n,r,i={}){let{empty:a=B,width:o=t,unit:s=`millisecond`,...c}=i;return{title:n,dataIndex:r,width:o,...c,render:t=>{if(!t)return a;let n=s===`second`&&typeof t==`number`?t*1e3:t;return e===`date-time`?/* @__PURE__ */ P(S,{value:n,empty:a}):e(n)}}}function Ne(e,t,n){return Me(`date-time`,200,e,t,n)}var Pe,Fe;function Ie(){return(Ie=e((()=>{p(),x(),Oe(),Pe={title:`创建时间`,dataIndex:`createdAt`,width:200,render:e=>/* @__PURE__ */ P(S,{value:e,empty:B})},Fe={title:`更新时间`,dataIndex:`updatedAt`,width:200,render:e=>/* @__PURE__ */ P(S,{value:e,empty:B})}})))()}var Le;function Re(){return(Re=e((()=>{Le=/*#__PURE__*/ O({})})))()}function ze(){return!!(typeof window<`u`&&window.document&&window.document.createElement)}function Be(e,t){if(!e||!t)return!1;if(e.contains)return e.contains(t);let n=t;for(;n;){if(n===e)return!0;n=n.parentNode}return!1}function Ve({mark:e}={}){return e?e.startsWith(`data-`)?e:`data-${e}`:et}function He(e){return e.attachTo?e.attachTo:document.querySelector(`head`)||document.body}function Ue(e){return e===`queue`?`prependQueue`:e?`prepend`:`append`}function We(e){return Array.from((tt.get(e)||e).children).filter(e=>e.tagName===`STYLE`)}function Ge(e,t={}){if(!ze())return null;let{csp:n,prepend:r,priority:i=0}=t,a=Ue(r),o=a===`prependQueue`,s=document.createElement(`style`);s.setAttribute(Qe,a),o&&i&&s.setAttribute($e,`${i}`),n?.nonce&&(s.nonce=n.nonce),s.innerHTML=e;let c=He(t),{firstChild:l}=c;if(r){if(o){let e=(t.styles||We(c)).filter(e=>{if(![`prepend`,`prependQueue`].includes(e.getAttribute(Qe)))return!1;let t=Number(e.getAttribute($e)||0);return i>=t});if(e.length)return c.insertBefore(s,e[e.length-1].nextSibling),s}c.insertBefore(s,l)}else c.appendChild(s);return s}function Ke(e,t={}){let{styles:n}=t;return n||=We(He(t)),n.find(n=>n.getAttribute(Ve(t))===e)}function qe(e,t){let n=tt.get(e);if(!n||!Be(document,n)){let n=Ge(``,t);if(!n)return;let{parentNode:r}=n;tt.set(e,r),e.removeChild(n)}}function Je(e,t,n={}){if(!ze())return null;let r=He(n),i=We(r),a={...n,styles:i};qe(r,a);let o=Ke(t,a);if(o)return a.csp?.nonce&&o.nonce!==a.csp.nonce&&(o.nonce=a.csp.nonce),o.innerHTML!==e&&(o.innerHTML=e),o;let s=Ge(e,a);return s?.setAttribute(Ve(a),t),s}function Ye(e){return e?.getRootNode?.()}function Xe(e){let t=Ye(e);return typeof ShadowRoot<`u`&&t instanceof ShadowRoot?t:null}function Ze(e,t){e||nt[t]||(nt[t]=!0)}var Qe,$e,et,tt,nt;function rt(){return(rt=e((()=>{Qe=`data-rc-order`,$e=`data-rc-priority`,et=`rc-util-key`,tt=/* @__PURE__ */ new Map,nt={}})))()}function it(e){return e.replace(/-(.)/g,(e,t)=>t.toUpperCase())}function at(e,t){Ze(e,`[@ant-design/icons] ${t}`)}function ot(e){return typeof e==`object`&&!!e&&typeof e.name==`string`&&typeof e.theme==`string`&&(typeof e.icon==`object`||typeof e.icon==`function`)}function st(e={}){return Object.keys(e).reduce((t,n)=>{let r=e[n];switch(n){case`class`:t.className=r,delete t.class;break;default:delete t[n],t[it(n)]=r}return t},{})}function ct(e,t,n){return n?/*#__PURE__*/ E.createElement(e.tag,{key:t,...st(e.attrs),...n},(e.children||[]).map((n,r)=>ct(n,`${t}-${e.tag}-${r}`))):/*#__PURE__*/ E.createElement(e.tag,{key:t,...st(e.attrs)},(e.children||[]).map((n,r)=>ct(n,`${t}-${e.tag}-${r}`)))}var lt,ut;function dt(){return(dt=e((()=>{Re(),rt(),lt=`
2
+ .anticon {
3
+ display: inline-flex;
4
+ align-items: center;
5
+ color: inherit;
6
+ font-style: normal;
7
+ line-height: 0;
8
+ text-align: center;
9
+ text-transform: none;
10
+ vertical-align: -0.125em;
11
+ text-rendering: optimizeLegibility;
12
+ -webkit-font-smoothing: antialiased;
13
+ -moz-osx-font-smoothing: grayscale;
14
+ }
15
+
16
+ .anticon > * {
17
+ line-height: 1;
18
+ }
19
+
20
+ .anticon svg {
21
+ display: inline-block;
22
+ vertical-align: inherit;
23
+ }
24
+
25
+ .anticon::before {
26
+ display: none;
27
+ }
28
+
29
+ .anticon .anticon-icon {
30
+ display: block;
31
+ }
32
+
33
+ .anticon[tabindex] {
34
+ cursor: pointer;
35
+ }
36
+
37
+ .anticon-spin {
38
+ -webkit-animation: loadingCircle 1s infinite linear;
39
+ animation: loadingCircle 1s infinite linear;
40
+ }
41
+
42
+ @-webkit-keyframes loadingCircle {
43
+ 100% {
44
+ -webkit-transform: rotate(360deg);
45
+ transform: rotate(360deg);
46
+ }
47
+ }
48
+
49
+ @keyframes loadingCircle {
50
+ 100% {
51
+ -webkit-transform: rotate(360deg);
52
+ transform: rotate(360deg);
53
+ }
54
+ }
55
+ `,ut=e=>{let{csp:t,prefixCls:n,layer:r,zeroRuntime:i}=A(Le),a=lt;n&&(a=a.replace(/anticon/g,n)),r&&(a=`@layer ${r} {\n${a}\n}`),j(()=>{if(i)return;let n=e.current,o=Xe(n);Je(a,`@ant-design-icons`,{prepend:!r,csp:t,attachTo:o})},[])}})))()}var ft;function pt(){return(pt=e((()=>{dt(),ft=e=>{let{icon:t,className:n,onClick:r,style:i,primaryColor:a,secondaryColor:o,...s}=e,c=T.useRef(null);if(ut(c),at(ot(t),`icon should be icon definiton, but got ${typeof t}`),!ot(t))return null;let l=t;return ct(l.icon,`svg-${l.name}`,{className:n,onClick:r,style:i,"data-icon":l.name,width:`1em`,height:`1em`,fill:`currentColor`,"aria-hidden":`true`,...s,ref:c})},ft.displayName=`IconReact`})))()}function mt(){return mt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},mt.apply(this,arguments)}var Q;function ht(){return(ht=e((()=>{C(),Re(),pt(),dt(),Q=/*#__PURE__*/ T.forwardRef((e,t)=>{let{className:n,icon:r,spin:i,rotate:a,tabIndex:o,onClick:s,twoToneColor:c,...l}=e,{prefixCls:u=`anticon`,rootClassName:d}=T.useContext(Le);if(at(ot(r),`icon should be icon definiton, but got ${typeof r}`),!ot(r))return null;let f=w(d,u,{[`${u}-${r.name}`]:!!r.name,[`${u}-spin`]:!!i||r.name===`loading`},n),p=o;p===void 0&&s&&(p=-1);let m=a?{msTransform:`rotate(${a}deg)`,transform:`rotate(${a}deg)`}:void 0;return/*#__PURE__*/ T.createElement(`span`,mt({role:`img`,"aria-label":r.name},l,{ref:t,tabIndex:p,onClick:s,className:f}),/*#__PURE__*/ T.createElement(ft,{icon:r,style:m}))})})))()}var gt;function _t(){return(_t=e((()=>{gt={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z`}}]},name:`reload`,theme:`outlined`}})))()}function vt(){return vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vt.apply(this,arguments)}var yt,bt;function xt(){return(xt=e((()=>{_t(),ht(),yt=(e,t)=>/*#__PURE__*/ T.createElement(Q,vt({},e,{ref:t,icon:gt})),bt=/*#__PURE__*/ T.forwardRef(yt)})))()}var St;function Ct(){return(Ct=e((()=>{St={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M320 224h-66v-56c0-4.4-3.6-8-8-8h-52c-4.4 0-8 3.6-8 8v56h-66c-4.4 0-8 3.6-8 8v560c0 4.4 3.6 8 8 8h66v56c0 4.4 3.6 8 8 8h52c4.4 0 8-3.6 8-8v-56h66c4.4 0 8-3.6 8-8V232c0-4.4-3.6-8-8-8zm-60 508h-80V292h80v440zm644-436h-66v-96c0-4.4-3.6-8-8-8h-52c-4.4 0-8 3.6-8 8v96h-66c-4.4 0-8 3.6-8 8v416c0 4.4 3.6 8 8 8h66v96c0 4.4 3.6 8 8 8h52c4.4 0 8-3.6 8-8v-96h66c4.4 0 8-3.6 8-8V304c0-4.4-3.6-8-8-8zm-60 364h-80V364h80v296zM612 404h-66V232c0-4.4-3.6-8-8-8h-52c-4.4 0-8 3.6-8 8v172h-66c-4.4 0-8 3.6-8 8v200c0 4.4 3.6 8 8 8h66v172c0 4.4 3.6 8 8 8h52c4.4 0 8-3.6 8-8V620h66c4.4 0 8-3.6 8-8V412c0-4.4-3.6-8-8-8zm-60 145a3 3 0 01-3 3h-74a3 3 0 01-3-3v-74a3 3 0 013-3h74a3 3 0 013 3v74z`}}]},name:`sliders`,theme:`outlined`}})))()}function wt(){return wt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},wt.apply(this,arguments)}var Tt,Et;function Dt(){return(Dt=e((()=>{Ct(),ht(),Tt=(e,t)=>/*#__PURE__*/ T.createElement(Q,wt({},e,{ref:t,icon:St})),Et=/*#__PURE__*/ T.forwardRef(Tt)})))()}var Ot;function kt(){return(kt=e((()=>{Ot={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 208H676V232h212v136zm0 224H676V432h212v160zM412 432h200v160H412V432zm200-64H412V232h200v136zm-476 64h212v160H136V432zm0-200h212v136H136V232zm0 424h212v136H136V656zm276 0h200v136H412V656zm476 136H676V656h212v136z`}}]},name:`table`,theme:`outlined`}})))()}function At(){return At=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},At.apply(this,arguments)}var jt,Mt;function Nt(){return(Nt=e((()=>{kt(),ht(),jt=(e,t)=>/*#__PURE__*/ T.createElement(Q,At({},e,{ref:t,icon:Ot})),Mt=/*#__PURE__*/ T.forwardRef(jt)})))()}function Pt(e){return e.flatMap(e=>e.children?.length?Pt(e.children):[e])}function Ft(e){if(typeof e==`number`)return Number.isFinite(e)?e:void 0;if(typeof e==`string`&&/^\d+(\.\d+)?(px)?$/.test(e.trim()))return Number.parseFloat(e)}function It(e){let t=e.dataIndex;return typeof t==`string`?t:Array.isArray(t)?t.map(String).join(`.`):e.key!==void 0&&e.key!==null?String(e.key):``}function Lt(e){let{title:t}=e;return typeof t==`string`||typeof t==`number`?String(t):It(e)||`(未命名列)`}function Rt(e){let t=null,n=-1/0,r=0;for(let i of e){if(i.fixed)continue;let e=It(i),a=0;i.ellipsis&&(a+=3),Wt.test(e)&&(a+=2),(Gt.test(e)||i.align===`right`||i.align===`center`)&&(a-=3);let o=Ft(i.width)??0;(a>n||a===n&&o>r)&&(t=i,n=a,r=o)}return t}function zt(e,t){return e.map(e=>{if(e.children?.length){let{minWidth:n,children:r,...i}=e;return{...i,children:zt(r,t)}}let{minWidth:n,...r}=e;if(!t.has(e))return r;let{width:i,...a}=r,o=t.get(e);return o===void 0?a:{...a,width:o}})}function Bt(e){return zt(e,/* @__PURE__ */ new Map)}function Vt(e,t={}){let{scroll:n,rowSelection:r,expandedRowRender:i,hideExpandedColumn:a=!0,sticky:o,fill:s}=t,c=Pt(e),l=()=>({columns:Bt(e),scroll:n,fallbackColumnLabel:null,columnsTotalWidth:0,ignoredScrollX:!1});if(!(c.some(e=>!!e.fixed||!!e.ellipsis)||n?.y!=null||o)||c.length<2||c.some(e=>typeof e.width==`string`&&Ft(e.width)===void 0))return l();let u=c.filter(e=>e.width===void 0),d=null,f=u;if(f.length===0){let e=Rt(c);if(!e)return l();f=[e],d=Lt(e)}let p=new Map(f.map(e=>[e,e.minWidth??Ft(e.width)??120])),m=0;for(let e of c)p.has(e)||(m+=Ft(e.width)??0);r&&!r.hidden&&(m+=Ht),i&&a===!1&&(m+=Ut);let h=0;for(let e of p.values())h+=e;let g=m+h,_=/* @__PURE__ */ new Map,v,y=g;if(s===void 0){for(let e of f)_.set(e,void 0);v=Math.ceil(g)}else{let e=Math.floor(Math.max(0,s.contentWidth-g)/f.length);for(let[t,n]of p)_.set(t,n+e);y=g+e*f.length,v=Math.ceil(s.wrapperWidth)}return{columns:zt(e,_),scroll:{...n,x:v},fallbackColumnLabel:d,columnsTotalWidth:y,ignoredScrollX:n?.x!==void 0}}var Ht,Ut,Wt,Gt;function Kt(){return(Kt=e((()=>{Ht=48,Ut=48,Wt=/name|title|subject|desc|remark|content|summary|message|reason|note|comment|body|text|label|url|path|address|keyword/i,Gt=/(At|Time|Date|Count|Num|Amount|Id|No)$/})))()}function qt(e){if(globalThis.window===void 0)return{};try{let t=globalThis.localStorage.getItem(e);if(!t)return{};let n=JSON.parse(t);if(!n||typeof n!=`object`)return{};let r=n,i={};return`bordered`in r&&typeof r.bordered==`boolean`&&(i.bordered=r.bordered),`striped`in r&&typeof r.striped==`boolean`&&(i.striped=r.striped),`size`in r&&typeof r.size==`string`&&(i.size=r.size),i}catch{return{}}}function Jt(e,t){if(globalThis.window!==void 0)try{if(Object.keys(t).length===0){globalThis.localStorage.removeItem(e);return}globalThis.localStorage.setItem(e,JSON.stringify(t))}catch{}}function Yt(...e){return e.filter(Boolean).join(` `)||void 0}function Xt(e){if(typeof e==`string`||typeof e==`number`)return String(e)}function Zt(e,t,n){if(e.key!==void 0&&e.key!==null)return String(e.key);let r=e.dataIndex;if(Array.isArray(r))return r.map(String).join(`.`);if(typeof r==`string`||typeof r==`number`)return String(r);let i=Xt(e.title);return i?`title:${i}`:`column:${[...n,t].join(`.`)}`}function Qt(e){return $t(e)}function $t(e){return e[z]===!0}function en(e,t){let n=Xt(e.title);if(n)return n;let r=e.dataIndex;return Array.isArray(r)?r.map(String).join(`.`):typeof r==`string`||typeof r==`number`?String(r):t.replace(/^title:/,``).replace(/^column:/,`列 `)}function tn(e,t=[]){return e.flatMap((e,n)=>{let r=Zt(e,n,t),i=e.children??[];return i.length>0?tn(i,[...t,n]):[{key:r,title:en(e,r),alwaysVisible:Qt(e)}]})}function nn(e,t,n=!1,r=[]){return e.reduce((e,i,a)=>{let o=Zt(i,a,r),s=i.children??[];if(s.length>0){let c=nn(s,t,n,[...r,a]);return c.length>0&&e.push({...i,key:o,children:c}),e}return t.has(o)&&!Qt(i)?e:n&&$t(i)?(e.push({...i,key:o,disable:!0,width:un}),e):(e.push({...i,key:o,disable:$t(i)?!0:i.disable}),e)},[])}function rn(e){return`arcbase:table-columns:${globalThis.window===void 0?`ssr`:globalThis.window.location.pathname}:${e.join(`|`)}`}function an(e){if(globalThis.window===void 0)return[];try{let t=globalThis.localStorage.getItem(e);if(!t)return[];let n=JSON.parse(t);return Array.isArray(n)?n.filter(e=>typeof e==`string`):[]}catch{return[]}}function on(e,t){if(globalThis.window!==void 0)try{if(t.length===0){globalThis.localStorage.removeItem(e);return}globalThis.localStorage.setItem(e,JSON.stringify(t))}catch{}}function sn(e){let t=Object.fromEntries(an(e).map(e=>[e,{show:!1}]));try{let n=globalThis.localStorage?.getItem(`${e}:pro`)&&JSON.parse(globalThis.localStorage.getItem(`${e}:pro`));return!n||typeof n!=`object`||Array.isArray(n)?t:Object.fromEntries(Object.entries(n).flatMap(([e,t])=>{if(!t||typeof t!=`object`)return[];let n=t;return[[e,{show:typeof n.show!=`boolean`||n.show,order:typeof n.order==`number`&&Number.isFinite(n.order)?n.order:void 0,fixed:n.fixed===`left`||n.fixed===`right`?n.fixed:void 0}]]}))}catch{return t}}function $(e,t,n=[]){return Object.fromEntries(e.flatMap((e,r)=>{let i=Zt(e,r,n),a=e.fixed===`left`||e.fixed===`start`||e.fixed===!0?`left`:e.fixed===`right`||e.fixed===`end`?`right`:void 0,o={show:!e.defaultHidden,fixed:a,...t[i],disable:e.disable};return $t(e)&&Object.assign(o,{show:!0,fixed:a,disable:!0}),[[i,o],...Object.entries($(e.children??[],t,[...n,r]))]}))}function cn(e,t){let n=new Map(t.map(e=>[String(e.key),e]));return e.map(e=>{let t=n.get(String(e.key));return{...e,...t,children:e.children?cn(e.children,t?.children??[]):void 0}})}function ln({columns:e,columnSettings:n=!0,columnSettingsKey:r,columnSettingsLabel:i=`列设置`,onRefresh:a,refreshLoading:o=!1,...s}){let{preferences:c,canOverridePreference:l,canEditPreference:u}=ie(),d=pe(),{bordered:p,className:h,onRow:g,size:_,pagination:v,scroll:b,rowSelection:x,expandedRowRender:S,hideExpandedColumn:C,sticky:w,resizable:T,virtualized:E,components:D,adaptive:ee,searchConfig:te,...O}=s,k=re(null),[A,ae]=N(0),[oe,ce]=N(0);j(()=>{let e=k.current;if(!E||!e)return;let t=new ResizeObserver(e=>{let t=Math.floor(e[0]?.contentRect.width??0);t>0&&ae(t)});return t.observe(e),()=>t.disconnect()},[E]),j(()=>{let e=k.current;if(!E||!e)return;let t=()=>{let t=e.querySelector(`.ant-table-body`);t&&ce(Math.max(0,Math.floor(e.getBoundingClientRect().width)-t.clientWidth))};t();let n=0,r=new MutationObserver(()=>{n||=requestAnimationFrame(()=>{n=0,t()})});return r.observe(e,{childList:!0,subtree:!0}),()=>{r.disconnect(),n&&cancelAnimationFrame(n)}},[E,O.dataSource,O.expandedRowKeys,b?.y]);let le=re(0),ue=M(()=>{function e({style:e,...t}){let n=le.current;return/* @__PURE__ */ P(`table`,{...t,style:n>0?{...e,width:n}:e})}return e},[]),de=M(()=>E?{...D,header:{...D?.header,outer:ue}}:D,[D,E,ue]),fe=M(()=>!v||typeof v==`boolean`?v:{...d?me:he,...v},[v,d]),I=(c.showTableColumnSettings??!0)&&n,L=M(()=>e??[],[e]),R=M(()=>tn(L),[L]),z=M(()=>r??rn(R.map(e=>e.key)),[R,r]),B=M(()=>`${z}:display`,[z]),[ge,V]=N(()=>sn(z)),[H,U]=N(()=>qt(B));j(()=>{V(sn(z))},[z]),j(()=>{U(qt(B))},[B]);let _e=l(`tableBordered`)?H.bordered??c.tableBordered??p:c.tableBordered,W=l(`tableStriped`)?H.striped??c.tableStriped??!1:c.tableStriped,G=l(`tableSize`)?H.size??c.tableSize??_:c.tableSize,K=M(()=>$(L,I?ge:{}),[L,I,ge]),q=re(K);q.current=K;let J=M(()=>$(L,{}),[L]),ve=ne(e=>{let t=$(L,e);if(JSON.stringify(t)!==JSON.stringify(q.current)){q.current=t,V(t),on(z,Object.keys(t).filter(e=>t[e].show===!1));try{globalThis.localStorage.setItem(`${z}:pro`,JSON.stringify(t))}catch{}}},[L,z]),Y=ne(e=>{U(t=>{let n={...t,...e};return Jt(B,n),n})},[B]),ye=M(()=>R.filter(e=>!e.alwaysVisible),[R]),be=M(()=>new Set(Object.keys(K).filter(e=>K[e].show===!1)),[K]),xe=M(()=>nn(L,be,d),[L,be,d]),X=M(()=>nn(L,/* @__PURE__ */ new Set,d),[L,d]),Se=M(()=>W?(e,t)=>{let n=g?.(e,t)??{};return t===void 0||t%2!=0?n:{...n,className:Yt(n.className,dn)}}:g,[W,g]),Ce=Yt(h,W&&`configurable-table__table--striped`),we=I?xe:X,Z=M(()=>{let e=we;if(T)return{columns:Bt(e),scroll:b,fallbackColumnLabel:null,columnsTotalWidth:0,ignoredScrollX:!1};let t=E&&A>0?{wrapperWidth:A,contentWidth:Math.max(0,A-oe)}:void 0;return Vt(e,{scroll:b,rowSelection:x,expandedRowRender:S,hideExpandedColumn:C,sticky:w,fill:t})},[we,b,x,S,C,w,T,E,A,oe]);le.current=E&&!T?Z.columnsTotalWidth:0,j(()=>{Z.fallbackColumnLabel&&(`${z}`,`${z}${Z.fallbackColumnLabel}`),Z.ignoredScrollX&&(`${z}`,`${z}`)},[Z.fallbackColumnLabel,Z.ignoredScrollX,z]),j(()=>{},[O.dataSource,Z.columns,z,d]);let Ee=ne(()=>{U({}),Jt(B,{})},[B]),De=/* @__PURE__ */ F(`div`,{className:`table-display-settings-panel`,children:[/* @__PURE__ */ P(`div`,{className:`table-display-settings-title`,children:`表格显示`}),Object.keys(H).length>0&&/* @__PURE__ */ P(`p`,{className:`text-muted text-xs`,children:`此表已单独设置,恢复默认后跟随全局偏好。`}),/* @__PURE__ */ F(`div`,{className:`table-display-settings-list`,children:[u(`tableBordered`)&&/* @__PURE__ */ F(`div`,{className:`table-display-settings-item`,children:[/* @__PURE__ */ P(`span`,{children:`显示表格边框`}),/* @__PURE__ */ P(t,{size:`small`,checked:!!_e,onChange:e=>Y({bordered:e})})]}),u(`tableStriped`)&&/* @__PURE__ */ F(`div`,{className:`table-display-settings-item`,children:[/* @__PURE__ */ P(`span`,{children:`启用斑马纹`}),/* @__PURE__ */ P(t,{size:`small`,checked:!!W,onChange:e=>Y({striped:e})})]})]}),/* @__PURE__ */ P(`div`,{className:`table-display-settings-footer`,children:/* @__PURE__ */ P(m,{theme:`borderless`,size:`small`,icon:/* @__PURE__ */ P(f,{size:14}),onClick:Ee,children:`恢复默认`})})]}),Oe=cn(X,Z.columns);return/* @__PURE__ */ P(`div`,{ref:k,className:`configurable-table`,children:/* @__PURE__ */ P(Te,{...O,adaptive:ee??!0,cardBordered:!0,cardProps:{},searchConfig:te,options:{fullScreen:!0,reload:a?()=>{o||a()}:!1,reloadIcon:/* @__PURE__ */ P(bt,{spin:o}),density:u(`tableSize`),setting:I&&ye.length>0?{settingIcon:/* @__PURE__ */ P(Mt,{"aria-label":i})}:!1},columnsState:{value:K,defaultValue:J,onChange:ve},onSizeChange:e=>{u(`tableSize`)&&Y({size:e===`large`?`default`:e})},toolBarRender:()=>te?.actions??[],optionsRender:(e,t)=>u(`tableBordered`)||u(`tableStriped`)?[...t,/* @__PURE__ */ P(y,{trigger:`click`,render:De,children:/* @__PURE__ */ P(se,{label:`表格显示设置`,children:/* @__PURE__ */ P(Et,{})})},`display`)]:t,bordered:_e,className:Ce,columns:Oe,scroll:Z.scroll,rowSelection:x,expandedRowRender:S,hideExpandedColumn:C,sticky:w,resizable:T,virtualized:E,components:de,onRow:Se,pagination:fe,size:G})})}var un,dn;function fn(){return(fn=e((()=>{p(),xt(),Nt(),Dt(),d(),Kt(),un=64,dn=`configurable-table-row--striped`})))()}export{X as _,Ne as a,Ae as c,we as d,Te as f,ye as g,xe as h,Pe as i,ke as l,Ee as m,fn as n,Ie as o,Z as p,B as r,je as s,ln as t,Fe as u,W as v,q as y};
@@ -0,0 +1,22 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{n as t,t as n}from"./skeleton-CrjMjJNr.js";import{n as r,t as i}from"./createLucideIcon-BtwfYE6A.js";import{n as a,t as o}from"./activity-DBu4axwF.js";import{n as s,t as c}from"./clock-CniP1gZS.js";import{n as l,t as u}from"./log-in-OzbNes8i.js";import{n as d,t as f}from"./users-BXZLb4TY.js";import{n as p,t as m}from"./UserAvatar-B8CFnTCn.js";import{Fragment as h,jsx as g,jsxs as _}from"react/jsx-runtime";import{useNavigate as v}from"react-router-dom";import{usePermission as y}from"@fudanda/react-core/hooks/usePermission";import{formatDate as b}from"@fudanda/react-core/utils/date";import{EMPTY_PLACEHOLDER as x}from"@fudanda/react-core/utils/empty-placeholder";import{useAuth as S}from"@fudanda/react-core/hooks/useAuth";import{isPageAvailable as C}from"@fudanda/react-core/lib/foundation-mode";import{useDashboardStats as w}from"@fudanda/react-core/hooks/queries/dashboard";var T,E;function D(){return(D=e((()=>{
2
+ /**
3
+ * @license lucide-react v1.53.0 - ISC
4
+ *
5
+ * This source code is licensed under the ISC license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */
8
+ r(),T={name:`calendar-days`,size:24,node:[[`path`,{d:`M8 2v3`,key:`1ioesn`}],[`path`,{d:`M16 2v3`,key:`otl347`}],[`rect`,{x:`3`,y:`3`,width:`18`,height:`18`,rx:`2`,key:`h1oib`}],[`path`,{d:`M3 9h18`,key:`1pudct`}],[`path`,{d:`M8 13h.01`,key:`1sbv64`}],[`path`,{d:`M12 13h.01`,key:`y0uutt`}],[`path`,{d:`M16 13h.01`,key:`wip0gl`}],[`path`,{d:`M8 17h.01`,key:`p3bg7i`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M16 17h.01`,key:`ql8jdd`}]]},T.node,E=i(T)})))()}var O,k;function A(){return(A=e((()=>{
9
+ /**
10
+ * @license lucide-react v1.53.0 - ISC
11
+ *
12
+ * This source code is licensed under the ISC license.
13
+ * See the LICENSE file in the root directory of this source tree.
14
+ */
15
+ r(),O={name:`map-pin`,size:24,node:[[`path`,{d:`M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0`,key:`1r0f0z`}],[`circle`,{cx:`12`,cy:`10`,r:`3`,key:`ilqhr7`}]]},O.node,k=i(O)})))()}var j,M;function N(){return(N=e((()=>{
16
+ /**
17
+ * @license lucide-react v1.53.0 - ISC
18
+ *
19
+ * This source code is licensed under the ISC license.
20
+ * See the LICENSE file in the root directory of this source tree.
21
+ */
22
+ r(),j={name:`wifi`,size:24,node:[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M2 8.82a15 15 0 0 1 20 0`,key:`dnpr2z`}],[`path`,{d:`M5 12.859a10 10 0 0 1 14 0`,key:`1x1e6c`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}]]},j.node,M=i(j)})))()}function P(){let e=v(),{permissions:t}=y(),{user:r}=S(),i=t.includes(`*`),a=w(i),o=a.data??null,s=a.isFetching,l=`${b(/* @__PURE__ */ new Date)} ${F[(/* @__PURE__ */ new Date()).getDay()]}`;return/* @__PURE__ */ _(`div`,{className:`page-container dashboard-page`,children:[/* @__PURE__ */ g(`section`,{className:`dashboard-welcome-section`,"aria-label":`欢迎信息`,children:/* @__PURE__ */ g(n,{active:!0,loading:!r,placeholder:/* @__PURE__ */ _(`div`,{className:`dashboard-welcome-skeleton`,children:[/* @__PURE__ */ g(n.Avatar,{style:{width:48,height:48,borderRadius:`50%`,flexShrink:0}}),/* @__PURE__ */ _(`div`,{style:{flex:1},children:[/* @__PURE__ */ g(n.Title,{style:{width:180,height:18,marginBottom:8}}),/* @__PURE__ */ g(n.Paragraph,{rows:1,style:{width:260}})]})]}),children:/* @__PURE__ */ g(`div`,{className:`dashboard-welcome`,children:/* @__PURE__ */ _(`div`,{className:`dashboard-welcome__left`,children:[/* @__PURE__ */ g(m,{name:r?.nickname||`用户`,avatar:r?.avatar,size:null,className:`dashboard-welcome__avatar`}),/* @__PURE__ */ _(`div`,{className:`dashboard-welcome__info`,children:[/* @__PURE__ */ _(`div`,{className:`dashboard-welcome__greeting`,children:[`欢迎回来,`,/* @__PURE__ */ g(`button`,{type:`button`,className:`dashboard-welcome__name dashboard-welcome__name--link`,onClick:()=>e(`/profile`),children:r?.nickname??r?.username??`用户`})]}),/* @__PURE__ */ _(`div`,{className:`dashboard-welcome__meta`,children:[/* @__PURE__ */ _(`span`,{className:`dashboard-welcome__meta-item`,children:[/* @__PURE__ */ g(E,{size:12}),l]}),r?.lastLoginAt?/* @__PURE__ */ _(h,{children:[/* @__PURE__ */ _(`span`,{className:`dashboard-welcome__meta-item`,children:[/* @__PURE__ */ g(c,{size:12}),`本次登录:`,r.lastLoginAt]}),r.lastLoginIp&&/* @__PURE__ */ _(`span`,{className:`dashboard-welcome__meta-item`,children:[/* @__PURE__ */ g(k,{size:12}),`IP:${r.lastLoginIp}`]})]}):/* @__PURE__ */ g(`span`,{className:`dashboard-welcome__meta-item`,children:`首次登录,欢迎!`})]})]})]})})})}),i&&/* @__PURE__ */ g(`section`,{className:`dashboard-stats-row`,"aria-label":`系统概览`,children:s?I.map(e=>/* @__PURE__ */ g(`div`,{className:`dashboard-stat-item`,children:/* @__PURE__ */ g(n,{active:!0,loading:!0,placeholder:/* @__PURE__ */ _(`div`,{className:`dashboard-stat-skeleton`,children:[/* @__PURE__ */ g(n.Avatar,{style:{width:16,height:16,borderRadius:`50%`}}),/* @__PURE__ */ _(`div`,{style:{flex:1},children:[/* @__PURE__ */ g(n.Title,{style:{width:60,height:22,marginBottom:6}}),/* @__PURE__ */ g(n.Paragraph,{rows:1,style:{width:80}})]})]})})},e.key)):I.map(t=>/* @__PURE__ */ _(`button`,{type:`button`,className:`dashboard-stat-item dashboard-stat-item--link`,disabled:!C(t.to),onClick:()=>e(t.to),children:[/* @__PURE__ */ g(`div`,{className:`dashboard-stat-item__value`,children:o?.[t.key]??x}),/* @__PURE__ */ _(`div`,{className:`dashboard-stat-item__label`,children:[/* @__PURE__ */ g(`span`,{className:`dashboard-stat-item__icon`,children:t.icon}),t.label]})]},t.key))})]})}var F,I;function L(){return(L=e((()=>{t(),d(),N(),l(),a(),A(),s(),D(),p(),F=[`星期日`,`星期一`,`星期二`,`星期三`,`星期四`,`星期五`,`星期六`],I=[{key:`totalUsers`,label:`系统用户总数`,icon:/* @__PURE__ */ g(f,{size:16}),to:`/system/users`},{key:`onlineUsers`,label:`当前在线`,icon:/* @__PURE__ */ g(M,{size:16}),to:`/system/sessions`},{key:`todayLogins`,label:`今日登录`,icon:/* @__PURE__ */ g(u,{size:16}),to:`/system/login-logs`},{key:`todayOperations`,label:`今日操作`,icon:/* @__PURE__ */ g(o,{size:16}),to:`/system/operation-logs`}]})))()}L();export{P as default};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{o as t}from"./controls-C5dPckUT.js";import{c as n,s as r}from"./form-CQutQFiD.js";import{C as i,_ as a,a as o,g as s,r as c}from"./ui-BFsHoY7a.js";import{useMemo as l,useState as u}from"react";import{Fragment as d,jsx as f,jsxs as p}from"react/jsx-runtime";import{textMatches as m}from"@fudanda/react-core/utils/pinyin";import{usePinyinReady as h}from"@fudanda/react-core/hooks/usePinyinReady";import{departmentTreeToTreeData as g}from"@fudanda/react-core/hooks/queries/departments";function _(e,t){return e.map(e=>({label:/* @__PURE__ */ p(s,{spacing:6,children:[/* @__PURE__ */ f(`span`,{children:e.title}),t?.[String(e.id)]]}),filterLabel:e.title,key:String(e.id),value:e.id,children:e.children?_(e.children,t):void 0}))}function v(e){return e.flatMap(e=>[e.id,...e.children?v(e.children):[]])}function y(e){return e.flatMap(e=>[String(e.id),...e.children?y(e.children):[]])}function b(e,t=/* @__PURE__ */ new Map){for(let n of e)t.set(n.id,n),n.children&&b(n.children,t);return t}function x(e){return(e.children??[]).filter(e=>e.type===`button`&&(e.permission?.endsWith(`:list`)||e.permission?.endsWith(`:query`)||e.title===`查询`)).map(e=>e.id)}function S({allMenus:e,checkedMenuIds:t,onChange:n,loading:i=!1,readonly:g=!1,labelSuffix:S}){let[C,w]=u([]),T=l(()=>b(e),[e]);if(h(),i)return/* @__PURE__ */ f(`div`,{style:{display:`flex`,justifyContent:`center`,padding:40},children:/* @__PURE__ */ f(a,{})});let E=e=>{let r=new Set(e.map(Number)),i=new Set(t);for(let e of r){if(i.has(e))continue;let t=T.get(e);if(t&&t.type!==`button`)for(let e of x(t))r.add(e)}n?.([...r])};return/* @__PURE__ */ p(d,{children:[!g&&/* @__PURE__ */ p(d,{children:[/* @__PURE__ */ f(c,{type:`info`,closeIcon:null,style:{marginBottom:8},description:`菜单仅控制页面可见性,操作能力(含查询)由按钮权限决定;勾选按钮不会带出所属页面。勾选页面时已自动带上「查询」按钮。`}),/* @__PURE__ */ p(`div`,{style:{display:`flex`,justifyContent:`space-between`,marginBottom:8},children:[/* @__PURE__ */ p(s,{children:[/* @__PURE__ */ f(o,{size:`small`,theme:`borderless`,onClick:()=>n?.(v(e)),children:`全选`}),/* @__PURE__ */ f(o,{size:`small`,theme:`borderless`,onClick:()=>n?.([]),children:`全不选`})]}),/* @__PURE__ */ p(s,{children:[/* @__PURE__ */ f(o,{size:`small`,theme:`borderless`,onClick:()=>w(y(e)),children:`展开全部`}),/* @__PURE__ */ f(o,{size:`small`,theme:`borderless`,onClick:()=>w([]),children:`折叠全部`})]})]})]}),/* @__PURE__ */ f(r,{treeData:_(e,S),multiple:!0,autoMergeValue:!1,checkRelation:`unRelated`,expandedKeys:C,onExpand:e=>w(e),value:t.map(String),onChange:g?void 0:e=>E(e),disableStrictly:g,filterTreeNode:(e,t,n)=>m(String(n?.filterLabel??``),String(e)),showFilteredOnly:!0,searchPlaceholder:`搜索菜单名称`,virtualize:{height:400,itemSize:36}})]})}function C(){return(C=e((()=>{i()})))()}function w({dataScope:e,deptScopeIds:r,deptTree:i,onScopeChange:o,onDeptIdsChange:s,loading:c=!1,nullable:l=!1,readonly:u=!1}){if(c)return/* @__PURE__ */ f(`div`,{style:{display:`flex`,justifyContent:`center`,padding:20},children:/* @__PURE__ */ f(a,{})});let m=l?[{value:`__null__`,label:`跟随角色(不单独设置)`},...T]:T;return/* @__PURE__ */ p(d,{children:[/* @__PURE__ */ f(t,{value:e===null?`__null__`:e??`__null__`,disabled:u,onChange:e=>{if(u)return;let t=e;o?.(t===`__null__`?null:t)},style:{width:`100%`},optionList:m}),e===`custom`&&/* @__PURE__ */ f(n,{multiple:!0,filterTreeNode:!0,disabled:u,treeData:g(i),value:r,onChange:e=>{u||s?.(e)},placeholder:`请选择指定部门(可多选)`,style:{width:`100%`,marginTop:12}})]})}var T;function E(){return(E=e((()=>{i(),T=[{value:`all`,label:`全部数据权限`},{value:`custom`,label:`指定部门数据权限`},{value:`dept_only`,label:`本部门数据权限`},{value:`dept`,label:`本部门及以下数据权限`},{value:`self`,label:`仅本人数据权限`}]})))()}export{C as a,S as i,w as n,E as r,T as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{C as t,S as n}from"./ui-BFsHoY7a.js";import{useOptionalPreferences as r}from"@fudanda/react-core/hooks/usePreferences";import{Fragment as i,jsx as a}from"react/jsx-runtime";import{formatDateTime as o,formatRelativeTime as s}from"@fudanda/react-core/utils/date";import{useNowTick as c}from"@fudanda/react-core/hooks/useNowTick";import{EMPTY_PLACEHOLDER as l}from"@fudanda/react-core/utils/empty-placeholder";function u({value:e,className:t}){let r=c(),i=o(e);return/* @__PURE__ */ a(n,{content:i,position:`top`,children:/* @__PURE__ */ a(`span`,{className:t,children:s(e,r)||i})})}function d({value:e,empty:t=l,mode:n,className:s}){let c=r()?.preferences.timeDisplay??`absolute`;if(e==null||e===``)return/* @__PURE__ */ a(i,{children:t});if((n??c)===`relative`)return/* @__PURE__ */ a(u,{value:e,className:s});let d=o(e);return s?/* @__PURE__ */ a(`span`,{className:s,children:d}):/* @__PURE__ */ a(i,{children:d})}function f(){return(f=e((()=>{t()})))()}export{f as n,d as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{_ as t,g as n,i as r,l as i,n as a,o,r as s,t as ee}from"./ConfigurableTable-DzmZDd8F.js";import{a as te,o as c,r as l}from"./search-filters-CRIhZ0gL.js";import{r as ne,s as u}from"./toolbar-controls-CThS0xuP.js";import{i as d,n as f,r as p,t as m}from"./chevrons-up-down-2M6hY6wt.js";import{t as h}from"./form-CQutQFiD.js";import{C as g,a as re,h as _,o as v}from"./ui-BFsHoY7a.js";import{n as y,t as b}from"./useStatusToggle-B2qZaoc-.js";import{n as x,t as S}from"./useCrudOperationColumn-D935tixd.js";import{n as C}from"./listTableProps-DDynsnLF.js";import{a as w,i as ie,o as ae,r as T,t as oe}from"./EditFormModal-DNHOZHxM.js";import{n as E,t as se}from"./DictTag-2-adKbYg.js";import{n as D,t as ce}from"./ExportButton-AzH4D0oW.js";import{n as O,r as k}from"./MemberAssignmentSheet-Czbt6_zv.js";import{useMemo as A,useState as j}from"react";import{Fragment as M,jsx as N,jsxs as P}from"react/jsx-runtime";import{enumValueOf as F}from"@fudanda/shared/core";import{useDictItems as I}from"@fudanda/react-core/hooks/useDictItems";import{departmentContract as L}from"@fudanda/react-core/lib/native-operations";import{usePermission as R}from"@fudanda/react-core/hooks/usePermission";import{useFilterQuery as z}from"@fudanda/react-core/hooks/useFilterQuery";import{useListSearch as B}from"@fudanda/react-core/hooks/useListSearch";import{useUserList as V}from"@fudanda/react-core/hooks/queries/users";import{compactParams as H}from"@fudanda/react-core/lib/query";import{DEPARTMENT_CATEGORIES as U}from"@fudanda/shared/identity";import{useTreeExpansion as W}from"@fudanda/react-core/hooks/useTreeExpansion";import{departmentKeys as G,departmentsToTreeData as le,useDeleteDepartment as ue,useDepartmentDetail as de,useDepartmentTreeSearch as fe,useFlatDepartments as pe,useSaveDepartment as K}from"@fudanda/react-core/hooks/queries/departments";function me(e,t){let n=/* @__PURE__ */ new Set,r=[t];for(;r.length>0;){let t=r.shift();if(t!==void 0)for(let i of e)i.parentId===t&&(n.add(i.id),r.push(i.id))}return n}function q(){let{hasPermission:e}=R(),{bind:t,bindKeyword:a,submittedParams:o,handleSearch:c,handleReset:u}=B({defaults:J,listKey:G.tree}),{items:d,options:f}=I(`common_status`),g=A(()=>d.flatMap(e=>{let t=L.tree.query.shape.status.safeParse(e.value);return t.success&&t.data!==void 0?[{...e,value:t.data}]:[]}),[d]),{options:b}=I(`department_category`),S=z({keyword:o.keyword,status:o.status}),w=fe(S),T=A(()=>w.data??[],[w.data]),E=pe(),D=A(()=>E.data??[],[E.data]),O=K(),q=ae({entityName:`部门`,save:ie(O,{create:L.create.input.shape.body,update:L.update.input.shape.body}),useDetail:de,defaults:{parentId:0,category:`department`,sort:0,status:`enabled`},toValues:e=>({parentId:e.parentId,name:e.name,code:e.code,category:F(U,e.category)??`department`,leaderId:e.leaderId??void 0,phone:e.phone,email:e.email,sort:e.sort,status:e.status}),beforeSave:(e,{editing:t})=>({...e,leaderId:e.leaderId??void 0,phone:e.phone||void 0,email:e.email||void 0,...t?{clearFields:[...e.leaderId==null?[`leaderId`]:[],...e.phone?[]:[`phone`],...e.email?[]:[`email`]]}:{}})}),Y=K(),he=ue(),[ge,X]=j(``),Z=V({pageSize:50,...H({keyword:ge})},q.visible),_e=(Z.data?.list??[]).map(e=>({value:e.id,label:e.departmentName?`${e.nickname}-${e.departmentName}`:e.nickname})),{expandedRowKeys:ve,isAllExpanded:Q,toggleExpandAll:ye,onExpandedRowsChange:be}=W(T),$=A(()=>{let e=q.editing?/* @__PURE__ */ new Set([q.editing.id,...me(D,q.editing.id)]):/* @__PURE__ */ new Set;return[{label:`顶级部门`,value:0,key:`0`,children:le(D,{excludeIds:e})}]},[D,q.editing]),xe=()=>{X(``),q.openCreate()},Se=e=>{q.openEdit(e)},Ce=y({toggle:(e,t)=>Y.mutateAsync({id:e.id,values:{status:t?`enabled`:`disabled`}}),confirmDisable:e=>({danger:!0,title:`确认停用部门「${e.name}」?`,content:`停用后该部门将不可选择。`,okText:`确认停用`}),disabled:!e(`system:department:update`)}),we=x({permission:`system:department`,edit:e=>{Se(e)},remove:e=>he.mutateAsync({params:{id:e.id}}),title:`确定要删除该部门吗?`,width:150}),Te=[{title:`部门名称`,dataIndex:`name`,minWidth:220},{title:`部门编码`,dataIndex:`code`,width:180,render:i},{title:`类别`,dataIndex:`category`,width:90,render:e=>/* @__PURE__ */ N(se,{dictCode:`department_category`,value:e})},{title:`负责人`,dataIndex:`leaderName`,width:120,render:e=>e||s},{title:`联系电话`,dataIndex:`phone`,width:140,render:e=>e||s},{title:`邮箱`,dataIndex:`email`,width:200,render:i},{title:`排序`,dataIndex:`sort`,width:90},k({dataIndex:`userPreview`,width:150,getPreview:e=>e.userPreview,getCount:e=>e.userCount,getScope:e=>({type:`department`,id:e.id,name:e.name})}),r,Ce.column(),we],Ee=/* @__PURE__ */ N(re,{type:`primary`,icon:N(Q?p:m,{size:14}),onClick:ye,children:Q?`全部折叠`:`全部展开`});return/* @__PURE__ */ P(`div`,{className:`page-container`,children:[/* @__PURE__ */ N(ee,{searchConfig:n({keyword:/* @__PURE__ */ N(l,{placeholder:`搜索部门名称/编码`,...a(`keyword`),width:240}),filters:/* @__PURE__ */ N(te,{items:g,...t(`status`)}),onSearch:c,onReset:u,create:/* @__PURE__ */ N(ne,{permission:`system:department:create`,onClick:xe}),actions:/* @__PURE__ */ P(M,{children:[Ee,/* @__PURE__ */ N(ce,{entity:`system.departments`,query:S})]}),filterTitle:`部门筛选`,actionTitle:`部门操作`}),columns:Te,...C(w,{empty:`暂无数据`}),expandedRowKeys:ve,onExpandedRowsChange:be}),/* @__PURE__ */ P(oe,{modal:q,width:660,children:[/* @__PURE__ */ N(h.TreeSelect,{field:`parentId`,label:`上级部门`,style:{width:`100%`},treeData:$,placeholder:`请选择上级部门`,filterTreeNode:!0}),/* @__PURE__ */ P(_,{gutter:16,children:[/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Input,{field:`name`,label:`部门名称`,placeholder:`请输入部门名称`,rules:[{required:!0,message:`请输入部门名称`}]})}),/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Input,{field:`code`,label:`部门编码`,placeholder:`请输入部门编码`,rules:[{required:!0,message:`请输入部门编码`}]})})]}),/* @__PURE__ */ P(_,{gutter:16,children:[/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Select,{field:`category`,label:`类别`,optionList:b,style:{width:`100%`},placeholder:`请选择类别`,rules:[{required:!0,message:`请选择类别`}]})}),/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Select,{field:`leaderId`,label:`负责人`,placeholder:`请选择负责人`,showClear:!0,filter:!0,remote:!0,loading:Z.isFetching,optionList:_e,onSearch:X,style:{width:`100%`}})}),/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Input,{field:`phone`,label:`联系电话`,placeholder:`请输入联系电话`})})]}),/* @__PURE__ */ P(_,{gutter:16,children:[/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Input,{field:`email`,label:`邮箱`,placeholder:`请输入邮箱`})}),/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.InputNumber,{field:`sort`,label:`排序`,placeholder:`请输入排序`,min:0,style:{width:`100%`}})})]}),/* @__PURE__ */ N(_,{gutter:16,children:/* @__PURE__ */ N(v,{span:12,children:/* @__PURE__ */ N(h.Select,{field:`status`,label:`状态`,optionList:f,style:{width:`100%`},placeholder:`请选择状态`})})})]})]})}var J;function Y(){return(Y=e((()=>{g(),f(),d(),E(),w(),D(),a(),o(),u(),c(),t(),b(),S(),O(),T(),J={keyword:``,status:void 0}})))()}Y();export{q as default};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{C as t,y as n}from"./ui-BFsHoY7a.js";import{jsx as r}from"react/jsx-runtime";import{useDictItems as i}from"@fudanda/react-core/hooks/useDictItems";function a({dictCode:e,value:t,fallback:a,size:o=`small`,...s}){let{items:c}=i(e);if(t==null||t===``)return/* @__PURE__ */ r(`span`,{children:`—`});let l=c.find(e=>e.value===t),u=l?.label??a??t,d=l?.color;return/* @__PURE__ */ r(n,{color:d,size:o,...s,children:u})}function o(){return(o=e((()=>{t()})))()}export{o as n,a as t};
@@ -0,0 +1,15 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{o as t,s as n}from"./controls-C5dPckUT.js";import{i as r}from"./feedback-BnjMKZpz.js";import{t as i}from"./json-viewer-DHYRjY8I.js";import{_ as a,d as o,g as ee,i as te,l as s,n as c,o as ne,t as re}from"./ConfigurableTable-DzmZDd8F.js";import{a as ie,o as l,r as ae}from"./search-filters-CRIhZ0gL.js";import{n as u,t as d}from"./createLucideIcon-BtwfYE6A.js";import{n as oe,t as f}from"./MasterDetailLayout-sjPWw8BI.js";import{c as se,l as ce,r as le,s as ue}from"./toolbar-controls-CThS0xuP.js";import{i as de,n as fe,r as pe,t as me}from"./chevrons-up-down-2M6hY6wt.js";import{n as p,t as he}from"./refresh-cw-Dz8O9-Hp.js";import{n as m,t as ge}from"./trash-tHBT8Mpw.js";import{c as _e,t as h}from"./form-CQutQFiD.js";import{C as g,a as ve,g as ye,h as _,o as v,y}from"./ui-BFsHoY7a.js";import{i as b,n as be,r as xe}from"./confirm-BtBBEqk8.js";import{n as Se,t as x}from"./useStatusToggle-B2qZaoc-.js";import{n as Ce,t as S}from"./useCrudOperationColumn-D935tixd.js";import{n as C,t as we}from"./DateTimeText-CIt0Qy45.js";import{a as w,i as Te,o as Ee,r as T,t as De}from"./EditFormModal-DNHOZHxM.js";import{n as Oe,t as ke}from"./ExportButton-AzH4D0oW.js";import{i as E,n as Ae,r as je,t as Me}from"./NavListPanel-vjIOIqK0.js";import{useEffect as D,useMemo as O,useRef as Ne,useState as k}from"react";import{Fragment as A,jsx as j,jsxs as M}from"react/jsx-runtime";import{abortSubmit as Pe}from"@fudanda/react-core/lib/abort-submit";import{useDictItems as Fe}from"@fudanda/react-core/hooks/useDictItems";import{dictContract as N}from"@fudanda/react-core/lib/native-operations";import{usePermission as Ie}from"@fudanda/react-core/hooks/usePermission";import{useFilterQuery as Le}from"@fudanda/react-core/hooks/useFilterQuery";import{useListSearch as Re}from"@fudanda/react-core/hooks/useListSearch";import{useTreeExpansion as ze}from"@fudanda/react-core/hooks/useTreeExpansion";import{useUrlSelectionState as Be}from"@fudanda/react-core/hooks/useUrlSelectionState";import{dictKeys as Ve,useCreateDictItem as He,useDeleteDictItem as Ue,useDeleteDicts as We,useDictDetail as Ge,useDictItemDetail as P,useDictItemsById as Ke,useDictList as qe,useSaveDict as Je,useUpdateDictItem as Ye}from"@fudanda/react-core/hooks/queries/dicts";var F,I;function L(){return(L=e((()=>{
2
+ /**
3
+ * @license lucide-react v1.53.0 - ISC
4
+ *
5
+ * This source code is licensed under the ISC license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */
8
+ u(),F={name:`book-open`,size:24,node:[[`path`,{d:`M12 5v16`,key:`1f6ucr`}],[`path`,{d:`M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z`,key:`1fyvmf`}]]},F.node,I=d(F)})))()}var R,Xe;function z(){return(z=e((()=>{
9
+ /**
10
+ * @license lucide-react v1.53.0 - ISC
11
+ *
12
+ * This source code is licensed under the ISC license.
13
+ * See the LICENSE file in the root directory of this source tree.
14
+ */
15
+ u(),R={name:`pencil`,size:24,node:[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]},R.node,Xe=d(R)})))()}function Ze(e,t,n){return P(n?.dictId,e,t)}function B(){let{hasPermission:e}=Ie(),a=Ne(null),[c,ne]=k([]),{page:l,pageSize:u,setPage:d,setPageSize:oe,draftParams:ce,setField:ue,submittedParams:de,handleSearch:fe}=Re({defaults:{keyword:``},listKey:Ve.lists}),p=Le({keyword:de.keyword}),[m,g]=Be(`dict`),[b,x]=k(null),[S,C]=k(null),[w,T]=k(`{}`),{items:Oe,options:E}=Fe(`common_status`),P=e=>e,[F,L]=k(!1),R=qe({page:l,pageSize:u,...p}),z=R.data?.total??0,B=m===null?void 0:Number(m),V=B!==void 0&&Number.isInteger(B)&&B>0,$e=V?c.find(e=>e.id===B)??null:null,H=Ge(B,V&&!$e),U=$e??(H.data&&H.data.id===B?H.data:null)??(F?null:c[0]??null);D(()=>{m!==null&&(!V||H.isError)&&g(null)},[m,V,H.isError,g]);let W=Ke(U?.id),G=O(()=>W.data??[],[W.data]),K=Re({defaults:Qe,listKey:Ve.items(U?.id)}),et=Je(),q=Ee({entityName:`字典`,save:Te(et,{create:N.create.input.shape.body,update:N.update.input.shape.body}),useDetail:Ge,defaults:{status:`enabled`},toValues:e=>({name:e.name,code:e.code,description:e.description,status:e.status}),beforeSave:(e,{editing:t})=>({...e,description:e.description||void 0,...t?{clearFields:e.description?[]:[`description`]}:{}})}),J=Je(),tt=We(),nt=He(),rt=Ye(),it=Ye(),at=Ue(),ot=J.isPending?J.variables?.id??null:null,Y=Ee({entityName:`字典项`,save:{mutateAsync:({id:e,values:t})=>(U||Pe(`validation`),e===void 0?nt.mutateAsync({params:{id:U.id},body:N.createItem.input.shape.body.parse(t)}):rt.mutateAsync({params:{id:U.id,itemId:e},body:N.updateItem.input.shape.body.parse(t)})),isPending:nt.isPending||rt.isPending},useDetail:Ze,defaults:{status:`enabled`,sort:0},toValues:e=>({label:e.label,value:e.value,sort:e.sort,status:e.status,remark:e.remark??void 0}),beforeSave:(e,{editing:t})=>{let n,i=(a.current?.getValue()??w).trim();if(i&&i!==`{}`)try{n=JSON.parse(i)}catch{r.error(`元数据 JSON 格式有误,请检查后重试`),Pe()}let o={...e,parentId:b??void 0,color:S||void 0,remark:e.remark||void 0,metadata:n};return t?N.updateItem.input.shape.body.parse({...o,clearFields:[...b==null?[`parentId`]:[],...S?[]:[`color`],...e.remark?[]:[`remark`],...n===void 0?[`metadata`]:[]]}):N.createItem.input.shape.body.parse(o)},labelWidth:72}),X=Y.editing;D(()=>{R.data&&ne(R.data.list)},[R.data]);let st=Ne(null);D(()=>{X&&(x(X.parentId??null),C(X.color??null),T(X.metadata?JSON.stringify(X.metadata,null,2):`{}`))},[X]);let ct=e=>{d(e)},lt=e=>{d(1),oe(e)},ut=e=>{g(String(e.id)),K.handleReset()},Z=O(()=>{let{keyword:e,status:t}=K.submittedParams;return G.filter(n=>!(e&&!n.label.includes(e)&&!n.value.includes(e)||t&&n.status!==t))},[G,K.submittedParams]),Q=O(()=>{let e=new Set(Z.map(e=>e.id)),t=e=>Z.filter(t=>t.parentId===e).map(e=>{let n=t(e.id);return n.length>0?{...e,children:n}:e});return Z.filter(t=>!t.parentId||!e.has(t.parentId)).map(e=>{let n=t(e.id);return n.length>0?{...e,children:n}:e})},[Z]),{expandedRowKeys:dt,setExpandedRowKeys:ft,allRowKeys:$,isAllExpanded:pt,toggleExpandAll:mt,onExpandedRowsChange:ht}=ze(Q);D(()=>{U&&W.data!==void 0&&st.current!==U.id&&(st.current=U.id,ft($))},[U,W.data,$,ft]);let gt=O(()=>{if(!X)return/* @__PURE__ */ new Set;let e=/* @__PURE__ */ new Set([X.id]),t=n=>{G.filter(e=>e.parentId===n).forEach(n=>{e.add(n.id),t(n.id)})};return t(X.id),e},[X,G]),_t=O(()=>{let e=t=>G.filter(e=>(e.parentId??null)===t).map(t=>({label:t.label,value:t.id,key:String(t.id),disabled:gt.has(t.id),children:e(t.id)}));return[{label:`无(根项目)`,value:0,key:`0`},...e(null)]},[G,gt]),vt=e=>{q.openEdit(e)},yt=async e=>{await tt.mutateAsync([e]),r.success(`删除成功`),m===String(e)&&g(null)},bt=async e=>{U&&await at.mutateAsync({params:{id:U.id,itemId:e}})},xt=(e=null)=>{x(e),C(null),T(`{}`),Y.openCreate()},St=e=>xt(e.id),Ct=e=>{U&&(x(e.parentId??null),C(e.color??null),T(e.metadata?JSON.stringify(e.metadata,null,2):`{}`),Y.openEdit(e))},wt=Se({toggle:(e,t)=>U?it.mutateAsync({params:{id:U.id,itemId:e.id},body:{status:t?`enabled`:`disabled`}}):Promise.resolve(),confirmDisable:e=>({danger:!0,title:`确认禁用字典项「${e.label}」?`,okText:`确认禁用`}),disabled:!U||!e(`system:dict:item`)}),Tt=async(e,t)=>{(t!==`disabled`||await be({title:`确认禁用字典「${e.name}」?`,okText:`确认禁用`}))&&(await J.mutateAsync({id:e.id,values:{status:t}}),r.success(t===`enabled`?`已启用`:`已禁用`))},Et=/* @__PURE__ */ j(je,{title:`字典列表`,headerExtra:/* @__PURE__ */ M(ye,{spacing:6,children:[/* @__PURE__ */ j(ke,{entity:`system.dicts`,query:p}),/* @__PURE__ */ j(Ae,{items:[{key:`refresh`,label:`刷新`,icon:/* @__PURE__ */ j(he,{size:14}),onClick:()=>void R.refetch()},{key:`create`,label:`新增字典`,icon:/* @__PURE__ */ j(se,{size:14}),hidden:!e(`system:dict:create`),onClick:q.openCreate}]})]}),search:{value:ce.keyword,onChange:ue(`keyword`),placeholder:`名称/编码`,onEnterPress:fe},loading:R.isFetching,emptyText:`暂无字典`,footer:/* @__PURE__ */ j(o,{size:`small`,hoverShowPageSelect:!0,total:z,currentPage:l,pageSize:u,pageSizeOpts:[10,20,50,100],showSizeChanger:!0,showTotal:!0,onPageChange:ct,onPageSizeChange:lt}),dataSource:c,renderItem:t=>{let n=U?.id===t.id;return/* @__PURE__ */ j(Me,{active:n,onClick:()=>ut(t),primary:t.name,secondary:t.code,meta:t.status===`disabled`?/* @__PURE__ */ M(`span`,{style:{flex:1,display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[/* @__PURE__ */ j(`span`,{children:/* @__PURE__ */ j(we,{value:t.createdAt})}),/* @__PURE__ */ j(y,{size:`small`,color:`grey`,children:`停用`})]}):/* @__PURE__ */ j(we,{value:t.createdAt}),style:t.status===`disabled`?{opacity:.55}:void 0,extra:/* @__PURE__ */ j(Ae,{items:[{key:`edit`,label:`编辑`,icon:/* @__PURE__ */ j(Xe,{size:14}),hidden:!e(`system:dict:update`),onClick:()=>void vt(t)},{key:`delete`,label:`删除`,icon:/* @__PURE__ */ j(ge,{size:14}),danger:!0,hidden:!e(`system:dict:delete`),onClick:()=>{xe({title:`确认删除此字典?`,content:`字典下的所有字典项也将一并删除`,onOk:()=>yt(t.id)})}}]})},t.id)}}),Dt=Ce({permissions:{edit:`system:dict:item`,remove:`system:dict:item`},edit:Ct,remove:e=>bt(e.id),title:`确认删除此字典项?`,extra:t=>[{key:`child`,label:`子项`,hidden:!e(`system:dict:item`),onClick:()=>St(t)}],width:210,desktopInlineKeys:[`child`,`edit`,`delete`]}),Ot=[{title:`标签`,dataIndex:`label`,width:160,render:(e,t)=>t.color?/* @__PURE__ */ j(y,{color:P(t.color),size:`small`,children:e}):s(e)},{title:`键值`,dataIndex:`value`,width:160,render:s},{title:`排序`,dataIndex:`sort`,width:70,align:`center`},{title:`备注`,dataIndex:`remark`,minWidth:200,render:s},te,wt.column(),Dt],kt=()=>$.length>0?/* @__PURE__ */ j(ve,{type:`primary`,icon:j(pt?pe:me,{size:14}),onClick:mt,disabled:!U,children:pt?`全部折叠`:`全部展开`}):null,At=/* @__PURE__ */ M(A,{children:[/* @__PURE__ */ j(f.Header,{children:U?/* @__PURE__ */ M(A,{children:[/* @__PURE__ */ M(`div`,{className:`dict-detail-title`,children:[/* @__PURE__ */ j(I,{size:16}),/* @__PURE__ */ j(`span`,{title:U.name,children:U.name})]}),/* @__PURE__ */ j(y,{size:`small`,color:`blue`,children:U.code}),/* @__PURE__ */ j(n,{size:`small`,checked:U.status===`enabled`,loading:ot===U.id,disabled:!e(`system:dict:update`),onChange:e=>void Tt(U,e?`enabled`:`disabled`)})]}):/* @__PURE__ */ j(`span`,{className:`dict-detail-placeholder`,children:`请选择字典`})}),/* @__PURE__ */ j(f.Body,{children:/* @__PURE__ */ j(re,{searchConfig:ee({keyword:/* @__PURE__ */ j(ae,{placeholder:`标签/键值`,...K.bindKeyword(`keyword`),width:180,disabled:!U}),filters:/* @__PURE__ */ j(ie,{items:Oe,...K.bind(`status`),disabled:!U}),onSearch:K.handleSearch,onReset:K.handleReset,create:/* @__PURE__ */ j(le,{permission:`system:dict:item`,onClick:()=>xt(),disabled:!U}),actions:kt(),filterTitle:`字典项筛选`,actionTitle:`字典项操作`}),bordered:!0,columns:Ot,dataSource:Q,rowKey:`id`,loading:W.isFetching,onRefresh:U?()=>void W.refetch():void 0,refreshLoading:W.isFetching,pagination:!1,size:`small`,empty:U?`暂无数据`:`请选择字典`,childrenRecordName:`children`,expandedRowKeys:dt,onExpandedRowsChange:ht})})]});return/* @__PURE__ */ M(`div`,{className:`page-container page-container--stretch`,children:[/* @__PURE__ */ j(f,{master:Et,detail:At,defaultSize:300,minSize:260,maxSize:420,persistKey:`dicts`,showDetail:!!U,onBack:()=>g(null),onResponsiveChange:L,style:{flex:1,overflow:`hidden`}}),/* @__PURE__ */ M(De,{modal:q,width:480,children:[/* @__PURE__ */ j(h.Input,{field:`name`,label:`字典名称`,placeholder:`请输入字典名称`,style:{width:`100%`},rules:[{required:!0,message:`请输入字典名称`}]}),/* @__PURE__ */ j(h.Input,{field:`code`,label:`字典编码`,placeholder:`小写字母和下划线`,style:{width:`100%`},rules:[{required:!0,message:`请输入字典编码`}],validate:e=>{let t=N.create.input.shape.body.safeParse({code:e});return(t.success?void 0:t.error.issues.find(e=>e.path[0]===`code`))?.message??``}}),/* @__PURE__ */ j(h.Input,{field:`description`,label:`描述`,placeholder:`请输入描述`,style:{width:`100%`}}),/* @__PURE__ */ j(h.Select,{field:`status`,label:`状态`,style:{width:`100%`},optionList:E,placeholder:`请选择状态`})]}),/* @__PURE__ */ M(De,{modal:Y,width:600,children:[/* @__PURE__ */ M(_,{gutter:16,children:[/* @__PURE__ */ j(v,{span:12,children:/* @__PURE__ */ j(h.Input,{field:`label`,label:`标签`,placeholder:`请输入标签`,style:{width:`100%`},rules:[{required:!0,message:`请输入标签`}]})}),/* @__PURE__ */ j(v,{span:12,children:/* @__PURE__ */ j(h.Input,{field:`value`,label:`键值`,placeholder:`请输入键值`,style:{width:`100%`},rules:[{required:!0,message:`请输入键值`}]})})]}),/* @__PURE__ */ M(_,{gutter:16,children:[/* @__PURE__ */ j(v,{span:12,children:/* @__PURE__ */ j(h.InputNumber,{field:`sort`,label:`排序`,placeholder:`请输入排序`,min:0,style:{width:`100%`}})}),/* @__PURE__ */ j(v,{span:12,children:/* @__PURE__ */ j(h.Select,{field:`status`,label:`状态`,style:{width:`100%`},optionList:E,placeholder:`请选择状态`})})]}),/* @__PURE__ */ M(_,{gutter:16,children:[/* @__PURE__ */ j(v,{span:12,children:/* @__PURE__ */ j(h.Slot,{label:{text:`父级`},children:/* @__PURE__ */ j(_e,{treeData:_t,value:b??0,onChange:e=>x(e===0?null:e),style:{width:`100%`},filterTreeNode:!0,expandAll:!0})})}),/* @__PURE__ */ j(v,{span:12,children:/* @__PURE__ */ j(h.Slot,{label:{text:`颜色`},children:(()=>{let e=[`amber`,`blue`,`cyan`,`green`,`grey`,`indigo`,`light-blue`,`light-green`,`lime`,`orange`,`pink`,`purple`,`red`,`teal`,`violet`,`yellow`,`white`],n={amber:`琥珀`,blue:`蓝色`,cyan:`青色`,green:`绿色`,grey:`灰色`,indigo:`靛蓝`,"light-blue":`浅蓝`,"light-green":`浅绿`,lime:`柠绿`,orange:`橙色`,pink:`粉色`,purple:`紫色`,red:`红色`,teal:`蓝绿`,violet:`紫罗兰`,yellow:`黄色`,white:`白色`};return/* @__PURE__ */ j(t,{value:S??void 0,onChange:e=>C(e??null),placeholder:`无颜色`,showClear:!0,onClear:()=>C(null),style:{width:`100%`},renderSelectedItem:e=>/* @__PURE__ */ j(y,{color:P(e.value),size:`small`,style:{margin:`2px 0`},children:e.label}),renderOptionItem:({selected:e,style:t,onClick:n,value:r,label:i})=>/* @__PURE__ */ j(`button`,{type:`button`,onClick:n,style:{...t,display:`flex`,alignItems:`center`,gap:8,padding:`6px 12px`,cursor:`pointer`,width:`100%`,border:`none`,background:e?`var(--arc-antd-color-primary-light-default)`:`transparent`,textAlign:`left`},children:/* @__PURE__ */ j(y,{color:P(r),size:`small`,children:i})}),children:e.map(e=>/* @__PURE__ */ j(t.Option,{value:e,label:n[e]??e,children:/* @__PURE__ */ j(y,{color:P(e),size:`small`,children:n[e]??e})},e))})})()})})]}),/* @__PURE__ */ j(_,{gutter:16,children:/* @__PURE__ */ j(v,{span:24,children:/* @__PURE__ */ j(h.Input,{field:`remark`,label:`备注`,placeholder:`请输入备注`,style:{width:`100%`}})})}),/* @__PURE__ */ j(_,{gutter:16,children:/* @__PURE__ */ j(v,{span:24,children:/* @__PURE__ */ j(h.Slot,{label:{text:`元数据`},children:/* @__PURE__ */ j(i,{ref:a,value:w,height:200,width:`100%`},w)})})})]})]})}var Qe;function V(){return(V=e((()=>{g(),ce(),L(),de(),fe(),p(),z(),m(),C(),Oe(),c(),w(),oe(),E(),ne(),ue(),b(),a(),x(),S(),l(),T(),Qe={keyword:``,status:void 0}})))()}V();export{B as default};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{i as t,o as n,s as r}from"./feedback-BnjMKZpz.js";import{n as i,r as a}from"./form-CQutQFiD.js";import{C as o}from"./ui-BFsHoY7a.js";import{n as s,t as c}from"./useModalViewport-HF7te75S.js";import{n as l,t as u}from"./ModalFooter-RMlvqrO9.js";import{useCallback as d,useEffect as f,useMemo as p,useRef as m,useState as h}from"react";import{jsx as g,jsxs as _}from"react/jsx-runtime";import{Form as v}from"antd";import{GoaError as y}from"@fudanda/client";import{abortSubmit as b}from"@fudanda/react-core/lib/abort-submit";import{showRequestErrorToast as x}from"@fudanda/react-core/utils/request-toast";import{OverlayForm as S}from"@fudanda/elements-antd/form";function C(e,t){return`${e??`new`}:${t?`detail`:`row`}`}function w(e){let{entityName:n=``,save:r,useDetail:i,toValues:a,beforeSave:o,onSaved:s,successMessage:c,labelPosition:l=`left`,labelWidth:u=90}=e,g=m(null),_=m(!1),v=m(0),S=m(!0);f(()=>(S.current=!0,()=>{S.current=!1}),[]);let[w,T]=h(!1),[D,O]=h(!1),[k,A]=h(null),[j,M]=h({}),N=m(e);N.current=e;let P=(i??E)(k?.id,D&&k!=null,k??void 0),F=k?P.data??k:null,I=k!=null,L=I&&P.isFetching,R=d(()=>{v.current++;let e=N.current.defaults;M((typeof e==`function`?e():e)??{}),A(null),O(!0)},[]),z=d(e=>{v.current++,A(e),O(!0)},[]),B=d(()=>{v.current++,O(!1),A(null),g.current=null},[]),V=p(()=>F?a?a(F):F:j,[F,a,j]),H=C(k?.id,P.data),U=d(async()=>{(_.current||!g.current)&&b(),_.current=!0;let e=v.current;T(!0);try{let n;try{n=await g.current?.validate()}catch{b()}(!S.current||e!==v.current)&&b(`stale-editor`);let i={editing:F,isEdit:I},a=o?await o(n,i):n;(!S.current||e!==v.current)&&b(`stale-editor`);let l;try{l=await r.mutateAsync({id:k?.id,values:a})}catch(t){S.current&&e===v.current&&t instanceof y&&x(t.message),b(`save-failed`)}(!S.current||e!==v.current)&&b(`stale-editor`);let u=c?c(i):I?`更新成功`:`创建成功`;u&&t.success(u),B(),s?.(l,i)}finally{_.current=!1,S.current&&T(!1)}},[F,I,k,o,r,c,B,s]);return{visible:D,editing:F,isEdit:I,detailLoading:L,openCreate:R,openEdit:z,close:B,modalProps:{title:`${I?`编辑`:`新增`}${n}`,visible:D,onOk:U,onCancel:B,okButtonProps:{loading:r.isPending||w,disabled:L},closeOnEsc:!0},footerProps:{onOk:U,onCancel:B,loading:r.isPending||w,disabled:L},formKey:H,formProps:{getFormApi:e=>{g.current=e},allowEmpty:!0,initValues:V,labelPosition:l,labelWidth:u},formApi:g}}function T(e,t){return{isPending:e.isPending,mutateAsync:({id:n,values:r})=>n===void 0?e.mutateAsync({values:t.create.parse(r)}):e.mutateAsync({id:n,values:t.update.parse(r)})}}var E;function D(){return(D=e((()=>{o(),E=()=>({data:void 0,isFetching:!1})})))()}function O({modal:e,header:t,formProps:n,children:a,mode:o=`modal`,fullscreenable:c=!1,restoreViewport:l=!0,fullscreen:u,onToggleFullscreen:d,afterClose:f,maskClosable:p,closeOnEsc:m,footer:h,title:y,width:b,okText:x,cancelText:C,okButtonProps:w,onCancel:T,...E}){let[D]=v.useForm(),O=s(e.visible,l,f),{getFormApi:k,initValues:A,labelPosition:j,labelWidth:M,onValueChange:N,onSubmit:P,allowEmpty:F,...I}={...e.formProps,...n},L={...e.modalProps.okButtonProps,...w};return/* @__PURE__ */ _(S,{mode:o,form:D,open:e.visible,onOpenChange:t=>{t||e.close()},title:y??e.modalProps.title,width:b,values:A,resetKey:e.formKey,detailLoading:e.detailLoading,maskClosable:p,busy:!!L.loading,submitDisabled:L.disabled,submitLabel:x==null?void 0:String(x),cancelLabel:C==null?void 0:String(C),footer:h,fullscreenable:c,fullscreen:u,onToggleFullscreen:d,...I,layout:j===`left`?`horizontal`:`vertical`,labelCol:M?{style:{width:M}}:void 0,onValuesChange:(e,t)=>N?.(t,e),onFinish:async()=>(await r(e.modalProps.onOk),!1),modalProps:{...E,keyboard:m??e.modalProps.closeOnEsc,afterClose:O,onCancel:T},drawerProps:{keyboard:m??e.modalProps.closeOnEsc,onClose:T,afterOpenChange:e=>{e||O()}},children:[t,/* @__PURE__ */ g(i,{form:D,getFormApi:k,initValues:A,children:a})]})}function k({modal:e,header:t,formProps:n,children:a,title:o,okText:s=`保存`,footerExtra:c,footer:l,width:d,closeOnEsc:f=!0,maskClosable:p,onCancel:m,...h}){let[y]=v.useForm(),{getFormApi:b,initValues:x,labelPosition:C,labelWidth:w,onValueChange:T,onSubmit:E,allowEmpty:D,...O}={...e.formProps,...n};return/* @__PURE__ */ _(S,{mode:`drawer`,form:y,open:e.visible,onOpenChange:t=>{t||e.close()},title:o??e.modalProps.title,width:d,values:x,resetKey:e.formKey,maskClosable:p,busy:e.footerProps.loading,detailLoading:e.detailLoading,submitDisabled:e.footerProps.disabled,submitLabel:String(s),footer:l??(c?/* @__PURE__ */ g(u,{...e.footerProps,okText:s,extra:c}):void 0),...O,layout:C===`left`?`horizontal`:`vertical`,labelCol:w?{style:{width:w}}:void 0,onValuesChange:(e,t)=>T?.(t,e),onFinish:async()=>(await r(e.modalProps.onOk),!1),drawerProps:{...h,keyboard:f,onClose:m},children:[t,/* @__PURE__ */ g(i,{form:y,getFormApi:b,initValues:x,children:a})]})}function A(){return(A=e((()=>{a(),c(),l(),n()})))()}export{D as a,T as i,k as n,w as o,A as r,O as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{n as t,t as n}from"./preload-helper-C-73SErw.js";import{Suspense as r,lazy as i}from"react";import{jsx as a}from"react/jsx-runtime";function o(e){let t=c.get(e);return t||(t=i(()=>n(()=>import(`./illustrations-DT1eq6jI.js`).then(t=>({default:t[e]})),[],import.meta.url)),c.set(e,t)),t}function s(e,t){let n=o(`Illustration${e}`),i=o(`Illustration${e}Dark`),s=t===void 0?void 0:{width:t,height:t};return{image:/* @__PURE__ */ a(r,{fallback:null,children:/* @__PURE__ */ a(n,{style:s})}),darkModeImage:/* @__PURE__ */ a(r,{fallback:null,children:/* @__PURE__ */ a(i,{style:s})})}}var c;function l(){return(l=e((()=>{t(),c=/* @__PURE__ */ new Map})))()}export{l as n,s as t};
@@ -0,0 +1 @@
1
+ import{n as e,r as t,t as n}from"./EntityContextRuntime-sslBZqYD.js";t();export{n as EntityContextSheet,e as default};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{r as t}from"./feedback-BnjMKZpz.js";import{n,t as r}from"./tabs-BobA_IcO.js";import{n as i,t as a}from"./arrow-left-CsxBMzKY.js";import{C as o,a as s,g as c}from"./ui-BFsHoY7a.js";import{n as l,t as u}from"./RelationPanel-B1X6AVaM.js";import{createContext as d,useContext as f,useEffect as p,useRef as m,useState as h}from"react";import{Fragment as g,jsx as _,jsxs as v}from"react/jsx-runtime";import{useLocation as y,useNavigate as b}from"react-router-dom";import{useEntityAccessKey as x}from"@fudanda/react-core/hooks/queries/entity-relations";import{entityDetailRoute as S,entityTypeLabel as C}from"@fudanda/react-core/utils/entity-relations";import{EntityNavigationContext as w,EntityRelationViewStateContext as T,beginEntityRelationNavigation as E,captureEntityRelationScroll as D,entityRelationSourceUrl as O,getEntityRelationNavigation as k,restoreEntityRelationScroll as A,sameEntity as j,useEntityRelationNavigationSession as M}from"@fudanda/react-core/components/entity-relations/entity-navigation";function N({entityRef:e,showAnchor:t}){let i=y(),a=b(),o=JSON.stringify(x()),s=f(I),c=m(null),l=M(),d=s?.view??(l?.accessKey===o&&j(l.restore?.ref,e)?l.restore?.view:void 0),[C,k]=h(d?.tab??`relations`),[N,P]=h(()=>[...d?.expandedGroups??[]]),[L,R]=h();return p(()=>{if(d&&c.current)return k(d.tab),P([...d.expandedGroups]),A(c.current,d.scroll)},[d]),/* @__PURE__ */ v(g,{children:[/* @__PURE__ */ _(`div`,{ref:c,"data-entity-context":`${e.type}:${e.key}`,children:/* @__PURE__ */ _(w.Provider,{value:t=>{if(j(t,e)&&!s)return;let n=S(t),r={tab:C,expandedGroups:N,scroll:D(c.current)};n?(E({url:s?.sourceUrl??O(i,s?void 0:S(e)),locationKey:i.key,state:i.state,ref:e,kind:s?`sheet`:`detail`,view:r,sheetHistory:s?.history,pageScrollTop:document.querySelector(`.admin-content`)?.scrollTop??0},n,o,i.pathname),s?.onLeave(),a(n)):s?s.open(t,r):R(t)},children:/* @__PURE__ */ _(T.Provider,{value:{expandedGroups:N,setExpandedGroups:P},children:/* @__PURE__ */ v(n,{collapsible:`auto`,activeKey:C,onChange:k,lazyRender:!0,keepDOM:!1,children:[/* @__PURE__ */ _(r,{tab:`关联记录`,itemKey:`relations`,children:/* @__PURE__ */ _(u,{entityType:e.type,entityKey:e.key,enabled:C===`relations`,showAnchor:t})}),!1]})})})}),L&&/* @__PURE__ */ _(F,{entityRef:L,sourceUrl:O(i,S(e)),onClose:()=>R(void 0)})]})}function P({entityType:e,entityKey:t,showAnchor:n=!1}){let r=x();return t?/* @__PURE__ */ _(N,{entityRef:{type:e,key:t},showAnchor:n},`${e}:${t}:${JSON.stringify(r)}`):null}function F({entityRef:e,onClose:n,sourceUrl:r}){let i=JSON.stringify(x()),[o,l]=h(()=>{let t=k(),n=t?.accessKey===i?t.restore:void 0;return n?.kind===`sheet`&&j(n.ref,e)?n.sheetHistory??[e]:[e]}),u=o[o.length-1],d=m(/* @__PURE__ */ new Map);return/* @__PURE__ */ _(t,{title:/* @__PURE__ */ v(c,{children:[o.length>1&&/* @__PURE__ */ _(s,{size:`small`,theme:`borderless`,"aria-label":`返回上一个关联对象`,icon:/* @__PURE__ */ _(a,{size:16}),onClick:()=>l(e=>e.slice(0,-1))}),C(u.type),` · 关联信息`]}),visible:!0,onCancel:n,width:680,closeOnEsc:!0,children:/* @__PURE__ */ _(I.Provider,{value:{history:o,sourceUrl:r,view:d.current.get(`${u.type}:${u.key}`),onLeave:n,open:(e,t)=>{j(e,u)||(d.current.set(`${u.type}:${u.key}`,t),l(t=>[...t,e]))}},children:/* @__PURE__ */ _(P,{entityType:u.type,entityKey:u.key,showAnchor:!0})})})}var I;function L(){return(L=e((()=>{o(),i(),l(),I=d(null)})))()}export{P as n,L as r,F as t};
@@ -0,0 +1,8 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{n as t,t as n}from"./preload-helper-C-73SErw.js";import{n as r,t as i}from"./createLucideIcon-BtwfYE6A.js";import{C as a,a as o}from"./ui-BFsHoY7a.js";import{Suspense as s,lazy as c,useState as l}from"react";import{Fragment as u,jsx as d,jsxs as f}from"react/jsx-runtime";import{supportsEntityRelations as p}from"@fudanda/shared/platform/entity-catalog";var m,h;function g(){return(g=e((()=>{
2
+ /**
3
+ * @license lucide-react v1.53.0 - ISC
4
+ *
5
+ * This source code is licensed under the ISC license.
6
+ * See the LICENSE file in the root directory of this source tree.
7
+ */
8
+ r(),m={name:`link-2`,size:24,node:[[`path`,{d:`M9 17H7A5 5 0 0 1 7 7h2`,key:`8i5ue5`}],[`path`,{d:`M15 7h2a5 5 0 1 1 0 10h-2`,key:`1b9ql8`}],[`line`,{x1:`8`,x2:`16`,y1:`12`,y2:`12`,key:`1jonct`}]]},m.node,h=i(m)})))()}function _({entityRef:e,onOpen:t}){let[n,r]=l(!1);return p(e.type)?/* @__PURE__ */ f(u,{children:[/* @__PURE__ */ d(o,{size:`small`,theme:`borderless`,icon:/* @__PURE__ */ d(h,{size:14}),onClick:n=>{n.stopPropagation(),t?t(e):r(!0)},children:`关联信息`}),n&&/* @__PURE__ */ d(s,{fallback:null,children:/* @__PURE__ */ d(v,{entityRef:e,onClose:()=>r(!1)})})]}):null}var v;function y(){return(y=e((()=>{a(),g(),t(),c(()=>n(()=>import(`./EntityContextRuntime-DMklAv-k.js`),[],import.meta.url)),v=c(()=>n(()=>import(`./EntityContextRuntime-DMklAv-k.js`).then(e=>({default:e.EntityContextSheet})),[],import.meta.url))})))()}export{g as a,h as i,_ as n,y as r,v as t};
@@ -0,0 +1 @@
1
+ import{n as e}from"./rolldown-runtime-BKuNeK48.js";import{i as t}from"./feedback-BnjMKZpz.js";import{n,t as r}from"./chevron-down-mn2tSKQd.js";import{n as i,t as a}from"./download--5IybXxz.js";import{C as o,a as s,g as c,u as l,v as u}from"./ui-BFsHoY7a.js";import{useContext as d}from"react";import{jsx as f,jsxs as p}from"react/jsx-runtime";import{usePermission as m}from"@fudanda/react-core/hooks/usePermission";import{ToolbarSlotContext as h}from"@fudanda/react-core/components/toolbar-slot-context";import{useExportJobRunner as g}from"@fudanda/react-core/hooks/useExportJobRunner";function _(){return g(t)}function v(){return(v=e((()=>{o()})))()}function y({entity:e,query:t,resolveQuery:n,label:i=`导出`,formats:o=[`xlsx`,`csv`],raw:g=!1,watermark:v=!0,executionMode:y=`sync`,variant:b=`primary`,permission:x}){let S=_(),{hasPermission:C}=m(),w=d(h);if(x&&!C(x))return null;let T=b===`flat`||w===`mobile-actions`,E=T?`borderless`:void 0,D=`export-button${T?` export-button--flat`:``}`,O=async r=>{let i=n?await n(r):t??{};i!=null&&await S.runExport({entity:e,format:r,query:i,raw:g,watermark:v,executionMode:y})};if(o.length<=1){let e=o[0]??`xlsx`;return/* @__PURE__ */ f(s,{className:D,type:`primary`,theme:E,icon:/* @__PURE__ */ f(a,{size:14}),loading:S.isPending&&S.pendingFormat===e,onClick:()=>void O(e),children:i})}return T?/* @__PURE__ */ f(c,{vertical:!0,align:`start`,spacing:8,className:D,style:{width:`100%`},children:o.map(e=>/* @__PURE__ */ p(s,{className:`export-button__flat-item`,type:`primary`,theme:`borderless`,icon:/* @__PURE__ */ f(a,{size:14}),loading:S.isPending&&S.pendingFormat===e,onClick:()=>void O(e),children:[i,` `,e.toUpperCase()]},e))}):/* @__PURE__ */ f(`span`,{className:D,children:/* @__PURE__ */ p(u,{children:[/* @__PURE__ */ f(s,{className:`export-button__main`,type:`primary`,theme:E,icon:/* @__PURE__ */ f(a,{size:14}),loading:S.isPending&&S.pendingFormat===`xlsx`,onClick:()=>void O(`xlsx`),children:i}),/* @__PURE__ */ f(l,{trigger:`click`,position:`bottomRight`,clickToHide:!0,render:/* @__PURE__ */ f(l.Menu,{children:o.map(e=>/* @__PURE__ */ p(l.Item,{onClick:()=>void O(e),children:[`导出 `,e.toUpperCase()]},e))}),children:/* @__PURE__ */ f(s,{className:`export-button__trigger`,"aria-label":`选择${i}格式`,type:`primary`,theme:E,icon:/* @__PURE__ */ f(r,{size:14}),loading:S.isPending&&S.pendingFormat!==`xlsx`})})]})})}function b(){return(b=e((()=>{o(),n(),i(),v()})))()}export{b as n,y as t};