@acedatacloud/nexior 3.362.2 → 3.362.3

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 (320) hide show
  1. package/dist/assets/{ApiCodeButton-BAkOBxie.js → ApiCodeButton-DmY8v9e5.js} +1 -1
  2. package/dist/assets/{ApiCodeDialog-bM2jYt0k.js → ApiCodeDialog-ZrQ31cdo.js} +1 -1
  3. package/dist/assets/{Artifacts-CkTmSnAa.js → Artifacts-DU30PrbA.js} +1 -1
  4. package/dist/assets/{AskUserQuestionCard-CCaEhOiC.js → AskUserQuestionCard-BSkNo5B6.js} +1 -1
  5. package/dist/assets/{AudioPreview-LQ8lEoP-.js → AudioPreview-BQFSqic6.js} +1 -1
  6. package/dist/assets/{Auth-_gOgHSU0.js → Auth-CSMtUyQe.js} +1 -1
  7. package/dist/assets/{Bare-CNmtrwAx.js → Bare-dYKCOh3p.js} +1 -1
  8. package/dist/assets/{BotPlaceholder-CBS4lAjm.js → BotPlaceholder-LUNR8KA6.js} +1 -1
  9. package/dist/assets/{BottomFooter-Bk_ZWz98.js → BottomFooter-DKo3fulF.js} +1 -1
  10. package/dist/assets/{BrowseConnectors-DndkuWdA.js → BrowseConnectors-wm70T8Et.js} +1 -1
  11. package/dist/assets/{BrowserPairingDialog-CPIZhuOj.js → BrowserPairingDialog-DhsWaXHL.js} +1 -1
  12. package/dist/assets/{Callback-Bh4XDEf8.js → Callback-C4nsgWym.js} +1 -1
  13. package/dist/assets/{CodeSnippet-CK5oFt1I.js → CodeSnippet-CSaU41R9.js} +1 -1
  14. package/dist/assets/{Console-DhPXYBDT.js → Console-BxYtZiKP.js} +1 -1
  15. package/dist/assets/{Consumption-CQoAp-2Q.js → Consumption-DeigvrPq.js} +1 -1
  16. package/dist/assets/{Conversation-r8FTBMps.js → Conversation-BxOLEd_B.js} +1 -1
  17. package/dist/assets/{Conversation-DrM-uZU6.js → Conversation-DxHOnUbb.js} +1 -1
  18. package/dist/assets/{CopyToClipboard-Bt4pNx5a.js → CopyToClipboard-B8YmxJt6.js} +1 -1
  19. package/dist/assets/{Detail-CSr9u2KG.js → Detail-gYf9lCLZ.js} +1 -1
  20. package/dist/assets/{Extra-mJj6WzGA.js → Extra-DOKzdi0p.js} +1 -1
  21. package/dist/assets/{FilePreview-YdzEP0Sz.js → FilePreview-BxnxEacb.js} +1 -1
  22. package/dist/assets/{Hailuo-vHQDSZct.js → Hailuo-BkV2gEuB.js} +1 -1
  23. package/dist/assets/{History-DFR9ymyJ.js → History-BA6LIG06.js} +1 -1
  24. package/dist/assets/{ImagePreview-BtYz7VS_.js → ImagePreview-D8qlrS3J.js} +1 -1
  25. package/dist/assets/{ImageWrapper-CyPuHE9N.js → ImageWrapper-BK4v8WW9.js} +1 -1
  26. package/dist/assets/{Index-D1G9rIK2.js → Index-7COUDjVu.js} +1 -1
  27. package/dist/assets/{Index-BSQTk3rZ.js → Index-BHmbPOxX.js} +1 -1
  28. package/dist/assets/{Index-B2kQl_Nl.js → Index-B_KEsjHe.js} +1 -1
  29. package/dist/assets/{Index-D4AvUtiV.js → Index-BbmKEwSG.js} +1 -1
  30. package/dist/assets/Index-Beu1mmsF.js +1 -0
  31. package/dist/assets/{Index-B2tLj-vo.js → Index-Bhn0_eJl.js} +1 -1
  32. package/dist/assets/{Index-CjsRfqWv2.js → Index-C-lKd2nE2.js} +1 -1
  33. package/dist/assets/{Index-Ui9BQQkK.js → Index-C0vN7uy_.js} +1 -1
  34. package/dist/assets/{Index-BNxzh_mB.js → Index-C7FzcV1a.js} +1 -1
  35. package/dist/assets/Index-C95E9MNj.js +1 -0
  36. package/dist/assets/{Index-DOFJea9M.js → Index-CBRCeg0H.js} +1 -1
  37. package/dist/assets/{Index-CLo709z7.js → Index-CCHqZBcF.js} +1 -1
  38. package/dist/assets/{Index-YQBqTqZX.js → Index-CHF28ZI5.js} +1 -1
  39. package/dist/assets/{Index-CXszXqLV.js → Index-CQTE0OSh.js} +1 -1
  40. package/dist/assets/{Index-88JgM0mD.js → Index-CpfPhJzb.js} +1 -1
  41. package/dist/assets/{Index-CK1x76Mr.js → Index-CwV8Utkg.js} +1 -1
  42. package/dist/assets/{Index-B_uHHqnQ.js → Index-Cyz1v4cX.js} +1 -1
  43. package/dist/assets/{Index-mgP9Xz4i.js → Index-D58ebdDE.js} +1 -1
  44. package/dist/assets/{Index-XMu_83Jn.js → Index-DFfu4PfT.js} +1 -1
  45. package/dist/assets/{Index-BBuN1uFz.js → Index-DLlOO9KP.js} +1 -1
  46. package/dist/assets/{Index-Bkn1S261.js → Index-DOzCKfJ8.js} +1 -1
  47. package/dist/assets/{Index-Bbf-APQ0.js → Index-DWpaenVp.js} +1 -1
  48. package/dist/assets/{Index-Dl2CguWw.js → Index-DYFrW-_K.js} +1 -1
  49. package/dist/assets/{Index-DMpNerdn.js → Index-DanHItqS.js} +1 -1
  50. package/dist/assets/{Index-JDa64RPr.js → Index-DqsV33my.js} +1 -1
  51. package/dist/assets/{Index-CvTkZUQP.js → Index-DuhACoUR.js} +1 -1
  52. package/dist/assets/{Index-9_g65T_M.js → Index-Duva2-wr.js} +1 -1
  53. package/dist/assets/{Index-DSOompWN.js → Index-DvCahpg1.js} +1 -1
  54. package/dist/assets/{Index-B1qLgswn.js → Index-GbP5Md7H.js} +1 -1
  55. package/dist/assets/{Index-BoqiiuYt.js → Index-HUbEe1eR.js} +1 -1
  56. package/dist/assets/{Index-BNlrj2wD.js → Index-MGIX_apc.js} +1 -1
  57. package/dist/assets/{Index-CExuBc9s.js → Index-dpAwxSxA.js} +1 -1
  58. package/dist/assets/{Index-DbLuorqR.js → Index-gr2b7csS.js} +1 -1
  59. package/dist/assets/{Index-hVwk1uL4.js → Index-jDK0-rqq.js} +2 -2
  60. package/dist/assets/{Index-3kZfb74S.js → Index-z86-kR96.js} +1 -1
  61. package/dist/assets/{Invitees-DKvjecGv.js → Invitees-DMi4xPeC.js} +1 -1
  62. package/dist/assets/{List-Do1_hkFr.js → List-BcUzsCvV.js} +1 -1
  63. package/dist/assets/{List-CFZ-KClZ.js → List-CV6ZFpJt.js} +1 -1
  64. package/dist/assets/{List-DO-95ZUQ.js → List-CgyZMpyx.js} +1 -1
  65. package/dist/assets/{LocalTools-Y7QXXXv1.js → LocalTools-CpzJO__m.js} +2 -2
  66. package/dist/assets/{LocalTools-B2UBvw3T.js → LocalTools-DoTgbMuT.js} +1 -1
  67. package/dist/assets/{Logo-CkZtONM-.js → Logo-CusEze2M.js} +1 -1
  68. package/dist/assets/{Main-B6vmpMi_.js → Main-ONLlInv1.js} +1 -1
  69. package/dist/assets/{Message-bYB4o6ns.js → Message-CHzrXHAI.js} +2 -2
  70. package/dist/assets/{Model-2qlcrdM5.js → Model-DyxkJfAf.js} +1 -1
  71. package/dist/assets/{Navigator-UlEQflv0.js → Navigator-Dlh58ndt.js} +6 -6
  72. package/dist/assets/{NotFound-q1Yogbs6.js → NotFound-CwFD4Ksf.js} +1 -1
  73. package/dist/assets/{PageHeader-DFCQCtrg.js → PageHeader-CEF1kkj2.js} +1 -1
  74. package/dist/assets/{Pay-D55gLkzf.js → Pay-aalIWMIv.js} +1 -1
  75. package/dist/assets/{Player-BZsDcGuL.js → Player-CG_qPu9f.js} +1 -1
  76. package/dist/assets/{Poivelle-D57_tC8_.js → Poivelle-CFTs0QM2.js} +1 -1
  77. package/dist/assets/{RealtimeCall-DyuHg2Bi.js → RealtimeCall-DWa-EMa8.js} +1 -1
  78. package/dist/assets/{ReportButton-DzpX6LE5.js → ReportButton-CE99kMuV.js} +1 -1
  79. package/dist/assets/{ReportDialog-CCnN0lJe.js → ReportDialog-CtH2W2Ml.js} +1 -1
  80. package/dist/assets/{ScenarioPaymentMode-CqRu92vx.js → ScenarioPaymentMode-z1NgjkNu.js} +1 -1
  81. package/dist/assets/ScheduledTasks-BanAkO87.js +2 -0
  82. package/dist/assets/{SolanaWalletPickerDialog-DOSCBh2r.js → SolanaWalletPickerDialog-Cf1c9aRy.js} +1 -1
  83. package/dist/assets/{Status-COhaglgv.js → Status-4ALebiGo.js} +1 -1
  84. package/dist/assets/{Subscribe-DAz47Cap.js → Subscribe-DK8jHK2K.js} +1 -1
  85. package/dist/assets/{TabSwitcher-BGVRfEet.js → TabSwitcher-DFSRi_JU.js} +1 -1
  86. package/dist/assets/{Tts-DMDt8Xcl.js → Tts-CAdHV0oP.js} +1 -1
  87. package/dist/assets/{VideoPlayer-Coh2RFTi.js → VideoPlayer-CWRC_2uk.js} +1 -1
  88. package/dist/assets/{VideoPreview-C5oYTkjm.js → VideoPreview-CnkWMQ8C.js} +1 -1
  89. package/dist/assets/{_Uint8Array-BXRa8Abd.js → _Uint8Array-XQBxN0L-.js} +1 -1
  90. package/dist/assets/{_baseClone-CwnTO9zo.js → _baseClone-U7fnZamc.js} +1 -1
  91. package/dist/assets/{_baseIteratee-h7hu4lGG.js → _baseIteratee-DLPcqXeW.js} +1 -1
  92. package/dist/assets/{_initCloneObject-C7qZIuLC.js → _initCloneObject-CSzorZ33.js} +1 -1
  93. package/dist/assets/arrow-down-Dgcv9V1n.js +1 -0
  94. package/dist/assets/{arrow-down-wide-narrow-B-Hw44Fp.js → arrow-down-wide-narrow-xP4Yk_m9.js} +1 -1
  95. package/dist/assets/arrow-left-DjeyNMjO.js +1 -0
  96. package/dist/assets/arrow-right-yD2bsK_A.js +1 -0
  97. package/dist/assets/arrow-up-Oq-TyfTv.js +1 -0
  98. package/dist/assets/{authorizeFlow-BcYpJg7c.js → authorizeFlow-BUO5Flgm.js} +1 -1
  99. package/dist/assets/avatar-CnQsavBT.js +1 -0
  100. package/dist/assets/{basic-DiyvIczP.js → basic-CqqyRSQ6.js} +1 -1
  101. package/dist/assets/{book-open-DwN99mbQ.js → book-open-BBto52Hy.js} +1 -1
  102. package/dist/assets/{box-BVjGLFxS.js → box-CjgWzmRH.js} +1 -1
  103. package/dist/assets/{boxes-c9GATTtV.js → boxes-Ch0CdyWt.js} +1 -1
  104. package/dist/assets/{brain-BB-39nEa.js → brain-BvsRE_4G.js} +1 -1
  105. package/dist/assets/{chart-no-axes-combined-DO-Wi2EC.js → chart-no-axes-combined-CCgcomKw.js} +1 -1
  106. package/dist/assets/{chat-Npxrt_kQ.js → chat-0yFlMYVR.js} +1 -1
  107. package/dist/assets/check-C6haHp_5.js +1 -0
  108. package/dist/assets/checkbox-DXMDpaxv.js +1 -0
  109. package/dist/assets/chevron-down-kOQEc1DQ.js +1 -0
  110. package/dist/assets/chevron-right-D4ynMR67.js +1 -0
  111. package/dist/assets/circle-check-DhFuCeIC.js +1 -0
  112. package/dist/assets/{circle-question-mark-CSxm0VWD.js → circle-question-mark-7WsuM54_.js} +1 -1
  113. package/dist/assets/{clipboard-list-BxHeRww6.js → clipboard-list-aYWEA39z.js} +1 -1
  114. package/dist/assets/clock-DAmpmfMk.js +1 -0
  115. package/dist/assets/code-B_88gzRu.js +1 -0
  116. package/dist/assets/{codingBridge-Dl514gEP.js → codingBridge-DPqwv_Q-.js} +1 -1
  117. package/dist/assets/codingBridgeNotify-C243XAQ3.js +2 -0
  118. package/dist/assets/{coins-sq7NECLS.js → coins-D7u-P3hE.js} +1 -1
  119. package/dist/assets/collapse-Cn0v0672.js +1 -0
  120. package/dist/assets/{common-B-c9sxdB.js → common-0gFKvUbv.js} +1 -1
  121. package/dist/assets/{common-BFJA3ieK.js → common-37ohr-XT.js} +1 -1
  122. package/dist/assets/{common-t5cLjCgd.js → common-B4An_YTm.js} +1 -1
  123. package/dist/assets/{common-CIkh1cBe.js → common-B651gMfj.js} +1 -1
  124. package/dist/assets/{common-DIkr6DUT.js → common-BKsvEmV6.js} +1 -1
  125. package/dist/assets/{common-BlzM4u-K.js → common-BPYnF8a5.js} +1 -1
  126. package/dist/assets/{common-BKCz97Y2.js → common-BqAdpno_.js} +1 -1
  127. package/dist/assets/{common-DrrHfeAt.js → common-CDAa_Wy3.js} +1 -1
  128. package/dist/assets/{common-Bg0zh9_g.js → common-CFrdR7cP.js} +1 -1
  129. package/dist/assets/{common-DIrEHT0L.js → common-CRdaMls6.js} +1 -1
  130. package/dist/assets/{common-1BuWg_Ck.js → common-CWaCL-rT.js} +1 -1
  131. package/dist/assets/common-DRbsZfM1.js +1 -0
  132. package/dist/assets/{common-Mi7Vx9F5.js → common-DUhRMhh_.js} +1 -1
  133. package/dist/assets/{common-BsYNmdlc.js → common-DZSi3Hh_.js} +1 -1
  134. package/dist/assets/common-MsalCK0u.js +1 -0
  135. package/dist/assets/{common-B5oDmIry.js → common-OrWJ1sIs.js} +1 -1
  136. package/dist/assets/{common-9nCXGYVx.js → common-jvlgniqw.js} +1 -1
  137. package/dist/assets/{common-BUVCx2e_.js → common-xxhDQiia.js} +1 -1
  138. package/dist/assets/{constants-DlrPFkyM.js → constants-CdZEFH5x.js} +1 -1
  139. package/dist/assets/{copy-C5QvMUhF.js → copy-C-eoCqpp.js} +1 -1
  140. package/dist/assets/{createTaskActions-Buml4YZY.js → createTaskActions-Dpo2FY6E.js} +1 -1
  141. package/dist/assets/{digitalhuman-BtCdcmzi.js → digitalhuman-D5Gv4Ils.js} +1 -1
  142. package/dist/assets/{dollar-sign-ZSrTaxmA.js → dollar-sign-CmuBygPk.js} +1 -1
  143. package/dist/assets/{download-PdN43Ii9.js → download-BQQJGY0e.js} +1 -1
  144. package/dist/assets/drawer-CLmU-Got.js +1 -0
  145. package/dist/assets/{dropdown-CirLmBbl.js → dropdown-CDlWW8VF.js} +1 -1
  146. package/dist/assets/dropdown-CbNRUbfy.js +1 -0
  147. package/dist/assets/{ellipsis-DCgVjflW.js → ellipsis-C4pNzKVr.js} +1 -1
  148. package/dist/assets/esm-BzkzIXzG.js +1 -0
  149. package/dist/assets/esm-CAyhwU8I.js +2 -0
  150. package/dist/assets/{esm-Hgtd-cm8.js → esm-mQK7-Jmo.js} +2 -2
  151. package/dist/assets/event-BGnHezxC.js +1 -0
  152. package/dist/assets/{external-link-Ik947zOn.js → external-link-CAB_CNUu.js} +1 -1
  153. package/dist/assets/{eye-VFrDoEk4.js → eye-DYfNRuif.js} +1 -1
  154. package/dist/assets/{file-BJi6f11L.js → file-C6dKDiai.js} +1 -1
  155. package/dist/assets/file-output-bSrlvRrv.js +1 -0
  156. package/dist/assets/{file-text-CVGRb3Sl.js → file-text-DxPsfXW2.js} +1 -1
  157. package/dist/assets/{fish-IghNxwsq.js → fish-Q2L3z4Al.js} +1 -1
  158. package/dist/assets/{flux-B9-kDmTH.js → flux-D02otYqk.js} +1 -1
  159. package/dist/assets/{folder-BNDnFq4V.js → folder--oyQ8nfO.js} +1 -1
  160. package/dist/assets/{form-CyX1oj8q.js → form-BdKMEyCR.js} +1 -1
  161. package/dist/assets/gauge-BKTV8ItL.js +1 -0
  162. package/dist/assets/{globe-jnFJnwZn.js → globe-BEP94d7V.js} +1 -1
  163. package/dist/assets/{grokvideo-B5anjmYK.js → grokvideo-eP7aiT3d.js} +1 -1
  164. package/dist/assets/{hailuo-Cv8EX1ss.js → hailuo-BtGLIk6L.js} +1 -1
  165. package/dist/assets/{headphones-B212Wbvy.js → headphones-Dm9heVrC.js} +1 -1
  166. package/dist/assets/{history-C_-QR2T6.js → history-CU_KyGIV.js} +1 -1
  167. package/dist/assets/{house-D_GT9GCN.js → house-Dpj9MokZ.js} +1 -1
  168. package/dist/assets/{i18n-CQJsUptL.js → i18n-DhQn0Z8p.js} +1 -1
  169. package/dist/assets/{image-Bh2YK2ql.js → image-C9t8D3m5.js} +1 -1
  170. package/dist/assets/{imageRequests-BKbsl9tT.js → imageRequests-D36QFGD8.js} +1 -1
  171. package/dist/assets/index-C-w8AJfV.js +570 -0
  172. package/dist/assets/{index-Dfp2KQ3h.css → index-CmAz1JTM.css} +1 -1
  173. package/dist/assets/{index.es-DcSmGa6z.js → index.es-CpSPskGM.js} +1 -1
  174. package/dist/assets/{info-DlDYYYyz.js → info-CifZclsR.js} +1 -1
  175. package/dist/assets/input-number-D_PD56K7.js +1 -0
  176. package/dist/assets/isArrayLikeObject-VRCqVaiT.js +1 -0
  177. package/dist/assets/{isEqual-Cavtrhie.js → isEqual-DeO3PEnJ.js} +1 -1
  178. package/dist/assets/{isPlainObject-B7E6s9en.js → isPlainObject-CIQNj6g3.js} +1 -1
  179. package/dist/assets/{key-round-C7Ox29cM.js → key-round-DpXGLbCi.js} +1 -1
  180. package/dist/assets/{kling-DI9XZTw6.js → kling-BdClJllc.js} +1 -1
  181. package/dist/assets/{languages-CeIhdhQe.js → languages-DFIVuRRk.js} +1 -1
  182. package/dist/assets/{laptop-DWSIh2KY.js → laptop-RhJDASeF.js} +1 -1
  183. package/dist/assets/{lightbulb-6SCo6aGb.js → lightbulb-BHpGUYNg.js} +1 -1
  184. package/dist/assets/{link-Cag6_8_J.js → link-Dk_62wni.js} +1 -1
  185. package/dist/assets/loader-circle-BR0zD2Br.js +1 -0
  186. package/dist/assets/{lock-BfsTRjoQ.js → lock-DNH1WqDy.js} +1 -1
  187. package/dist/assets/{luma-My7-Qacg.js → luma-DRjMeSc2.js} +1 -1
  188. package/dist/assets/{maestro-DtFqFbfA.js → maestro-DCbUANt5.js} +1 -1
  189. package/dist/assets/{maestroLanguages-Dj908WCy.js → maestroLanguages-Ci01wqmN.js} +1 -1
  190. package/dist/assets/{mail-DTKcIUlX.js → mail-D90C07ml.js} +1 -1
  191. package/dist/assets/{message-circle-CIzM-ib3.js → message-circle-DryU-mjQ.js} +1 -1
  192. package/dist/assets/{mic-lqwIrsvy.js → mic-DpkP8cNS.js} +1 -1
  193. package/dist/assets/{midjourney-B6ZymwTx.js → midjourney-ClFnrXbL.js} +1 -1
  194. package/dist/assets/{minimax-BOtBLzBq.js → minimax-CQMZNwrQ.js} +1 -1
  195. package/dist/assets/{mobileLocalExec-BPI41lV6.js → mobileLocalExec-D5WUfOvw.js} +2 -2
  196. package/dist/assets/{models-CwklOk8Z.js → models-C4O1HNS0.js} +1 -1
  197. package/dist/assets/{monitor-ipgmClj0.js → monitor-CgbJvAA5.js} +1 -1
  198. package/dist/assets/{mouse-pointer-2-BrOji6Vv.js → mouse-pointer-2-DZcCmo__.js} +1 -1
  199. package/dist/assets/music-2-DNsg6C9m.js +1 -0
  200. package/dist/assets/{nanobanana-x8-A4AiB.js → nanobanana-C3e37CBh.js} +1 -1
  201. package/dist/assets/{omni-CuQKUq0R.js → omni-Ck0PEQnQ.js} +1 -1
  202. package/dist/assets/{openaiimage-DWNeaPEk.js → openaiimage-BP3YyHY8.js} +1 -1
  203. package/dist/assets/pagination-C2V-Ik6E.js +1 -0
  204. package/dist/assets/{pagination-B8FPaRIA.js → pagination-CkF2u9jK.js} +1 -1
  205. package/dist/assets/{pagination-A4M5O80l.js → pagination-Cqd6FGMz.js} +1 -1
  206. package/dist/assets/{palette-BH9uLfke.js → palette-xGLHQR5_.js} +1 -1
  207. package/dist/assets/{paperclip-DU2unXPs.js → paperclip-Sf7MFEDh.js} +1 -1
  208. package/dist/assets/{pause-DKVsTcCD.js → pause-adMkKrSO.js} +1 -1
  209. package/dist/assets/{pencil-DDlb_Eqp.js → pencil-DJveEUCk.js} +1 -1
  210. package/dist/assets/{pika-Twbh_o5m.js → pika-DEskP_8Q.js} +1 -1
  211. package/dist/assets/{pixverse-CZeByPsP.js → pixverse-DJ8ovsB6.js} +1 -1
  212. package/dist/assets/play-BX89pr5h.js +1 -0
  213. package/dist/assets/{plug-pRt1uLP-.js → plug-DIygGUs_.js} +1 -1
  214. package/dist/assets/plus-DsPtzHMZ.js +1 -0
  215. package/dist/assets/{poivelle-CwbJUDMA.js → poivelle-CkRG9K6R.js} +1 -1
  216. package/dist/assets/{popover-CujDeM9r.js → popover-CCbUzZfK.js} +1 -1
  217. package/dist/assets/{producer-Cp-dqK1U.js → producer-_LkVoJMc.js} +1 -1
  218. package/dist/assets/{qrart-BMaggLhc.js → qrart-BqkocT47.js} +1 -1
  219. package/dist/assets/radio-BNhFzeBO.js +1 -0
  220. package/dist/assets/raf-BbgJq-wu.js +1 -0
  221. package/dist/assets/{realtime-Cof4IZ5A.js → realtime-BUOeNyD-.js} +1 -1
  222. package/dist/assets/{refresh-cw-zGJ1ywed.js → refresh-cw-Bu2iSphh.js} +1 -1
  223. package/dist/assets/rotate-ccw-IPNYOxzK.js +1 -0
  224. package/dist/assets/rotate-cw-Cw8L_Hve.js +1 -0
  225. package/dist/assets/{row-Da6HRJnU.js → row-pFT5d-_R.js} +1 -1
  226. package/dist/assets/scroll-kDH1KTep.js +1 -0
  227. package/dist/assets/{scrollbar-BhQr3aBa.js → scrollbar-3jGyy846.js} +1 -1
  228. package/dist/assets/search-CkC2D5Yj.js +1 -0
  229. package/dist/assets/{seedance-qDCXPkNU.js → seedance-BbHeJ5It.js} +1 -1
  230. package/dist/assets/{seedream-D8s98koo.js → seedream-BMxjvAAA.js} +1 -1
  231. package/dist/assets/select-K-2CZ3eR.js +1 -0
  232. package/dist/assets/{serp-CFeB3pNt.js → serp-CAeQ9XXL.js} +1 -1
  233. package/dist/assets/{shield-8Az-w1Iq.js → shield-C30JJkad.js} +1 -1
  234. package/dist/assets/{shuffle-BVyO1vuc.js → shuffle-BPsWcYzJ.js} +1 -1
  235. package/dist/assets/slider-CAVbZ4km.js +1 -0
  236. package/dist/assets/{solana-wallets-BMvn-gtj.js → solana-wallets-BPM-gerP.js} +2 -2
  237. package/dist/assets/{sora-B6njcLzj.js → sora-Ci3bZEwI.js} +1 -1
  238. package/dist/assets/{sparkles-DVlEhR_I.js → sparkles-CmjUgM5X.js} +1 -1
  239. package/dist/assets/square-DymQsvx_.js +1 -0
  240. package/dist/assets/{store-DdwflqCY.js → store-CfHokbJJ.js} +1 -1
  241. package/dist/assets/{suno-DKzj3RPQ.js → suno-SgCCjgsb.js} +1 -1
  242. package/dist/assets/switch-BZMevA9h.js +1 -0
  243. package/dist/assets/table-CYivBc_q.js +1 -0
  244. package/dist/assets/tabs-BaqfDqfv.js +1 -0
  245. package/dist/assets/{tag-CDE6lSVO.js → tag-BAF7zUb4.js} +1 -1
  246. package/dist/assets/terminal-yXrC2I0y.js +1 -0
  247. package/dist/assets/time-picker-D-zHadCF.js +1 -0
  248. package/dist/assets/tooltip-CjkDaYbd.js +1 -0
  249. package/dist/assets/{trash-2-84jnyEiH.js → trash-2-zWLkqDxH.js} +1 -1
  250. package/dist/assets/{triangle-alert-DijP-r53.js → triangle-alert-CCs6VvUs.js} +1 -1
  251. package/dist/assets/{upload-B-GObY7P.js → upload-Q8MqK29R.js} +1 -1
  252. package/dist/assets/{upload-uY7VeHmd.js → upload-_zFgS7Nh.js} +1 -1
  253. package/dist/assets/{use-aria-C2PoIbMN.js → use-aria-DApzlmKf.js} +1 -1
  254. package/dist/assets/user-DHY7x-vL.js +1 -0
  255. package/dist/assets/{veo-DplvtxRw.js → veo-KUI55n_I.js} +1 -1
  256. package/dist/assets/{video-BIEggF64.js → video-CFfCNDdy.js} +1 -1
  257. package/dist/assets/vnode-B_FEx-YD.js +1 -0
  258. package/dist/assets/{volume-2-CzcGTWGH.js → volume-2-DE0tnLtn.js} +1 -1
  259. package/dist/assets/{wallet-HjhzyIUc.js → wallet-C-kwFfVY.js} +1 -1
  260. package/dist/assets/{wan-CXPoan9e.js → wan-BVk2cktb.js} +1 -1
  261. package/dist/assets/{wand-sparkles-dlhWJtt5.js → wand-sparkles-BFbcxwi3.js} +1 -1
  262. package/dist/assets/{web-BimdZWc-.js → web-BJPtlBfg.js} +1 -1
  263. package/dist/assets/{web-D3WhI-pp.js → web-CABW7ZTT.js} +1 -1
  264. package/dist/assets/{web-DnTVcAMQ.js → web-CBAHqQFG.js} +1 -1
  265. package/dist/assets/{web-CpLFSuwG.js → web-DS65bqhf.js} +1 -1
  266. package/dist/assets/{web-Cos5bHDu.js → web-DyEvw4UT.js} +1 -1
  267. package/dist/assets/{webextrator-BPt59Czo.js → webextrator-C8VyzL3x.js} +1 -1
  268. package/dist/assets/{wechat-BtElgAls.js → wechat-B_xvylqk.js} +1 -1
  269. package/dist/assets/{zap-CVI9h9l6.js → zap-Yxjdgccv.js} +1 -1
  270. package/dist/index.html +10 -9
  271. package/package.json +1 -2
  272. package/dist/assets/Index-DQmVpjTa.js +0 -1
  273. package/dist/assets/Index-Ogxhmlx4.js +0 -1
  274. package/dist/assets/ScheduledTasks-QN5AxC-v.js +0 -2
  275. package/dist/assets/UpdateMenuItem-D2dQe6OD.js +0 -1
  276. package/dist/assets/arrow-down-CqF-cU9W.js +0 -1
  277. package/dist/assets/arrow-left-CoDtXesZ.js +0 -1
  278. package/dist/assets/arrow-right-Bkg9RgYl.js +0 -1
  279. package/dist/assets/arrow-up-BzNg9m4O.js +0 -1
  280. package/dist/assets/check-6cv1CZ0l.js +0 -1
  281. package/dist/assets/checkbox-DmqM9gFi.js +0 -1
  282. package/dist/assets/chevron-down-Ben_YIW6.js +0 -1
  283. package/dist/assets/chevron-right-C3lMw0qC.js +0 -1
  284. package/dist/assets/circle-check-CDbPCRg6.js +0 -1
  285. package/dist/assets/clock-CEYSZpiZ.js +0 -1
  286. package/dist/assets/code-DnM_OC9R.js +0 -1
  287. package/dist/assets/codingBridgeNotify-CDQKwxBX.js +0 -2
  288. package/dist/assets/collapse-Cr16lHVf.js +0 -1
  289. package/dist/assets/common-CFSDnaPx.js +0 -1
  290. package/dist/assets/common-Cj6O6oFE.js +0 -1
  291. package/dist/assets/drawer-C9ziMa5D.js +0 -1
  292. package/dist/assets/dropdown-BWJ6QGiC.js +0 -1
  293. package/dist/assets/esm-D_6POuvI.js +0 -1
  294. package/dist/assets/esm-oy9-x-4m.js +0 -2
  295. package/dist/assets/file-output-CUNyohca.js +0 -1
  296. package/dist/assets/focus-trap-DOoImtBk.js +0 -1
  297. package/dist/assets/gauge-aYfGw3VQ.js +0 -1
  298. package/dist/assets/index-BOCSBfUe.js +0 -570
  299. package/dist/assets/input-number-D2KUI1kN.js +0 -1
  300. package/dist/assets/isArrayLikeObject-NgGSp85h.js +0 -1
  301. package/dist/assets/loader-circle-CD3osO-L.js +0 -1
  302. package/dist/assets/music-2-CuQ41Wjt.js +0 -1
  303. package/dist/assets/pagination-CacbU_h5.js +0 -1
  304. package/dist/assets/play-DFLhwX31.js +0 -1
  305. package/dist/assets/plus-2XEDA9oZ.js +0 -1
  306. package/dist/assets/radio-DteyTHLj.js +0 -1
  307. package/dist/assets/rotate-ccw-C6ZbozHT.js +0 -1
  308. package/dist/assets/rotate-cw-DZMWXKfh.js +0 -1
  309. package/dist/assets/search-CYoqYABP.js +0 -1
  310. package/dist/assets/select-Bs3ZkE9R.js +0 -1
  311. package/dist/assets/slider-CrHYkY12.js +0 -1
  312. package/dist/assets/square-zuxAeD3b.js +0 -1
  313. package/dist/assets/switch-DRwxl6Da.js +0 -1
  314. package/dist/assets/table-CUPLKsew.js +0 -1
  315. package/dist/assets/tabs-0et25VV-.js +0 -1
  316. package/dist/assets/terminal-D7o7TjCB.js +0 -1
  317. package/dist/assets/time-picker-m83G80k1.js +0 -1
  318. package/dist/assets/tooltip-DtiQm14e.js +0 -1
  319. package/dist/assets/user-DmAQfp79.js +0 -1
  320. package/dist/assets/vnode-DOQF_9Lu.js +0 -1
@@ -1,8 +1,8 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/LocalTools-Y7QXXXv1.js","assets/index-BOCSBfUe.js","assets/rolldown-runtime--c01j_DQ.js","assets/preload-helper-zJ_50EbN.js","assets/constants-DlrPFkyM.js","assets/i18n-CQJsUptL.js","assets/vendor-chart-Dw-P17PN.js","assets/vendor-axios-Ck2ffRoh.js","assets/icon-CDmWyIgD.js","assets/install-Cn-SLM3u.js","assets/en-CpRrS3Ur.js","assets/index.browser.esm-BuWinGJ1.js","assets/buffer-CnhyIITQ.js","assets/eventemitter3-CwKRT-4Q.js","assets/vendor-dayjs-C9ICuEWn.js","assets/models-CwklOk8Z.js","assets/vendor-vue-CCKiwo0U.js","assets/focus-trap-DOoImtBk.js","assets/aria-8oQuUBWy.js","assets/use-deprecated-BAB4ggjd.js","assets/use-aria-C2PoIbMN.js","assets/vnode-DOQF_9Lu.js","assets/debounce-5xtusvLq.js","assets/vendor-vue-router-Cnr45FPb.js","assets/index-Dfp2KQ3h.css","assets/file-BJi6f11L.js","assets/folder-BNDnFq4V.js","assets/mouse-pointer-2-BrOji6Vv.js","assets/pencil-DDlb_Eqp.js","assets/plus-2XEDA9oZ.js","assets/shield-8Az-w1Iq.js","assets/terminal-D7o7TjCB.js","assets/wand-sparkles-dlhWJtt5.js","assets/switch-DRwxl6Da.js","assets/LocalTools-B6V3qEhM.css"])))=>i.map(i=>d[i]);
2
- import"./rolldown-runtime--c01j_DQ.js";import{A as e,B as t,C as n,Et as r,G as i,Gt as a,I as o,It as s,Jt as c,K as l,L as u,M as d,Mt as f,N as p,Nt as m,P as h,Q as g,R as _,Rt as v,S as y,St as b,T as x,U as S,Vt as C,Wt as w,Y as ee,at as T,bt as E,ft as D,ht as O,it as k,j as A,k as j,lt as te,mt as M,nt as N,ot as P,pt as ne,qt as re,rt as F,st as I,tt as L,wt as R,x as ie,z}from"./vendor-chart-Dw-P17PN.js";import{$ as ae,F as B,J as V,L as oe,Ot as se,S as ce,X as le,at as ue,et as de,h as fe,ht as pe,it as me,o as he,q as ge,rt as _e,tt as ve}from"./icon-CDmWyIgD.js";import{a as ye,c as be,t as xe}from"./install-Cn-SLM3u.js";import{t as Se}from"./debounce-5xtusvLq.js";import{r as Ce,t as we}from"./select-Bs3ZkE9R.js";import{a as Te,i as Ee,n as De,r as Oe,t as ke}from"./use-aria-C2PoIbMN.js";import{n as Ae,t as je}from"./table-CUPLKsew.js";import{n as Me,t as Ne}from"./form-CyX1oj8q.js";import{a as Pe,t as Fe}from"./tooltip-DtiQm14e.js";import{t as Ie}from"./alert-BprQRUmf.js";import{b as Le,r as Re,v as H}from"./models-CwklOk8Z.js";import{a as ze,c as Be,i as Ve,n as He,r as Ue}from"./use-deprecated-BAB4ggjd.js";import{t as We}from"./scrollbar-BhQr3aBa.js";import{t as Ge}from"./avatar-DEN_WCPo.js";import{t as Ke}from"./card-IQwqnRJR.js";import{n as qe,r as Je}from"./radio-DteyTHLj.js";import{t as Ye}from"./click-outside-CzJDhMNh.js";import{t as Xe}from"./divider-Du_3kymg.js";import{n as Ze,r as Qe,t as $e}from"./dropdown-BWJ6QGiC.js";import{t as et}from"./empty-C5KjRN0h.js";import{t as tt}from"./input-number-D2KUI1kN.js";import{i as nt,n as rt,r as it,t as at}from"./UpdateMenuItem-D2dQe6OD.js";import{t as ot}from"./popover-CujDeM9r.js";import{t as st}from"./slider-CrHYkY12.js";import{t as ct}from"./switch-DRwxl6Da.js";import{t as lt}from"./arrow-down-wide-narrow-B-Hw44Fp.js";import{t as ut}from"./arrow-right-Bkg9RgYl.js";import{t as dt}from"./brain-BB-39nEa.js";import{t as ft}from"./chevron-down-Ben_YIW6.js";import{n as pt,t as mt}from"./mail-DTKcIUlX.js";import{t as ht}from"./circle-check-CDbPCRg6.js";import{t as gt}from"./coins-sq7NECLS.js";import{t as _t}from"./copy-C5QvMUhF.js";import{t as vt}from"./dollar-sign-ZSrTaxmA.js";import{t as yt}from"./globe-jnFJnwZn.js";import{t as bt}from"./image-Bh2YK2ql.js";import{t as xt}from"./info-DlDYYYyz.js";import{t as St}from"./key-round-C7Ox29cM.js";import{t as Ct}from"./laptop-DWSIh2KY.js";import{t as wt}from"./lightbulb-6SCo6aGb.js";import{t as Tt}from"./link-Cag6_8_J.js";import{t as Et}from"./pencil-DDlb_Eqp.js";import{t as Dt}from"./plus-2XEDA9oZ.js";import{t as Ot}from"./refresh-cw-zGJ1ywed.js";import{t as kt}from"./rotate-ccw-C6ZbozHT.js";import{t as At}from"./rotate-cw-DZMWXKfh.js";import{t as jt}from"./search-CYoqYABP.js";import{t as Mt}from"./tag-CDE6lSVO.js";import{t as Nt}from"./trash-2-84jnyEiH.js";import{t as Pt}from"./triangle-alert-DijP-r53.js";import{t as Ft}from"./upload-B-GObY7P.js";import{t as It}from"./user-DmAQfp79.js";import{t as Lt}from"./wand-sparkles-dlhWJtt5.js";import{t as Rt}from"./vendor-axios-Ck2ffRoh.js";import{$ as zt,Ct as Bt,Dr as Vt,J as Ht,K as Ut,Ln as Wt,Ot as Gt,Pi as Kt,Q as qt,Qi as Jt,Rt as Yt,Si as Xt,Sn as Zt,St as Qt,X as $t,Xi as en,Y as tn,Yi as nn,Yn as rn,Z as an,Zi as on,_t as sn,ar as cn,bt as ln,ca as un,di as dn,ea as fn,et as pn,hr as mn,ii as hn,it as gn,jr as _n,mi as vn,mt as yn,nn as bn,nr as xn,nt as Sn,q as Cn,qr as wn,rt as Tn,ta as En,tt as Dn,ur as On,xr as kn}from"./constants-DlrPFkyM.js";import{a as An,r as jn}from"./i18n-CQJsUptL.js";import{t as Mn}from"./preload-helper-zJ_50EbN.js";import{$n as Nn,A as Pn,Aa as Fn,An as In,At as Ln,Bt as Rn,C as zn,Ca as U,Ci as Bn,Ct as Vn,Dn as Hn,Dt as Un,Ei as Wn,Et as Gn,F as Kn,Ft as qn,H as Jn,Ht as Yn,I as Xn,It as Zn,La as Qn,Lr as $n,Lt as er,Ma as W,Mt as tr,N as nr,Na as rr,Nn as ir,Nt as ar,O as G,On as or,Ot as sr,P as cr,Pa as lr,Pt as ur,Q as dr,Qn as fr,R as pr,Rt as mr,S as hr,St as gr,Ti as _r,Tt as vr,U as yr,Ut as br,Va as xr,Vt as Sr,W as Cr,_ as wr,_a as Tr,_n as Er,_t as Dr,at as Or,b as kr,bt as Ar,c as jr,ct as Mr,d as Nr,da as Pr,dn as Fr,dt as Ir,er as Lr,ft as Rr,g as zr,ga as Br,gt as Vr,h as Hr,ht as Ur,i as Wr,jt as Gr,k as Kr,ka as qr,kn as Jr,kt as Yr,la as Xr,ln as Zr,lt as Qr,m as $r,ma as ei,mn as ti,mt as ni,n as ri,nr as ii,nt as ai,p as oi,pa as si,pt as ci,r as li,rr as ui,rt as di,sn as fi,st as pi,tr as mi,tt as hi,u as gi,ua as _i,un as vi,ut as yi,v as bi,va as xi,vt as Si,wi as Ci,wn as wi,wt as Ti,xa as Ei,xi as Di,xt as Oi,y as ki,ya as Ai,yt as ji,z as Mi,za as Ni,zt as Pi}from"./index-BOCSBfUe.js";import{t as Fi}from"./index.es-DcSmGa6z.js";import{t as Ii}from"./Logo-CkZtONM-.js";var Li=ae({...xr,valueKey:{type:String,default:`value`},modelValue:{type:[String,Number],default:``},debounce:{type:Number,default:300},placement:{type:de(String),values:[`top`,`top-start`,`top-end`,`bottom`,`bottom-start`,`bottom-end`],default:`bottom-start`},fetchSuggestions:{type:de([Function,Array]),default:m},popperClass:{type:String,default:``},triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:Pe.teleported,appendTo:Pe.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean}),Ri={[Ee]:e=>w(e),[Oe]:e=>w(e),[De]:e=>w(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>C(e)},zi=`ElAutocomplete`,Bi=xe(ye(z({...z({name:zi,inheritAttrs:!1}),props:Li,emits:Ri,setup(t,{expose:r,emit:s}){let l=t,d=j(()=>Te(l,Object.keys(xr))),m=te(),_=He(),b=be(`autocomplete`),S=R(),C=R(),w=R(),T=R(),E=!1,D=!1,O=R([]),N=R(-1),P=R(``),ne=R(!1),I=R(!1),ie=R(!1),z=Be(),ae=j(()=>m.style),V=j(()=>(O.value.length>0||ie.value)&&ne.value),oe=j(()=>!l.hideLoading&&ie.value),se=j(()=>S.value?Array.from(S.value.$el.querySelectorAll(`input`)):[]),le=()=>{V.value&&(P.value=`${S.value.$el.offsetWidth}px`)},de=()=>{N.value=-1},fe=async e=>{if(I.value)return;let t=e=>{ie.value=!1,!I.value&&(v(e)?(O.value=e,N.value=l.highlightFirstItem?0:-1):me(zi,`autocomplete suggestions must be an array`))};if(ie.value=!0,v(l.fetchSuggestions))t(l.fetchSuggestions);else{let n=await l.fetchSuggestions(e,t);v(n)&&t(n)}},pe=Se(fe,l.debounce),he=e=>{let t=!!e;if(s(Oe,e),s(Ee,e),I.value=!1,ne.value||=t,!l.triggerOnFocus&&!e){I.value=!0,O.value=[];return}pe(e)},ge=e=>{_.value||(e.target?.tagName!==`INPUT`||se.value.includes(document.activeElement))&&(ne.value=!0)},_e=e=>{s(De,e)},ve=e=>{if(D)D=!1;else{ne.value=!0,s(`focus`,e);let t=l.modelValue??``;l.triggerOnFocus&&!E&&pe(String(t))}},ye=e=>{setTimeout(()=>{if(w.value?.isFocusInsideContent()){D=!0;return}ne.value&&ke(),s(`blur`,e)})},xe=()=>{ne.value=!1,s(Ee,``),s(`clear`)},Ce=async()=>{V.value&&N.value>=0&&N.value<O.value.length?Me(O.value[N.value]):l.selectWhenUnmatched&&(s(`select`,{value:l.modelValue}),O.value=[],N.value=-1)},we=e=>{V.value&&(e.preventDefault(),e.stopPropagation(),ke())},ke=()=>{ne.value=!1},Ae=()=>{var e;(e=S.value)==null||e.focus()},je=()=>{var e;(e=S.value)==null||e.blur()},Me=async e=>{s(Oe,e[l.valueKey]),s(Ee,e[l.valueKey]),s(`select`,e),O.value=[],N.value=-1},Ne=e=>{if(!V.value||ie.value)return;if(e<0){N.value=-1;return}e>=O.value.length&&(e=O.value.length-1);let t=C.value.querySelector(`.${b.be(`suggestion`,`wrap`)}`),n=t.querySelectorAll(`.${b.be(`suggestion`,`list`)} li`)[e],r=t.scrollTop,{offsetTop:i,scrollHeight:a}=n;i+a>r+t.clientHeight&&(t.scrollTop+=a),i<r&&(t.scrollTop-=a),N.value=e,S.value.ref.setAttribute(`aria-activedescendant`,`${z.value}-item-${N.value}`)},Pe=ue(T,()=>{w.value?.isFocusInsideContent()||V.value&&ke()});return ee(()=>{Pe?.()}),g(()=>{S.value.ref.setAttribute(`role`,`textbox`),S.value.ref.setAttribute(`aria-autocomplete`,`list`),S.value.ref.setAttribute(`aria-controls`,`id`),S.value.ref.setAttribute(`aria-activedescendant`,`${z.value}-item-${N.value}`),E=S.value.ref.hasAttribute(`readonly`)}),r({highlightedIndex:N,activated:ne,loading:ie,inputRef:S,popperRef:w,suggestions:O,handleSelect:Me,handleKeyEnter:Ce,focus:Ae,blur:je,close:ke,highlight:Ne,getData:fe}),(t,r)=>(L(),A(f(Fe),{ref_key:`popperRef`,ref:w,visible:f(V),placement:t.placement,"fallback-placements":[`bottom-start`,`top-start`],"popper-class":[f(b).e(`popper`),t.popperClass],teleported:t.teleported,"append-to":t.appendTo,"gpu-acceleration":!1,pure:``,"manual-mode":``,effect:`light`,trigger:`click`,transition:`${f(b).namespace.value}-zoom-in-top`,persistent:``,role:`listbox`,onBeforeShow:le,onHide:de},{content:M(()=>[e(`div`,{ref_key:`regionRef`,ref:C,class:a([f(b).b(`suggestion`),f(b).is(`loading`,f(oe))]),style:re({[t.fitInputWidth?`width`:`minWidth`]:P.value,outline:`none`}),role:`region`},[u(f(We),{id:f(z),tag:`ul`,"wrap-class":f(b).be(`suggestion`,`wrap`),"view-class":f(b).be(`suggestion`,`list`),role:`listbox`},{default:M(()=>[f(oe)?(L(),p(`li`,{key:0},[k(t.$slots,`loading`,{},()=>[u(f(B),{class:a(f(b).is(`loading`))},{default:M(()=>[u(f(ce))]),_:1},8,[`class`])])])):(L(!0),p(x,{key:1},F(O.value,(e,n)=>(L(),p(`li`,{id:`${f(z)}-item-${n}`,key:n,class:a({highlighted:N.value===n}),role:`option`,"aria-selected":N.value===n,onClick:t=>Me(e)},[k(t.$slots,`default`,{item:e},()=>[o(c(e[t.valueKey]),1)])],10,[`id`,`aria-selected`,`onClick`]))),128))]),_:3},8,[`id`,`wrap-class`,`view-class`])],6)]),default:M(()=>[e(`div`,{ref_key:`listboxRef`,ref:T,class:a([f(b).b(),t.$attrs.class]),style:re(f(ae)),role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":f(V),"aria-owns":f(z)},[u(f(Qn),i({ref_key:`inputRef`,ref:S},i(f(d),t.$attrs),{"model-value":t.modelValue,disabled:f(_),onInput:he,onChange:_e,onFocus:ve,onBlur:ye,onClear:xe,onKeydown:[y(n(e=>Ne(N.value-1),[`prevent`]),[`up`]),y(n(e=>Ne(N.value+1),[`prevent`]),[`down`]),y(Ce,[`enter`]),y(ke,[`tab`]),y(we,[`esc`])],onMousedown:ge}),h({_:2},[t.$slots.prepend?{name:`prepend`,fn:M(()=>[k(t.$slots,`prepend`)])}:void 0,t.$slots.append?{name:`append`,fn:M(()=>[k(t.$slots,`append`)])}:void 0,t.$slots.prefix?{name:`prefix`,fn:M(()=>[k(t.$slots,`prefix`)])}:void 0,t.$slots.suffix?{name:`suffix`,fn:M(()=>[k(t.$slots,`suffix`)])}:void 0]),1040,[`model-value`,`disabled`,`onKeydown`])],14,[`aria-expanded`,`aria-owns`])]),_:3},8,[`visible`,`placement`,`popper-class`,`teleported`,`append-to`,`transition`]))}}),[[`__file`,`autocomplete.vue`]])),Vi=ae({color:{type:de(Object),required:!0},vertical:Boolean}),Hi=!1;function Ui(e,t){if(!pe)return;let n=function(e){var n;(n=t.drag)==null||n.call(t,e)},r=function(e){var i;document.removeEventListener(`mousemove`,n),document.removeEventListener(`mouseup`,r),document.removeEventListener(`touchmove`,n),document.removeEventListener(`touchend`,r),document.onselectstart=null,document.ondragstart=null,Hi=!1,(i=t.end)==null||i.call(t,e)},i=function(e){var i;Hi||(e.preventDefault(),document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener(`mousemove`,n),document.addEventListener(`mouseup`,r),document.addEventListener(`touchmove`,n),document.addEventListener(`touchend`,r),Hi=!0,(i=t.start)==null||i.call(t,e))};e.addEventListener(`mousedown`,i),e.addEventListener(`touchstart`,i,{passive:!1})}var Wi=e=>{let n=t(),{t:i}=ve(),a=r(),o=r(),s=j(()=>e.color.get(`alpha`)),c=j(()=>i(`el.colorpicker.alphaLabel`));function l(e){var t;e.target!==a.value&&u(e),(t=a.value)==null||t.focus()}function u(t){if(!o.value||!a.value)return;let r=n.vnode.el.getBoundingClientRect(),{clientX:i,clientY:s}=qr(t);if(e.vertical){let t=s-r.top;t=Math.max(a.value.offsetHeight/2,t),t=Math.min(t,r.height-a.value.offsetHeight/2),e.color.set(`alpha`,Math.round((t-a.value.offsetHeight/2)/(r.height-a.value.offsetHeight)*100))}else{let t=i-r.left;t=Math.max(a.value.offsetWidth/2,t),t=Math.min(t,r.width-a.value.offsetWidth/2),e.color.set(`alpha`,Math.round((t-a.value.offsetWidth/2)/(r.width-a.value.offsetWidth)*100))}}function d(e){let{code:t,shiftKey:n}=e,r=n?10:1;switch(t){case Le.left:case Le.down:e.preventDefault(),e.stopPropagation(),f(-r);break;case Le.right:case Le.up:e.preventDefault(),e.stopPropagation(),f(r);break}}function f(t){let n=s.value+t;n=n<0?0:n>100?100:n,e.color.set(`alpha`,n)}return{thumb:a,bar:o,alpha:s,alphaLabel:c,handleDrag:u,handleClick:l,handleKeydown:d}},Gi=(e,{bar:n,thumb:r,handleDrag:i})=>{let a=t(),o=be(`color-alpha-slider`),s=R(0),c=R(0),l=R();function u(){if(!r.value||e.vertical)return 0;let t=a.vnode.el,n=e.color.get(`alpha`);return t?Math.round(n*(t.offsetWidth-r.value.offsetWidth/2)/100):0}function d(){if(!r.value)return 0;let t=a.vnode.el;if(!e.vertical)return 0;let n=e.color.get(`alpha`);return t?Math.round(n*(t.offsetHeight-r.value.offsetHeight/2)/100):0}function f(){if(e.color&&e.color.value){let{r:t,g:n,b:r}=e.color.toRgb();return`linear-gradient(to right, rgba(${t}, ${n}, ${r}, 0) 0%, rgba(${t}, ${n}, ${r}, 1) 100%)`}return``}function p(){s.value=u(),c.value=d(),l.value=f()}g(()=>{if(!n.value||!r.value)return;let e={drag:e=>{i(e)},end:e=>{i(e)}};Ui(n.value,e),Ui(r.value,e),p()}),D(()=>e.color.get(`alpha`),()=>p()),D(()=>e.color.value,()=>p());let m=j(()=>[o.b(),o.is(`vertical`,e.vertical)]),h=j(()=>o.e(`bar`)),_=j(()=>o.e(`thumb`));return{rootKls:m,barKls:h,barStyle:j(()=>({background:l.value})),thumbKls:_,thumbStyle:j(()=>({left:oe(s.value),top:oe(c.value)})),update:p}},Ki=ye(z({...z({name:`ElColorAlphaSlider`}),props:Vi,setup(t,{expose:n}){let r=t,{alpha:i,alphaLabel:o,bar:s,thumb:c,handleDrag:l,handleClick:u,handleKeydown:d}=Wi(r),{rootKls:m,barKls:h,barStyle:g,thumbKls:_,thumbStyle:v,update:y}=Gi(r,{bar:s,thumb:c,handleDrag:l});return n({update:y,bar:s,thumb:c}),(t,n)=>(L(),p(`div`,{class:a(f(m))},[e(`div`,{ref_key:`bar`,ref:s,class:a(f(h)),style:re(f(g)),onClick:f(u)},null,14,[`onClick`]),e(`div`,{ref_key:`thumb`,ref:c,class:a(f(_)),style:re(f(v)),"aria-label":f(o),"aria-valuenow":f(i),"aria-orientation":t.vertical?`vertical`:`horizontal`,"aria-valuemin":`0`,"aria-valuemax":`100`,role:`slider`,tabindex:`0`,onKeydown:f(d)},null,46,[`aria-label`,`aria-valuenow`,`aria-orientation`,`onKeydown`])],2))}}),[[`__file`,`alpha-slider.vue`]]),qi=z({name:`ElColorHueSlider`,props:{color:{type:Object,required:!0},vertical:Boolean},setup(e){let n=be(`color-hue-slider`),r=t(),i=R(),a=R(),o=R(0),s=R(0),c=j(()=>e.color.get(`hue`));D(()=>c.value,()=>{p()});function l(e){e.target!==i.value&&u(e)}function u(t){if(!a.value||!i.value)return;let n=r.vnode.el.getBoundingClientRect(),{clientX:o,clientY:s}=qr(t),c;if(e.vertical){let e=s-n.top;e=Math.min(e,n.height-i.value.offsetHeight/2),e=Math.max(i.value.offsetHeight/2,e),c=Math.round((e-i.value.offsetHeight/2)/(n.height-i.value.offsetHeight)*360)}else{let e=o-n.left;e=Math.min(e,n.width-i.value.offsetWidth/2),e=Math.max(i.value.offsetWidth/2,e),c=Math.round((e-i.value.offsetWidth/2)/(n.width-i.value.offsetWidth)*360)}e.color.set(`hue`,c)}function d(){if(!i.value)return 0;let t=r.vnode.el;if(e.vertical)return 0;let n=e.color.get(`hue`);return t?Math.round(n*(t.offsetWidth-i.value.offsetWidth/2)/360):0}function f(){if(!i.value)return 0;let t=r.vnode.el;if(!e.vertical)return 0;let n=e.color.get(`hue`);return t?Math.round(n*(t.offsetHeight-i.value.offsetHeight/2)/360):0}function p(){o.value=d(),s.value=f()}return g(()=>{if(!a.value||!i.value)return;let e={drag:e=>{u(e)},end:e=>{u(e)}};Ui(a.value,e),Ui(i.value,e),p()}),{bar:a,thumb:i,thumbLeft:o,thumbTop:s,hueValue:c,handleClick:l,update:p,ns:n}}});function Ji(t,n,r,i,o,s){return L(),p(`div`,{class:a([t.ns.b(),t.ns.is(`vertical`,t.vertical)])},[e(`div`,{ref:`bar`,class:a(t.ns.e(`bar`)),onClick:t.handleClick},null,10,[`onClick`]),e(`div`,{ref:`thumb`,class:a(t.ns.e(`thumb`)),style:re({left:t.thumbLeft+`px`,top:t.thumbTop+`px`})},null,6)],2)}var Yi=ye(qi,[[`render`,Ji],[`__file`,`hue-slider.vue`]]),Xi=ae({modelValue:{type:de(String),default:void 0},id:String,showAlpha:Boolean,colorFormat:String,disabled:Boolean,size:le,popperClass:{type:String,default:``},tabindex:{type:[String,Number],default:0},teleported:Pe.teleported,predefine:{type:de(Array)},validateEvent:{type:Boolean,default:!0},...V,...ke([`ariaLabel`])}),Zi={[Ee]:e=>w(e)||se(e),[De]:e=>w(e)||se(e),activeChange:e=>w(e)||se(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},Qi=Symbol(`colorPickerContextKey`),$i=class{constructor(e={}){this._hue=0,this._saturation=100,this._value=100,this._alpha=100,this._tiny=new lr,this._isValid=!1,this.enableAlpha=!1,this.format=``,this.value=``;for(let t in e)s(e,t)&&(this[t]=e[t]);e.value?this.fromString(e.value):this.doOnChange()}set(e,t){if(arguments.length===1&&typeof e==`object`){for(let t in e)s(e,t)&&this.set(t,e[t]);return}this[`_${e}`]=t,this._isValid=!0,this.doOnChange()}get(e){return[`hue`,`saturation`,`value`,`alpha`].includes(e)?Math.round(this[`_${e}`]):this[`_${e}`]}toRgb(){return this._isValid?this._tiny.toRgb():{r:255,g:255,b:255,a:0}}fromString(e){let t=new lr(e);if(this._isValid=t.isValid,t.isValid){let{h:e,s:n,v:r,a:i}=t.toHsv();this._hue=e,this._saturation=n*100,this._value=r*100,this._alpha=i*100}else this._hue=0,this._saturation=100,this._value=100,this._alpha=100;this.doOnChange()}compare(e){let t=new lr({h:e._hue,s:e._saturation/100,v:e._value/100,a:e._alpha/100});return this._tiny.equals(t)}doOnChange(){let{_hue:e,_saturation:t,_value:n,_alpha:r,format:i,enableAlpha:a}=this,o=i||(a?`rgb`:`hex`);i===`hex`&&a&&(o=`hex8`),this._tiny=new lr({h:e,s:t/100,v:n/100,a:r/100}),this.value=this._isValid?this._tiny.toString(o):``}},ea=z({props:{colors:{type:Array,required:!0},color:{type:Object,required:!0},enableAlpha:{type:Boolean,required:!0}},setup(e){let t=be(`color-predefine`),{currentColor:n}=S(Qi),r=R(a(e.colors,e.color));D(()=>n.value,e=>{let t=new $i({value:e});r.value.forEach(e=>{e.selected=t.compare(e)})}),ne(()=>{r.value=a(e.colors,e.color)});function i(t){e.color.fromString(e.colors[t])}function a(e,t){return e.map(e=>{let n=new $i({value:e});return n.selected=n.compare(t),n})}return{rgbaColors:r,handleSelect:i,ns:t}}});function ta(t,n,r,i,o,s){return L(),p(`div`,{class:a(t.ns.b())},[e(`div`,{class:a(t.ns.e(`colors`))},[(L(!0),p(x,null,F(t.rgbaColors,(n,r)=>(L(),p(`div`,{key:t.colors[r],class:a([t.ns.e(`color-selector`),t.ns.is(`alpha`,n.get(`alpha`)<100),{selected:n.selected}]),onClick:e=>t.handleSelect(r)},[e(`div`,{style:re({backgroundColor:n.value})},null,4)],10,[`onClick`]))),128))],2)],2)}var na=ye(ea,[[`render`,ta],[`__file`,`predefine.vue`]]),ra=z({name:`ElSlPanel`,props:{color:{type:Object,required:!0}},setup(e){let n=be(`color-svpanel`),r=t(),i=R(0),a=R(0),o=R(`hsl(0, 100%, 50%)`),s=j(()=>({hue:e.color.get(`hue`),value:e.color.get(`value`)}));function c(){let t=e.color.get(`saturation`),n=e.color.get(`value`),{clientWidth:s,clientHeight:c}=r.vnode.el;a.value=t*s/100,i.value=(100-n)*c/100,o.value=`hsl(${e.color.get(`hue`)}, 100%, 50%)`}function l(t){let n=r.vnode.el.getBoundingClientRect(),{clientX:o,clientY:s}=qr(t),c=o-n.left,l=s-n.top;c=Math.max(0,c),c=Math.min(c,n.width),l=Math.max(0,l),l=Math.min(l,n.height),a.value=c,i.value=l,e.color.set({saturation:c/n.width*100,value:100-l/n.height*100})}return D(()=>s.value,()=>{c()}),g(()=>{Ui(r.vnode.el,{drag:e=>{l(e)},end:e=>{l(e)}}),c()}),{cursorTop:i,cursorLeft:a,background:o,colorValue:s,handleDrag:l,update:c,ns:n}}});function ia(t,n,r,i,o,s){return L(),p(`div`,{class:a(t.ns.b()),style:re({backgroundColor:t.background})},[e(`div`,{class:a(t.ns.e(`white`))},null,2),e(`div`,{class:a(t.ns.e(`black`))},null,2),e(`div`,{class:a(t.ns.e(`cursor`)),style:re({top:t.cursorTop+`px`,left:t.cursorLeft+`px`})},[e(`div`)],6)],6)}var aa=ye(ra,[[`render`,ia],[`__file`,`sv-panel.vue`]]),oa=xe(ye(z({...z({name:`ElColorPicker`}),props:Xi,emits:Zi,setup(t,{expose:n,emit:r}){let s=t,{t:m}=ve(),h=be(`color`),{formItem:_}=Ve(),v=Ue(),x=He(),{valueOnClear:S,isEmptyValue:C}=ge(s,null),{inputId:w,isLabeledByFormItem:ee}=ze(s,{formItemContext:_}),T=R(),E=R(),k=R(),te=R(),P=R(),ne=R(),{isFocused:F,handleFocus:I,handleBlur:z}=Ni(P,{disabled:x,beforeBlur(e){return te.value?.isFocusInsideContent(e)},afterBlur(){xe(!1),Oe()}}),ae=!0,V=b(new $i({enableAlpha:s.showAlpha,format:s.colorFormat||``,value:s.modelValue})),oe=R(!1),se=R(!1),ce=R(``),le=j(()=>!s.modelValue&&!se.value?`transparent`:ye(V,s.showAlpha)),ue=j(()=>!s.modelValue&&!se.value?``:V.value),de=j(()=>ee.value?void 0:s.ariaLabel||m(`el.colorpicker.defaultLabel`)),pe=j(()=>ee.value?_?.labelId:void 0),me=j(()=>[h.b(`picker`),h.is(`disabled`,x.value),h.bm(`picker`,v.value),h.is(`focused`,F.value)]);function ye(e,t){let{r:n,g:r,b:i,a}=e.toRgb();return t?`rgba(${n}, ${r}, ${i}, ${a})`:`rgb(${n}, ${r}, ${i})`}function xe(e){oe.value=e}let Ce=Se(xe,100,{leading:!0});function we(){x.value||xe(!0)}function Te(){Ce(!1),Oe()}function Oe(){l(()=>{s.modelValue?V.fromString(s.modelValue):(V.value=``,!ue.value&&ce.value&&(ce.value=``),l(()=>{se.value=!1}))})}function ke(){x.value||(oe.value&&Oe(),Ce(!oe.value))}function Ae(){V.fromString(ce.value),V.value!==ce.value&&(ce.value=V.value)}function je(){let e=C(V.value)?S.value:V.value;r(Ee,e),r(De,e),s.validateEvent&&_?.validate(`change`).catch(e=>_e(e)),Ce(!1),l(()=>{let e=new $i({enableAlpha:s.showAlpha,format:s.colorFormat||``,value:s.modelValue});V.compare(e)||Oe()})}function Me(){Ce(!1),r(Ee,S.value),r(De,S.value),s.modelValue!==S.value&&s.validateEvent&&_?.validate(`change`).catch(e=>_e(e)),Oe()}function Ne(){oe.value&&(Te(),F.value&&Re())}function Pe(e){e.preventDefault(),e.stopPropagation(),xe(!1),Oe()}function Ie(e){switch(e.code){case Le.enter:case Le.numpadEnter:case Le.space:e.preventDefault(),e.stopPropagation(),we(),ne.value.focus();break;case Le.esc:Pe(e);break}}function Re(){P.value.focus()}function H(){P.value.blur()}return g(()=>{s.modelValue&&(ce.value=ue.value)}),D(()=>s.modelValue,e=>{e?e&&e!==V.value&&(ae=!1,V.fromString(e)):se.value=!1}),D(()=>[s.colorFormat,s.showAlpha],()=>{V.enableAlpha=s.showAlpha,V.format=s.colorFormat||V.format,V.doOnChange(),r(Ee,V.value)}),D(()=>ue.value,e=>{ce.value=e,ae&&r(`activeChange`,e),ae=!0}),D(()=>V.value,()=>{!s.modelValue&&!se.value&&(se.value=!0)}),D(()=>oe.value,()=>{l(()=>{var e,t,n;(e=T.value)==null||e.update(),(t=E.value)==null||t.update(),(n=k.value)==null||n.update()})}),N(Qi,{currentColor:ue}),n({color:V,show:we,hide:Te,focus:Re,blur:H}),(t,n)=>(L(),A(f(Fe),{ref_key:`popper`,ref:te,visible:oe.value,"show-arrow":!1,"fallback-placements":[`bottom`,`top`,`right`,`left`],offset:0,"gpu-acceleration":!1,"popper-class":[f(h).be(`picker`,`panel`),f(h).b(`dropdown`),t.popperClass],"stop-popper-mouse-event":!1,effect:`light`,trigger:`click`,teleported:t.teleported,transition:`${f(h).namespace.value}-zoom-in-top`,persistent:``,onHide:e=>xe(!1)},{content:M(()=>[O((L(),p(`div`,{onKeydown:y(Pe,[`esc`])},[e(`div`,{class:a(f(h).be(`dropdown`,`main-wrapper`))},[u(Yi,{ref_key:`hue`,ref:T,class:`hue-slider`,color:f(V),vertical:``},null,8,[`color`]),u(aa,{ref_key:`sv`,ref:E,color:f(V)},null,8,[`color`])],2),t.showAlpha?(L(),A(Ki,{key:0,ref_key:`alpha`,ref:k,color:f(V)},null,8,[`color`])):d(`v-if`,!0),t.predefine?(L(),A(na,{key:1,ref:`predefine`,"enable-alpha":t.showAlpha,color:f(V),colors:t.predefine},null,8,[`enable-alpha`,`color`,`colors`])):d(`v-if`,!0),e(`div`,{class:a(f(h).be(`dropdown`,`btns`))},[e(`span`,{class:a(f(h).be(`dropdown`,`value`))},[u(f(Qn),{ref_key:`inputRef`,ref:ne,modelValue:ce.value,"onUpdate:modelValue":e=>ce.value=e,"validate-event":!1,size:`small`,onChange:Ae},null,8,[`modelValue`,`onUpdate:modelValue`])],2),u(f(W),{class:a(f(h).be(`dropdown`,`link-btn`)),text:``,size:`small`,onClick:Me},{default:M(()=>[o(c(f(m)(`el.colorpicker.clear`)),1)]),_:1},8,[`class`]),u(f(W),{plain:``,size:`small`,class:a(f(h).be(`dropdown`,`btn`)),onClick:je},{default:M(()=>[o(c(f(m)(`el.colorpicker.confirm`)),1)]),_:1},8,[`class`])],2)],40,[`onKeydown`])),[[f(Ye),Ne,P.value]])]),default:M(()=>[e(`div`,i({id:f(w),ref_key:`triggerRef`,ref:P},t.$attrs,{class:f(me),role:`button`,"aria-label":f(de),"aria-labelledby":f(pe),"aria-description":f(m)(`el.colorpicker.description`,{color:t.modelValue||``}),"aria-disabled":f(x),tabindex:f(x)?void 0:t.tabindex,onKeydown:Ie,onFocus:f(I),onBlur:f(z)}),[e(`div`,{class:a(f(h).be(`picker`,`trigger`)),onClick:ke},[e(`span`,{class:a([f(h).be(`picker`,`color`),f(h).is(`alpha`,t.showAlpha)])},[e(`span`,{class:a(f(h).be(`picker`,`color-inner`)),style:re({backgroundColor:f(le)})},[O(u(f(B),{class:a([f(h).be(`picker`,`icon`),f(h).is(`icon-arrow-down`)])},{default:M(()=>[u(f(he))]),_:1},8,[`class`]),[[ie,t.modelValue||se.value]]),O(u(f(B),{class:a([f(h).be(`picker`,`empty`),f(h).is(`icon-close`)])},{default:M(()=>[u(f(fe))]),_:1},8,[`class`]),[[ie,!t.modelValue&&!se.value]])],6)],2)],2)],16,[`id`,`aria-label`,`aria-labelledby`,`aria-description`,`aria-disabled`,`tabindex`,`onFocus`,`onBlur`])]),_:1},8,[`visible`,`popper-class`,`teleported`,`transition`,`onHide`]))}}),[[`__file`,`color-picker.vue`]])),sa=Tr(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),ca=Tr(`megaphone`,[[`path`,{d:`M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z`,key:`q8bfy3`}],[`path`,{d:`M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14`,key:`1853fq`}],[`path`,{d:`M8 6v8`,key:`15ugcq`}]]),la=Tr(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),ua=Tr(`route`,[[`circle`,{cx:`6`,cy:`19`,r:`3`,key:`1kj8tv`}],[`path`,{d:`M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15`,key:`1d8sl`}],[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}]]),da=Tr(`settings`,[[`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`}]]),fa=Tr(`shield-user`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M6.376 18.91a6 6 0 0 1 11.249.003`,key:`hnjrf2`}],[`circle`,{cx:`12`,cy:`11`,r:`4`,key:`1gt34v`}]]),pa=Tr(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),ma=Tr(`user-x`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`line`,{x1:`17`,x2:`22`,y1:`8`,y2:`13`,key:`3nzzx3`}],[`line`,{x1:`22`,x2:`17`,y1:`8`,y2:`13`,key:`1swrse`}]]),ha=Tr(`zoom-in`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`,key:`1vmskp`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),ga=Tr(`zoom-out`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),_a=z({name:`UserAvatar`,data(){return{defaultAvatar:rt}},computed:{user(){return this.$store.getters?.user}}}),va=[`src`];function ya(e,t,n,r,i,a){return L(),p(`img`,{src:e.user?.avatar||e.defaultAvatar,class:`avatar`},null,8,va)}var ba=G(_a,[[`render`,ya],[`__scopeId`,`data-v-b0beddd3`]]),xa=z({name:`ThemeSelector`,components:{ArrowDown:ft,ElDropdown:$e,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElIcon:B},data(){return{theme:`light`}},computed:{currentLabel(){return this.theme===`dark`?this.$t(`common.theme.dark`):this.theme===`system`?this.$t(`common.theme.system`):this.$t(`common.theme.light`)}},mounted(){let e=_r(`THEME`);this.theme=e===`dark`||e===`system`?e:document.documentElement.classList.contains(`dark`)?`dark`:`light`},methods:{onSelect(e){this.theme=e,this.applyTheme()},applyTheme(){Wn(`THEME`,this.theme,{path:`/`,domain:Fr()}),vi(this.theme)}}}),Sa={class:`el-dropdown-link`};function Ca(t,n,r,i,a,s){let l=T(`arrow-down`),d=T(`el-icon`),f=T(`el-dropdown-item`),p=T(`el-dropdown-menu`),m=T(`el-dropdown`);return L(),A(m,{trigger:`click`,onCommand:t.onSelect},{dropdown:M(()=>[u(p,null,{default:M(()=>[u(f,{command:`light`},{default:M(()=>[o(c(t.$t(`common.theme.light`)),1)]),_:1}),u(f,{command:`dark`},{default:M(()=>[o(c(t.$t(`common.theme.dark`)),1)]),_:1}),u(f,{command:`system`},{default:M(()=>[o(c(t.$t(`common.theme.system`)),1)]),_:1})]),_:1})]),default:M(()=>[e(`span`,Sa,[o(c(t.currentLabel)+` `,1),u(d,{class:`el-icon--right`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`onCommand`])}var wa=G(xa,[[`render`,Ca]]),Ta=z({name:`Locale`,components:{ElDropdown:$e,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElIcon:B,ArrowDown:ft},computed:{site(){return this.$store.getters.site},locales(){return Kn(this.site?.supported_locales)},isForced(){return!!cr(this.site)},value(){return this.$i18n.locale},currentLabel(){let e=this.locales.find(e=>e.value===this.value);return e?e.label:this.value}},watch:{locales:{immediate:!0,handler(){this.ensureAllowedLocale()}},isForced(){this.ensureAllowedLocale()}},methods:{async ensureAllowedLocale(){let e=Xn(this.value,this.site);e!==this.value&&await this.applyLocale(e)},async onSelectLocale(e){this.$router.push({query:{...this.$route.query,locale:void 0}}),await this.applyLocale(e)},async applyLocale(e){await jn(e),Wn(`LOCALE`,e,{path:`/`,domain:Fr()})}}}),Ea={class:`el-dropdown-link`};function Da(t,n,r,i,a,s){let l=T(`arrow-down`),f=T(`el-icon`),m=T(`el-dropdown-item`),h=T(`el-dropdown-menu`),g=T(`el-dropdown`);return t.isForced?d(``,!0):(L(),A(g,{key:0,trigger:`click`,onCommand:t.onSelectLocale},{dropdown:M(()=>[u(h,null,{default:M(()=>[(L(!0),p(x,null,F(t.locales,(e,t)=>(L(),A(m,{key:t,command:e.value},{default:M(()=>[o(c(e.label),1)]),_:2},1032,[`command`]))),128))]),_:1})]),default:M(()=>[e(`span`,Ea,[o(c(t.currentLabel)+` `,1),u(f,{class:`el-icon--right`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`onCommand`]))}var Oa=G(Ta,[[`render`,Da]]),ka=z({name:`SendShortcutSelector`,components:{ArrowDown:ft,ElDropdown:$e,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElIcon:B},data(){return{shortcut:`enter`,modKey:typeof navigator<`u`&&/Mac|iPhone|iPad|iPod/.test(navigator.platform||navigator.userAgent)?`⌘`:`Ctrl`}},computed:{currentLabel(){return this.shortcut===`mod-enter`?this.$t(`common.sendShortcut.modEnter`,{key:this.modKey}):this.$t(`common.sendShortcut.enter`)}},mounted(){this.shortcut=_r(`SEND_SHORTCUT`)===`mod-enter`?`mod-enter`:`enter`},methods:{onSelect(e){this.shortcut=e,Wn(`SEND_SHORTCUT`,e,{path:`/`,domain:Fr()})}}}),Aa={class:`el-dropdown-link`};function ja(t,n,r,i,a,s){let l=T(`arrow-down`),d=T(`el-icon`),f=T(`el-dropdown-item`),p=T(`el-dropdown-menu`),m=T(`el-dropdown`);return L(),A(m,{trigger:`click`,onCommand:t.onSelect},{dropdown:M(()=>[u(p,null,{default:M(()=>[u(f,{command:`enter`},{default:M(()=>[o(c(t.$t(`common.sendShortcut.enter`)),1)]),_:1}),u(f,{command:`mod-enter`},{default:M(()=>[o(c(t.$t(`common.sendShortcut.modEnter`,{key:t.modKey})),1)]),_:1})]),_:1})]),default:M(()=>[e(`span`,Aa,[o(c(t.currentLabel)+` `,1),u(d,{class:`el-icon--right`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`onCommand`])}var Ma=z({name:`GeneralSettings`,components:{ThemeSwitcher:wa,LocaleSwitcher:Oa,SendShortcut:G(ka,[[`render`,ja]])}}),Na={class:`settings-list`},Pa={class:`settings-item`},Fa={class:`settings-label`},Ia={class:`settings-title`},La={class:`settings-content`},Ra={class:`settings-item`},za={class:`settings-label`},Ba={class:`settings-title`},Va={class:`settings-content`},Ha={class:`settings-item`},Ua={class:`settings-label`},Wa={class:`settings-title`},Ga={class:`settings-content`};function Ka(t,n,r,i,a,o){let s=T(`theme-switcher`),l=T(`locale-switcher`),d=T(`send-shortcut`);return L(),p(`div`,Na,[e(`section`,Pa,[e(`div`,Fa,[e(`p`,Ia,c(t.$t(`common.settings.theme`)),1)]),e(`div`,La,[u(s)])]),e(`section`,Ra,[e(`div`,za,[e(`p`,Ba,c(t.$t(`common.settings.language`)),1)]),e(`div`,Va,[u(l)])]),e(`section`,Ha,[e(`div`,Ua,[e(`p`,Wa,c(t.$t(`common.settings.sendShortcut`)),1)]),e(`div`,Ga,[u(d)])])])}var qa=G(Ma,[[`render`,Ka]]),Ja=z({name:`BYOKDialog`,components:{ErrorIcon:pt,ElButton:W,ElDialog:U,ElForm:Ne,ElFormItem:Me,ElInput:Qn,ElOption:we,ElSelect:Ce,SuccessIcon:ht},props:{visible:{type:Boolean,default:!1},credential:{type:Object,default:null},providers:{type:Array,default:()=>[]},token:{type:String,default:``}},emits:[`update:visible`,`saved`],data(){return{form:{provider:``,api_key:``,base_url:``,label:``},saving:!1,testing:!1,testResult:null}},computed:{rules(){return{provider:[{required:!0,message:this.$t(`byok.field.provider`),trigger:`change`}],api_key:[{required:!this.credential,message:this.$t(`byok.field.apiKeyPlaceholder`),trigger:`blur`}]}},placeholderBaseUrl(){let e=this.form.provider;return this.providers.find(t=>t.id===e)?.default_base_url??this.$t(`byok.field.baseUrlPlaceholder`)},apiKeyPlaceholder(){return this.credential?this.credential.api_key_masked?`${this.credential.api_key_masked} · ${this.$t(`byok.field.apiKeyEditPlaceholder`)}`:this.$t(`byok.field.apiKeyEditPlaceholder`):this.$t(`byok.field.apiKeyPlaceholder`)},canTest(){return!this.token||!this.form.provider?!1:this.credential?!0:!!this.form.api_key.trim()}},watch:{credential:{immediate:!0,handler(e){e?this.form={provider:e.provider,api_key:``,base_url:e.base_url??``,label:e.label??``}:this.form={provider:this.providers?.[0]?.id??``,api_key:``,base_url:``,label:``},this.testResult=null}}},methods:{providerDescription(e){return this.$t(`byok.providerDesc.${e}`)},onClose(e){(e===!1||e===void 0)&&this.$emit(`update:visible`,!1)},async persist(e={}){let t=this.$refs.formRef;if(t)try{await t.validate()}catch{return null}if(!this.token)return null;this.saving=!0;try{let t=this.form.base_url.trim(),n=this.form.label.trim(),r=this.form.api_key.trim();if(this.credential){let i={};return r&&(i.api_key=r),t!==(this.credential.base_url??``)&&(i.base_url=t),n!==(this.credential.label??``)&&(i.label=n),Object.keys(i).length>0&&await ir.update(this.credential.id,i,{token:this.token}),e.silent||H.success(this.$t(`byok.message.saveSuccess`)),this.credential.id}if(!this.form.provider)return null;let i={provider:this.form.provider,api_key:r,...t?{base_url:t}:{},...n?{label:n}:{}},{data:a}=await ir.create(i,{token:this.token});return e.silent||H.success(this.$t(`byok.message.saveSuccess`)),a?.id??null}catch(e){let t=e?.response?.data?.message||(e instanceof Error?e.message:`unknown error`);return console.error(`Failed to save BYOK credential`,e),H.error(this.$t(`byok.message.saveFailed`)+`: `+t),null}finally{this.saving=!1}},async onSubmit(){await this.persist()&&this.$emit(`saved`)},async buildTestPayload(){let e=this.$refs.formRef;if(e)try{await e.validate()}catch{return null}let t=this.form.provider;if(!this.token||!t)return null;let n=this.form.api_key.trim();return!this.credential&&!n?null:{...this.credential?{id:this.credential.id}:{},provider:t,...n?{api_key:n}:{},base_url:this.form.base_url.trim()}},resolveTestEndpoint(){let e=this.providers.find(e=>e.id===this.form.provider);return`${(this.form.base_url||e?.default_base_url||``).replace(/\/+$/,``)}/models`},async onTest(){this.testResult=null;let e=await this.buildTestPayload();if(!e)return;let t=this.resolveTestEndpoint();this.testing=!0;try{let{data:n}=await ir.test(e,{token:this.token});this.testResult={ok:!!n?.ok,endpoint:n?.endpoint||t,status:n?.status,message:n?.message}}catch(e){let n=e?.response?.status,r=e?.response?.data?.message||(e instanceof Error?e.message:`unknown error`);this.testResult={ok:!1,endpoint:t,status:n,message:r}}finally{this.testing=!1}}}}),Ya={class:`provider-option`},Xa={class:`provider-name`},Za={class:`provider-desc`},Qa={key:0,class:`current-key`},$a={class:`hint`},eo={class:`test-result-title`},to={key:0},no={key:1},ro={class:`test-result-detail`};function io(t,n,r,i,s,l){let f=T(`el-option`),m=T(`el-select`),h=T(`el-form-item`),g=T(`el-input`),_=T(`el-form`),v=T(`success-icon`),y=T(`error-icon`),b=T(`el-button`),S=T(`el-dialog`);return L(),A(S,{"model-value":t.visible,title:t.credential?t.$t(`byok.title.editCredential`):t.$t(`byok.title.addCredential`),width:`560px`,"close-on-click-modal":!1,"onUpdate:modelValue":t.onClose},{footer:M(()=>[u(b,{onClick:n[4]||=e=>t.onClose(!1)},{default:M(()=>[o(c(t.$t(`byok.button.cancel`)),1)]),_:1}),u(b,{loading:t.testing,disabled:t.saving||!t.canTest,onClick:t.onTest},{default:M(()=>[o(c(t.$t(`byok.button.test`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]),u(b,{type:`primary`,loading:t.saving,onClick:t.onSubmit},{default:M(()=>[o(c(t.$t(`byok.button.save`)),1)]),_:1},8,[`loading`,`onClick`])]),default:M(()=>[u(_,{ref:`formRef`,model:t.form,rules:t.rules,"label-position":`top`},{default:M(()=>[u(h,{label:t.$t(`byok.field.provider`),prop:`provider`},{default:M(()=>[u(m,{modelValue:t.form.provider,"onUpdate:modelValue":n[0]||=e=>t.form.provider=e,placeholder:t.$t(`byok.field.provider`),disabled:!!t.credential,"popper-class":`byok-provider-select-popper`,class:`w-full`},{default:M(()=>[(L(!0),p(x,null,F(t.providers,n=>(L(),A(f,{key:n.id,label:n.label,value:n.id},{default:M(()=>[e(`div`,Ya,[e(`span`,Xa,c(n.label),1),e(`span`,Za,c(t.providerDescription(n.id)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.apiKey`),prop:`api_key`},{default:M(()=>[u(g,{modelValue:t.form.api_key,"onUpdate:modelValue":n[1]||=e=>t.form.api_key=e,type:`password`,autocomplete:`new-password`,"show-password":``,placeholder:t.apiKeyPlaceholder},null,8,[`modelValue`,`placeholder`]),t.credential?.api_key_masked?(L(),p(`p`,Qa,[e(`code`,null,c(t.credential.api_key_masked),1),e(`span`,null,c(t.$t(`byok.field.apiKeyEditPlaceholder`)),1)])):d(``,!0)]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.baseUrl`),prop:`base_url`},{default:M(()=>[u(g,{modelValue:t.form.base_url,"onUpdate:modelValue":n[2]||=e=>t.form.base_url=e,placeholder:t.placeholderBaseUrl},null,8,[`modelValue`,`placeholder`]),e(`p`,$a,c(t.$t(`byok.message.baseUrlHelp`)),1)]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.label`)},{default:M(()=>[u(g,{modelValue:t.form.label,"onUpdate:modelValue":n[3]||=e=>t.form.label=e,placeholder:t.$t(`byok.field.labelPlaceholder`),maxlength:`64`,"show-word-limit":``},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`,`rules`]),t.testResult?(L(),p(`div`,{key:0,class:a([`test-result`,t.testResult.ok?`ok`:`fail`])},[e(`p`,eo,[t.testResult.ok?(L(),p(`span`,to,[u(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`byok.test.success`)),1)])):(L(),p(`span`,no,[u(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`byok.test.failure`)),1)]))]),e(`dl`,ro,[e(`dt`,null,c(t.$t(`byok.test.endpoint`)),1),e(`dd`,null,[e(`code`,null,`GET `+c(t.testResult.endpoint),1)]),t.testResult.status===void 0?d(``,!0):(L(),p(x,{key:0},[e(`dt`,null,c(t.$t(`byok.test.status`)),1),e(`dd`,null,[e(`code`,null,c(t.testResult.status),1)])],64)),t.testResult.message?(L(),p(x,{key:1},[e(`dt`,null,c(t.$t(`byok.test.message`)),1),e(`dd`,null,c(t.testResult.message),1)],64)):d(``,!0)])],2)):d(``,!0)]),_:1},8,[`model-value`,`title`,`onUpdate:modelValue`])}var ao=z({name:`ByokSetting`,components:{AddIcon:Dt,ElButton:W,ElSwitch:ct,ElTable:je,ElTableColumn:Ae,ElTag:Fn,"byok-dialog":G(Ja,[[`render`,io],[`__scopeId`,`data-v-f1063685`]])},directives:{loading:Ai},data(){return{loading:!1,credentials:[],providers:[],togglingId:null,dialog:{visible:!1,credential:null}}},computed:{token(){return this.$store?.state?.chat?.credential?.token}},watch:{token:{immediate:!0,handler(e){e&&this.bootstrap()}}},async mounted(){if(!this.token)try{await this.$store.dispatch(`chat/getApplications`);let e=this.$store?.state?.chat?.applications;Array.isArray(e)&&e.length>0&&await this.$store.dispatch(`chat/setApplication`,e[0])}catch(e){console.error(`Failed to bootstrap chat application for BYOK`,e)}},methods:{async bootstrap(){await Promise.all([this.loadProviders(),this.loadCredentials()])},async loadProviders(){if(this.token)try{let{data:e}=await ir.providers({token:this.token});this.providers=e?.providers??[]}catch(e){console.error(`Failed to load BYOK providers`,e)}},async loadCredentials(){if(this.token){this.loading=!0;try{let{data:e}=await ir.list({token:this.token});this.credentials=e?.items??[]}catch(e){console.error(`Failed to load BYOK credentials`,e),H.error(this.$t(`byok.message.loadFailed`))}finally{this.loading=!1}}},onAdd(){this.dialog.credential=null,this.dialog.visible=!0},onEdit(e){this.dialog.credential=e,this.dialog.visible=!0},async onSaved(){this.dialog.visible=!1,this.dialog.credential=null,await this.loadCredentials()},async onToggleActive(e,t){if(this.token){this.togglingId=e.id;try{await ir.update(e.id,{is_active:t},{token:this.token}),await this.loadCredentials()}catch(e){console.error(`Failed to toggle BYOK credential`,e),H.error(this.$t(`byok.message.saveFailed`))}finally{this.togglingId=null}}},async onDelete(e){if(this.token){try{await xi.confirm(this.$t(`byok.message.deleteConfirm`,{provider:e.provider_label}),this.$t(`byok.title.deleteCredential`),{type:`warning`})}catch{return}try{await ir.delete(e.id,{token:this.token}),H.success(this.$t(`byok.message.deleteSuccess`)),await this.loadCredentials()}catch(e){console.error(`Failed to delete BYOK credential`,e),H.error(this.$t(`byok.message.saveFailed`))}}}}}),oo={class:`byok`},so={class:`byok-intro`},co={class:`byok-intro-tip`},lo={class:`byok-actions`},uo={key:0,class:`break-all`},fo={key:1,class:`text-[var(--el-text-color-placeholder)]`},po={class:`text-xs text-[var(--el-text-color-regular)]`},mo={key:0,class:`break-all text-xs`},ho={key:1,class:`text-[var(--el-text-color-placeholder)]`};function go(t,n,r,i,a,s){let l=T(`add-icon`),f=T(`el-button`),m=T(`el-tag`),h=T(`el-table-column`),g=T(`el-switch`),_=T(`el-table`),v=T(`byok-dialog`),y=P(`loading`);return L(),p(`div`,oo,[e(`div`,so,[e(`p`,co,c(t.$t(`byok.description.list`)),1)]),e(`div`,lo,[u(f,{type:`primary`,round:``,size:`default`,disabled:!t.token,onClick:t.onAdd},{default:M(()=>[u(l,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`byok.button.add`)),1)]),_:1},8,[`disabled`,`onClick`])]),O((L(),A(_,{data:t.credentials,stripe:``,class:`byok-table`,"table-layout":`fixed`,"empty-text":t.$t(`byok.message.empty`)},{default:M(()=>[u(h,{label:t.$t(`byok.field.provider`),width:`130px`},{default:M(e=>[u(m,{type:e.row.is_active?`success`:`info`,effect:`dark`,round:``},{default:M(()=>[o(c(e.row.provider_label),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.label`),"min-width":`120px`},{default:M(e=>[e.row.label?(L(),p(`span`,uo,c(e.row.label),1)):(L(),p(`span`,fo,`—`))]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.apiKey`),width:`140px`},{default:M(t=>[e(`code`,po,c(t.row.api_key_masked),1)]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.baseUrl`),"min-width":`160px`},{default:M(e=>[e.row.base_url?(L(),p(`span`,mo,c(e.row.base_url),1)):(L(),p(`span`,ho,c(t.$t(`byok.value.default`)),1))]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.isActive`),width:`80px`,"class-name":`text-center`},{default:M(e=>[u(g,{"model-value":e.row.is_active,loading:t.togglingId===e.row.id,onChange:n=>t.onToggleActive(e.row,!!n)},null,8,[`model-value`,`loading`,`onChange`])]),_:1},8,[`label`]),u(h,{label:t.$t(`common.field.operations`),width:`160px`,fixed:`right`},{default:M(e=>[u(f,{size:`small`,onClick:n=>t.onEdit(e.row)},{default:M(()=>[o(c(t.$t(`byok.button.edit`)),1)]),_:1},8,[`onClick`]),u(f,{size:`small`,type:`danger`,plain:``,onClick:n=>t.onDelete(e.row)},{default:M(()=>[o(c(t.$t(`byok.button.delete`)),1)]),_:1},8,[`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[y,t.loading]]),t.dialog.visible?(L(),A(v,{key:0,visible:t.dialog.visible,"onUpdate:visible":n[0]||=e=>t.dialog.visible=e,credential:t.dialog.credential,providers:t.providers,token:t.token,onSaved:t.onSaved},null,8,[`visible`,`credential`,`providers`,`token`,`onSaved`])):d(``,!0)])}var _o=G(ao,[[`render`,go],[`__scopeId`,`data-v-ebb61328`]]);function vo(e){let t=ti();return{Authorization:`Bearer ${e}`,"Content-Type":`application/json`,...t?{"x-site-origin":t}:{}}}var yo=`${un}/aichat2/memories`,bo=1500,xo=480*1e3,So=5;function Co(){let e=Error(`memory import canceled`);return e.name=`AbortError`,e}function wo(e,t){return t?.aborted?Promise.reject(Co()):new Promise((n,r)=>{let i=()=>{clearTimeout(a),r(Co())},a=setTimeout(()=>{t?.removeEventListener(`abort`,i),n()},e);t?.addEventListener(`abort`,i,{once:!0})})}function To(e){if(!e||typeof e!=`object`)throw Error(`invalid memory import status response`);let t=e.status;if(t!==`running`&&t!==`success`&&t!==`failed`)throw Error(`invalid memory import status response`);return e}var Eo=new class{async getProfile(e){let{data:t}=await Rt.post(yo,{action:`list`},{headers:vo(e)});return{items:t?.items??[],enabled:t?.enabled!==!1,importJob:t?.import_job?To(t.import_job):null}}async setEnabled(e,t){let{data:n}=await Rt.post(yo,{action:`set_enabled`,enabled:t},{headers:vo(e)});return n?.enabled!==!1}async importText(e,t,n={}){let r=Ci(),i=r;for(let a=0;a<2;a++)try{let{data:a}=await Rt.post(yo,{action:`import`,id:r,text:t},{headers:vo(e),signal:n.signal});i=a?.task_id||r;break}catch(e){if(n.signal?.aborted||a===1)throw e;await wo(500,n.signal)}return this.waitForImport(e,i,n)}async waitForImport(e,t,n={}){let r=Date.now()+xo,i=0;for(;Date.now()<r;){if(n.signal?.aborted)throw Co();let r;try{let{data:a}=await Rt.post(yo,{action:`import_status`,id:t},{headers:vo(e),signal:n.signal});r=To(a),i=0}catch(e){if(n.signal?.aborted)throw Co();if(i+=1,i>=So)throw e;await wo(Math.min(bo*2**i,1e4),n.signal);continue}if(r.status===`success`)return{processed:r.processed??0,rejected:r.rejected??0,total:r.total??0};if(r.status===`failed`)throw Error(r.error||`memory import failed`);await wo(bo,n.signal)}throw Error(`memory import timed out`)}async remove(e,t){let{data:n}=await Rt.post(yo,{action:`delete`,id:t},{headers:vo(e)});return!!n?.success}async clear(e){let{data:t}=await Rt.post(yo,{action:`clear`},{headers:vo(e)});return!!t?.success}},Do=z({name:`MemorySetting`,components:{CopyIcon:_t,ElButton:W,ElDialog:U,ElEmpty:et,ElInput:Qn,ElSwitch:ct,IdeaIcon:wt,SuccessIcon:ht},directives:{loading:Ai},data(){return{loading:!1,clearing:!1,removingId:null,memoryReady:!1,updatingMemory:!1,importVisible:!1,importing:!1,importText:``,importController:null,entries:[],importPromptCopied:!1,importPromptCopiedTimer:void 0}},computed:{memoryEnabled(){return this.$store?.state?.chat?.memoryEnabled!==!1},importPrompt(){return this.$t(`common.settings.memoryImportPrompt`)},token(){return this.$store?.state?.chat?.credential?.token}},watch:{token:{handler(e){e?this.fetch():this.memoryReady=!1}}},async created(){await nr(`chat`),this.token&&await this.fetch()},beforeUnmount(){this.importController?.abort(),this.importPromptCopiedTimer!==void 0&&window.clearTimeout(this.importPromptCopiedTimer)},methods:{openImport(){this.importPromptCopied=!1,this.importPromptCopiedTimer!==void 0&&(window.clearTimeout(this.importPromptCopiedTimer),this.importPromptCopiedTimer=void 0),this.importText=``,this.importVisible=!0},closeImport(){this.importing||(this.importVisible=!1,this.importPromptCopied=!1,this.importPromptCopiedTimer!==void 0&&(window.clearTimeout(this.importPromptCopiedTimer),this.importPromptCopiedTimer=void 0),this.importController?.abort(),this.importController=null)},async copyImportPrompt(){try{if(await fi(this.importPrompt)){this.importPromptCopied=!0,this.importPromptCopiedTimer!==void 0&&window.clearTimeout(this.importPromptCopiedTimer),this.importPromptCopiedTimer=window.setTimeout(()=>{this.importPromptCopied=!1,this.importPromptCopiedTimer=void 0},3e3);return}}catch(e){console.error(`failed to copy memory import prompt`,e)}H.error(this.$t(`common.message.copyFailed`))},async onImport(){if(!(!this.token||!this.importText.trim()||this.importing)){this.importing=!0,this.importController?.abort(),this.importController=new AbortController;try{let e=await Eo.importText(this.token,this.importText.trim(),{signal:this.importController.signal});this.importVisible=!1,this.importText=``,await this.fetch(),e.rejected>0?H.warning(this.$t(`common.settings.memoryImportPartial`,{processed:e.processed,rejected:e.rejected})):H.success(this.$t(`common.settings.memoryImportSuccess`,{count:e.processed}))}catch(e){console.error(`failed to import memories`,e);let t=e?.response?.status;if(e?.name===`AbortError`)return;t===409?H.warning(this.$t(`common.settings.memoryImportInProgress`)):t===400?H.error(this.$t(`common.settings.memoryImportInvalid`)):H.error(this.$t(`common.settings.memoryError`))}finally{this.importing=!1,this.importController=null}}},async resumeImport(e){if(!(!this.token||this.importing)){this.importing=!0,this.importVisible=!0,this.importController=new AbortController;try{let t=await Eo.waitForImport(this.token,e,{signal:this.importController.signal});this.importVisible=!1,await this.fetch(),H.success(this.$t(`common.settings.memoryImportSuccess`,{count:t.processed}))}catch(e){e?.name!==`AbortError`&&(console.error(`failed to resume memory import`,e),H.error(this.$t(`common.settings.memoryError`)))}finally{this.importing=!1,this.importController=null}}},async onMemoryEnabledChange(e){if(await nr(`chat`),!this.token)return;let t=e===!0;if(t!==this.memoryEnabled){this.updatingMemory=!0;try{let e=await Eo.setEnabled(this.token,t);this.$store.commit(`chat/setMemoryEnabled`,e)}catch(e){console.error(`failed to update memory preference`,e),H.error(this.$t(`common.settings.memoryError`))}finally{this.updatingMemory=!1}}},async fetch(){if(this.token){this.memoryReady=!1,this.loading=!0;try{let e=await Eo.getProfile(this.token);this.entries=e.items,this.$store.commit(`chat/setMemoryEnabled`,e.enabled),this.memoryReady=!0,e.importJob?.status===`running`&&!this.importing&&this.resumeImport(e.importJob.id)}catch(e){console.error(`failed to load memories`,e)}finally{this.loading=!1}}},async onRemove(e){if(this.token){this.removingId=e.id;try{await Eo.remove(this.token,e.id),this.entries=this.entries.filter(t=>t.id!==e.id)}catch(e){console.error(`failed to forget memory`,e),H.error(this.$t(`common.settings.memoryError`))}finally{this.removingId=null}}},async onClearAll(){if(this.token){try{await xi.confirm(this.$t(`common.settings.memoryClearConfirm`),this.$t(`common.settings.memoryClearAll`),{type:`warning`,confirmButtonText:this.$t(`common.settings.memoryClearAll`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.clearing=!0;try{await Eo.clear(this.token),this.entries=[]}catch(e){console.error(`failed to clear memories`,e),H.error(this.$t(`common.settings.memoryError`))}finally{this.clearing=!1}}}}}),Oo={class:`settings-list memory-setting`},ko={class:`hint muted`},Ao={class:`memory-toggle-row`},jo={class:`toggle-title`},Mo={class:`hint muted`},No={key:0,class:`hint muted`},Po={class:`section-head`},Fo={class:`section-actions`},Io={key:1,class:`rows`},Lo={class:`memory-content`},Ro={class:`import-step`},zo={class:`import-step-title`},Bo={class:`import-step`},Vo={class:`import-step-title`};function Ho(t,n,r,i,a,s){let l=T(`el-switch`),f=T(`el-button`),m=T(`el-empty`),h=T(`idea-icon`),g=T(`el-input`),_=T(`success-icon`),v=T(`copy-icon`),y=T(`el-dialog`),b=P(`loading`);return L(),p(`div`,Oo,[e(`p`,ko,c(t.$t(`common.settings.memoryIntro`)),1),e(`div`,Ao,[e(`div`,null,[e(`div`,jo,c(t.$t(`common.settings.memoryEnabled`)),1),e(`div`,Mo,c(t.$t(`common.settings.memoryEnabledHint`)),1)]),u(l,{"model-value":t.memoryEnabled,disabled:!t.memoryReady||t.updatingMemory,loading:t.updatingMemory,onChange:t.onMemoryEnabledChange},null,8,[`model-value`,`disabled`,`loading`,`onChange`])]),t.token?(L(),p(x,{key:1},[e(`div`,Po,[e(`h3`,null,c(t.$t(`common.settings.memoryStored`)),1),e(`div`,Fo,[u(f,{size:`small`,type:`primary`,disabled:!t.memoryEnabled,onClick:t.openImport},{default:M(()=>[o(c(t.$t(`common.settings.memoryImport`)),1)]),_:1},8,[`disabled`,`onClick`]),t.entries.length?(L(),A(f,{key:0,size:`small`,type:`danger`,loading:t.clearing,onClick:t.onClearAll},{default:M(()=>[o(c(t.$t(`common.settings.memoryClearAll`)),1)]),_:1},8,[`loading`,`onClick`])):d(``,!0)])]),O((L(),p(`div`,null,[!t.loading&&!t.entries.length?(L(),A(m,{key:0,description:t.$t(`common.settings.memoryEmpty`)},null,8,[`description`])):(L(),p(`ul`,Io,[(L(!0),p(x,null,F(t.entries,n=>(L(),p(`li`,{key:n.id,class:`row memory-row`},[u(h,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,Lo,c(n.content),1),u(f,{size:`small`,type:`danger`,loading:t.removingId===n.id,onClick:e=>t.onRemove(n)},{default:M(()=>[o(c(t.$t(`common.settings.memoryForget`)),1)]),_:1},8,[`loading`,`onClick`])]))),128))]))])),[[b,t.loading]])],64)):(L(),p(`p`,No,c(t.$t(`common.settings.memoryNeedsChat`)),1)),u(y,{modelValue:t.importVisible,"onUpdate:modelValue":n[1]||=e=>t.importVisible=e,title:t.$t(`common.settings.memoryImportTitle`),width:`min(640px, 92vw)`,"append-to-body":``,"close-on-click-modal":!t.importing,"close-on-press-escape":!t.importing,"show-close":!t.importing},{footer:M(()=>[u(f,{disabled:t.importing,onClick:t.closeImport},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),u(f,{type:`primary`,disabled:!t.importText.trim(),loading:t.importing,onClick:t.onImport},{default:M(()=>[o(c(t.$t(`common.settings.memoryImportSubmit`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])]),default:M(()=>[e(`div`,Ro,[e(`div`,zo,c(t.$t(`common.settings.memoryImportExportStep`)),1),u(g,{"model-value":t.importPrompt,type:`textarea`,rows:7,readonly:``,resize:`none`},null,8,[`model-value`]),u(f,{size:`small`,"aria-label":t.importPromptCopied?t.$t(`common.settings.memoryImportCopied`):t.$t(`common.settings.memoryImportCopy`),onClick:t.copyImportPrompt},{default:M(()=>[t.importPromptCopied?(L(),A(_,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(L(),A(v,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),o(` `+c(t.importPromptCopied?t.$t(`common.settings.memoryImportCopied`):t.$t(`common.settings.memoryImportCopy`)),1)]),_:1},8,[`aria-label`,`onClick`])]),e(`div`,Bo,[e(`div`,Vo,c(t.$t(`common.settings.memoryImportPasteStep`)),1),u(g,{modelValue:t.importText,"onUpdate:modelValue":n[0]||=e=>t.importText=e,type:`textarea`,rows:9,maxlength:5e4,"show-word-limit":``,placeholder:t.$t(`common.settings.memoryImportPlaceholder`)},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`modelValue`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`])])}var Uo=G(Do,[[`render`,Ho],[`__scopeId`,`data-v-fc1b41fb`]]),Wo=z({name:`EditText`,components:{ElDialog:U,ElInput:Qn,ElButton:W,ElIcon:B,Edit:Et},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0}},emits:[`confirm`,`cancel`],data(){return{editing:!1,value:this.modelValue}},methods:{onCancel(){this.editing=!1},onConfirm(){this.$emit(`confirm`,this.value),this.editing=!1}}}),Go={class:`edit-body`},Ko={class:`dialog-footer`},qo=[`aria-label`,`title`];function Jo(t,r,i,a,s,l){let d=T(`el-input`),f=T(`el-button`),m=T(`el-dialog`),h=T(`edit`),g=T(`el-icon`);return L(),p(x,null,[u(m,{modelValue:t.editing,"onUpdate:modelValue":r[1]||=e=>t.editing=e,title:t.title,width:`400px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,Ko,[u(f,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(f,{round:``,type:`primary`,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])])]),default:M(()=>[e(`div`,Go,[u(d,{modelValue:t.value,"onUpdate:modelValue":r[0]||=e=>t.value=e,placeholder:t.placeholder},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[2]||=e=>t.editing=!0,onKeydown:[r[3]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[4]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(g,{class:`icon`},{default:M(()=>[u(h,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,qo)],64)}var Yo=G(Wo,[[`render`,Jo]]);function Xo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function K(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Xo(Object(n),!0).forEach((function(t){Zo(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xo(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Zo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Qo(e,t){if(e==null)return{};var n,r,i=function(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function $o(e){return function(e){if(Array.isArray(e))return es(e)}(e)||function(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}(e)||function(e,t){if(e){if(typeof e==`string`)return es(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return es(e,t)}}(e)||function(){throw TypeError(`Invalid attempt to spread non-iterable instance.
3
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function es(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var ts,ns,rs,q=(ts=function(e){(function(){var t={}.hasOwnProperty;function n(){for(var e=[],r=0;r<arguments.length;r++){var i=arguments[r];if(i){var a=typeof i;if(a===`string`||a===`number`)e.push(i);else if(Array.isArray(i)){if(i.length){var o=n.apply(null,i);o&&e.push(o)}}else if(a===`object`)if(i.toString===Object.prototype.toString)for(var s in i)t.call(i,s)&&i[s]&&e.push(s);else e.push(i.toString())}}return e.join(` `)}e.exports?(n.default=n,e.exports=n):window.classNames=n})()},ts(rs={path:ns,exports:{},require:function(e,t){return function(){throw Error(`Dynamic requires are not currently supported by @rollup/plugin-commonjs`)}(t==null&&rs.path)}},rs.exports),rs.exports),is=function(e){return function(t,n){if(!t)return e;var r;typeof t==`string`?r=t:n=t;var i=e;return r&&(i+=`__`+r),i+(n?Object.keys(n).reduce((function(e,t){var r=n[t];return r&&(e+=` `+(typeof r==`boolean`?i+`--`+t:i+`--`+t+`_`+r)),e}),``):``)}};function as(e,t,n){var r,i,a,o,s;function c(){var l=Date.now()-o;l<t&&l>=0?r=setTimeout(c,t-l):(r=null,n||(s=e.apply(a,i),a=i=null))}t??=100;var l=function(){a=this,i=arguments,o=Date.now();var l=n&&!r;return r||=setTimeout(c,t),l&&(s=e.apply(a,i),a=i=null),s};return l.clear=function(){r&&=(clearTimeout(r),null)},l.flush=function(){r&&=(s=e.apply(a,i),a=i=null,clearTimeout(r),null)},l}as.debounce=as;var os=as,J=function(){return J=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},J.apply(this,arguments)};function ss(e,t){var n,r;return e&&t?(n=``+e+t[0].toUpperCase()+t.slice(1),r=e+`-`+t):(n=e||t,r=e||t),{name:n,classname:r}}function cs(e){return/^blob:/.test(e)}function ls(e){return cs(e)||function(e){return/^data:/.test(e)}(e)}function us(e){return!!(e&&e.constructor&&e.call&&e.apply)}function Y(e){return e===void 0}function ds(e){return typeof e==`object`&&!!e}function fs(e,t,n){var r={};return ds(e)?(Object.keys(t).forEach((function(i){Y(e[i])?r[i]=t[i]:ds(t[i])?ds(e[i])?r[i]=fs(e[i],t[i],n[i]):r[i]=e[i]?t[i]:n[i]:!0===t[i]||!1===t[i]?r[i]=!!e[i]:r[i]=e[i]})),r):e?t:n}function ps(e){var t=Number(e);return Number.isNaN(t)?e:t}function ms(e){return typeof(e==`number`||function(e){return typeof e==`object`&&!!e}(e)&&toString.call(e)==`[object Number]`)&&!hs(e)}function hs(e){return e!=e}function gs(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}var _s=function(e,t){e===void 0&&(e={}),t===void 0&&(t={}),this.type=`manipulateImage`,this.move=e,this.scale=t},vs=function(e,t){t===void 0&&(t={}),this.type=`resize`,this.directions=e,this.params=t},ys=function(e){this.type=`move`,this.directions=e},bs=function(){function e(e,t,n,r,i){this.type=`drag`,this.nativeEvent=e,this.position=n,this.previousPosition=r,this.element=t,this.anchor=i}return e.prototype.shift=function(){var e=this,t=e.element,n=e.anchor,r=e.position;if(t){var i=t.getBoundingClientRect(),a=i.left,o=i.top;return{left:r.left-a-n.left,top:r.top-o-n.top}}return{left:0,top:0}},e}(),xs={name:`DraggableElement`,props:{classname:{type:String}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},mounted:function(){if(!this.$refs.draggable)throw Error(`You should add ref "draggable" to your root element to use draggable mixin`);this.touches=[],this.hovered=!1},methods:{onMouseOver:function(){this.hovered||(this.hovered=!0,this.$emit(`enter`))},onMouseLeave:function(){this.hovered&&!this.touches.length&&(this.hovered=!1,this.$emit(`leave`))},onTouchStart:function(e){e.cancelable&&!this.disabled&&e.touches.length===1&&(this.touches=$o(e.touches),this.hovered||=(this.$emit(`enter`),!0),e.touches.length&&this.initAnchor(this.touches.reduce((function(t,n){return{clientX:t.clientX+n.clientX/e.touches.length,clientY:t.clientY+n.clientY/e.touches.length}}),{clientX:0,clientY:0})),e.preventDefault&&e.preventDefault(),e.stopPropagation())},onTouchEnd:function(){this.processEnd()},onTouchMove:function(e){this.touches.length&&(this.processMove(e,e.touches),e.preventDefault&&e.preventDefault(),e.stopPropagation&&e.stopPropagation())},onMouseDown:function(e){if(!this.disabled){var t={fake:!0,clientX:e.clientX,clientY:e.clientY};this.touches=[t],this.initAnchor(t),e.stopPropagation()}},onMouseMove:function(e){this.touches.length&&(this.processMove(e,[{fake:!0,clientX:e.clientX,clientY:e.clientY}]),e.preventDefault&&e.preventDefault())},onMouseUp:function(){this.processEnd()},initAnchor:function(e){var t=this.$refs.draggable.getBoundingClientRect(),n=t.left,r=t.right,i=t.bottom,a=t.top;this.anchor={left:e.clientX-n,top:e.clientY-a,bottom:i-e.clientY,right:r-e.clientX}},processMove:function(e,t){var n=$o(t);if(this.touches.length){if(this.touches.length===1&&n.length===1){var r=this.$refs.draggable;this.$emit(`drag`,new bs(e,r,{left:n[0].clientX,top:n[0].clientY},{left:this.touches[0].clientX,top:this.touches[0].clientY},this.anchor))}this.touches=n}},processEnd:function(){this.touches.length&&this.$emit(`drag-end`),this.hovered&&=(this.$emit(`leave`),!1),this.touches=[]}},emits:[`drag`,`drag-end`,`leave`,`enter`]};xs.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`draggable`,class:n.classname,onTouchstart:t[1]||=function(){return a.onTouchStart&&a.onTouchStart.apply(a,arguments)},onMousedown:t[2]||=function(){return a.onMouseDown&&a.onMouseDown.apply(a,arguments)},onMouseover:t[3]||=function(){return a.onMouseOver&&a.onMouseOver.apply(a,arguments)},onMouseleave:t[4]||=function(){return a.onMouseLeave&&a.onMouseLeave.apply(a,arguments)}},[k(e.$slots,`default`)],34)};var Ss=is(`vue-handler-wrapper`),Cs={name:`HandlerWrapper`,components:{DraggableElement:xs},props:{horizontalPosition:{type:String},verticalPosition:{type:String},disabled:{type:Boolean,default:!1}},computed:{classes:function(){var e;if(this.horizontalPosition||this.verticalPosition){var t,n=ss(this.horizontalPosition,this.verticalPosition);e=Ss((Zo(t={},n.classname,!0),Zo(t,`disabled`,this.disabled),t))}else e=Ss({disabled:this.disabled});return{root:e,draggable:Ss(`draggable`)}}},emits:[`leave`,`enter`,`drag`,`drag-end`]};Cs.render=function(e,t,n,r,i,a){var o=T(`DraggableElement`);return L(),A(`div`,{class:a.classes.root},[u(o,{class:a.classes.draggable,onDrag:t[1]||=function(t){return e.$emit(`drag`,t)},onDragEnd:t[2]||=function(t){return e.$emit(`drag-end`)},onLeave:t[3]||=function(t){return e.$emit(`leave`)},onEnter:t[4]||=function(t){return e.$emit(`enter`)}},{default:M((function(){return[k(e.$slots,`default`)]})),_:3},8,[`class`])],2)};var ws=is(`vue-line-wrapper`),Ts={name:`LineWrapper`,components:{DraggableElement:xs},props:{position:{type:String,required:!0},disabled:{type:Boolean,default:!1}},computed:{classname:function(){var e;return ws((Zo(e={},this.position,!0),Zo(e,`disabled`,this.disabled),e))}},emits:[`leave`,`enter`,`drag`,`drag-end`]};Ts.render=function(e,t,n,r,i,a){var o=T(`DraggableElement`);return L(),A(o,{class:a.classname,onDrag:t[1]||=function(t){return e.$emit(`drag`,t)},onDragEnd:t[2]||=function(t){return e.$emit(`drag-end`)},onLeave:t[3]||=function(t){return e.$emit(`leave`)},onEnter:t[4]||=function(t){return e.$emit(`enter`)}},{default:M((function(){return[k(e.$slots,`default`)]})),_:3},8,[`class`])};var Es=[`left`,`right`,`top`,`bottom`],Ds=[`left`,`right`],Os=[`top`,`bottom`],ks=[`left`,`top`],As=[`fill-area`,`fit-area`,`stencil`,`none`],js={left:0,top:0,width:0,height:0};function Ms(e,t,n){return!(n||=[`width`,`height`,`left`,`top`]).some((function(n){return e[n]!==t[n]}))}function Ns(e){return{left:e.left,top:e.top,right:e.left+e.width,bottom:e.top+e.height}}function Ps(e,t){return{left:e.left-t.left,top:e.top-t.top}}function X(e){return{left:e.left+e.width/2,top:e.top+e.height/2}}function Fs(e,t){var n={left:0,top:0,right:0,bottom:0};return Es.forEach((function(r){var i=t[r],a=Ns(e)[r];n[r]=i!==void 0&&a!==void 0?r===`left`||r===`top`?Math.max(0,i-a):Math.max(0,a-i):0})),n}function Is(e,t){return{left:e.left-t.left,top:e.top-t.top,width:e.width+t.left+t.right,height:e.height+t.top+t.bottom}}function Ls(e){return{left:-e.left,top:-e.top}}function Z(e,t){return J(J({},e),{left:e.left+t.left,top:e.top+t.top})}function Rs(e,t,n,r){if(t!==1){if(n){var i=X(e);return{width:e.width*t,height:e.height*t,left:e.left+e.width*(1-t)/2+(n.left-i.left)*(r||1-t),top:e.top+e.height*(1-t)/2+(n.top-i.top)*(r||1-t)}}return{width:e.width*t,height:e.height*t,left:e.left+e.width*(1-t)/2,top:e.top+e.height*(1-t)/2}}return e}function Q(e){return e.width/e.height}function zs(e,t){return Math.min(t.right!==void 0&&t.left!==void 0?(t.right-t.left)/e.width:1/0,t.bottom!==void 0&&t.top!==void 0?(t.bottom-t.top)/e.height:1/0)}function Bs(e,t){var n={left:0,top:0},r=Fs(e,t);return r.left&&r.left>0?n.left=r.left:r.right&&r.right>0&&(n.left=-r.right),r.top&&r.top>0?n.top=r.top:r.bottom&&r.bottom>0&&(n.top=-r.bottom),n}function Vs(e,t){var n;return t.minimum&&e<t.minimum?n=t.minimum:t.maximum&&e>t.maximum&&(n=t.maximum),n}function Hs(e,t){var n=Q(e),r=Q(t);return t.width<1/0&&t.height<1/0?n>r?{width:t.width,height:t.width/n}:{width:t.height*n,height:t.height}:t.width<1/0?{width:t.width,height:t.width/n}:t.height<1/0?{width:t.height*n,height:t.height}:e}function Us(e,t){var n=t*Math.PI/180;return{width:Math.abs(e.width*Math.cos(n))+Math.abs(e.height*Math.sin(n)),height:Math.abs(e.width*Math.sin(n))+Math.abs(e.height*Math.cos(n))}}function Ws(e,t){var n=t*Math.PI/180;return{left:e.left*Math.cos(n)-e.top*Math.sin(n),top:e.left*Math.sin(n)+e.top*Math.cos(n)}}function Gs(e,t){var n=Fs($(e,t),t);return n.left+n.right+n.top+n.bottom?n.left+n.right>n.top+n.bottom?Math.min((e.width+n.left+n.right)/e.width,zs(e,t)):Math.min((e.height+n.top+n.bottom)/e.height,zs(e,t)):1}function $(e,t,n){n===void 0&&(n=!1);var r=Bs(e,t);return Z(e,n?Ls(r):r)}function Ks(e){return{width:e.right!==void 0&&e.left!==void 0?e.right-e.left:1/0,height:e.bottom!==void 0&&e.top!==void 0?e.bottom-e.top:1/0}}function qs(e,t){return J(J({},e),{minWidth:Math.min(t.width,e.minWidth),minHeight:Math.min(t.height,e.minHeight),maxWidth:Math.min(t.width,e.maxWidth),maxHeight:Math.min(t.height,e.maxHeight)})}function Js(e,t,n){n===void 0&&(n=!0);var r={};return Es.forEach((function(i){var a=e[i],o=t[i];a!==void 0&&o!==void 0?r[i]=i===`left`||i===`top`?n?Math.max(a,o):Math.min(a,o):n?Math.min(a,o):Math.max(a,o):o===void 0?a!==void 0&&(r[i]=a):r[i]=o})),r}function Ys(e,t){return Js(e,t,!0)}function Xs(e){var t=e.size,n=e.aspectRatio,r=e.ignoreMinimum,i=e.sizeRestrictions;return!!((t.correctRatio||Q(t)>=n.minimum&&Q(t)<=n.maximum)&&t.height<=i.maxHeight&&t.width<=i.maxWidth&&t.width&&t.height&&(r||t.height>=i.minHeight&&t.width>=i.minWidth))}function Zs(e,t){return(e.width-t.width)**2+(e.height-t.height)**2}function Qs(e){var t=e.width,n=e.height,r=e.sizeRestrictions,i={minimum:e.aspectRatio&&e.aspectRatio.minimum||0,maximum:e.aspectRatio&&e.aspectRatio.maximum||1/0},a={width:Math.max(r.minWidth,Math.min(r.maxWidth,t)),height:Math.max(r.minHeight,Math.min(r.maxHeight,n))};function o(e,a){return a===void 0&&(a=!1),e.reduce((function(e,o){return Xs({size:o,aspectRatio:i,sizeRestrictions:r,ignoreMinimum:a})&&(!e||Zs(o,{width:t,height:n})<Zs(e,{width:t,height:n}))?o:e}),null)}var s=[];i&&[i.minimum,i.maximum].forEach((function(e){e&&s.push({width:a.width,height:a.width/e,correctRatio:!0},{width:a.height*e,height:a.height,correctRatio:!0})})),Xs({size:a,aspectRatio:i,sizeRestrictions:r})&&s.push(a);var c=o(s)||o(s,!0);return c&&{width:c.width,height:c.height}}function $s(e){var t=e.event,n=e.coordinates,r=e.positionRestrictions,i=r===void 0?{}:r,a=Z(n,t.directions);return Z(a,Bs(a,i))}function ec(e){var t=e.coordinates,n=e.transform,r=e.imageSize,i=e.sizeRestrictions,a=e.positionRestrictions,o=e.aspectRatio,s=e.visibleArea,c=function(e,t){return $s({coordinates:e,positionRestrictions:a,event:new ys({left:t.left-e.left,top:t.top-e.top})})},l=J({},t);return(Array.isArray(n)?n:[n]).forEach((function(e){var t={};Y((t=typeof e==`function`?e({coordinates:l,imageSize:r,visibleArea:s}):e).width)&&Y(t.height)||(l=function(e,t){return c(J(J(J({},e),Qs({width:t.width,height:t.height,sizeRestrictions:i,aspectRatio:o})),{left:0,top:0}),{left:e.left,top:e.top})}(l,J(J({},l),t))),Y(t.left)&&Y(t.top)||(l=c(l,J(J({},l),t)))})),l}function tc(e){e.event;var t=e.getAreaRestrictions,n=e.boundaries,r=e.coordinates,i=e.visibleArea;e.aspectRatio;var a=e.stencilSize,o=e.sizeRestrictions,s=e.positionRestrictions;e.stencilReference;var c,l,u,d=J({},r),f=J({},i),p=J({},a);c=Q(p),l=Q(d),u===void 0&&(u=.001),(c===0||l===0?Math.abs(l-c)<u:Math.abs(l/c)<1+u&&Math.abs(l/c)>1-u)||(d=J(J({},d),Qs({sizeRestrictions:o,width:d.width,height:d.height,aspectRatio:{minimum:Q(p),maximum:Q(p)}})));var m=Gs(f=Rs(f,d.width*n.width/(f.width*p.width)),t({visibleArea:f,type:`resize`}));return m!==1&&(f=Rs(f,m),d=Rs(d,m)),f=$(f=Z(f,Ps(X(d),X(f))),t({visibleArea:f,type:`move`})),{coordinates:d=$(d,Ys(Ns(f),s)),visibleArea:f}}function nc(e){var t=e.event,n=e.getAreaRestrictions,r=e.boundaries,i=e.coordinates,a=e.visibleArea;e.aspectRatio,e.stencilSize,e.sizeRestrictions;var o=e.positionRestrictions;e.stencilReference;var s=J({},i),c=J({},a);if(i&&a&&t.type!==`manipulateImage`){var l={width:0,height:0};c.width,r.width,Q(r)>Q(s)?(l.height=.8*r.height,l.width=l.height*Q(s)):(l.width=.8*r.width,l.height=l.width*Q(s));var u=Gs(c=Rs(c,s.width*r.width/(c.width*l.width)),n({visibleArea:c,type:`resize`}));c=Rs(c,u),u!==1&&(l.height/=u,l.width/=u),c=$(c=Z(c,Ps(X(s),X(c))),n({visibleArea:c,type:`move`})),s=$(s,Ys(Ns(c),o))}return{coordinates:s,visibleArea:c}}function rc(e){var t=e.event,n=e.coordinates,r=e.visibleArea,i=e.getAreaRestrictions,a=J({},r),o=J({},n);if(t.type===`setCoordinates`){var s=Math.max(0,o.width-a.width),c=Math.max(0,o.height-a.height);s>c?a=Rs(a,Math.min(o.width/a.width,zs(a,i({visibleArea:a,type:`resize`})))):c>s&&(a=Rs(a,Math.min(o.height/a.height,zs(a,i({visibleArea:a,type:`resize`}))))),a=$(a=Z(a,Ls(Bs(o,Ns(a)))),i({visibleArea:a,type:`move`}))}return{visibleArea:a,coordinates:o}}function ic(e){var t=e.imageSize,n=e.visibleArea,r=e.coordinates,i=n||t;return{left:(n?n.left:0)+i.width/2-r.width/2,top:(n?n.top:0)+i.height/2-r.height/2}}function ac(e){var t=e.imageSize,n=e.visibleArea,r=e.aspectRatio,i=e.sizeRestrictions,a=n||t,o=Math.min(r.maximum||1/0,Math.max(r.minimum||0,Q(a))),s=a.width<a.height?{width:.8*a.width,height:.8*a.width/o}:{height:.8*a.height,width:.8*a.height*o};return Qs(J(J({},s),{aspectRatio:r,sizeRestrictions:i}))}function oc(e){var t,n,r=e.imageSize,i=e.visibleArea,a=e.boundaries,o=e.aspectRatio,s=e.sizeRestrictions,c=e.stencilSize,l=i||r;return Q(l)>Q(a)?n=(t=c.height*l.height/a.height)*Q(c):t=(n=c.width*l.width/a.width)/Q(c),Qs({width:n,height:t,aspectRatio:o,sizeRestrictions:s})}function sc(e){var t=e.getAreaRestrictions,n=e.coordinates,r=e.imageSize,i=Q(e.boundaries);if(n){var a={height:Math.max(n.height,r.height),width:Math.max(n.width,r.width)},o=Hs({width:Q(a)>i?a.width:a.height*i,height:Q(a)>i?a.width/i:a.height},Ks(t())),s={left:n.left+n.width/2-o.width/2,top:n.top+n.height/2-o.height/2,width:o.width,height:o.height},c=Fs(n,Ns(J({left:0,top:0},r))),l={};return!c.left&&!c.right&&s.width<=r.width&&(l.left=0,l.right=r.width),!c.top&&!c.bottom&&s.height<=r.height&&(l.top=0,l.bottom=r.height),$(s,l)}var u=Q(r);return o={height:u>i?r.height:r.width/i,width:u>i?r.height*i:r.width},{left:r.width/2-o.width/2,top:r.height/2-o.height/2,width:o.width,height:o.height}}function cc(e,t){return Js(e,Ns(t))}function lc(e){var t=e.event,n=e.coordinates,r=e.visibleArea,i=e.sizeRestrictions,a=e.getAreaRestrictions,o=e.positionRestrictions,s=e.adjustStencil,c=t.scale,l=t.move,u=J({},r),d=J({},n),f=1,p=1,m=c.factor&&Math.abs(c.factor-1)>.001;u=Z(u,{left:l.left||0,top:l.top||0});var h={stencil:{minimum:Math.max(i.minWidth?i.minWidth/d.width:0,i.minHeight?i.minHeight/d.height:0),maximum:Math.min(i.maxWidth?i.maxWidth/d.width:1/0,i.maxHeight?i.maxHeight/d.height:1/0,zs(d,o))},area:{maximum:zs(u,a({visibleArea:u,type:`resize`}))}};c.factor&&m&&(c.factor<1?(p=Math.max(c.factor,h.stencil.minimum))>1&&(p=1):c.factor>1&&(p=Math.min(c.factor,Math.min(h.area.maximum,h.stencil.maximum)))<1&&(p=1)),p&&(u=Rs(u,p,c.center));var g=n.left-r.left,_=r.width+r.left-(n.width+n.left),v=n.top-r.top,y=r.height+r.top-(n.height+n.top);return u=$(u=Z(u,Bs(u,{left:o.left===void 0?void 0:o.left-g*p,top:o.top===void 0?void 0:o.top-v*p,bottom:o.bottom===void 0?void 0:o.bottom+y*p,right:o.right===void 0?void 0:o.right+_*p})),a({visibleArea:u,type:`move`})),d.width*=p,d.height*=p,d.left=u.left+g*p,d.top=u.top+v*p,d=$(d,Ys(Ns(u),o)),c.factor&&m&&s&&(c.factor>1?f=Math.min(h.area.maximum,c.factor)/p:c.factor<1&&(f=Math.max(d.height/u.height,d.width/u.width,c.factor/p)),f!==1&&(u=Z(u=$(u=Rs(u,f,c.factor>1?c.center:X(d)),a({visibleArea:u,type:`move`})),Ls(Bs(d,Ns(u)))))),{coordinates:d,visibleArea:u}}function uc(e){var t=e.aspectRatio,n=e.getAreaRestrictions,r=e.coordinates,i=e.visibleArea,a=e.sizeRestrictions,o=e.positionRestrictions,s=e.imageSize,c=e.previousImageSize,l=e.angle,u=J({},r),d=J({},i),f=Ws(X(J({left:0,top:0},c)),l);return(u=J(J({},Qs({sizeRestrictions:a,aspectRatio:t,width:u.width,height:u.height})),Ws(X(u),l))).left-=f.left-s.width/2+u.width/2,u.top-=f.top-s.height/2+u.height/2,d=Rs(d,Gs(d,n({visibleArea:d,type:`resize`}))),{coordinates:u=$(u,o),visibleArea:d=$(d=Z(d,Ps(X(u),X(r))),n({visibleArea:d,type:`move`}))}}function dc(e){var t=e.flip,n=e.previousFlip,r=e.rotate;e.aspectRatio;var i=e.getAreaRestrictions,a=e.coordinates,o=e.visibleArea,s=e.imageSize,c=J({},a),l=J({},o),u=n.horizontal!==t.horizontal,d=n.vertical!==t.vertical;if(u||d){var f=Ws({left:s.width/2,top:s.height/2},-r),p=Ws(X(c),-r),m=Ws({left:u?f.left-(p.left-f.left):p.left,top:d?f.top-(p.top-f.top):p.top},r);c=Z(c,Ps(m,X(c))),p=Ws(X(l),-r),l=$(l=Z(l,Ps(m=Ws({left:u?f.left-(p.left-f.left):p.left,top:d?f.top-(p.top-f.top):p.top},r),X(l))),i({visibleArea:l,type:`move`}))}return{coordinates:c,visibleArea:l}}function fc(e){var t=e.directions,n=e.coordinates,r=e.positionRestrictions,i=r===void 0?{}:r,a=e.sizeRestrictions,o=e.preserveRatio,s=e.compensate,c=J({},t),l=Is(n,c).width,u=Is(n,c).height;l<0&&(c.left<0&&c.right<0?(c.left=-(n.width-a.minWidth)/(c.left/c.right),c.right=-(n.width-a.minWidth)/(c.right/c.left)):c.left<0?c.left=-(n.width-a.minWidth):c.right<0&&(c.right=-(n.width-a.minWidth))),u<0&&(c.top<0&&c.bottom<0?(c.top=-(n.height-a.minHeight)/(c.top/c.bottom),c.bottom=-(n.height-a.minHeight)/(c.bottom/c.top)):c.top<0?c.top=-(n.height-a.minHeight):c.bottom<0&&(c.bottom=-(n.height-a.minHeight)));var d=Fs(Is(n,c),i);s&&(d.left&&d.left>0&&d.right===0?(c.right+=d.left,c.left-=d.left):d.right&&d.right>0&&d.left===0&&(c.left+=d.right,c.right-=d.right),d.top&&d.top>0&&d.bottom===0?(c.bottom+=d.top,c.top-=d.top):d.bottom&&d.bottom>0&&d.top===0&&(c.top+=d.bottom,c.bottom-=d.bottom),d=Fs(Is(n,c),i));var f={width:1/0,height:1/0,left:1/0,right:1/0,top:1/0,bottom:1/0};if(Es.forEach((function(e){var t=d[e];t&&c[e]&&(f[e]=Math.max(0,1-t/c[e]))})),o){var p=Math.min.apply(null,Es.map((function(e){return f[e]})));p!==1/0&&Es.forEach((function(e){c[e]*=p}))}else Es.forEach((function(e){f[e]!==1/0&&(c[e]*=f[e])}));if(l=Is(n,c).width,u=Is(n,c).height,c.right+c.left&&(l>a.maxWidth?f.width=(a.maxWidth-n.width)/(c.right+c.left):l<a.minWidth&&(f.width=(a.minWidth-n.width)/(c.right+c.left))),c.bottom+c.top&&(u>a.maxHeight?f.height=(a.maxHeight-n.height)/(c.bottom+c.top):u<a.minHeight&&(f.height=(a.minHeight-n.height)/(c.bottom+c.top))),o){var m=Math.min(f.width,f.height);m!==1/0&&Es.forEach((function(e){c[e]*=m}))}else f.width!==1/0&&Ds.forEach((function(e){c[e]*=f.width})),f.height!==1/0&&Os.forEach((function(e){c[e]*=f.height}));return c}function pc(e,t,n){return t==0&&n==0?e/2:t==0?0:n==0?e:e*Math.abs(t/(t+n))}var mc=is(`vue-simple-handler`),hc=is(`vue-simple-handler-wrapper`),gc={name:`SimpleHandler`,components:{HandlerWrapper:Cs},props:{defaultClass:{type:String},hoverClass:{type:String},wrapperClass:{type:String},horizontalPosition:{type:String},verticalPosition:{type:String},disabled:{type:Boolean,default:!1}},data:function(){return{hover:!1}},computed:{classes:function(){var e,t=(Zo(e={},this.horizontalPosition,!!this.horizontalPosition),Zo(e,this.verticalPosition,!!this.verticalPosition),Zo(e,`${this.horizontalPosition}-${this.verticalPosition}`,!!(this.verticalPosition&&this.horizontalPosition)),Zo(e,`hover`,this.hover),e);return{default:q(mc(t),this.defaultClass,this.hover&&this.hoverClass),wrapper:q(hc(t),this.wrapperClass)}}},methods:{onDrag:function(e){this.$emit(`drag`,e)},onEnter:function(){this.hover=!0},onLeave:function(){this.hover=!1},onDragEnd:function(){this.$emit(`drag-end`)}},emits:[`drag`,`drag-end`]};gc.render=function(e,t,n,r,i,a){var o=T(`HandlerWrapper`);return L(),A(o,{class:a.classes.wrapper,"vertical-position":n.verticalPosition,"horizontal-position":n.horizontalPosition,disabled:n.disabled,onDrag:a.onDrag,onDragEnd:a.onDragEnd,onEnter:a.onEnter,onLeave:a.onLeave},{default:M((function(){return[u(`div`,{class:a.classes.default},null,2)]})),_:1},8,[`class`,`vertical-position`,`horizontal-position`,`disabled`,`onDrag`,`onDragEnd`,`onEnter`,`onLeave`])};var _c=is(`vue-simple-line`),vc=is(`vue-simple-line-wrapper`),yc={name:`SimpleLine`,components:{LineWrapper:Ts},props:{defaultClass:{type:String},hoverClass:{type:String},wrapperClass:{type:String},position:{type:String},disabled:{type:Boolean,default:!1}},data:function(){return{hover:!1}},computed:{classes:function(){return{root:q(_c(Zo({},this.position,!0)),this.defaultClass,this.hover&&this.hoverClass),wrapper:q(vc(Zo({},this.position,!0)),this.wrapperClass)}}},methods:{onDrag:function(e){this.$emit(`drag`,e)},onEnter:function(){this.hover=!0},onLeave:function(){this.hover=!1},onDragEnd:function(){this.$emit(`drag-end`)}},emits:[`drag`,`drag-end`]};yc.render=function(e,t,n,r,i,a){var o=T(`LineWrapper`);return L(),A(o,{class:a.classes.wrapper,position:n.position,disabled:n.disabled,onDrag:a.onDrag,onDragEnd:a.onDragEnd,onEnter:a.onEnter,onLeave:a.onLeave},{default:M((function(){return[u(`div`,{class:a.classes.root},null,2)]})),_:1},8,[`class`,`position`,`disabled`,`onDrag`,`onDragEnd`,`onEnter`,`onLeave`])};var bc=is(`vue-bounding-box`),xc=[`east`,`west`,null],Sc=[`south`,`north`,null],Cc={name:`BoundingBox`,props:{width:{type:Number},height:{type:Number},transitions:{type:Object},handlers:{type:Object,default:function(){return{eastNorth:!0,north:!0,westNorth:!0,west:!0,westSouth:!0,south:!0,eastSouth:!0,east:!0}}},handlersComponent:{type:[Object,String],default:function(){return gc}},handlersClasses:{type:Object,default:function(){return{}}},handlersWrappersClasses:{type:Object,default:function(){return{}}},lines:{type:Object,default:function(){return{west:!0,north:!0,east:!0,south:!0}}},linesComponent:{type:[Object,String],default:function(){return yc}},linesClasses:{type:Object,default:function(){return{}}},linesWrappersClasses:{type:Object,default:function(){return{}}},resizable:{type:Boolean,default:!0}},data:function(){var e=[];return xc.forEach((function(t){Sc.forEach((function(n){if(t!==n){var r=ss(t,n),i=r.name,a=r.classname;e.push({name:i,classname:a,verticalDirection:n,horizontalDirection:t})}}))})),{points:e}},computed:{style:function(){var e={};return this.width&&this.height&&(e.width=`${this.width}px`,e.height=`${this.height}px`,this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`)),e},classes:function(){var e=this.handlersClasses,t=this.handlersWrappersClasses,n=this.linesClasses,r=this.linesWrappersClasses;return{root:bc(),handlers:e,handlersWrappers:t,lines:n,linesWrappers:r}},lineNodes:function(){var e=this,t=[];return this.points.forEach((function(n){n.horizontalDirection&&n.verticalDirection||!e.lines[n.name]||t.push({name:n.name,component:e.linesComponent,class:q(e.classes.lines.default,e.classes.lines[n.name],!e.resizable&&e.classes.lines.disabled),wrapperClass:q(e.classes.linesWrappers.default,e.classes.linesWrappers[n.name],!e.resizable&&e.classes.linesWrappers.disabled),hoverClass:e.classes.lines.hover,verticalDirection:n.verticalDirection,horizontalDirection:n.horizontalDirection,disabled:!e.resizable})})),t},handlerNodes:function(){var e=this,t=[],n=this.width,r=this.height;return this.points.forEach((function(i){if(e.handlers[i.name]){var a={name:i.name,component:e.handlersComponent,class:q(e.classes.handlers.default,e.classes.handlers[i.name]),wrapperClass:q(e.classes.handlersWrappers.default,e.classes.handlersWrappers[i.name]),hoverClass:e.classes.handlers.hover,verticalDirection:i.verticalDirection,horizontalDirection:i.horizontalDirection,disabled:!e.resizable};if(n&&r){var o=i.horizontalDirection,s=i.verticalDirection,c=o===`east`?n:o===`west`?0:n/2,l=s===`south`?r:s===`north`?0:r/2;a.wrapperClass=bc(`handler`),a.wrapperStyle={transform:`translate(${c}px, ${l}px)`},e.transitions&&e.transitions.enabled&&(a.wrapperStyle.transition=`${e.transitions.time}ms ${e.transitions.timingFunction}`)}else a.wrapperClass=bc(`handler`,Zo({},i.classname,!0));t.push(a)}})),t}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},mounted:function(){this.touches=[]},methods:{onEnd:function(){this.$emit(`resize-end`)},onHandlerDrag:function(e,t,n){var r,i=e.shift(),a=i.left,o=i.top,s={left:0,right:0,top:0,bottom:0};t===`west`?s.left-=a:t===`east`&&(s.right+=a),n===`north`?s.top-=o:n===`south`&&(s.bottom+=o),!n&&t?r=`width`:n&&!t&&(r=`height`),this.resizable&&this.$emit(`resize`,new vs(s,{allowedDirections:{left:t===`west`||!t,right:t===`east`||!t,bottom:n===`south`||!n,top:n===`north`||!n},preserveAspectRatio:e.nativeEvent&&e.nativeEvent.shiftKey,respectDirection:r}))}},emits:[`resize`,`resize-end`]};Cc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`box`,class:a.classes.root,style:a.style},[k(e.$slots,`default`),u(`div`,null,[(L(!0),A(x,null,F(a.lineNodes,(function(e){return L(),A(I(e.component),{key:e.name,"default-class":e.class,"hover-class":e.hoverClass,"wrapper-class":e.wrapperClass,position:e.name,disabled:e.disabled,onDrag:function(t){return a.onHandlerDrag(t,e.horizontalDirection,e.verticalDirection)},onDragEnd:t[1]||=function(e){return a.onEnd()}},null,8,[`default-class`,`hover-class`,`wrapper-class`,`position`,`disabled`,`onDrag`])})),128))]),(L(!0),A(x,null,F(a.handlerNodes,(function(e){return L(),A(`div`,{key:e.name,style:e.wrapperStyle,class:e.wrapperClass},[(L(),A(I(e.component),{"default-class":e.class,"hover-class":e.hoverClass,"wrapper-class":e.wrapperClass,"horizontal-position":e.horizontalDirection,"vertical-position":e.verticalDirection,disabled:e.disabled,onDrag:function(t){return a.onHandlerDrag(t,e.horizontalDirection,e.verticalDirection)},onDragEnd:t[2]||=function(e){return a.onEnd()}},null,8,[`default-class`,`hover-class`,`wrapper-class`,`horizontal-position`,`vertical-position`,`disabled`,`onDrag`]))],6)})),128))],6)};var wc=is(`vue-draggable-area`),Tc={name:`DraggableArea`,props:{movable:{type:Boolean,default:!0},activationDistance:{type:Number,default:20}},computed:{classnames:function(){return{default:wc()}}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},mounted:function(){this.touches=[],this.touchStarted=!1},methods:{onTouchStart:function(e){if(e.cancelable){var t=this.movable&&e.touches.length===1;t&&(this.touches=$o(e.touches)),(this.touchStarted||t)&&(e.preventDefault(),e.stopPropagation())}},onTouchEnd:function(){this.touchStarted=!1,this.processEnd()},onTouchMove:function(e){this.touches.length>=1&&(this.touchStarted?(this.processMove(e,e.touches),e.preventDefault(),e.stopPropagation()):gs({x:this.touches[0].clientX,y:this.touches[0].clientY},{x:e.touches[0].clientX,y:e.touches[0].clientY})>this.activationDistance&&(this.initAnchor({clientX:e.touches[0].clientX,clientY:e.touches[0].clientY}),this.touchStarted=!0))},onMouseDown:function(e){if(this.movable&&e.button===0){var t={fake:!0,clientX:e.clientX,clientY:e.clientY};this.touches=[t],this.initAnchor(t),e.stopPropagation()}},onMouseMove:function(e){this.touches.length&&(this.processMove(e,[{fake:!0,clientX:e.clientX,clientY:e.clientY}]),e.preventDefault&&e.cancelable&&e.preventDefault(),e.stopPropagation())},onMouseUp:function(){this.processEnd()},initAnchor:function(e){var t=this.$refs.container.getBoundingClientRect(),n=t.left,r=t.top;this.anchor={x:e.clientX-n,y:e.clientY-r}},processMove:function(e,t){var n=$o(t);if(this.touches.length){var r=this.$refs.container.getBoundingClientRect(),i=r.left,a=r.top;this.touches.length===1&&n.length===1&&this.$emit(`move`,new ys({left:n[0].clientX-(i+this.anchor.x),top:n[0].clientY-(a+this.anchor.y)}))}},processEnd:function(){this.touches.length&&this.$emit(`move-end`),this.touches=[]}},emits:[`move`,`move-end`]};Tc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`container`,onTouchstart:t[1]||=function(){return a.onTouchStart&&a.onTouchStart.apply(a,arguments)},onMousedown:t[2]||=function(){return a.onMouseDown&&a.onMouseDown.apply(a,arguments)}},[k(e.$slots,`default`)],544)};function Ec(e){return{rotate:e.rotate||0,flip:{horizontal:e?.flip?.horizontal||!1,vertical:e?.flip?.vertical||!1}}}function Dc(e){return new Promise((function(t,n){try{if(e)if(/^data:/i.test(e))t(function(e){e=e.replace(/^data:([^;]+);base64,/gim,``);for(var t=atob(e),n=t.length,r=new ArrayBuffer(n),i=new Uint8Array(r),a=0;a<n;a++)i[a]=t.charCodeAt(a);return r}(e));else if(/^blob:/i.test(e)){var r=new FileReader;r.onload=function(e){t(e.target.result)},a=e,o=function(e){r.readAsArrayBuffer(e)},(s=new XMLHttpRequest).open(`GET`,a,!0),s.responseType=`blob`,s.onload=function(){this.status!=200&&this.status!==0||o(this.response)},s.send()}else{var i=new XMLHttpRequest;i.onreadystatechange=function(){i.readyState===4&&(i.status===200||i.status===0?t(i.response):n(`Warning: could not load an image to parse its orientation`),i=null)},i.onprogress=function(){i.getResponseHeader(`content-type`)!==`image/jpeg`&&i.abort()},i.withCredentials=!1,i.open(`GET`,e,!0),i.responseType=`arraybuffer`,i.send(null)}else n(`Error: the image is empty`)}catch(e){n(e)}var a,o,s}))}function Oc(e){var t=e.rotate,n=e.flip,r=e.scaleX,i=e.scaleY,a=``;return a+=` rotate(`+t+`deg) `,a+=` scaleX(`+r*(n.horizontal?-1:1)+`) `,a+=` scaleY(`+i*(n.vertical?-1:1)+`) `}function kc(e){try{var t,n=new DataView(e),r=void 0,i=void 0,a=void 0,o=void 0;if(n.getUint8(0)===255&&n.getUint8(1)===216)for(var s=n.byteLength,c=2;c+1<s;){if(n.getUint8(c)===255&&n.getUint8(c+1)===225){a=c;break}c++}if(a&&(r=a+10,function(e,t,n){var r,i=``;for(r=t,n+=t;r<n;r++)i+=String.fromCharCode(e.getUint8(r));return i}(n,a+4,4)===`Exif`)){var l=n.getUint16(r);if(((i=l===18761)||l===19789)&&n.getUint16(r+2,i)===42){var u=n.getUint32(r+4,i);u>=8&&(o=r+u)}}if(o){for(var d=n.getUint16(o,i),f=0;f<d;f++)if(c=o+12*f+2,n.getUint16(c,i)===274){c+=8,t=n.getUint16(c,i),n.setUint16(c,1,i);break}}return t}catch{return null}}var Ac=is(`vue-preview-result`),jc={name:`PreviewResult`,props:{image:{type:Object},transitions:{type:Object},stencilCoordinates:{type:Object,default:function(){return{width:0,height:0,left:0,top:0}}},imageClass:{type:String}},computed:{classes:function(){return{root:Ac(),wrapper:Ac(`wrapper`),imageWrapper:Ac(`image-wrapper`),image:q(Ac(`image`),this.imageClass)}},wrapperStyle:function(){var e={width:`${this.stencilCoordinates.width}px`,height:`${this.stencilCoordinates.height}px`,left:`calc(50% - ${this.stencilCoordinates.width/2}px)`,top:`calc(50% - ${this.stencilCoordinates.height/2}px)`};return this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),e},imageStyle:function(){var e=this.image.transforms,t=Us({width:this.image.width,height:this.image.height},e.rotate),n={width:`${this.image.width}px`,height:`${this.image.height}px`,left:`0px`,top:`0px`},r={left:(this.image.width-t.width)*e.scaleX/2,top:(this.image.height-t.height)*e.scaleY/2},i={left:(1-e.scaleX)*this.image.width/2,top:(1-e.scaleY)*this.image.height/2};return n.transform=`translate(
4
- ${-this.stencilCoordinates.left-e.translateX-r.left-i.left}px,${-this.stencilCoordinates.top-e.translateY-r.top-i.top}px) `+Oc(e),this.transitions&&this.transitions.enabled&&(n.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),n}}};function Mc(e,t){var n=t.getBoundingClientRect(),r=n.left,i=n.top,a={left:0,top:0},o=0;return e.forEach((function(t){a.left+=(t.clientX-r)/e.length,a.top+=(t.clientY-i)/e.length})),e.forEach((function(e){o+=gs({x:a.left,y:a.top},{x:e.clientX-r,y:e.clientY-i})})),{centerMass:a,spread:o,count:e.length}}jc.render=function(e,t,n,r,i,a){return L(),A(`div`,{class:a.classes.root},[u(`div`,{ref:`wrapper`,class:a.classes.wrapper,style:a.wrapperStyle},[u(`img`,{ref:`image`,src:n.image.src,class:a.classes.image,style:a.imageStyle},null,14,[`src`])],6)],2)};var Nc={props:{touchMove:{type:Boolean,required:!0},mouseMove:{type:Boolean,required:!0},touchResize:{type:Boolean,required:!0},wheelResize:{type:[Boolean,Object],required:!0},eventsFilter:{type:Function,required:!1}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},created:function(){this.transforming=!1,this.debouncedProcessEnd=os(this.processEnd),this.touches=[]},methods:{processMove:function(e,t){if(this.touches.length){if(this.touches.length===1&&t.length===1)this.$emit(`move`,new _s({left:this.touches[0].clientX-t[0].clientX,top:this.touches[0].clientY-t[0].clientY}));else if(this.touches.length>1&&this.touchResize){var n=Mc(t,this.$refs.container),r=this.oldGeometricProperties;r.count===n.count&&r.count>1&&this.$emit(`resize`,new _s({left:r.centerMass.left-n.centerMass.left,top:r.centerMass.top-n.centerMass.top},{factor:r.spread/n.spread,center:n.centerMass})),this.oldGeometricProperties=n}this.touches=t}},processEnd:function(){this.transforming&&(this.transforming=!1,this.$emit(`transform-end`))},processStart:function(){this.transforming=!0,this.debouncedProcessEnd.clear()},processEvent:function(e){return this.eventsFilter?!1!==this.eventsFilter(e,this.transforming):(e.preventDefault(),e.stopPropagation(),!0)},onTouchStart:function(e){if(e.cancelable&&(this.touchMove||this.touchResize&&e.touches.length>1)&&this.processEvent(e)){var t=this.$refs.container,n=t.getBoundingClientRect(),r=n.left,i=n.top,a=n.bottom,o=n.right;this.touches=$o(e.touches).filter((function(e){return e.clientX>r&&e.clientX<o&&e.clientY>i&&e.clientY<a})),this.oldGeometricProperties=Mc(this.touches,t)}},onTouchEnd:function(e){e.touches.length===0&&(this.touches=[],this.processEnd())},onTouchMove:function(e){var t=this;if(this.touches.length){var n=$o(e.touches).filter((function(e){return!e.identifier||t.touches.find((function(t){return t.identifier===e.identifier}))}));this.processEvent(e)&&(this.processMove(e,n),this.processStart())}},onMouseDown:function(e){if(this.mouseMove&&`buttons`in e&&e.buttons===1&&this.processEvent(e)){var t={fake:!0,clientX:e.clientX,clientY:e.clientY};this.touches=[t],this.processStart()}},onMouseMove:function(e){this.touches.length&&this.processEvent(e)&&this.processMove(e,[{clientX:e.clientX,clientY:e.clientY}])},onMouseUp:function(){this.touches=[],this.processEnd()},onWheel:function(e){if(this.wheelResize&&this.processEvent(e)){var t=this.$refs.container.getBoundingClientRect(),n=t.left,r=t.top,i=1+this.wheelResize.ratio*(o=e.deltaY||e.detail||e.wheelDelta,(s=+o)==0||hs(s)?s:s>0?1:-1),a={left:e.clientX-n,top:e.clientY-r};this.$emit(`resize`,new _s({},{factor:i,center:a})),this.touches.length||this.debouncedProcessEnd()}var o,s}},emits:[`resize`,`move`,`transform-end`]};Nc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`container`,onTouchstart:t[1]||=function(){return a.onTouchStart&&a.onTouchStart.apply(a,arguments)},onMousedown:t[2]||=function(){return a.onMouseDown&&a.onMouseDown.apply(a,arguments)},onWheel:t[3]||=function(){return a.onWheel&&a.onWheel.apply(a,arguments)}},[k(e.$slots,`default`)],544)};var Pc={components:{TransformableImage:Nc},props:{touchMove:{type:Boolean,required:!0},mouseMove:{type:Boolean,required:!0},touchResize:{type:Boolean,required:!0},wheelResize:{type:[Boolean,Object],required:!0}},emits:[`resize`,`move`]};Pc.render=function(e,t,n,r,i,a){var o=T(`transformable-image`);return L(),A(o,{"touch-move":n.touchMove,"touch-resize":n.touchResize,"mouse-move":n.mouseMove,"wheel-resize":n.wheelResize,onMove:t[1]||=function(t){return e.$emit(`move`,t)},onResize:t[2]||=function(t){return e.$emit(`resize`,t)}},{default:M((function(){return[k(e.$slots,`default`)]})),_:3},8,[`touch-move`,`touch-resize`,`mouse-move`,`wheel-resize`])};var Fc=is(`vue-preview`),Ic={props:{coordinates:{type:Object},transitions:{type:Object},image:{type:Object,default:function(){return{}}},imageClass:{type:String},width:{type:Number},height:{type:Number},fill:{type:Boolean}},data:function(){return{calculatedImageSize:{width:0,height:0},calculatedSize:{width:0,height:0}}},computed:{classes:function(){return{root:Fc({fill:this.fill}),wrapper:Fc(`wrapper`),imageWrapper:Fc(`image-wrapper`),image:q(Fc(`image`),this.imageClass)}},style:function(){if(this.fill)return{};var e={};return this.width&&(e.width=`${this.size.width}px`),this.height&&(e.height=`${this.size.height}px`),this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),e},wrapperStyle:function(){var e={width:`${this.size.width}px`,height:`${this.size.height}px`,left:`calc(50% - ${this.size.width/2}px)`,top:`calc(50% - ${this.size.height/2}px)`};return this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),e},imageStyle:function(){if(this.coordinates&&this.image){var e=this.coordinates.width/this.size.width,t=K(K({rotate:0,flip:{horizontal:!1,vertical:!1}},this.image.transforms),{},{scaleX:1/e,scaleY:1/e}),n=this.imageSize.width,r=this.imageSize.height,i=Us({width:n,height:r},t.rotate),a={width:`${n}px`,height:`${r}px`,left:`0px`,top:`0px`},o={rotate:{left:(n-i.width)*t.scaleX/2,top:(r-i.height)*t.scaleY/2},scale:{left:(1-t.scaleX)*n/2,top:(1-t.scaleY)*r/2}};return a.transform=`translate(
5
- ${-this.coordinates.left/e-o.rotate.left-o.scale.left}px,${-this.coordinates.top/e-o.rotate.top-o.scale.top}px) `+Oc(t),this.transitions&&this.transitions.enabled&&(a.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),a}return{}},size:function(){return{width:this.width||this.calculatedSize.width,height:this.height||this.calculatedSize.height}},imageSize:function(){return{width:this.image.width||this.calculatedImageSize.width,height:this.image.height||this.calculatedImageSize.height}}},watch:{image:function(e){(e.width||e.height)&&this.onChangeImage()}},mounted:function(){var e=this;this.onChangeImage(),this.$refs.image.addEventListener(`load`,(function(){e.refreshImage()})),window.addEventListener(`resize`,this.refresh),window.addEventListener(`orientationchange`,this.refresh)},unmounted:function(){window.removeEventListener(`resize`,this.refresh),window.removeEventListener(`orientationchange`,this.refresh)},methods:{refreshImage:function(){var e=this.$refs.image;this.calculatedImageSize.height=e.naturalHeight,this.calculatedImageSize.width=e.naturalWidth},refresh:function(){var e=this.$refs.root;this.width||(this.calculatedSize.width=e.clientWidth),this.height||(this.calculatedSize.height=e.clientHeight)},onChangeImage:function(){var e=this.$refs.image;e&&e.complete&&this.refreshImage(),this.refresh()}}};Ic.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`root`,class:a.classes.root,style:a.style},[u(`div`,{ref:`wrapper`,class:a.classes.wrapper,style:a.wrapperStyle},[O(u(`img`,{ref:`image`,src:n.image&&n.image.src,class:a.classes.image,style:a.imageStyle},null,14,[`src`]),[[ie,n.image&&n.image.src]])],6)],6)};var Lc={components:{Preview:Ic},inheritAttrs:!1};Lc.render=function(e,t,n,r,a,o){var s=T(`preview`);return L(),A(s,i(e.$attrs,{fill:!0}),null,16)};var Rc=is(`vue-rectangle-stencil`),zc={name:`RectangleStencil`,components:{StencilPreview:Lc,BoundingBox:Cc,DraggableArea:Tc},props:{image:{type:Object},coordinates:{type:Object},stencilCoordinates:{type:Object},handlers:{type:Object},handlersComponent:{type:[Object,String],default:function(){return gc}},lines:{type:Object},linesComponent:{type:[Object,String],default:function(){return yc}},aspectRatio:{type:[Number,String]},minAspectRatio:{type:[Number,String]},maxAspectRatio:{type:[Number,String]},movable:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},transitions:{type:Object},movingClass:{type:String},resizingClass:{type:String},previewClass:{type:String},boundingBoxClass:{type:String},linesClasses:{type:Object,default:function(){return{}}},linesWrappersClasses:{type:Object,default:function(){return{}}},handlersClasses:{type:Object,default:function(){return{}}},handlersWrappersClasses:{type:Object,default:function(){return{}}}},data:function(){return{moving:!1,resizing:!1}},computed:{classes:function(){return{stencil:q(Rc({movable:this.movable,moving:this.moving,resizing:this.resizing}),this.moving&&this.movingClass,this.resizing&&this.resizingClass),preview:q(Rc(`preview`),this.previewClass),boundingBox:q(Rc(`bounding-box`),this.boundingBoxClass)}},style:function(){var e=this.stencilCoordinates,t=e.height,n=e.width,r=e.left,i=e.top,a={width:`${n}px`,height:`${t}px`,transform:`translate(${r}px, ${i}px)`};return this.transitions&&this.transitions.enabled&&(a.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),a}},methods:{onMove:function(e){this.$emit(`move`,e),this.moving=!0},onMoveEnd:function(){this.$emit(`move-end`),this.moving=!1},onResize:function(e){this.$emit(`resize`,e),this.resizing=!0},onResizeEnd:function(){this.$emit(`resize-end`),this.resizing=!1},aspectRatios:function(){return{minimum:this.aspectRatio||this.minAspectRatio,maximum:this.aspectRatio||this.maxAspectRatio}}},emits:[`resize`,`resize-end`,`move`,`move-end`]};zc.render=function(e,t,n,r,i,a){var o=T(`stencil-preview`),s=T(`draggable-area`),c=T(`bounding-box`);return L(),A(`div`,{class:a.classes.stencil,style:a.style},[u(c,{width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,transitions:n.transitions,class:a.classes.boundingBox,handlers:n.handlers,"handlers-component":n.handlersComponent,"handlers-classes":n.handlersClasses,"handlers-wrappers-classes":n.handlersWrappersClasses,lines:n.lines,"lines-component":n.linesComponent,"lines-classes":n.linesClasses,"lines-wrappers-classes":n.linesWrappersClasses,resizable:n.resizable,onResize:a.onResize,onResizeEnd:a.onResizeEnd},{default:M((function(){return[u(s,{movable:n.movable,onMove:a.onMove,onMoveEnd:a.onMoveEnd},{default:M((function(){return[u(o,{image:n.image,coordinates:n.coordinates,width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,class:a.classes.preview,transitions:n.transitions},null,8,[`image`,`coordinates`,`width`,`height`,`class`,`transitions`])]})),_:1},8,[`movable`,`onMove`,`onMoveEnd`])]})),_:1},8,[`width`,`height`,`transitions`,`class`,`handlers`,`handlers-component`,`handlers-classes`,`handlers-wrappers-classes`,`lines`,`lines-component`,`lines-classes`,`lines-wrappers-classes`,`resizable`,`onResize`,`onResizeEnd`])],6)};var Bc=is(`vue-circle-stencil`),Vc={components:{StencilPreview:Lc,BoundingBox:Cc,DraggableArea:Tc},props:{image:{type:Object},coordinates:{type:Object},stencilCoordinates:{type:Object},handlers:{type:Object,default:function(){return{eastNorth:!0,westNorth:!0,westSouth:!0,eastSouth:!0}}},handlersComponent:{type:[Object,String],default:function(){return gc}},handlersClasses:{type:Object,default:function(){return{}}},handlersWrappersClasses:{type:Object,default:function(){return{}}},lines:{type:Object},linesComponent:{type:[Object,String],default:function(){return yc}},linesClasses:{type:Object,default:function(){return{}}},linesWrappersClasses:{type:Object,default:function(){return{}}},movable:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},transitions:{type:Object},movingClass:{type:String},resizingClass:{type:String},previewClass:{type:String},boundingBoxClass:{type:String}},data:function(){return{moving:!1,resizing:!1}},computed:{classes:function(){return{stencil:q(Bc({movable:this.movable,moving:this.moving,resizing:this.resizing}),this.moving&&this.movingClass,this.resizing&&this.resizingClass),preview:q(Bc(`preview`),this.previewClass),boundingBox:q(Bc(`bounding-box`),this.boundingBoxClass)}},style:function(){var e=this.stencilCoordinates,t=e.height,n=e.width,r=e.left,i=e.top,a={width:`${n}px`,height:`${t}px`,transform:`translate(${r}px, ${i}px)`};return this.transitions&&this.transitions.enabled&&(a.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),a}},methods:{onMove:function(e){this.$emit(`move`,e),this.moving=!0},onMoveEnd:function(){this.$emit(`move-end`),this.moving=!1},onResize:function(e){this.$emit(`resize`,e),this.resizing=!0},onResizeEnd:function(){this.$emit(`resize-end`),this.resizing=!1},aspectRatios:function(){return{minimum:1,maximum:1}}},emits:[`resize`,`resize-end`,`move`,`move-end`]};Vc.render=function(e,t,n,r,i,a){var o=T(`stencil-preview`),s=T(`draggable-area`),c=T(`bounding-box`);return L(),A(`div`,{class:a.classes.stencil,style:a.style},[u(c,{width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,transitions:n.transitions,class:a.classes.boundingBox,handlers:n.handlers,"handlers-component":n.handlersComponent,"handlers-classes":n.handlersClasses,"handlers-wrappers-classes":n.handlersWrappersClasses,lines:n.lines,"lines-component":n.linesComponent,"lines-classes":n.linesClasses,"lines-wrappers-classes":n.linesWrappersClasses,resizable:n.resizable,onResize:a.onResize,onResizeEnd:a.onResizeEnd},{default:M((function(){return[u(s,{movable:n.movable,onMove:a.onMove,onMoveEnd:a.onMoveEnd},{default:M((function(){return[u(o,{image:n.image,coordinates:n.coordinates,width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,class:a.classes.preview,transitions:n.transitions},null,8,[`image`,`coordinates`,`width`,`height`,`class`,`transitions`])]})),_:1},8,[`movable`,`onMove`,`onMoveEnd`])]})),_:1},8,[`width`,`height`,`transitions`,`class`,`handlers`,`handlers-component`,`handlers-classes`,`handlers-wrappers-classes`,`lines`,`lines-component`,`lines-classes`,`lines-wrappers-classes`,`resizable`,`onResize`,`onResizeEnd`])],6)};var Hc=[`transitions`],Uc=is(`vue-advanced-cropper`),Wc={name:`Cropper`,components:{BackgroundWrapper:Pc},props:{src:{type:String,default:null},stencilComponent:{type:[Object,String],default:function(){return zc}},backgroundWrapperComponent:{type:[Object,String],default:function(){return Pc}},stencilProps:{type:Object,default:function(){return{}}},autoZoom:{type:Boolean,default:!1},imageClass:{type:String},boundariesClass:{type:String},backgroundClass:{type:String},foregroundClass:{type:String},minWidth:{type:[Number,String]},minHeight:{type:[Number,String]},maxWidth:{type:[Number,String]},maxHeight:{type:[Number,String]},debounce:{type:[Boolean,Number],default:500},transitions:{type:Boolean,default:!0},checkOrientation:{type:Boolean,default:!0},canvas:{type:[Object,Boolean],default:!0},crossOrigin:{type:[Boolean,String],default:void 0},transitionTime:{type:Number,default:300},imageRestriction:{type:String,default:`fit-area`,validator:function(e){return As.indexOf(e)!==-1}},roundResult:{type:Boolean,default:!0},defaultSize:{type:[Function,Object]},defaultPosition:{type:[Function,Object]},defaultVisibleArea:{type:[Function,Object]},defaultTransforms:{type:[Function,Object]},defaultBoundaries:{type:[Function,String],validator:function(e){return!(typeof e==`string`&&e!==`fill`&&e!==`fit`)}},priority:{type:String,default:`coordinates`},stencilSize:{type:[Object,Function]},resizeImage:{type:[Boolean,Object],default:!0},moveImage:{type:[Boolean,Object],default:!0},autoZoomAlgorithm:{type:Function},resizeAlgorithm:{type:Function,default:function(e){var t=e.event,n=e.coordinates,r=e.aspectRatio,i=e.positionRestrictions,a=e.sizeRestrictions,o=J(J({},n),{right:n.left+n.width,bottom:n.top+n.height}),s=t.params||{},c=J({},t.directions),l=s.allowedDirections||{left:!0,right:!0,bottom:!0,top:!0};a.widthFrozen&&(c.left=0,c.right=0),a.heightFrozen&&(c.top=0,c.bottom=0),Es.forEach((function(e){l[e]||(c[e]=0)}));var u=Is(o,c=fc({coordinates:o,directions:c,sizeRestrictions:a,positionRestrictions:i})).width,d=Is(o,c).height,f=s.preserveRatio?Q(o):Vs(u/d,r);if(f){var p=s.respectDirection;if(p||=o.width>=o.height||f===1?`width`:`height`,p===`width`){var m=u/f-o.height;if(l.top&&l.bottom){var h=c.top,g=c.bottom;c.bottom=pc(m,g,h),c.top=pc(m,h,g)}else l.bottom?c.bottom=m:l.top?c.top=m:l.right?c.right=0:l.left&&(c.left=0)}else if(p===`height`){var _=o.width-d*f;if(l.left&&l.right){var v=c.left,y=c.right;c.left=-pc(_,v,y),c.right=-pc(_,y,v)}else l.left?c.left=-_:l.right?c.right=-_:l.top?c.top=0:l.bottom&&(c.bottom=0)}c=fc({directions:c,coordinates:o,sizeRestrictions:a,positionRestrictions:i,preserveRatio:!0,compensate:s.compensate})}return u=Is(o,c).width,d=Is(o,c).height,(f=s.preserveRatio?Q(o):Vs(u/d,r))&&Math.abs(f-u/d)>.001&&Es.forEach((function(e){l[e]||(c[e]=0)})),$s({event:new ys({left:-c.left,top:-c.top}),coordinates:{width:n.width+c.right+c.left,height:n.height+c.top+c.bottom,left:n.left,top:n.top},positionRestrictions:i})}},moveAlgorithm:{type:Function,default:$s},initStretcher:{type:Function,default:function(e){var t=e.stretcher,n=e.imageSize,r=Q(n);t.style.width=n.width+`px`,t.style.height=t.clientWidth/r+`px`,t.style.width=t.clientWidth+`px`}},fitCoordinates:{type:Function,default:function(e){var t=e.visibleArea,n=e.coordinates,r=e.aspectRatio,i=e.sizeRestrictions,a=e.positionRestrictions,o=J(J({},n),Qs({width:n.width,height:n.height,aspectRatio:r,sizeRestrictions:{maxWidth:t.width,maxHeight:t.height,minHeight:Math.min(t.height,i.minHeight),minWidth:Math.min(t.width,i.minWidth)}}));return o=$(o=Z(o,Ps(X(n),X(o))),Ys(Ns(t),a))}},fitVisibleArea:{type:Function,default:function(e){var t=e.visibleArea,n=e.boundaries,r=e.getAreaRestrictions,i=e.coordinates,a=J({},t);a.height=a.width/Q(n),a.top+=(t.height-a.height)/2,(i.height-a.height>0||i.width-a.width>0)&&(a=Rs(a,Math.max(i.height/a.height,i.width/a.width)));var o=Ls(Bs(i,Ns(a=Rs(a,Gs(a,r({visibleArea:a,type:`resize`}))))));return a.width<i.width&&(o.left=0),a.height<i.height&&(o.top=0),a=$(a=Z(a,o),r({visibleArea:a,type:`move`}))}},areaRestrictionsAlgorithm:{type:Function,default:function(e){var t=e.visibleArea,n=e.boundaries,r=e.imageSize,i=e.imageRestriction,a=e.type,o={};return i===`fill-area`?o={left:0,top:0,right:r.width,bottom:r.height}:i===`fit-area`&&(Q(n)>Q(r)?(o={top:0,bottom:r.height},t&&a===`move`&&(t.width>r.width?(o.left=-(t.width-r.width)/2,o.right=r.width-o.left):(o.left=0,o.right=r.width))):(o={left:0,right:r.width},t&&a===`move`&&(t.height>r.height?(o.top=-(t.height-r.height)/2,o.bottom=r.height-o.top):(o.top=0,o.bottom=r.height)))),o}},sizeRestrictionsAlgorithm:{type:Function,default:function(e){return{minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight}}},positionRestrictionsAlgorithm:{type:Function,default:function(e){var t=e.imageSize,n={};return e.imageRestriction!==`none`&&(n={left:0,top:0,right:t.width,bottom:t.height}),n}}},data:function(){return{transitionsActive:!1,imageLoaded:!1,imageAttributes:{width:null,height:null,crossOrigin:null,src:null},defaultImageTransforms:{rotate:0,flip:{horizontal:!1,vertical:!1}},appliedImageTransforms:{rotate:0,flip:{horizontal:!1,vertical:!1}},boundaries:{width:0,height:0},visibleArea:null,coordinates:K({},js)}},computed:{image:function(){return{src:this.imageAttributes.src,width:this.imageAttributes.width,height:this.imageAttributes.height,transforms:this.imageTransforms}},imageTransforms:function(){return{rotate:this.appliedImageTransforms.rotate,flip:{horizontal:this.appliedImageTransforms.flip.horizontal,vertical:this.appliedImageTransforms.flip.vertical},translateX:this.visibleArea?this.visibleArea.left/this.coefficient:0,translateY:this.visibleArea?this.visibleArea.top/this.coefficient:0,scaleX:1/this.coefficient,scaleY:1/this.coefficient}},imageSize:function(){var e=function(e){return e*Math.PI/180}(this.imageTransforms.rotate);return{width:Math.abs(this.imageAttributes.width*Math.cos(e))+Math.abs(this.imageAttributes.height*Math.sin(e)),height:Math.abs(this.imageAttributes.width*Math.sin(e))+Math.abs(this.imageAttributes.height*Math.cos(e))}},initialized:function(){return!!(this.visibleArea&&this.imageLoaded)},settings:function(){var e=fs(this.resizeImage,{touch:!0,wheel:{ratio:.1},adjustStencil:!0},{touch:!1,wheel:!1,adjustStencil:!1});return{moveImage:fs(this.moveImage,{touch:!0,mouse:!0},{touch:!1,mouse:!1}),resizeImage:e}},coefficient:function(){return this.visibleArea?this.visibleArea.width/this.boundaries.width:0},areaRestrictions:function(){return this.imageLoaded?this.areaRestrictionsAlgorithm({imageSize:this.imageSize,imageRestriction:this.imageRestriction,boundaries:this.boundaries}):{}},transitionsOptions:function(){return{enabled:this.transitionsActive,timingFunction:`ease-in-out`,time:350}},sizeRestrictions:function(){if(this.boundaries.width&&this.boundaries.height&&this.imageSize.width&&this.imageSize.height){var e=this.sizeRestrictionsAlgorithm({imageSize:this.imageSize,minWidth:Y(this.minWidth)?0:ps(this.minWidth),minHeight:Y(this.minHeight)?0:ps(this.minHeight),maxWidth:Y(this.maxWidth)?1/0:ps(this.maxWidth),maxHeight:Y(this.maxHeight)?1/0:ps(this.maxHeight)});if(e=function(e){var t=e.areaRestrictions,n=e.sizeRestrictions;e.imageSize;var r=e.boundaries,i=e.positionRestrictions;e.imageRestriction;var a=J(J({},n),{minWidth:n.minWidth===void 0?0:n.minWidth,minHeight:n.minHeight===void 0?0:n.minHeight,maxWidth:n.maxWidth===void 0?1/0:n.maxWidth,maxHeight:n.maxHeight===void 0?1/0:n.maxHeight});i.left!==void 0&&i.right!==void 0&&(a.maxWidth=Math.min(a.maxWidth,i.right-i.left)),i.bottom!==void 0&&i.top!==void 0&&(a.maxHeight=Math.min(a.maxHeight,i.bottom-i.top));var o=Ks(t),s=Hs(r,o);return o.width<1/0&&(!a.maxWidth||a.maxWidth>s.width)&&(a.maxWidth=Math.min(a.maxWidth,s.width)),o.height<1/0&&(!a.maxHeight||a.maxHeight>s.height)&&(a.maxHeight=Math.min(a.maxHeight,s.height)),a.minWidth>a.maxWidth&&(a.minWidth=a.maxWidth,a.widthFrozen=!0),a.minHeight>a.maxHeight&&(a.minHeight=a.maxHeight,a.heightFrozen=!0),a}({sizeRestrictions:e,areaRestrictions:this.getAreaRestrictions({visibleArea:this.visibleArea,type:`resize`}),imageSize:this.imageSize,boundaries:this.boundaries,positionRestrictions:this.positionRestrictions,imageRestriction:this.imageRestriction,visibleArea:this.visibleArea,stencilSize:this.getStencilSize()}),this.visibleArea&&this.stencilSize){var t=this.getStencilSize(),n=Ks(this.getAreaRestrictions({visibleArea:this.visibleArea,type:`resize`}));e.maxWidth=Math.min(e.maxWidth,n.width*t.width/this.boundaries.width),e.maxHeight=Math.min(e.maxHeight,n.height*t.height/this.boundaries.height),e.maxWidth<e.minWidth&&(e.minWidth=e.maxWidth),e.maxHeight<e.minHeight&&(e.minHeight=e.maxHeight)}return e}return{minWidth:0,minHeight:0,maxWidth:0,maxHeight:0}},positionRestrictions:function(){return this.positionRestrictionsAlgorithm({imageSize:this.imageSize,imageRestriction:this.imageRestriction})},classes:function(){return{cropper:Uc(),image:q(Uc(`image`),this.imageClass),stencil:Uc(`stencil`),boundaries:q(Uc(`boundaries`),this.boundariesClass),stretcher:q(Uc(`stretcher`)),background:q(Uc(`background`),this.backgroundClass),foreground:q(Uc(`foreground`),this.foregroundClass),imageWrapper:q(Uc(`image-wrapper`)),cropperWrapper:q(Uc(`cropper-wrapper`))}},stencilCoordinates:function(){if(this.initialized){var e=this.coordinates,t=e.width,n=e.height,r=e.left,i=e.top;return{width:t/this.coefficient,height:n/this.coefficient,left:(r-this.visibleArea.left)/this.coefficient,top:(i-this.visibleArea.top)/this.coefficient}}return this.defaultCoordinates()},boundariesStyle:function(){var e={width:this.boundaries.width?`${Math.round(this.boundaries.width)}px`:`auto`,height:this.boundaries.height?`${Math.round(this.boundaries.height)}px`:`auto`,transition:`opacity ${this.transitionTime}ms`,pointerEvents:this.imageLoaded?`all`:`none`};return this.imageLoaded||(e.opacity=`0`),e},imageStyle:function(){var e=this.imageAttributes.width>this.imageAttributes.height?{width:Math.min(1024,this.imageAttributes.width),height:Math.min(1024,this.imageAttributes.width)/(this.imageAttributes.width/this.imageAttributes.height)}:{height:Math.min(1024,this.imageAttributes.height),width:Math.min(1024,this.imageAttributes.height)*(this.imageAttributes.width/this.imageAttributes.height)},t={left:(e.width-this.imageSize.width)/(2*this.coefficient),top:(e.height-this.imageSize.height)/(2*this.coefficient)},n={left:(1-1/this.coefficient)*e.width/2,top:(1-1/this.coefficient)*e.height/2},r=K(K({},this.imageTransforms),{},{scaleX:this.imageTransforms.scaleX*(this.imageAttributes.width/e.width),scaleY:this.imageTransforms.scaleY*(this.imageAttributes.height/e.height)}),i={width:`${e.width}px`,height:`${e.height}px`,left:`0px`,top:`0px`,transform:`translate(${-t.left-n.left-this.imageTransforms.translateX}px, ${-t.top-n.top-this.imageTransforms.translateY}px)`+Oc(r)};return this.transitionsOptions.enabled&&(i.transition=`${this.transitionsOptions.time}ms ${this.transitionsOptions.timingFunction}`),i}},watch:{src:function(){this.onChangeImage()},stencilComponent:function(){var e=this;this.$nextTick((function(){e.resetCoordinates(),e.runAutoZoom(`setCoordinates`),e.onChange()}))},minWidth:function(){this.onPropsChange()},maxWidth:function(){this.onPropsChange()},minHeight:function(){this.onPropsChange()},maxHeight:function(){this.onPropsChange()},imageRestriction:function(){this.reset()},stencilProps:function(e,t){[`aspectRatio`,`minAspectRatio`,`maxAspectRatio`].find((function(n){return e[n]!==t[n]}))&&this.$nextTick(this.onPropsChange)}},created:function(){this.debouncedUpdate=os(this.update,this.debounce),this.debouncedDisableTransitions=os(this.disableTransitions,this.transitionsOptions.time),this.awaiting=!1},mounted:function(){this.$refs.image.addEventListener(`load`,this.onSuccessLoadImage),this.$refs.image.addEventListener(`error`,this.onFailLoadImage),this.onChangeImage(),window.addEventListener(`resize`,this.refresh),window.addEventListener(`orientationchange`,this.refresh)},unmounted:function(){window.removeEventListener(`resize`,this.refresh),window.removeEventListener(`orientationchange`,this.refresh),this.imageAttributes.revoke&&this.imageAttributes.src&&URL.revokeObjectURL(this.imageAttributes.src),this.debouncedUpdate.clear(),this.debouncedDisableTransitions.clear()},methods:{getResult:function(){var e=this.initialized?this.prepareResult(K({},this.coordinates)):this.defaultCoordinates(),t={rotate:this.imageTransforms.rotate%360,flip:K({},this.imageTransforms.flip)};if(this.src&&this.imageLoaded){var n=this;return{image:this.image,coordinates:e,visibleArea:this.visibleArea?K({},this.visibleArea):null,imageTransforms:t,get canvas(){return n.canvas?n.getCanvas():void 0}}}return{image:this.image,coordinates:e,visibleArea:this.visibleArea?K({},this.visibleArea):null,canvas:void 0,imageTransforms:t}},zoom:function(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).transitions,r=n===void 0||n;this.onManipulateImage(new _s({},{factor:1/e,center:t}),{normalize:!1,transitions:r})},move:function(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).transitions,r=n===void 0||n;this.onManipulateImage(new _s({left:e||0,top:t||0}),{normalize:!1,transitions:r})},setCoordinates:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=n.autoZoom,i=r===void 0||r,a=n.transitions,o=a===void 0||a;this.$nextTick((function(){t.imageLoaded?(t.transitionsActive||(o&&t.enableTransitions(),t.coordinates=t.applyTransform(e),i&&t.runAutoZoom(`setCoordinates`),o&&t.debouncedDisableTransitions()),t.onChange()):t.delayedTransforms=e}))},refresh:function(){var e=this,t=this.$refs.image;if(this.src&&t)return this.initialized?this.updateVisibleArea().then((function(){e.onChange()})):this.resetVisibleArea().then((function(){e.onChange()}))},reset:function(){var e=this;return this.resetVisibleArea().then((function(){e.onChange(!1)}))},awaitRender:function(e){var t=this;this.awaiting||(this.awaiting=!0,this.$nextTick((function(){e(),t.awaiting=!1})))},prepareResult:function(e){return this.roundResult?function(e){var t=e.coordinates,n=e.sizeRestrictions,r=e.positionRestrictions,i={width:Math.round(t.width),height:Math.round(t.height),left:Math.round(t.left),top:Math.round(t.top)};return i.width>n.maxWidth?i.width=Math.floor(t.width):i.width<n.minWidth&&(i.width=Math.ceil(t.width)),i.height>n.maxHeight?i.height=Math.floor(t.height):i.height<n.minHeight&&(i.height=Math.ceil(t.height)),$(i,r)}(K(K({},this.getPublicProperties()),{},{positionRestrictions:cc(this.positionRestrictions,this.visibleArea),coordinates:e})):e},processAutoZoom:function(e,t,n,r){var i=this.autoZoomAlgorithm;i||=this.stencilSize?tc:this.autoZoom?nc:rc;var a=i({event:{type:e,params:r},visibleArea:t,coordinates:n,boundaries:this.boundaries,aspectRatio:this.getAspectRatio(),positionRestrictions:this.positionRestrictions,getAreaRestrictions:this.getAreaRestrictions,sizeRestrictions:this.sizeRestrictions,stencilSize:this.getStencilSize()});return K(K({},a),{},{changed:!Ms(a.visibleArea,t)||!Ms(a.coordinates,n)})},runAutoZoom:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.transitions,r=n!==void 0&&n,i=Qo(t,Hc),a=this.processAutoZoom(e,this.visibleArea,this.coordinates,i),o=a.visibleArea,s=a.coordinates,c=a.changed;r&&c&&this.enableTransitions(),this.visibleArea=o,this.coordinates=s,r&&c&&this.debouncedDisableTransitions()},normalizeEvent:function(e){return function(e){var t=e.event,n=e.visibleArea,r=e.coefficient;if(t.type===`manipulateImage`)return J(J({},t),{move:{left:t.move&&t.move.left?r*t.move.left:0,top:t.move&&t.move.top?r*t.move.top:0},scale:{factor:t.scale&&t.scale.factor?t.scale.factor:1,center:t.scale&&t.scale.center?{left:t.scale.center.left*r+n.left,top:t.scale.center.top*r+n.top}:null}});if(t.type===`resize`){var i=J(J({},t),{directions:J({},t.directions)});return Es.forEach((function(e){i.directions[e]*=r})),i}if(t.type===`move`){var a=J(J({},t),{directions:J({},t.directions)});return ks.forEach((function(e){a.directions[e]*=r})),a}return t}(K(K({},this.getPublicProperties()),{},{event:e}))},getCanvas:function(){if(this.$refs.canvas){var e=this.$refs.canvas,t=this.$refs.image,n=this.imageTransforms.rotate!==0||this.imageTransforms.flip.horizontal||this.imageTransforms.flip.vertical?function(e,t,n){var r=n.rotate,i=n.flip,a={width:t.naturalWidth,height:t.naturalHeight},o=Us(a,r),s=e.getContext(`2d`);e.height=o.height,e.width=o.width,s.save();var c=Ws(X(J({left:0,top:0},a)),r);return s.translate(-(c.left-o.width/2),-(c.top-o.height/2)),s.rotate(r*Math.PI/180),s.translate(i.horizontal?a.width:0,i.vertical?a.height:0),s.scale(i.horizontal?-1:1,i.vertical?-1:1),s.drawImage(t,0,0,a.width,a.height),s.restore(),e}(this.$refs.sourceCanvas,t,this.imageTransforms):t,r=K({minWidth:0,minHeight:0,maxWidth:1/0,maxHeight:1/0,maxArea:this.maxCanvasSize,imageSmoothingEnabled:!0,imageSmoothingQuality:`high`,fillColor:`transparent`},this.canvas),i=function(e){return e.find((function(e){return t=e,!Number.isNaN(parseFloat(t))&&isFinite(t);var t}))},a=Qs({sizeRestrictions:{minWidth:i([r.width,r.minWidth])||0,minHeight:i([r.height,r.minHeight])||0,maxWidth:i([r.width,r.maxWidth])||1/0,maxHeight:i([r.height,r.maxHeight])||1/0},width:this.coordinates.width,height:this.coordinates.height,aspectRatio:{minimum:this.coordinates.width/this.coordinates.height,maximum:this.coordinates.width/this.coordinates.height}});if(r.maxArea&&a.width*a.height>r.maxArea){var o=Math.sqrt(r.maxArea/(a.width*a.height));a={width:Math.round(o*a.width),height:Math.round(o*a.height)}}return function(e,t,n,r,i){e.width=r?r.width:n.width,e.height=r?r.height:n.height;var a=e.getContext(`2d`);a.clearRect(0,0,e.width,e.height),i&&(i.imageSmoothingEnabled&&(a.imageSmoothingEnabled=i.imageSmoothingEnabled),i.imageSmoothingQuality&&(a.imageSmoothingQuality=i.imageSmoothingQuality),i.fillColor&&(a.fillStyle=i.fillColor,a.fillRect(0,0,e.width,e.height),a.save()));var o=n.left<0?-n.left:0,s=n.top<0?-n.top:0;a.drawImage(t,n.left+o,n.top+s,n.width,n.height,o*(e.width/n.width),s*(e.height/n.height),e.width,e.height)}(e,n,this.coordinates,a,r),e}},update:function(){this.$emit(`change`,this.getResult())},applyTransform:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1],n=this.visibleArea&&t?qs(this.sizeRestrictions,this.visibleArea):this.sizeRestrictions,r=this.visibleArea&&t?cc(this.positionRestrictions,this.visibleArea):this.positionRestrictions;return ec({transform:e,coordinates:this.coordinates,imageSize:this.imageSize,sizeRestrictions:n,positionRestrictions:r,aspectRatio:this.getAspectRatio(),visibleArea:this.visibleArea})},resetCoordinates:function(){var e=this;if(this.$refs.image){this.$refs.cropper,this.$refs.image;var t=this.defaultSize;t||=this.stencilSize?oc:ac;var n=this.sizeRestrictions;n.minWidth,n.minHeight,n.maxWidth,n.maxHeight;var r=us(t)?t({boundaries:this.boundaries,imageSize:this.imageSize,aspectRatio:this.getAspectRatio(),sizeRestrictions:this.sizeRestrictions,stencilSize:this.getStencilSize(),visibleArea:this.visibleArea}):t,i=this.defaultPosition||ic,a=[r,function(t){var n=t.coordinates;return K({},us(i)?i({coordinates:n,imageSize:e.imageSize,visibleArea:e.visibleArea}):e.defaultPosition)}];this.delayedTransforms&&a.push.apply(a,$o(Array.isArray(this.delayedTransforms)?this.delayedTransforms:[this.delayedTransforms])),this.coordinates=this.applyTransform(a,!0),this.delayedTransforms=null}},clearImage:function(){var e=this;this.imageLoaded=!1,setTimeout((function(){var t=e.$refs.stretcher;t&&(t.style.height=`auto`,t.style.width=`auto`),e.coordinates=e.defaultCoordinates(),e.boundaries={width:0,height:0}}),this.transitionTime)},enableTransitions:function(){this.transitions&&(this.transitionsActive=!0)},disableTransitions:function(){this.transitionsActive=!1},updateBoundaries:function(){var e=this,t=this.$refs.stretcher,n=this.$refs.cropper;return this.initStretcher({cropper:n,stretcher:t,imageSize:this.imageSize}),this.$nextTick().then((function(){var t={cropper:n,imageSize:e.imageSize};if(us(e.defaultBoundaries)?e.boundaries=e.defaultBoundaries(t):e.defaultBoundaries===`fit`?e.boundaries=function(e){var t=e.cropper,n=e.imageSize,r=t.clientHeight,i=t.clientWidth,a=r,o=n.width*r/n.height;return o>i&&(o=i,a=n.height*i/n.width),{width:o,height:a}}(t):e.boundaries=function(e){var t=e.cropper;return{width:t.clientWidth,height:t.clientHeight}}(t),!e.boundaries.width||!e.boundaries.height)throw Error(`It's impossible to fit the cropper in the current container`)}))},resetVisibleArea:function(){var e=this;return this.appliedImageTransforms=K(K({},this.defaultImageTransforms),{},{flip:K({},this.defaultImageTransforms.flip)}),this.updateBoundaries().then((function(){e.priority!==`visible-area`&&(e.visibleArea=null,e.resetCoordinates());var t,n,r,i,a,o,s=e.defaultVisibleArea||sc;e.visibleArea=us(s)?s({imageSize:e.imageSize,boundaries:e.boundaries,coordinates:e.priority===`visible-area`?null:e.coordinates,getAreaRestrictions:e.getAreaRestrictions,stencilSize:e.getStencilSize()}):e.defaultVisibleArea,e.visibleArea=(t={visibleArea:e.visibleArea,boundaries:e.boundaries,getAreaRestrictions:e.getAreaRestrictions},n=t.visibleArea,r=t.boundaries,i=t.getAreaRestrictions,a=J({},n),o=Q(r),a.width/a.height!==o&&(a.height=a.width/o),$(a,i({visibleArea:a,type:`move`}))),e.priority===`visible-area`?e.resetCoordinates():e.coordinates=e.fitCoordinates({visibleArea:e.visibleArea,coordinates:e.coordinates,aspectRatio:e.getAspectRatio(),positionRestrictions:e.positionRestrictions,sizeRestrictions:e.sizeRestrictions}),e.runAutoZoom(`resetVisibleArea`)})).catch((function(){e.visibleArea=null}))},updateVisibleArea:function(){var e=this;return this.updateBoundaries().then((function(){e.visibleArea=e.fitVisibleArea({imageSize:e.imageSize,boundaries:e.boundaries,visibleArea:e.visibleArea,coordinates:e.coordinates,getAreaRestrictions:e.getAreaRestrictions}),e.coordinates=e.fitCoordinates({visibleArea:e.visibleArea,coordinates:e.coordinates,aspectRatio:e.getAspectRatio(),positionRestrictions:e.positionRestrictions,sizeRestrictions:e.sizeRestrictions}),e.runAutoZoom(`updateVisibleArea`)})).catch((function(){e.visibleArea=null}))},onChange:function(){(!(arguments.length>0&&arguments[0]!==void 0)||arguments[0])&&this.debounce?this.debouncedUpdate():this.update()},onChangeImage:function(){var e,t=this;if(this.imageLoaded=!1,this.delayedTransforms=null,this.src){if(function(e){if(ls(e))return!1;var t=window.location,n=/(\w+:)?(?:\/\/)([\w.-]+)?(?::(\d+))?\/?/.exec(e)||[],r={protocol:n[1]||``,host:n[2]||``,port:n[3]||``},i=function(e){return e.port||((e.protocol||t.protocol)===`http`?80:433)};return!(!r.protocol&&!r.host&&!r.port||r.protocol&&r.protocol==t.protocol&&r.host&&r.host==t.host&&r.host&&i(r)==i(t))}(this.src)){var n=Y(this.crossOrigin)?this.canvas:this.crossOrigin;!0===n&&(n=`anonymous`),this.imageAttributes.crossOrigin=n||null}if(this.checkOrientation){var r=(e=this.src,new Promise((function(t){Dc(e).then((function(n){var r=kc(n);t(n?{source:e,arrayBuffer:n,orientation:r}:{source:e,arrayBuffer:null,orientation:null})})).catch((function(n){console.warn(n),t({source:e,arrayBuffer:null,orientation:null})}))})));setTimeout((function(){r.then(t.onParseImage)}),this.transitionTime)}else setTimeout((function(){t.onParseImage({source:t.src})}),this.transitionTime)}else this.clearImage()},onFailLoadImage:function(){this.imageAttributes.src&&(this.clearImage(),this.$emit(`error`))},onSuccessLoadImage:function(){var e=this,t=this.$refs.image;t&&!this.imageLoaded&&(this.imageAttributes.height=t.naturalHeight,this.imageAttributes.width=t.naturalWidth,this.imageLoaded=!0,this.resetVisibleArea().then((function(){e.$emit(`ready`),e.onChange(!1)})))},onParseImage:function(e){var t=this,n=e.source,r=e.arrayBuffer,i=e.orientation;this.imageAttributes.revoke&&this.imageAttributes.src&&URL.revokeObjectURL(this.imageAttributes.src),this.imageAttributes.revoke=!1,r&&i&&i>1?cs(n)||!ls(n)?(this.imageAttributes.src=URL.createObjectURL(new Blob([r])),this.imageAttributes.revoke=!0):this.imageAttributes.src=function(e){for(var t=[],n=new Uint8Array(e);n.length>0;){var r=n.subarray(0,8192);t.push(String.fromCharCode.apply(null,Array.from?Array.from(r):r.slice())),n=n.subarray(8192)}return`data:image/jpeg;base64,`+btoa(t.join(``))}(r):this.imageAttributes.src=n,us(this.defaultTransforms)?this.appliedImageTransforms=Ec(this.defaultTransforms()):ds(this.defaultTransforms)?this.appliedImageTransforms=Ec(this.defaultTransforms):this.appliedImageTransforms=function(e){var t=Ec({});if(e)switch(e){case 2:t.flip.horizontal=!0;break;case 3:t.rotate=-180;break;case 4:t.flip.vertical=!0;break;case 5:t.rotate=90,t.flip.vertical=!0;break;case 6:t.rotate=90;break;case 7:t.rotate=90,t.flip.horizontal=!0;break;case 8:t.rotate=-90}return t}(i),this.defaultImageTransforms=K(K({},this.appliedImageTransforms),{},{flip:K({},this.appliedImageTransforms.flip)}),this.$nextTick((function(){var e=t.$refs.image;e&&e.complete&&(function(e){return!!e.naturalWidth}(e)?t.onSuccessLoadImage():t.onFailLoadImage())}))},onResizeEnd:function(){this.runAutoZoom(`resize`,{transitions:!0})},onMoveEnd:function(){this.runAutoZoom(`move`,{transitions:!0})},onMove:function(e){var t=this;this.transitionsOptions.enabled||this.awaitRender((function(){t.coordinates=t.moveAlgorithm(K(K({},t.getPublicProperties()),{},{positionRestrictions:cc(t.positionRestrictions,t.visibleArea),coordinates:t.coordinates,event:t.normalizeEvent(e)})),t.onChange()}))},onResize:function(e){var t=this;this.transitionsOptions.enabled||this.stencilSize&&!this.autoZoom||this.awaitRender((function(){var n=t.sizeRestrictions,r=Math.min(t.coordinates.width,t.coordinates.height,20*t.coefficient);t.coordinates=t.resizeAlgorithm(K(K({},t.getPublicProperties()),{},{positionRestrictions:cc(t.positionRestrictions,t.visibleArea),sizeRestrictions:{maxWidth:Math.min(n.maxWidth,t.visibleArea.width),maxHeight:Math.min(n.maxHeight,t.visibleArea.height),minWidth:Math.max(n.minWidth,r),minHeight:Math.max(n.minHeight,r)},event:t.normalizeEvent(e)})),t.onChange(),t.ticking=!1}))},onManipulateImage:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.transitionsOptions.enabled){var n=t.transitions,r=n!==void 0&&n,i=t.normalize,a=i===void 0||i;r&&this.enableTransitions();var o=lc(K(K({},this.getPublicProperties()),{},{event:a?this.normalizeEvent(e):e,getAreaRestrictions:this.getAreaRestrictions,imageRestriction:this.imageRestriction,adjustStencil:!this.stencilSize&&this.settings.resizeImage.adjustStencil})),s=o.visibleArea,c=o.coordinates;this.visibleArea=s,this.coordinates=c,this.runAutoZoom(`manipulateImage`),this.onChange(),r&&this.debouncedDisableTransitions()}},onPropsChange:function(){this.coordinates=this.applyTransform(this.coordinates,!0),this.onChange(!1)},getAreaRestrictions:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.visibleArea,n=e.type,r=n===void 0?`move`:n;return this.areaRestrictionsAlgorithm({boundaries:this.boundaries,imageSize:this.imageSize,imageRestriction:this.imageRestriction,visibleArea:t,type:r})},getAspectRatio:function(e){var t,n,r=this.stencilProps,i=r.aspectRatio,a=r.minAspectRatio,o=r.maxAspectRatio;if(this.$refs.stencil&&this.$refs.stencil.aspectRatios){var s=this.$refs.stencil.aspectRatios();t=s.minimum,n=s.maximum}if(Y(t)&&(t=Y(i)?a:i),Y(n)&&(n=Y(i)?o:i),!e&&(Y(t)||Y(n))){var c=this.getStencilSize(),l=c?Q(c):null;Y(t)&&(t=ms(l)?l:void 0),Y(n)&&(n=ms(l)?l:void 0)}return{minimum:t,maximum:n}},getStencilSize:function(){if(this.stencilSize)return e={currentStencilSize:{width:this.stencilCoordinates.width,height:this.stencilCoordinates.height},stencilSize:this.stencilSize,boundaries:this.boundaries,coefficient:this.coefficient,coordinates:this.coordinates,aspectRatio:this.getAspectRatio(!0)},t=e.boundaries,n=e.stencilSize,r=e.aspectRatio,Vs(Q(i=us(n)?n({boundaries:t,aspectRatio:r}):n),r)&&(i=Qs({sizeRestrictions:{maxWidth:t.width,maxHeight:t.height,minWidth:0,minHeight:0},width:i.width,height:i.height,aspectRatio:{minimum:r.minimum,maximum:r.maximum}})),(i.width>t.width||i.height>t.height)&&(i=Qs({sizeRestrictions:{maxWidth:t.width,maxHeight:t.height,minWidth:0,minHeight:0},width:i.width,height:i.height,aspectRatio:{minimum:Q(i),maximum:Q(i)}})),i;var e,t,n,r,i},getPublicProperties:function(){return{coefficient:this.coefficient,visibleArea:this.visibleArea,coordinates:this.coordinates,boundaries:this.boundaries,sizeRestrictions:this.sizeRestrictions,positionRestrictions:this.positionRestrictions,aspectRatio:this.getAspectRatio(),imageRestriction:this.imageRestriction}},defaultCoordinates:function(){return K({},js)},flip:function(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).transitions,r=n===void 0||n;if(!this.transitionsActive){r&&this.enableTransitions();var i=K({},this.imageTransforms.flip),a=dc({flip:{horizontal:e?!i.horizontal:i.horizontal,vertical:t?!i.vertical:i.vertical},previousFlip:i,rotate:this.imageTransforms.rotate,visibleArea:this.visibleArea,coordinates:this.coordinates,imageSize:this.imageSize,positionRestrictions:this.positionRestrictions,sizeRestrictions:this.sizeRestrictions,getAreaRestrictions:this.getAreaRestrictions,aspectRatio:this.getAspectRatio()}),o=a.visibleArea,s=a.coordinates;e&&(this.appliedImageTransforms.flip.horizontal=!this.appliedImageTransforms.flip.horizontal),t&&(this.appliedImageTransforms.flip.vertical=!this.appliedImageTransforms.flip.vertical),this.visibleArea=o,this.coordinates=s,this.onChange(),r&&this.debouncedDisableTransitions()}},rotate:function(e){var t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).transitions,n=t===void 0||t;if(!this.transitionsActive){n&&this.enableTransitions();var r=K({},this.imageSize);this.appliedImageTransforms.rotate+=e;var i=uc({visibleArea:this.visibleArea,coordinates:this.coordinates,previousImageSize:r,imageSize:this.imageSize,angle:e,positionRestrictions:this.positionRestrictions,sizeRestrictions:this.sizeRestrictions,getAreaRestrictions:this.getAreaRestrictions,aspectRatio:this.getAspectRatio()}),a=i.visibleArea,o=i.coordinates,s=this.processAutoZoom(`rotateImage`,a,o);a=s.visibleArea,o=s.coordinates,this.visibleArea=a,this.coordinates=o,this.onChange(),n&&this.debouncedDisableTransitions()}}},emits:[`change`,`error`,`ready`]},Gc={key:0,ref:`canvas`,style:{display:`none`}},Kc={key:1,ref:`sourceCanvas`,style:{display:`none`}};Wc.render=function(e,t,r,a,o,s){return L(),A(`div`,{ref:`cropper`,class:s.classes.cropper},[u(`div`,{ref:`stretcher`,class:s.classes.stretcher},null,2),u(`div`,{class:s.classes.boundaries,style:s.boundariesStyle},[(L(),A(I(r.backgroundWrapperComponent),{class:s.classes.cropperWrapper,"wheel-resize":s.settings.resizeImage.wheel,"touch-resize":s.settings.resizeImage.touch,"touch-move":s.settings.moveImage.touch,"mouse-move":s.settings.moveImage.mouse,onMove:s.onManipulateImage,onResize:s.onManipulateImage},{default:M((function(){return[u(`div`,{class:s.classes.background,style:s.boundariesStyle},null,6),u(`div`,{class:s.classes.imageWrapper},[u(`img`,{ref:`image`,crossorigin:o.imageAttributes.crossOrigin,src:o.imageAttributes.src,class:s.classes.image,style:s.imageStyle,onMousedown:t[1]||=n((function(){}),[`prevent`])},null,46,[`crossorigin`,`src`])],2),u(`div`,{class:s.classes.foreground,style:s.boundariesStyle},null,6),O((L(),A(I(r.stencilComponent),i({ref:`stencil`,image:s.image,coordinates:o.coordinates,"stencil-coordinates":s.stencilCoordinates,transitions:s.transitionsOptions},r.stencilProps,{onResize:s.onResize,onResizeEnd:s.onResizeEnd,onMove:s.onMove,onMoveEnd:s.onMoveEnd}),null,16,[`image`,`coordinates`,`stencil-coordinates`,`transitions`,`onResize`,`onResizeEnd`,`onMove`,`onMoveEnd`])),[[ie,o.imageLoaded]]),r.canvas?(L(),A(`canvas`,Gc,null,512)):d(``,!0),r.canvas?(L(),A(`canvas`,Kc,null,512)):d(``,!0)]})),_:1},8,[`class`,`wheel-resize`,`touch-resize`,`touch-move`,`mouse-move`,`onMove`,`onResize`]))],6)],2)};var qc=e=>e===`favicon`?`brand`:`balanced`,Jc=(e,t,n)=>e===`favicon`?{light:n.color,dark:n.color}:t===`mono`?{light:n.light,dark:n.dark}:t===`brand`?{light:n.color,dark:n.color}:{light:n.color,dark:n.adaptiveDark||n.dark},Yc=z({name:`BrandAssetStudio`,components:{Cropper:Wc,EditIcon:Et,ElAlert:Ie,ElButton:W,ElButtonGroup:rr,ElColorPicker:oa,ElDialog:U,ElIcon:B,ElRadioButton:qe,ElRadioGroup:Je,ElSlider:st,ElSwitch:ct,ElTag:Fn,ElTooltip:Fe,ImageIcon:bt,RedoIcon:At,RefreshIcon:Ot,SortIcon:lt,UndoIcon:kt,UploadIcon:Ft,ZoomInIcon:ha,ZoomOutIcon:ga},props:{kind:{type:String,default:`logo`},title:{type:String,required:!0},tip:{type:String,required:!0},width:{type:Number,required:!0},height:{type:Number,required:!0}},emits:[`confirm`],data(){return{rectangleStencil:zc,editing:!1,step:`crop`,imageSrc:``,sourceBlob:null,analysis:null,assets:null,removeBackground:!1,backgroundColor:`#ffffff`,tolerance:42,appearance:qc(this.kind),analyzing:!1,processing:!1,processedSignature:``}},computed:{aspectRatio(){return this.width/this.height},busy(){return this.analyzing||this.processing},controlsSignature(){return`${this.removeBackground}:${this.backgroundColor.toLowerCase()}:${this.tolerance}`},controlsDirty(){return!!this.assets&&this.processedSignature!==this.controlsSignature},selectedUrls(){return this.assets?Jc(this.kind,this.appearance,{color:this.assets.color.url,light:this.assets.light.url,dark:this.assets.dark.url,adaptiveDark:this.assets.adaptive_dark?.url}):null},analysisSummary(){return this.analysis?this.$t(`site.logoStudio.analysisSummary`,{width:this.analysis.width,height:this.analysis.height,confidence:Math.round(this.analysis.background.confidence*100)}):``},defaultSizePercent(){return({imageSize:e})=>{let t=e.width*.9,n=t/this.aspectRatio;if(n<=e.height*.9)return{width:t,height:n};let r=e.height*.9;return{width:r*this.aspectRatio,height:r}}}},methods:{openPicker(){this.$refs.fileInput.click()},onPick(e){let t=e.target,n=t.files?.[0];n&&this.loadFile(n),t.value=``},onDrop(e){let t=e.dataTransfer?.files?.[0];t&&this.loadFile(t)},loadFile(e){if(!e.type.startsWith(`image/`)){H.error(this.$t(`site.imageCropper.invalidType`));return}let t=new FileReader;t.onload=e=>{this.imageSrc=e.target?.result||``},t.readAsDataURL(e)},onZoom(e){this.$refs.cropperRef?.zoom?.(e)},onRotate(e){this.$refs.cropperRef?.rotate?.(e)},onFlip(){this.$refs.cropperRef?.flip?.(!0,!1)},async croppedBlob(){let e=this.$refs.cropperRef?.getResult?.();if(!e?.canvas)throw Error(this.$t(`site.imageCropper.noImage`));let t=document.createElement(`canvas`),n=Math.max(3,Math.ceil(512/Math.max(this.width,this.height)));t.width=this.width*n,t.height=this.height*n;let r=t.getContext(`2d`);if(!r)throw Error(this.$t(`site.imageCropper.canvasError`));return r.drawImage(e.canvas,0,0,t.width,t.height),await new Promise((e,n)=>{t.toBlob(t=>t?e(t):n(Error(this.$t(`site.imageCropper.canvasError`))),`image/png`)})},async analyzeAndProcess(){this.analyzing=!0;try{this.sourceBlob=await this.croppedBlob();let e=new FormData;e.append(`file`,this.sourceBlob,`${this.kind}.png`);let{data:t}=await Bn.post(`/logo-assets/analyze/`,e,{headers:{"Content-Type":`multipart/form-data`},timeout:6e4});this.analysis=t.analysis,this.removeBackground=t.analysis.background.removable,this.backgroundColor=t.analysis.background.color||`#ffffff`,this.appearance=qc(this.kind),await this.processCurrent()&&(this.step=`preview`)}catch(e){this.showError(e)}finally{this.analyzing=!1}},async processCurrent(){if(!this.sourceBlob)return!1;this.processing=!0;try{let e=new FormData;e.append(`file`,this.sourceBlob,`${this.kind}.png`),e.append(`remove_background`,String(this.removeBackground)),e.append(`background_color`,this.backgroundColor),e.append(`tolerance`,String(this.tolerance));let{data:t}=await Bn.post(`/logo-assets/process/`,e,{headers:{"Content-Type":`multipart/form-data`},timeout:6e4});return this.assets=t.assets,this.processedSignature=this.controlsSignature,!0}catch(e){return this.showError(e),!1}finally{this.processing=!1}},confirm(){!this.assets||!this.selectedUrls||this.controlsDirty||(this.$emit(`confirm`,{color:this.assets.color.url,light:this.selectedUrls.light,dark:this.selectedUrls.dark}),this.editing=!1)},showError(e){let t=e?.response;H.error(t?.data?.error||t?.data?.detail||e?.message||this.$t(`site.imageCropper.uploadFailed`))},reset(){this.step=`crop`,this.imageSrc=``,this.sourceBlob=null,this.analysis=null,this.assets=null,this.removeBackground=!1,this.backgroundColor=`#ffffff`,this.tolerance=42,this.appearance=qc(this.kind),this.analyzing=!1,this.processing=!1,this.processedSignature=``}}}),Xc=[`aria-label`,`title`],Zc={key:0,class:`cropper-shell`},Qc={key:1,class:`studio`},$c={class:`analysis-row`},el={class:`controls`},tl={class:`control-row`},nl={key:0,class:`control-grid`},rl={class:`tolerance-control`},il={class:`theme-previews`},al={class:`theme-preview theme-preview--light`},ol=[`src`],sl={class:`theme-preview theme-preview--dark`},cl=[`src`];function ll(t,r,i,a,s,l){let f=T(`edit-icon`),m=T(`el-icon`),h=T(`Cropper`),g=T(`zoom-in-icon`),_=T(`el-button`),v=T(`el-tooltip`),b=T(`zoom-out-icon`),S=T(`undo-icon`),C=T(`redo-icon`),w=T(`sort-icon`),ee=T(`image-icon`),E=T(`el-button-group`),D=T(`upload-icon`),O=T(`el-tag`),k=T(`el-switch`),j=T(`el-color-picker`),te=T(`el-slider`),N=T(`refresh-icon`),P=T(`el-radio-button`),ne=T(`el-radio-group`),re=T(`el-alert`),F=T(`el-dialog`);return L(),p(x,null,[e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[0]||=e=>t.editing=!0,onKeydown:[r[1]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[2]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(m,null,{default:M(()=>[u(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Xc),u(F,{modelValue:t.editing,"onUpdate:modelValue":r[18]||=e=>t.editing=e,title:t.title,width:`min(880px, calc(100vw - 32px))`,"close-on-click-modal":!1,"append-to-body":``,onClosed:t.reset},{footer:M(()=>[u(_,{onClick:r[15]||=e=>t.editing=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),t.step===`preview`?(L(),A(_,{key:0,onClick:r[16]||=e=>t.step=`crop`},{default:M(()=>[o(c(t.$t(`site.logoStudio.back`)),1)]),_:1})):d(``,!0),u(_,{type:`primary`,loading:t.busy,disabled:t.step===`crop`?!t.imageSrc:!t.assets||t.controlsDirty,onClick:r[17]||=e=>t.step===`crop`?t.analyzeAndProcess():t.confirm()},{default:M(()=>[o(c(t.step===`crop`?t.$t(`site.logoStudio.analyze`):t.$t(`site.logoStudio.apply`)),1)]),_:1},8,[`loading`,`disabled`])]),default:M(()=>[t.step===`crop`?(L(),p(x,{key:0},[t.imageSrc?(L(),p(`div`,Zc,[u(h,{ref:`cropperRef`,class:`cropper`,src:t.imageSrc,"stencil-props":{aspectRatio:t.aspectRatio},"stencil-component":t.rectangleStencil,"default-size":t.defaultSizePercent,"resize-image":{adjustStencil:!1},"image-restriction":`fit-area`},null,8,[`src`,`stencil-props`,`stencil-component`,`default-size`]),u(E,{class:`toolbar`},{default:M(()=>[u(v,{content:t.$t(`site.imageCropper.zoomIn`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.zoomIn`),onClick:r[3]||=e=>t.onZoom(1.25)},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.zoomOut`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.zoomOut`),onClick:r[4]||=e=>t.onZoom(.8)},{default:M(()=>[u(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.rotateLeft`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.rotateLeft`),onClick:r[5]||=e=>t.onRotate(-90)},{default:M(()=>[u(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.rotateRight`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.rotateRight`),onClick:r[6]||=e=>t.onRotate(90)},{default:M(()=>[u(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.flipHorizontal`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.flipHorizontal`),onClick:t.onFlip},{default:M(()=>[u(w,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.replace`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.replace`),onClick:t.openPicker},{default:M(()=>[u(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:1},8,[`content`])]),_:1})])):(L(),p(`div`,{key:1,class:`dropzone`,onClick:r[7]||=(...e)=>t.openPicker&&t.openPicker(...e),onDrop:r[8]||=n((...e)=>t.onDrop&&t.onDrop(...e),[`prevent`]),onDragover:r[9]||=n(()=>{},[`prevent`])},[u(D,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,null,c(t.$t(`site.imageCropper.dropHere`)),1),e(`span`,null,c(t.tip),1)],32))],64)):(L(),p(`div`,Qc,[e(`div`,$c,[e(`div`,null,[e(`strong`,null,c(t.$t(`site.logoStudio.analysisReady`)),1),e(`span`,null,c(t.analysisSummary),1)]),u(O,{type:t.analysis?.background.removable?`success`:`info`,effect:`light`},{default:M(()=>[o(c(t.analysis?.background.removable?t.$t(`site.logoStudio.backgroundDetected`):t.$t(`site.logoStudio.transparentOrComplex`)),1)]),_:1},8,[`type`])]),e(`div`,el,[e(`div`,tl,[e(`span`,null,c(t.$t(`site.logoStudio.removeBackground`)),1),u(k,{modelValue:t.removeBackground,"onUpdate:modelValue":r[10]||=e=>t.removeBackground=e},null,8,[`modelValue`])]),t.removeBackground?(L(),p(`div`,nl,[e(`label`,null,[e(`span`,null,c(t.$t(`site.logoStudio.backgroundColor`)),1),u(j,{modelValue:t.backgroundColor,"onUpdate:modelValue":r[11]||=e=>t.backgroundColor=e,predefine:[`#ffffff`,`#000000`]},null,8,[`modelValue`])]),e(`label`,rl,[e(`span`,null,c(t.$t(`site.logoStudio.edgeTolerance`)),1),u(te,{modelValue:t.tolerance,"onUpdate:modelValue":r[12]||=e=>t.tolerance=e,min:20,max:96,step:1},null,8,[`modelValue`])]),u(_,{loading:t.processing,disabled:!t.controlsDirty,onClick:t.processCurrent},{default:M(()=>[u(N,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`site.logoStudio.refreshPreview`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])):d(``,!0)]),t.kind===`logo`?(L(),A(ne,{key:0,modelValue:t.appearance,"onUpdate:modelValue":r[13]||=e=>t.appearance=e,class:`appearance-picker`},{default:M(()=>[u(P,{value:`brand`},{default:M(()=>[o(c(t.$t(`site.logoStudio.modeBrand`)),1)]),_:1}),u(P,{value:`balanced`},{default:M(()=>[o(c(t.$t(`site.logoStudio.modeBalanced`)),1)]),_:1}),u(P,{value:`mono`},{default:M(()=>[o(c(t.$t(`site.logoStudio.modeMono`)),1)]),_:1})]),_:1},8,[`modelValue`])):d(``,!0),e(`div`,il,[e(`div`,al,[e(`span`,null,c(t.$t(`site.logoStudio.lightTheme`)),1),t.selectedUrls?(L(),p(`img`,{key:0,src:t.selectedUrls.light,alt:``},null,8,ol)):d(``,!0)]),e(`div`,sl,[e(`span`,null,c(t.$t(`site.logoStudio.darkTheme`)),1),t.selectedUrls?(L(),p(`img`,{key:0,src:t.selectedUrls.dark,alt:``},null,8,cl)):d(``,!0)])]),t.controlsDirty?(L(),A(re,{key:1,type:`warning`,closable:!1,"show-icon":``},{default:M(()=>[o(c(t.$t(`site.logoStudio.previewOutdated`)),1)]),_:1})):d(``,!0)])),e(`input`,{ref:`fileInput`,type:`file`,accept:`image/jpeg,image/png,image/webp`,hidden:``,onChange:r[14]||=(...e)=>t.onPick&&t.onPick(...e)},null,544)]),_:1},8,[`modelValue`,`title`,`onClosed`])],64)}var ul=G(Yc,[[`render`,ll],[`__scopeId`,`data-v-997a8592`]]),dl=new Map,fl=new Map,pl=new Set;function ml(e){e?.id&&(dl.set(e.id,e),pl.delete(e.id))}async function hl(e){return e?dl.has(e)?dl.get(e):pl.has(e)?null:gl(e):null}async function gl(e){if(dl.has(e))return dl.get(e);if(pl.has(e))return null;let t=fl.get(e);return t||(t=Di.resolve(e).then(t=>{let n=(t.data||[]).find(t=>t.id===e)||null;return n?dl.set(e,n):pl.add(e),n}).catch(()=>(pl.add(e),null)).finally(()=>{fl.delete(e)}),fl.set(e,t)),t}var _l=z({name:`UserChip`,components:{ElAvatar:Ge,ElIcon:B,UserIcon:It,WarningFilled:Pt},props:{userId:{type:String,default:``}},data(){return{user:null,state:`loading`}},computed:{shortId(){let e=this.userId||``;return e.length>8?e.slice(0,8):e}},watch:{userId:{immediate:!0,handler(e){this.load(e)}}},methods:{async load(e){if(!e){this.user=null,this.state=`ready`;return}if(dl.has(e)){this.user=dl.get(e),this.state=`ready`;return}if(pl.has(e)){this.user=null,this.state=`missing`;return}this.state=`loading`;let t=await gl(e);this.userId===e&&(t?(this.user=t,this.state=`ready`):(this.user=null,this.state=`missing`))}}}),vl={key:0,class:`user-chip__placeholder`},yl=[`title`],bl=[`title`],xl=[`title`],Sl={key:2,class:`user-chip__contact`};function Cl(t,n,r,i,o,s){let l=T(`warning-filled`),f=T(`el-icon`),m=T(`el-avatar`),h=T(`user-icon`);return L(),p(`span`,{class:a([`user-chip`,{"is-empty":!t.userId,"is-missing":!!t.userId&&t.state===`missing`}])},[t.userId?t.state===`loading`?(L(),p(`span`,{key:1,class:`user-chip__id`,title:t.userId},c(t.shortId),9,yl)):t.state===`missing`?(L(),p(x,{key:2},[u(f,{class:`user-chip__icon`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`span`,{class:`user-chip__id`,title:t.userId},c(t.shortId),9,bl)],64)):(L(),p(x,{key:3},[t.user?.avatar?(L(),A(m,{key:0,src:t.user.avatar,size:22,class:`user-chip__avatar`},null,8,[`src`])):(L(),A(m,{key:1,size:22,class:`user-chip__avatar`},{default:M(()=>[u(f,null,{default:M(()=>[u(h,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})]),_:1})),e(`span`,{class:`user-chip__name`,title:t.userId},c(t.user?.display_name||t.shortId),9,xl),t.user?.contact?(L(),p(`span`,Sl,c(t.user.contact),1)):d(``,!0)],64)):(L(),p(`span`,vl,`—`))],2)}var wl=G(_l,[[`render`,Cl],[`__scopeId`,`data-v-6efaf549`]]),Tl={__empty:!0,value:``,id:``},El=z({name:`UserPicker`,components:{ElAutocomplete:Bi,ElAvatar:Ge,ElIcon:B,SearchIcon:jt,UserIcon:It,WarningFilled:Pt},props:{placeholder:{type:String,default:``},excludeIds:{type:Array,default:()=>[]}},emits:[`select`],data(){return{input:``}},computed:{placeholderText(){return this.placeholder||this.$t(`site.message.editUserHint`)}},methods:{shortIdOf(e){let t=e.id||``;return t.length>8?t.slice(0,8):t},async onFetch(e){let t=(e||``).trim();if(!t)return[];try{let e=((await Di.resolve(t)).data||[]).map(e=>{ml(e);let t=this.excludeIds.includes(e.id);return{...e,value:e.display_name||e.nickname||this.shortIdOf(e),__excluded:t}});return e.length===0?[Tl]:e}catch{return[Tl]}},onSelect(e){if(e&&(e.__empty||e.__excluded)){this.input=``;return}let t=e;ml(t),this.$emit(`select`,t),this.input=``},onClear(){this.input=``},onInput(){},focus(){let e=this.$refs.auto?.focus;typeof e==`function`&&e.call(this.$refs.auto)}}}),Dl={class:`user-picker__empty-text`},Ol={class:`user-picker__option-text`},kl={class:`user-picker__option-name`},Al={class:`user-picker__option-contact`},jl={key:2,class:`user-picker__excluded-tag`};function Ml(t,n,r,i,o,s){let l=T(`search-icon`),f=T(`el-icon`),m=T(`warning-filled`),h=T(`el-avatar`),g=T(`user-icon`),_=T(`el-autocomplete`);return L(),A(_,{ref:`auto`,modelValue:t.input,"onUpdate:modelValue":n[0]||=e=>t.input=e,"fetch-suggestions":t.onFetch,placeholder:t.placeholderText,debounce:350,"trigger-on-focus":!1,"hide-loading":!1,"value-key":`value`,"popper-class":`user-picker__popper`,clearable:``,onSelect:t.onSelect,onClear:t.onClear,onInput:t.onInput},{prefix:M(()=>[u(f,null,{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})]),default:M(({item:n})=>[e(`div`,{class:a([`user-picker__option`,{"user-picker__option--empty":n.__empty,"user-picker__option--excluded":n.__excluded}])},[n.__empty?(L(),p(x,{key:0},[u(f,{class:`user-picker__empty-icon`},{default:M(()=>[u(m,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`span`,Dl,c(t.$t(`site.message.userNotFound`)),1)],64)):(L(),p(x,{key:1},[n.avatar?(L(),A(h,{key:0,src:n.avatar,size:32,class:`user-picker__avatar`},null,8,[`src`])):(L(),A(h,{key:1,size:32,class:`user-picker__avatar`},{default:M(()=>[u(f,null,{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})]),_:1})),e(`div`,Ol,[e(`div`,kl,c(n.display_name),1),e(`div`,Al,c(n.contact||t.shortIdOf(n)),1)]),n.__excluded?(L(),p(`span`,jl,c(t.$t(`site.message.userAlreadyAdded`)),1)):d(``,!0)],64))],2)]),_:1},8,[`modelValue`,`fetch-suggestions`,`placeholder`,`onSelect`,`onClear`,`onInput`])}var Nl=G(El,[[`render`,Ml],[`__scopeId`,`data-v-d570686b`]]),Pl=z({name:`EditUsers`,components:{ElDialog:U,ElButton:W,ElIcon:B,ElDivider:Xe,Edit:Et,Close:Br,WarningFilled:Pt,UserChip:wl,UserPicker:Nl},props:{modelValue:{type:Array,default:()=>[]},title:{type:String,required:!0},min:{type:Number,default:0},minErrorMessage:{type:String,default:``},removeLabel:{type:String,default:``}},emits:[`confirm`,`cancel`],data(){return{editing:!1,working:[],errorMessage:``}},computed:{canConfirm(){return this.working.length>=this.min}},methods:{onOpen(){this.editing=!0,this.working=[...this.modelValue],this.errorMessage=``},onAdd(e){e?.id&&(this.working.includes(e.id)||(this.working=[...this.working,e.id],this.errorMessage=``))},onRemove(e){if(this.working.length<=this.min){this.errorMessage=this.minErrorMessage;return}this.working=this.working.filter(t=>t!==e)},onCancel(){this.editing=!1,this.$emit(`cancel`)},onConfirm(){if(!this.canConfirm){this.errorMessage=this.minErrorMessage;return}this.$emit(`confirm`,this.working),this.editing=!1}}}),Fl={class:`edit-body`},Il={key:0,class:`empty`},Ll={class:`empty-text`},Rl={key:1,class:`chip-list`},zl={class:`tip`},Bl={key:2,class:`error`},Vl={class:`dialog-footer`},Hl=[`aria-label`,`title`];function Ul(t,r,i,a,s,l){let f=T(`user-chip`),m=T(`close`),h=T(`el-icon`),g=T(`el-divider`),_=T(`user-picker`),v=T(`warning-filled`),b=T(`el-button`),S=T(`el-dialog`),C=T(`edit`);return L(),p(x,null,[u(S,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,width:`520px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,Vl,[u(b,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(b,{round:``,type:`primary`,disabled:!t.canConfirm,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])])]),default:M(()=>[e(`div`,Fl,[t.working.length===0?(L(),p(`div`,Il,[e(`span`,Ll,c(t.$t(`site.message.editUsersEmpty`)),1)])):(L(),p(`ul`,Rl,[(L(!0),p(x,null,F(t.working,e=>(L(),p(`li`,{key:e,class:`chip-item`},[u(f,{"user-id":e},null,8,[`user-id`]),u(h,{class:`chip-remove`,role:`button`,tabindex:`0`,"aria-label":t.removeLabel||t.$t(`common.button.remove`),title:t.removeLabel||t.$t(`common.button.remove`),onClick:n=>t.onRemove(e),onKeydown:[y(n(n=>t.onRemove(e),[`prevent`]),[`enter`]),y(n(n=>t.onRemove(e),[`prevent`]),[`space`])]},{default:M(()=>[u(m,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`,`onClick`,`onKeydown`])]))),128))])),u(g,{class:`divider`},{default:M(()=>[o(c(t.$t(`site.title.addUser`)),1)]),_:1}),u(_,{"exclude-ids":t.working,onSelect:t.onAdd},null,8,[`exclude-ids`,`onSelect`]),e(`p`,zl,c(t.$t(`site.message.editUserHint`)),1),t.errorMessage?(L(),p(`p`,Bl,[u(h,{class:`error-icon`},{default:M(()=>[u(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),o(` `+c(t.errorMessage),1)])):d(``,!0)])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[2]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[3]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(h,{class:`icon`},{default:M(()=>[u(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Hl)],64)}var Wl=G(Pl,[[`render`,Ul],[`__scopeId`,`data-v-63627034`]]),Gl=z({name:`EditLocales`,components:{Edit:Et,ElButton:W,ElDialog:U,ElIcon:B,ElOption:we,ElSelect:Ce},props:{modelValue:{type:Array,required:!0},title:{type:String,required:!0}},emits:[`confirm`],data(){return{editing:!1,working:[],options:An}},methods:{onOpen(){this.working=[...this.modelValue],this.editing=!0},onConfirm(){this.working.length!==0&&(this.$emit(`confirm`,this.working),this.editing=!1)}}}),Kl={class:`edit-body locale-edit-body`},ql={key:0,class:`error`},Jl={class:`dialog-footer`},Yl=[`aria-label`,`title`];function Xl(t,r,i,a,s,l){let f=T(`el-option`),m=T(`el-select`),h=T(`el-button`),g=T(`el-dialog`),_=T(`edit`),v=T(`el-icon`);return L(),p(x,null,[u(g,{modelValue:t.editing,"onUpdate:modelValue":r[2]||=e=>t.editing=e,title:t.title,width:`min(520px, 94vw)`,class:`edit-dialog`,"append-to-body":``},{footer:M(()=>[e(`span`,Jl,[u(h,{round:``,onClick:r[1]||=e=>t.editing=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(h,{round:``,type:`primary`,disabled:t.working.length===0,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])])]),default:M(()=>[e(`div`,Kl,[u(m,{modelValue:t.working,"onUpdate:modelValue":r[0]||=e=>t.working=e,multiple:``,filterable:``,"collapse-tags":``,"collapse-tags-tooltip":``,"max-collapse-tags":4,placeholder:t.$t(`site.placeholder.supportedLocales`),class:`locale-select`},{default:M(()=>[(L(!0),p(x,null,F(t.options,e=>(L(),A(f,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`]),t.working.length===0?(L(),p(`p`,ql,c(t.$t(`site.message.atLeastOneLocale`)),1)):d(``,!0)])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[3]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[4]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[5]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(v,{class:`icon`},{default:M(()=>[u(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Yl)],64)}var Zl=G(Gl,[[`render`,Xl],[`__scopeId`,`data-v-116b42a2`]]),Ql=z({name:`ImageCropper`,components:{ElDialog:U,ElButton:W,ElButtonGroup:rr,ElIcon:B,ElTooltip:Fe,ZoomIn:ha,ZoomOut:ga,RefreshLeft:kt,RefreshRight:At,ImageIcon:bt,Upload:Ft,Sort:lt,Cropper:Wc},props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:``},shape:{type:String,default:`rectangle`},aspectRatio:{type:Number,default:1},outputWidth:{type:Number,default:512},accept:{type:String,default:`image/*`},dialogWidth:{type:String,default:`640px`},formatHint:{type:String,default:``}},emits:[`update:modelValue`,`uploaded`],data(){return{imageSrc:``,sourceMime:``,uploading:!1,Upload:Ft}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit(`update:modelValue`,e)}},stencilComponent(){return this.shape===`circle`?Vc:zc},stencilProps(){return this.shape===`circle`?{aspectRatio:1}:{aspectRatio:this.aspectRatio}},defaultSizePercent(){return({imageSize:e})=>{let t=this.aspectRatio,n=e.width*.9,r=n/t;if(r<=e.height*.9)return{width:n,height:r};let i=e.height*.9;return{width:i*t,height:i}}},resolvedFormatHint(){return this.formatHint||this.$t(`site.imageCropper.formatHint`)}},watch:{modelValue(e){e&&(this.imageSrc=``)}},methods:{openPicker(){this.$refs.fileInput.click()},onPick(e){let t=e.target,n=t.files?.[0];n&&this.loadFile(n),t.value=``},onDrop(e){let t=e.dataTransfer?.files?.[0];t&&this.loadFile(t)},loadFile(e){if(!e.type.startsWith(`image/`)){H.error(this.$t(`site.imageCropper.invalidType`));return}this.sourceMime=e.type;let t=new FileReader;t.onload=e=>{this.imageSrc=e.target?.result||``},t.readAsDataURL(e)},hasAlpha(){let e=this.sourceMime;return e===`image/png`||e===`image/webp`||e===`image/gif`},onZoom(e){this.$refs.cropperRef?.zoom?.(e)},onRotate(e){this.$refs.cropperRef?.rotate?.(e)},onFlip(e,t){this.$refs.cropperRef?.flip?.(e,t)},onClosed(){this.imageSrc=``,this.sourceMime=``,this.uploading=!1},async onConfirm(){let e=this.$refs.cropperRef?.getResult?.()?.canvas;if(!e){H.error(this.$t(`site.imageCropper.noImage`));return}let t=this.outputWidth,n=Math.round(t/this.aspectRatio),r=document.createElement(`canvas`);r.width=t,r.height=n;let i=r.getContext(`2d`);if(!i){H.error(this.$t(`site.imageCropper.canvasError`));return}i.drawImage(e,0,0,t,n);let a=this.hasAlpha(),o=a?`image/png`:`image/jpeg`,s=a?`png`:`jpg`;this.uploading=!0;try{let e=await new Promise((e,t)=>{r.toBlob(n=>n?e(n):t(Error(`toBlob failed`)),o,.92)}),t=`image-${Date.now()}.${s}`,n=new FormData;n.append(`file`,e,t);let{data:i}=await Bn.post(`/files/`,n,{headers:{"Content-Type":`multipart/form-data`},timeout:6e4});this.$emit(`uploaded`,i.file_url),this.visible=!1}catch(e){let t=e;H.error(t?.response?.data?.detail||t?.response?.data?.error||t?.message||this.$t(`site.imageCropper.uploadFailed`))}finally{this.uploading=!1}}}}),$l={key:0,class:`cropper-shell`},eu={class:`toolbar`},tu={class:`dropzone-text`},nu={class:`dropzone-hint`},ru=[`accept`];function iu(t,r,i,a,s,l){let d=T(`Cropper`),f=T(`zoom-in`),m=T(`el-button`),h=T(`el-tooltip`),g=T(`zoom-out`),_=T(`refresh-left`),v=T(`refresh-right`),y=T(`sort`),b=T(`image-icon`),x=T(`el-button-group`),S=T(`Upload`),C=T(`el-icon`),w=T(`el-dialog`);return L(),A(w,{modelValue:t.visible,"onUpdate:modelValue":r[10]||=e=>t.visible=e,title:t.title,width:t.dialogWidth,"close-on-click-modal":!1,"append-to-body":``,onClosed:t.onClosed},{footer:M(()=>[u(m,{onClick:r[9]||=e=>t.visible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(m,{type:`primary`,loading:t.uploading,disabled:!t.imageSrc,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:M(()=>[t.imageSrc?(L(),p(`div`,$l,[u(d,{ref:`cropperRef`,class:`cropper`,src:t.imageSrc,"stencil-props":t.stencilProps,"stencil-component":t.stencilComponent,"default-size":t.defaultSizePercent,"resize-image":{adjustStencil:!1},"image-restriction":`fit-area`},null,8,[`src`,`stencil-props`,`stencil-component`,`default-size`]),e(`div`,eu,[u(x,null,{default:M(()=>[u(h,{content:t.$t(`site.imageCropper.zoomIn`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.zoomIn`),title:t.$t(`site.imageCropper.zoomIn`),onClick:r[0]||=e=>t.onZoom(1.25)},{default:M(()=>[u(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.zoomOut`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.zoomOut`),title:t.$t(`site.imageCropper.zoomOut`),onClick:r[1]||=e=>t.onZoom(.8)},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.rotateLeft`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.rotateLeft`),title:t.$t(`site.imageCropper.rotateLeft`),onClick:r[2]||=e=>t.onRotate(-90)},{default:M(()=>[u(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.rotateRight`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.rotateRight`),title:t.$t(`site.imageCropper.rotateRight`),onClick:r[3]||=e=>t.onRotate(90)},{default:M(()=>[u(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.flipHorizontal`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.flipHorizontal`),title:t.$t(`site.imageCropper.flipHorizontal`),onClick:r[4]||=e=>t.onFlip(!0,!1)},{default:M(()=>[u(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.replace`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.replace`),title:t.$t(`site.imageCropper.replace`),onClick:t.openPicker},{default:M(()=>[u(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`,`onClick`])]),_:1},8,[`content`])]),_:1})])])):(L(),p(`div`,{key:1,class:`dropzone`,onClick:r[5]||=(...e)=>t.openPicker&&t.openPicker(...e),onDrop:r[6]||=n((...e)=>t.onDrop&&t.onDrop(...e),[`prevent`]),onDragover:r[7]||=n(()=>{},[`prevent`])},[u(C,{class:`dropzone-icon`},{default:M(()=>[u(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`p`,tu,c(t.$t(`site.imageCropper.dropHere`)),1),e(`p`,nu,c(t.resolvedFormatHint),1)],32)),e(`input`,{ref:`fileInput`,type:`file`,accept:t.accept,hidden:``,onChange:r[8]||=(...e)=>t.onPick&&t.onPick(...e)},null,40,ru)]),_:1},8,[`modelValue`,`title`,`width`,`onClosed`])}var au=G(Ql,[[`render`,iu],[`__scopeId`,`data-v-92074016`]]),ou=z({name:`EditImage`,components:{ElIcon:B,Edit:Et,ImageCropper:au},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},tip:{type:String,required:!0},width:{type:Number,default:200},height:{type:Number,default:200}},emits:[`confirm`,`cancel`],data(){return{editing:!1}},computed:{aspectRatio(){return this.width/this.height},outputWidth(){let e=Math.max(this.width,this.height),t=Math.max(1,Math.ceil(512/e));return this.width*t}},methods:{onUploaded(e){this.$emit(`confirm`,e)}}}),su=[`aria-label`,`title`];function cu(t,r,i,a,o,s){let c=T(`image-cropper`),l=T(`edit`),d=T(`el-icon`);return L(),p(x,null,[u(c,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,"aspect-ratio":t.aspectRatio,"output-width":t.outputWidth,"format-hint":t.tip,shape:`rectangle`,onUploaded:t.onUploaded},null,8,[`modelValue`,`title`,`aspect-ratio`,`output-width`,`format-hint`,`onUploaded`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=e=>t.editing=!0,onKeydown:[r[2]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[3]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(d,{class:`icon`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,su)],64)}var lu=G(ou,[[`render`,cu],[`__scopeId`,`data-v-7646724c`]]),uu={discord:{icon:jr,fontAwesome:!0,scheme:`text`,brand:`Discord`},x:{icon:hr,fontAwesome:!0,scheme:`text`,brand:`X`},twitter:{icon:hr,fontAwesome:!0,scheme:`text`,brand:`X`},wechat:{icon:ki,fontAwesome:!0,scheme:`text`},telegram:{icon:wr,fontAwesome:!0,scheme:`text`,brand:`Telegram`},whatsapp:{icon:kr,fontAwesome:!0,scheme:`text`,brand:`WhatsApp`},facebook:{icon:gi,fontAwesome:!0,scheme:`text`,brand:`Facebook`},instagram:{icon:oi,fontAwesome:!0,scheme:`text`,brand:`Instagram`},youtube:{icon:zn,fontAwesome:!0,scheme:`text`,brand:`YouTube`},tiktok:{icon:bi,fontAwesome:!0,scheme:`text`,brand:`TikTok`},linkedin:{icon:Hr,fontAwesome:!0,scheme:`text`,brand:`LinkedIn`},github:{icon:Nr,fontAwesome:!0,scheme:`text`,brand:`GitHub`},qq:{icon:zr,fontAwesome:!0,scheme:`text`,brand:`QQ`},line:{icon:$r,fontAwesome:!0,scheme:`text`,brand:`LINE`},phone:{icon:pa,scheme:`tel`},email:{icon:mt,scheme:`mailto`},website:{icon:yt,scheme:`text`}},du={icon:Tt,scheme:`text`},fu=e=>(e||``).trim().toLowerCase(),pu=e=>uu[fu(e)]||du,mu=e=>pu(e).icon,hu=e=>!!pu(e).fontAwesome,gu=e=>pu(e).brand||``,_u=new Set([`phone`,`email`,`website`,`wechat`]),vu=e=>{let t=fu(e);return _u.has(t)?`common.settings.contactType_${t}`:``},yu=[`wechat`,`phone`,`email`,`discord`,`x`,`telegram`,`whatsapp`,`website`],bu=/^[a-z][a-z0-9_-]{0,31}$/,xu=/^https?:\/\/[^\s/?#]+/i,Su=/^[^@\s]+@[^@\s]+\.[^@\s]+$/,Cu=/^[+()\-.\s0-9]{3,40}$/,wu=2048,Tu=254,Eu=200,Du=100,Ou=30,ku=z({name:`EditContacts`,components:{ElDialog:U,ElInput:Qn,ElButton:W,ElIcon:B,ElImage:Ei,ElSelect:Ce,ElOption:we,Edit:Et,Plus:Dt,Delete:Nt,EditImage:lu,FontAwesomeIcon:Fi},props:{modelValue:{type:Array,default:()=>[]},title:{type:String,required:!0}},emits:[`confirm`,`cancel`],data(){return{Plus:Dt,Delete:Nt,editing:!1,rows:this.toRows(this.modelValue)}},computed:{typeOptions(){let e=new Set(yu),t=yu.map(e=>({value:e,label:this.typeLabel(e)}));for(let n of this.rows){let r=(n.type||``).trim().toLowerCase();r&&!e.has(r)&&(e.add(r),t.push({value:r,label:this.typeLabel(r)}))}return t}},watch:{modelValue(e){this.editing||(this.rows=this.toRows(e))}},methods:{contactUsesFontAwesome:hu,toRows(e){return(e||[]).map(e=>({type:e.type||``,label:e.label||``,value:e.value||``,url:e.url||``,qr:e.qr||``}))},rowIcon(e){return mu(e)},typeLabel(e){let t=gu(e);if(t)return t;let n=vu(e);return n?this.$t(n):e},valuePlaceholder(e){let t=(e||``).trim().toLowerCase();return t===`phone`?`+86 400-000-0000`:t===`email`?`support@example.com`:this.$t(`common.settings.contactValuePlaceholder`)},onOpen(){this.rows=this.toRows(this.modelValue),this.rows.length===0&&this.addRow(),this.editing=!0},onCancel(){this.editing=!1,this.$emit(`cancel`)},addRow(){this.rows.push({type:``,label:``,value:``,url:``,qr:``})},removeRow(e){this.rows.splice(e,1)},isBlankRow(e){return!e.type.trim()&&!e.label.trim()&&!e.value.trim()&&!e.url.trim()&&!e.qr.trim()},validate(){let e=this.rows.filter(e=>!this.isBlankRow(e));if(e.length>Ou)return this.$t(`common.settings.contactTooMany`,{max:Ou});let t=e=>!xu.test(e)||e.length>wu;for(let n of e){let e=n.type.trim().toLowerCase();if(!bu.test(e))return this.$t(`common.settings.contactInvalidType`);let r=n.value.trim(),i=n.url.trim(),a=n.qr.trim();if(!r&&!i&&!a)return this.$t(`common.settings.contactRowNeedsValue`);if(n.label.trim().length>Du)return this.$t(`common.settings.contactInvalidValue`);if(i&&t(i))return this.$t(`common.settings.contactInvalidUrl`,{field:this.typeLabel(e)});if(a&&t(a))return this.$t(`common.settings.contactInvalidUrl`,{field:this.$t(`common.settings.contactQr`)});if(r){if(e===`phone`&&!Cu.test(r))return this.$t(`common.settings.contactInvalidPhone`);if(e===`email`&&(!Su.test(r)||r.length>Tu))return this.$t(`common.settings.contactInvalidEmail`);if(e!==`phone`&&e!==`email`&&r.length>Eu)return this.$t(`common.settings.contactInvalidValue`)}}return``},buildContacts(){return this.rows.filter(e=>!this.isBlankRow(e)).map(e=>{let t={type:e.type.trim().toLowerCase()};return e.label.trim()&&(t.label=e.label.trim()),e.value.trim()&&(t.value=e.value.trim()),e.url.trim()&&(t.url=e.url.trim()),e.qr.trim()&&(t.qr=e.qr.trim()),t})},onConfirm(){let e=this.validate();if(e){H.error(e);return}this.$emit(`confirm`,this.buildContacts()),this.editing=!1}}}),Au={class:`hint`},ju={class:`rows`},Mu={class:`row-head`},Nu={class:`qr-row`},Pu={class:`qr-label`},Fu={class:`dialog-footer`},Iu=[`aria-label`,`title`];function Lu(t,r,i,a,s,l){let f=T(`font-awesome-icon`),m=T(`el-option`),h=T(`el-select`),g=T(`delete`),_=T(`el-button`),v=T(`el-input`),b=T(`el-image`),S=T(`edit-image`),C=T(`plus`),w=T(`el-dialog`),ee=T(`edit`),E=T(`el-icon`);return L(),p(x,null,[u(w,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,width:`560px`,class:`edit-contacts-dialog`,"append-to-body":``},{footer:M(()=>[e(`span`,Fu,[u(_,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(_,{round:``,type:`primary`,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])])]),default:M(()=>[e(`p`,Au,c(t.$t(`common.settings.contactEditorHint`)),1),e(`div`,ju,[(L(!0),p(x,null,F(t.rows,(n,r)=>(L(),p(`div`,{key:r,class:`contact-row`},[e(`div`,Mu,[t.contactUsesFontAwesome(n.type)?(L(),A(f,{key:0,icon:t.rowIcon(n.type),class:`row-icon`},null,8,[`icon`])):(L(),A(I(t.rowIcon(n.type)),{key:1,class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),u(h,{modelValue:n.type,"onUpdate:modelValue":e=>n.type=e,filterable:``,"allow-create":``,"default-first-option":``,class:`type-select`,placeholder:t.$t(`common.settings.contactType`)},{default:M(()=>[(L(!0),p(x,null,F(t.typeOptions,e=>(L(),A(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),u(_,{link:``,type:`danger`,onClick:e=>t.removeRow(r)},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.button.delete`)),1)]),_:1},8,[`onClick`])]),u(v,{modelValue:n.label,"onUpdate:modelValue":e=>n.label=e,class:`row-field`,placeholder:t.$t(`common.settings.contactLabelPlaceholder`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),u(v,{modelValue:n.value,"onUpdate:modelValue":e=>n.value=e,class:`row-field`,placeholder:t.valuePlaceholder(n.type)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),u(v,{modelValue:n.url,"onUpdate:modelValue":e=>n.url=e,class:`row-field`,placeholder:`https://...`},null,8,[`modelValue`,`onUpdate:modelValue`]),e(`div`,Nu,[e(`span`,Pu,c(t.$t(`common.settings.contactQr`)),1),n.qr?(L(),A(b,{key:0,src:n.qr,class:`qr-thumb`,fit:`contain`},null,8,[`src`])):d(``,!0),u(S,{"model-value":n.qr,title:t.$t(`common.settings.contactQr`),tip:t.$t(`common.settings.contactQrTip`),width:200,height:200,onConfirm:e=>n.qr=e},null,8,[`model-value`,`title`,`tip`,`onConfirm`]),n.qr?(L(),A(_,{key:1,link:``,type:`danger`,onClick:e=>n.qr=``},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`onClick`])):d(``,!0)])]))),128))]),u(_,{class:`add-btn`,onClick:t.addRow},{default:M(()=>[u(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.settings.contactAdd`)),1)]),_:1},8,[`onClick`])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[2]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[3]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(E,{class:`icon`},{default:M(()=>[u(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Iu)],64)}var Ru=G(ku,[[`render`,Lu],[`__scopeId`,`data-v-eb19330b`]]),zu=z({name:`AutoTranslateToggle`,components:{GlobeIcon:yt,ElButton:W,ElTooltip:Fe},props:{model:{type:String,required:!0},objectId:{type:String,default:void 0},field:{type:String,required:!0},enabled:{type:Boolean,default:!1},currentValue:{type:String,default:``},disabledReason:{type:String,default:``}},emits:[`update:enabled`,`enabled-success`,`disabled-success`],data(){return{busy:!1}},computed:{isDisabled(){return!this.objectId},tooltipContent(){return this.isDisabled?this.disabledReason||this.$t(`site.autoTranslate.tooltipDisabledNotSaved`):this.enabled?this.$t(`site.autoTranslate.tooltipOn`):this.$t(`site.autoTranslate.tooltipOff`)}},methods:{async onClick(){this.busy||this.isDisabled||!this.objectId||(this.enabled?await this.onDisable():await this.onEnable())},async onEnable(){if(!this.objectId)return;let e=(this.currentValue??``).trim();if(!e){H.warning(this.$t(`site.autoTranslate.empty`));return}try{await xi.confirm(this.$t(`site.autoTranslate.confirmEnable`),this.$t(`site.autoTranslate.tooltipOff`),{type:`info`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.busy=!0;try{let{data:t}=await fr.enable({model:this.model,object_id:this.objectId,field:this.field,content:e});this.$emit(`update:enabled`,!0);let n={source:t.source,fieldValue:t.field_value};this.$emit(`enabled-success`,n)}catch(e){this.handleError(e)}finally{this.busy=!1}},async onDisable(){if(this.objectId){try{await xi.confirm(this.$t(`site.autoTranslate.confirmDisable`),this.$t(`site.autoTranslate.tooltipOn`),{type:`warning`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.busy=!0;try{let{data:e}=await fr.disable({model:this.model,object_id:this.objectId,field:this.field});this.$emit(`update:enabled`,!1);let t={fieldValue:e.field_value};this.$emit(`disabled-success`,t)}catch(e){this.handleError(e)}finally{this.busy=!1}}},handleError(e){let t=e?.response?.data?.detail;H.error(t||this.$t(`site.autoTranslate.error`))}}}),Bu={class:`icon-wrap`},Vu={key:0,class:`dot`};function Hu(t,n,r,i,o,s){let c=T(`globe-icon`),l=T(`el-button`),f=T(`el-tooltip`);return L(),A(f,{effect:`dark`,content:t.tooltipContent,placement:`top`},{default:M(()=>[u(l,{class:a([`auto-translate-toggle`,{"is-on":t.enabled,"is-off":!t.enabled}]),loading:t.busy,disabled:t.isDisabled,"aria-label":t.tooltipContent,title:t.tooltipContent,circle:``,size:`small`,type:t.enabled?`primary`:`default`,onClick:t.onClick},{default:M(()=>[e(`span`,Bu,[u(c,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),t.enabled?(L(),p(`span`,Vu)):d(``,!0)])]),_:1},8,[`class`,`loading`,`disabled`,`aria-label`,`title`,`type`,`onClick`])]),_:1},8,[`content`])}var Uu=G(zu,[[`render`,Hu],[`__scopeId`,`data-v-75a2e84a`]]),Wu={info:xt,admin:fa,official:yt},Gu=z({name:`SettingSectionNotice`,props:{text:{type:String,default:``},tone:{type:String,default:`info`,validator:e=>[`info`,`admin`,`official`].includes(e)}},computed:{resolvedIcon(){return Wu[this.tone]||xt}}}),Ku={class:`text`};function qu(t,n,r,i,s,l){return L(),p(`div`,{class:a([`setting-notice`,t.tone])},[(L(),A(I(t.resolvedIcon),{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,Ku,[k(t.$slots,`default`,{},()=>[o(c(t.text),1)],!0)])],2)}var Ju=G(Gu,[[`render`,qu],[`__scopeId`,`data-v-8e3ef39a`]]),Yu=[`#277186`,`#0ea5e9`,`#2563eb`,`#7c3aed`,`#db2777`,`#dc2626`,`#ea580c`,`#16a34a`,`#0d9488`,`#475569`],Xu=z({name:`SiteSetting`,components:{EditText:Yo,BrandAssetStudio:ul,EditUsers:Wl,EditLocales:Zl,EditContacts:Ru,UserChip:wl,AutoTranslateToggle:Uu,ElButton:W,ElColorPicker:oa,ElImage:Ei,ElOption:we,ElSelect:Ce,ElTag:Fn,FontAwesomeIcon:Fi,SectionNotice:Ju},data(){return{primaryColorPresets:Yu}},computed:{site(){return this.$store.getters.site||{}},titleSource(){return this.site?.title_source??this.site?.title??``},autoTranslatedFields(){return this.site?.auto_translated_fields??[]},storedPrimaryColor(){return this.site?.theme?.primary_color},currentPrimaryColor(){return this.storedPrimaryColor||`#277186`},hasCustomPrimaryColor(){let e=this.storedPrimaryColor;return!!e&&e.toLowerCase()!==`#277186`},supportedLocaleValues(){return this.site?.supported_locales?.length?[...this.site.supported_locales]:An.map(e=>e.value)},supportedLocalesSummary(){if(!this.site?.supported_locales?.length)return this.$t(`site.message.allLocales`);let e=new Set(this.site.supported_locales);return An.filter(t=>e.has(t.value)).map(e=>e.label).join(`、`)},contacts(){return wi(this.site)},forcedLocaleValue(){return this.site?.forced_locale||``},forcedLocaleOptions(){return Kn(this.site?.supported_locales)},hasContacts(){return or(this.site)}},methods:{contactUsesFontAwesome:hu,contactIconFor(e){return mu(e)},contactSummary(e){if(e.label)return e.label;if(e.value)return e.value;let t=gu(e.type);if(t)return t;let n=vu(e.type);return n?this.$t(n):e.type},onLogoProcessed(e){this.onSave({logo:e.color,logo_light:e.light,logo_dark:e.dark})},onFaviconProcessed(e){this.onSave({favicon:e.color})},onSave(e){let t={...In(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})},onSaveContacts(e){let t={...this.site?.branding||{}};Array.isArray(e)&&e.length>0?t.contacts=e:delete t.contacts,this.onSave({branding:t})},onSaveSupportedLocales(e){let t=e.length===An.length?null:e,n={supported_locales:t},r=this.site?.forced_locale;r&&t&&!t.includes(r)&&(n.forced_locale=null),this.onSave(n)},onSaveForcedLocale(e){this.onSave({forced_locale:e||null})},onTranslationChanged(){this.$store.dispatch(`getSite`)},onPrimaryColorPicked(e){let t=e||void 0;this.persistPrimaryColor(t)},onPrimaryColorReset(){this.persistPrimaryColor(void 0)},persistPrimaryColor(e){Zr(e||null);let t={...this.site?.theme||{},primary_color:e};e||delete t.primary_color,this.onSave({theme:t})}}}),Zu={class:`settings-list`},Qu={class:`settings-item`},$u={class:`settings-label`},ed={class:`settings-title`},td={class:`settings-tip`},nd={class:`settings-content`},rd={class:`settings-value`},id={class:`settings-item`},ad={class:`settings-label`},od={class:`settings-title`},sd={class:`settings-tip`},cd={class:`settings-content`},ld={class:`settings-value`},ud={class:`settings-actions`},dd={class:`settings-item`},fd={class:`settings-label`},pd={class:`settings-title`},md={class:`settings-tip`},hd={class:`settings-content`},gd={class:`settings-item`},_d={class:`settings-label`},vd={class:`settings-title`},yd={class:`settings-tip`},bd={class:`settings-content`},xd={class:`settings-item`},Sd={class:`settings-label`},Cd={class:`settings-title`},wd={class:`settings-tip`},Td={class:`settings-content primary-color-content`},Ed={class:`settings-value primary-color-value`},Dd={class:`settings-item`},Od={class:`settings-label`},kd={class:`settings-title`},Ad={class:`settings-tip`},jd={class:`settings-content`},Md={class:`settings-value`},Nd={class:`settings-item`},Pd={class:`settings-label`},Fd={class:`settings-title`},Id={class:`settings-tip`},Ld={class:`settings-content`},Rd={class:`settings-item`},zd={class:`settings-label`},Bd={class:`settings-title`},Vd={class:`settings-tip`},Hd={class:`settings-content`},Ud={class:`admins-list`},Wd={class:`settings-item`},Gd={class:`settings-label`},Kd={class:`settings-title`},qd={class:`settings-tip`},Jd={class:`settings-content`},Yd={key:0,class:`contacts-summary`},Xd={key:1,class:`settings-value`};function Zd(t,n,r,i,a,s){let l=T(`section-notice`),f=T(`edit-text`),m=T(`auto-translate-toggle`),h=T(`el-image`),g=T(`brand-asset-studio`),_=T(`el-color-picker`),v=T(`el-button`),y=T(`edit-locales`),b=T(`el-option`),S=T(`el-select`),C=T(`user-chip`),w=T(`edit-users`),ee=T(`font-awesome-icon`),E=T(`el-tag`),D=T(`edit-contacts`);return L(),p(`div`,Zu,[u(l,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,Qu,[e(`div`,$u,[e(`p`,ed,c(t.$t(`site.field.origin`)),1),e(`p`,td,c(t.$t(`site.message.originTip`)),1)]),e(`div`,nd,[e(`span`,rd,c(t.site.origin),1)])]),e(`section`,id,[e(`div`,ad,[e(`p`,od,c(t.$t(`site.field.title`)),1),e(`p`,sd,c(t.$t(`site.message.titleTip`)),1)]),e(`div`,cd,[e(`span`,ld,c(t.titleSource),1),e(`div`,ud,[u(f,{"model-value":t.titleSource,title:t.$t(`site.title.editTitle`),placeholder:t.$t(`site.placeholder.title`),onConfirm:n[0]||=e=>t.onSave({title:e})},null,8,[`model-value`,`title`,`placeholder`]),u(m,{model:`site`,field:`title`,"object-id":t.site.id,enabled:t.autoTranslatedFields.includes(`title`),"current-value":t.titleSource,onEnabledSuccess:t.onTranslationChanged,onDisabledSuccess:t.onTranslationChanged},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])])])]),e(`section`,dd,[e(`div`,fd,[e(`p`,pd,c(t.$t(`site.field.logo`)),1),e(`p`,md,c(t.$t(`site.message.logoTip`)),1)]),e(`div`,hd,[u(h,{src:t.site.logo,class:`settings-media`,fit:`contain`},null,8,[`src`]),u(g,{kind:`logo`,title:t.$t(`site.title.editLogo`),tip:t.$t(`site.message.editLogoTip`),width:240,height:72,onConfirm:t.onLogoProcessed},null,8,[`title`,`tip`,`onConfirm`])])]),e(`section`,gd,[e(`div`,_d,[e(`p`,vd,c(t.$t(`site.field.favicon`)),1),e(`p`,yd,c(t.$t(`site.message.faviconTip`)),1)]),e(`div`,bd,[u(h,{src:t.site.favicon,class:`settings-media favicon`,fit:`contain`},null,8,[`src`]),u(g,{kind:`favicon`,title:t.$t(`site.title.editFavicon`),tip:t.$t(`site.message.editFaviconTip`),width:128,height:128,onConfirm:t.onFaviconProcessed},null,8,[`title`,`tip`,`onConfirm`])])]),e(`section`,xd,[e(`div`,Sd,[e(`p`,Cd,c(t.$t(`site.field.primaryColor`)),1),e(`p`,wd,c(t.$t(`site.message.primaryColorTip`)),1)]),e(`div`,Td,[u(_,{"model-value":t.currentPrimaryColor,"color-format":`hex`,predefine:t.primaryColorPresets,onChange:t.onPrimaryColorPicked},null,8,[`model-value`,`predefine`,`onChange`]),e(`span`,Ed,c(t.currentPrimaryColor),1),t.hasCustomPrimaryColor?(L(),A(v,{key:0,link:``,type:`primary`,onClick:t.onPrimaryColorReset},{default:M(()=>[o(c(t.$t(`site.button.resetPrimaryColor`)),1)]),_:1},8,[`onClick`])):d(``,!0)])]),e(`section`,Dd,[e(`div`,Od,[e(`p`,kd,c(t.$t(`site.field.supportedLocales`)),1),e(`p`,Ad,c(t.$t(`site.message.supportedLocalesTip`)),1)]),e(`div`,jd,[e(`span`,Md,c(t.supportedLocalesSummary),1),u(y,{"model-value":t.supportedLocaleValues,title:t.$t(`site.title.editSupportedLocales`),onConfirm:t.onSaveSupportedLocales},null,8,[`model-value`,`title`,`onConfirm`])])]),e(`section`,Nd,[e(`div`,Pd,[e(`p`,Fd,c(t.$t(`site.field.forcedLocale`)),1),e(`p`,Id,c(t.$t(`site.message.forcedLocaleTip`)),1)]),e(`div`,Ld,[u(S,{"model-value":t.forcedLocaleValue,class:`forced-locale-select`,clearable:``,placeholder:t.$t(`site.placeholder.autoDetectLocale`),"onUpdate:modelValue":t.onSaveForcedLocale},{default:M(()=>[(L(!0),p(x,null,F(t.forcedLocaleOptions,e=>(L(),A(b,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])])]),e(`section`,Rd,[e(`div`,zd,[e(`p`,Bd,c(t.$t(`site.field.admins`)),1),e(`p`,Vd,c(t.$t(`site.message.adminsTip`)),1)]),e(`div`,Hd,[e(`div`,Ud,[(L(!0),p(x,null,F(t.site.admins||[],e=>(L(),A(C,{key:e,"user-id":e,class:`admins-chip`},null,8,[`user-id`]))),128))]),u(w,{"model-value":t.site?.admins||[],title:t.$t(`site.title.editAdmins`),min:1,"min-error-message":t.$t(`site.message.atLeastOneAdmin`),onConfirm:n[1]||=e=>t.onSave({admins:e})},null,8,[`model-value`,`title`,`min-error-message`])])]),e(`section`,Wd,[e(`div`,Gd,[e(`p`,Kd,c(t.$t(`site.field.contacts`)),1),e(`p`,qd,c(t.$t(`site.message.contactsTip`)),1)]),e(`div`,Jd,[t.hasContacts?(L(),p(`div`,Yd,[(L(!0),p(x,null,F(t.contacts,(e,n)=>(L(),A(E,{key:n,size:`small`,round:``,class:`contact-chip`},{default:M(()=>[t.contactUsesFontAwesome(e.type)?(L(),A(ee,{key:0,icon:t.contactIconFor(e.type),class:`chip-icon`},null,8,[`icon`])):(L(),A(I(t.contactIconFor(e.type)),{key:1,class:`chip-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),o(` `+c(t.contactSummary(e)),1)]),_:2},1024))),128))])):(L(),p(`span`,Xd,c(t.$t(`site.message.contactsEmpty`)),1)),u(D,{"model-value":t.contacts,title:t.$t(`site.title.editContacts`),onConfirm:t.onSaveContacts},null,8,[`model-value`,`title`,`onConfirm`])])])])}var Qd=G(Xu,[[`render`,Zd],[`__scopeId`,`data-v-c06bc5b1`]]),$d=1e3;function ef(){return{service:``,visible:!0,markupRatio:void 0,displayTitle:``,displaySummary:``,sortOrder:0,autoTranslatedFields:[]}}var tf=z({name:`SiteServicesSetting`,components:{ElButton:W,ElCard:Ke,ElTable:je,ElTableColumn:Ae,ElEmpty:et,ElDialog:U,ElForm:Ne,ElFormItem:Me,ElInput:Qn,ElInputNumber:tt,ElSelect:Ce,ElOption:we,ElSwitch:ct,ElTag:Fn,SectionNotice:Ju,AutoTranslateToggle:Uu},directives:{loading:Ai},data(){return{Plus:E(Dt),MARKUP_RATIO_MAX:5,siteMarkupDraftPercent:0,siteMarkupConfirmedPercent:0,siteMarkupSaving:!1,pendingSiteMarkupPercent:void 0,disableRechargeSaving:!1,loading:!1,catalogLoading:!1,submitting:!1,deletingId:``,rows:[],catalog:[],catalogMap:{},dialogVisible:!1,editingRow:null,form:ef(),mobile:typeof window<`u`&&window.innerWidth<768}},computed:{site(){return this.$store.getters.site||{}},siteId(){return this.site?.id},disableRecharge(){return Jr(this.site)},siteDefaultRatio(){return Hn(this.site)},siteMarkupPercent(){return Math.round(this.siteDefaultRatio*1e4)/100},markupPercentMax(){let e=typeof this.form.markupRatio==`number`?this.form.markupRatio:0;return Math.max(5,e)*100},markupPercent:{get(){return typeof this.form.markupRatio==`number`?Math.round(this.form.markupRatio*1e4)/100:void 0},set(e){this.form.markupRatio=typeof e==`number`?e/100:void 0}},effectiveRatio(){return typeof this.form.markupRatio==`number`?this.form.markupRatio:this.siteDefaultRatio},catalogOptions(){return this.catalog.filter(e=>!!e.icon_url).sort((e,t)=>{let n=(e.title||e.id||``).toLowerCase(),r=(t.title||t.id||``).toLowerCase();return n<r?-1:+(n>r)})}},watch:{siteMarkupPercent:{immediate:!0,handler(e){!this.siteMarkupSaving&&this.pendingSiteMarkupPercent===void 0&&(this.siteMarkupDraftPercent=e,this.siteMarkupConfirmedPercent=e)}},siteId:{immediate:!0,handler(e){e?(this.onFetch(),this.onFetchCatalog()):this.rows=[]}}},mounted(){window.addEventListener(`resize`,this.onResize)},beforeUnmount(){window.removeEventListener(`resize`,this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},async onToggleDisableRecharge(e){if(!(!this.siteId||this.disableRechargeSaving)){this.disableRechargeSaving=!0;try{let t=this.site.metadata||{};await ui.update(this.siteId,{...In(this.site),metadata:{...t,disable_recharge:e}}),await this.$store.dispatch(`getSite`)}catch{H.error(this.$t(`site.services.message.saveFailed`))}finally{this.disableRechargeSaving=!1}}},async onSaveSiteMarkup(e){if(!this.siteId)return;let t=Math.min(500,Math.max(0,Number(e)||0)),n=Math.round(t*100)/100;if(this.siteMarkupDraftPercent=n,this.pendingSiteMarkupPercent=n,this.siteMarkupSaving)return;this.siteMarkupSaving=!0;let r=!1;try{for(;this.pendingSiteMarkupPercent!==void 0;){let e=this.pendingSiteMarkupPercent;this.pendingSiteMarkupPercent=void 0;let t=this.siteId;if(!t)break;let n=this.site.metadata||{};await ui.update(t,{...In(this.site),metadata:{...n,pricing:{...n.pricing||{},markup_ratio:e/100}}}),this.siteMarkupConfirmedPercent=e}}catch{r=!0,this.pendingSiteMarkupPercent=void 0,H.error(this.$t(`site.services.message.saveFailed`)),this.siteMarkupDraftPercent=this.siteMarkupConfirmedPercent}try{let e=await this.$store.dispatch(`getSite`);if(e){let t=Math.round(Hn(e)*1e4)/100;this.siteMarkupConfirmedPercent=t,this.siteMarkupDraftPercent=t}else r||(H.error(this.$t(`site.services.message.fetchFailed`)),this.siteMarkupDraftPercent=this.siteMarkupConfirmedPercent)}catch{r||H.error(this.$t(`site.services.message.fetchFailed`)),this.siteMarkupDraftPercent=this.siteMarkupConfirmedPercent}finally{this.siteMarkupSaving=!1}},formatMarkup(e){let t=Math.round(e*100*10)/10;return`+${Number.isInteger(t)?t.toFixed(0):t.toFixed(1)}%`},catalogTitle(e){if(!e)return`—`;let t=this.catalogMap[e];return t?.title||t?.alias||e},catalogAlias(e){if(e)return this.catalogMap[e]?.alias},catalogIcon(e){if(e)return this.catalogMap[e]?.icon_url||void 0},optionLabel(e){return[e.title,e.alias,e.id].filter(Boolean).join(` `)},isAlreadyOverridden(e){return e?this.rows.some(t=>t.service===e&&t.id!==this.editingRow?.id):!1},async onFetch(){if(!this.siteId){this.rows=[];return}this.loading=!0;try{let{data:e}=await ii.getAll({site:this.siteId,limit:$d,ordering:`sort_order,created_at`});this.rows=e.items||[]}catch{H.error(this.$t(`site.services.message.fetchFailed`))}finally{this.loading=!1}},async onFetchCatalog(){if(!(this.catalog.length>0)){this.catalogLoading=!0;try{let{data:e}=await $n.getAll({limit:$d,private:!1});this.catalog=e.items||[],this.catalogMap=Object.fromEntries(this.catalog.map(e=>[e.id,e]))}catch{}finally{this.catalogLoading=!1}}},onOpenCreate(){this.editingRow=null,this.form=ef(),this.dialogVisible=!0},onOpenEdit(e){this.editingRow=e,this.form={service:e.service||``,visible:e.visible!==!1,markupRatio:typeof e.markup_ratio==`number`?e.markup_ratio:void 0,displayTitle:e.display_title_source??e.display_title??``,displaySummary:e.display_summary_source??e.display_summary??``,sortOrder:typeof e.sort_order==`number`?e.sort_order:0,autoTranslatedFields:[...e.auto_translated_fields??[]]},this.dialogVisible=!0},async onDisplayTitleEnabled(e){this.form.displayTitle=e.source,this.form.autoTranslatedFields=[...new Set([...this.form.autoTranslatedFields,`display_title`])].sort(),this.editingRow&&(this.editingRow.display_title=e.fieldValue,this.editingRow.display_title_source=e.source,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onDisplayTitleDisabled(e){let t=e.fieldValue??``;this.form.displayTitle=t,this.form.autoTranslatedFields=this.form.autoTranslatedFields.filter(e=>e!==`display_title`),this.editingRow&&(this.editingRow.display_title=t||null,this.editingRow.display_title_source=t||null,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onDisplaySummaryEnabled(e){this.form.displaySummary=e.source,this.form.autoTranslatedFields=[...new Set([...this.form.autoTranslatedFields,`display_summary`])].sort(),this.editingRow&&(this.editingRow.display_summary=e.fieldValue,this.editingRow.display_summary_source=e.source,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onDisplaySummaryDisabled(e){let t=e.fieldValue??``;this.form.displaySummary=t,this.form.autoTranslatedFields=this.form.autoTranslatedFields.filter(e=>e!==`display_summary`),this.editingRow&&(this.editingRow.display_summary=t||null,this.editingRow.display_summary_source=t||null,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onSubmit(){this.editingRow?await this.onUpdate():await this.onCreate()},async onCreate(){if(!this.siteId||!this.form.service){H.error(this.$t(`site.services.message.serviceRequired`));return}this.submitting=!0;try{await ii.create({site:this.siteId,service:this.form.service,visible:this.form.visible,markup_ratio:typeof this.form.markupRatio==`number`?this.form.markupRatio:null,display_title:this.form.displayTitle.trim()||null,display_summary:this.form.displaySummary.trim()||null,sort_order:typeof this.form.sortOrder==`number`?this.form.sortOrder:0}),H.success(this.$t(`site.services.message.saved`)),this.dialogVisible=!1,await this.onFetch()}catch(e){H.error(this.extractError(e)||this.$t(`site.services.message.saveFailed`))}finally{this.submitting=!1}},async onUpdate(){let e=this.editingRow;if(e?.id){this.submitting=!0;try{await ii.update(e.id,{visible:this.form.visible,markup_ratio:typeof this.form.markupRatio==`number`?this.form.markupRatio:null,display_title:this.form.displayTitle.trim()||null,display_summary:this.form.displaySummary.trim()||null,sort_order:typeof this.form.sortOrder==`number`?this.form.sortOrder:0}),H.success(this.$t(`site.services.message.saved`)),this.dialogVisible=!1,this.editingRow=null,await this.onFetch()}catch(e){H.error(this.extractError(e)||this.$t(`site.services.message.saveFailed`))}finally{this.submitting=!1}}},async onDelete(e){if(e.id){try{await xi.confirm(this.$t(`site.services.message.deleteConfirm`,{name:this.catalogTitle(e.service)}),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}this.deletingId=e.id;try{await ii.delete(e.id),H.success(this.$t(`site.services.message.deleted`)),await this.onFetch()}catch(e){H.error(this.extractError(e)||this.$t(`site.services.message.deleteFailed`))}finally{this.deletingId=``}}},extractError(e){let t=e?.response?.data;return t&&typeof t==`object`?Object.values(t).flat().filter(Boolean).join(`; `):``}}}),nf={class:`site-services-settings`},rf={class:`default-price-section`},af={class:`settings-title`},of={class:`settings-tip`},sf={class:`markup-row`},cf={class:`default-price-section`},lf={class:`settings-title`},uf={class:`settings-tip`},df={class:`header`},ff={class:`settings-title`},pf={class:`settings-tip`},mf={class:`service-cell`},hf=[`src`],gf={class:`service-cell-text`},_f={key:0,class:`muted`},vf={key:0,class:`muted`},yf={key:1},bf={key:0,class:`muted`},xf={key:1},Sf={class:`service-option`},Cf=[`src`],wf={class:`option-title`},Tf={key:1,class:`option-alias`},Ef={class:`field-desc`},Df={class:`field-desc`},Of={class:`markup-row`},kf={class:`field-desc`},Af={class:`field-desc`},jf={class:`field-desc`},Mf={class:`auto-translate-inline`},Nf={class:`field-tip`},Pf={class:`field-desc`};function Ff(t,r,i,a,s,l){let f=T(`section-notice`),m=T(`el-input-number`),h=T(`el-switch`),g=T(`plus`),_=T(`el-button`),v=T(`el-empty`),y=T(`el-table-column`),b=T(`el-tag`),S=T(`el-table`),C=T(`el-card`),w=T(`el-input`),ee=T(`el-option`),E=T(`el-select`),D=T(`el-form-item`),k=T(`auto-translate-toggle`),j=T(`el-form`),te=T(`el-dialog`),N=P(`loading`);return L(),p(`div`,nf,[u(f,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,rf,[e(`div`,null,[e(`p`,af,c(t.$t(`site.field.markupRatio`)),1),e(`p`,of,c(t.$t(`site.message.markupRatioTip`)),1)]),e(`div`,sf,[u(m,{"model-value":t.siteMarkupDraftPercent,min:0,max:t.MARKUP_RATIO_MAX*100,step:1,precision:2,"controls-position":`right`,disabled:t.siteMarkupSaving,class:`markup-input`,onChange:t.onSaveSiteMarkup},null,8,[`model-value`,`max`,`disabled`,`onChange`]),r[10]||=e(`span`,{class:`markup-percent`},`%`,-1)])]),e(`section`,cf,[e(`div`,null,[e(`p`,lf,c(t.$t(`site.field.disableRecharge`)),1),e(`p`,uf,c(t.$t(`site.message.disableRechargeTip`)),1)]),u(h,{"model-value":t.disableRecharge,"inline-prompt":``,loading:t.disableRechargeSaving,disabled:t.disableRechargeSaving||!t.siteId,"active-text":t.$t(`site.button.enabled`),"inactive-text":t.$t(`site.button.disabled`),"onUpdate:modelValue":r[0]||=e=>t.onToggleDisableRecharge(e)},null,8,[`model-value`,`loading`,`disabled`,`active-text`,`inactive-text`])]),e(`div`,df,[e(`div`,null,[e(`p`,ff,c(t.$t(`site.services.title`)),1),e(`p`,pf,c(t.$t(`site.services.tip`)),1)]),u(_,{type:`primary`,round:``,disabled:!t.site?.id,onClick:t.onOpenCreate},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`site.services.addButton`)),1)]),_:1},8,[`disabled`,`onClick`])]),O((L(),A(C,{shadow:`never`,class:`list-card`},{default:M(()=>[!t.loading&&t.rows.length===0?(L(),A(v,{key:0,description:t.$t(`site.services.empty`),"image-size":80},null,8,[`description`])):(L(),A(S,{key:1,data:t.rows,stripe:``,class:`overrides-table`},{default:M(()=>[u(y,{label:t.$t(`site.services.field.service`),"min-width":`200`},{default:M(({row:n})=>[e(`div`,mf,[t.catalogIcon(n.service)?(L(),p(`img`,{key:0,src:t.catalogIcon(n.service),class:`service-favicon`,alt:``},null,8,hf)):d(``,!0),e(`div`,gf,[e(`strong`,null,c(t.catalogTitle(n.service)),1),t.catalogAlias(n.service)?(L(),p(`div`,_f,c(t.catalogAlias(n.service)),1)):d(``,!0)])])]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.visible`),width:`96`,align:`center`},{default:M(({row:e})=>[u(b,{type:e.visible===!1?`info`:`success`,size:`small`,round:``,effect:`plain`},{default:M(()=>[o(c(e.visible===!1?t.$t(`site.services.status.hidden`):t.$t(`site.services.status.visible`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.customMarkupRatio`),width:`150`,align:`right`},{default:M(({row:e})=>[e.markup_ratio===null||e.markup_ratio===void 0?(L(),p(`span`,vf,c(t.$t(`site.services.status.inherit`)),1)):(L(),p(`span`,yf,c(t.formatMarkup(e.markup_ratio)),1))]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.displayTitle`),"min-width":`140`},{default:M(({row:e})=>[e.display_title?(L(),p(`span`,xf,c(e.display_title),1)):(L(),p(`span`,bf,`—`))]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.sortOrder`),width:`88`,align:`right`},{default:M(({row:e})=>[o(c(e.sort_order??0),1)]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.action`),width:`150`,align:`right`,fixed:`right`},{default:M(({row:e})=>[u(_,{size:`small`,round:``,onClick:n=>t.onOpenEdit(e)},{default:M(()=>[o(c(t.$t(`common.button.edit`)),1)]),_:1},8,[`onClick`]),u(_,{size:`small`,round:``,type:`danger`,plain:``,loading:t.deletingId===e.id,onClick:n=>t.onDelete(e)},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`loading`,`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`]))]),_:1})),[[N,t.loading]]),u(te,{modelValue:t.dialogVisible,"onUpdate:modelValue":r[9]||=e=>t.dialogVisible=e,title:t.editingRow?t.$t(`site.services.dialog.edit`):t.$t(`site.services.dialog.create`),width:t.mobile?`94vw`:`520px`,class:`site-service-override-dialog`,"close-on-click-modal":!1,"append-to-body":``},{footer:M(()=>[u(_,{round:``,onClick:r[8]||=e=>t.dialogVisible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(_,{type:`primary`,round:``,loading:t.submitting,disabled:!t.editingRow&&!t.form.service,onClick:t.onSubmit},{default:M(()=>[o(c(t.editingRow?t.$t(`common.button.update`):t.$t(`common.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:M(()=>[u(j,{model:t.form,"label-position":`top`,class:`service-override-form`,onSubmit:r[7]||=n(()=>{},[`prevent`])},{default:M(()=>[u(D,{label:t.$t(`site.services.field.service`),required:``},{default:M(()=>[t.editingRow?(L(),A(w,{key:0,"model-value":t.catalogTitle(t.editingRow.service),readonly:``},null,8,[`model-value`])):(L(),A(E,{key:1,modelValue:t.form.service,"onUpdate:modelValue":r[1]||=e=>t.form.service=e,filterable:``,loading:t.catalogLoading,"popper-class":`service-catalog-select-popper`,class:`w-full`},{default:M(()=>[(L(!0),p(x,null,F(t.catalogOptions,n=>(L(),A(ee,{key:n.id,label:t.optionLabel(n),value:n.id,disabled:t.isAlreadyOverridden(n.id)},{default:M(()=>[e(`span`,Sf,[n.icon_url?(L(),p(`img`,{key:0,src:n.icon_url,class:`option-favicon`,alt:``},null,8,Cf)):d(``,!0),e(`span`,wf,c(n.title||n.id),1),n.alias?(L(),p(`span`,Tf,c(n.alias),1)):d(``,!0),t.isAlreadyOverridden(n.id)?(L(),A(b,{key:2,size:`small`,type:`info`,round:``},{default:M(()=>[o(c(t.$t(`site.services.message.alreadyOverridden`)),1)]),_:1})):d(``,!0)])]),_:2},1032,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`loading`])),e(`div`,Ef,c(t.$t(`site.services.placeholder.service`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.visible`)},{default:M(()=>[u(h,{modelValue:t.form.visible,"onUpdate:modelValue":r[2]||=e=>t.form.visible=e},null,8,[`modelValue`]),e(`div`,Df,c(t.$t(`site.services.tip.visible`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.customMarkupRatio`)},{default:M(()=>[e(`div`,Of,[u(m,{modelValue:t.markupPercent,"onUpdate:modelValue":r[3]||=e=>t.markupPercent=e,min:0,max:t.markupPercentMax,step:1,precision:2,"controls-position":`right`,placeholder:t.$t(`site.services.placeholder.markup`),class:`markup-input`},null,8,[`modelValue`,`max`,`placeholder`]),r[11]||=e(`span`,{class:`markup-percent`},`%`,-1)]),e(`div`,kf,c(t.$t(`site.services.tip.markup`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.displayTitle`)},{default:M(()=>[u(w,{modelValue:t.form.displayTitle,"onUpdate:modelValue":r[4]||=e=>t.form.displayTitle=e,maxlength:`120`,"show-word-limit":``,clearable:``},{suffix:M(()=>[u(k,{model:`site_service_override`,field:`display_title`,"object-id":t.editingRow?.id,enabled:t.form.autoTranslatedFields.includes(`display_title`),"current-value":t.form.displayTitle,onEnabledSuccess:t.onDisplayTitleEnabled,onDisabledSuccess:t.onDisplayTitleDisabled},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])]),_:1},8,[`modelValue`]),e(`div`,Af,c(t.$t(`site.services.placeholder.displayTitle`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.displaySummary`)},{default:M(()=>[u(w,{modelValue:t.form.displaySummary,"onUpdate:modelValue":r[5]||=e=>t.form.displaySummary=e,type:`textarea`,rows:3,clearable:``},null,8,[`modelValue`]),e(`div`,jf,c(t.$t(`site.services.placeholder.displaySummary`)),1),e(`div`,Mf,[u(k,{model:`site_service_override`,field:`display_summary`,"object-id":t.editingRow?.id,enabled:t.form.autoTranslatedFields.includes(`display_summary`),"current-value":t.form.displaySummary,onEnabledSuccess:t.onDisplaySummaryEnabled,onDisabledSuccess:t.onDisplaySummaryDisabled},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`]),e(`span`,Nf,c(t.editingRow?t.form.autoTranslatedFields.includes(`display_summary`)?t.$t(`site.autoTranslate.tooltipOn`):t.$t(`site.autoTranslate.tooltipOff`):t.$t(`site.autoTranslate.tooltipDisabledNotSaved`)),1)])]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.sortOrder`)},{default:M(()=>[u(m,{modelValue:t.form.sortOrder,"onUpdate:modelValue":r[6]||=e=>t.form.sortOrder=e,min:-1e3,max:1e3,step:1,precision:0,"controls-position":`right`},null,8,[`modelValue`]),e(`div`,Pf,c(t.$t(`site.services.tip.sortOrder`)),1)]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`,`width`])])}var If=G(tf,[[`render`,Ff],[`__scopeId`,`data-v-7cb83655`]]),Lf=z({name:`EditText`,components:{ElDialog:U,ElInput:Qn,ElButton:W,ElIcon:B,ElTag:Fn,Edit:Et},props:{modelValue:{type:Array,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0},tip:{type:String,default:void 0},min:{type:Number,default:void 0},minErrorMessage:{type:String,default:void 0}},emits:[`confirm`,`cancel`],data(){return{inputVisible:!1,inputValue:``,editing:!1,value:JSON.parse(JSON.stringify(this.modelValue))}},methods:{onCancel(){this.editing=!1},onConfirm(){if(this.min!==void 0&&this.value.length<this.min){H.error(this.minErrorMessage);return}this.$emit(`confirm`,this.value),this.editing=!1},onClose(e){this.value.splice(this.value.indexOf(e),1)},onInputConfirm(){let e=this.inputValue;e&&this.value.push(e),this.inputVisible=!1,this.inputValue=``},onNewItem(){this.inputVisible=!0,this.$nextTick(()=>{this.$refs.input.focus()})}}}),Rf={class:`edit-body`},zf={class:`tags`},Bf={class:`block tip`},Vf={class:`dialog-footer`},Hf=[`aria-label`,`title`];function Uf(t,r,i,a,s,l){let d=T(`el-tag`),f=T(`el-input`),m=T(`el-button`),h=T(`el-dialog`),g=T(`edit`),_=T(`el-icon`);return L(),p(x,null,[u(h,{modelValue:t.editing,"onUpdate:modelValue":r[1]||=e=>t.editing=e,title:t.title,width:`400px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,Vf,[u(m,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(m,{round:``,type:`primary`,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])])]),default:M(()=>[e(`div`,Rf,[e(`div`,zf,[(L(!0),p(x,null,F(t.value,(e,n)=>(L(),A(d,{key:n,closable:``,round:``,class:`mr-2 mb-2`,"disable-transitions":!1,onClose:n=>t.onClose(e)},{default:M(()=>[o(c(e),1)]),_:2},1032,[`onClose`]))),128))]),t.inputVisible?(L(),A(f,{key:0,ref:`input`,modelValue:t.inputValue,"onUpdate:modelValue":r[0]||=e=>t.inputValue=e,class:`block`,onKeyup:y(t.onInputConfirm,[`enter`]),onBlur:t.onInputConfirm},null,8,[`modelValue`,`onKeyup`,`onBlur`])):(L(),A(m,{key:1,round:``,class:`block`,size:`small`,onClick:t.onNewItem},{default:M(()=>[...r[5]||=[o(` + `,-1)]]),_:1},8,[`onClick`])),e(`span`,Bf,c(t.tip),1)])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[2]||=e=>t.editing=!0,onKeydown:[r[3]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[4]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(_,{class:`icon`},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Hf)],64)}var Wf=z({name:`SettingSeo`,components:{EditText:Yo,EditArray:G(Lf,[[`render`,Uf]]),AutoTranslateToggle:Uu,SectionNotice:Ju},computed:{site(){return this.$store.getters.site||{}},descriptionSource(){return this.site?.description_source??this.site?.description??``},autoTranslatedFields(){return this.site?.auto_translated_fields??[]}},methods:{onSave(e){let t={...In(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})},onTranslationChanged(){this.$store.dispatch(`getSite`)}}}),Gf={class:`settings-list`},Kf={class:`settings-item`},qf={class:`settings-label`},Jf={class:`settings-title`},Yf={class:`settings-tip`},Xf={class:`settings-content`},Zf={class:`settings-value`},Qf={class:`settings-actions`},$f={class:`settings-item`},ep={class:`settings-label`},tp={class:`settings-title`},np={class:`settings-tip`},rp={class:`settings-content`},ip={class:`settings-value`};function ap(t,n,r,i,a,o){let s=T(`section-notice`),l=T(`edit-text`),d=T(`auto-translate-toggle`),f=T(`edit-array`);return L(),p(`div`,Gf,[u(s,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,Kf,[e(`div`,qf,[e(`p`,Jf,c(t.$t(`site.field.description`)),1),e(`p`,Yf,c(t.$t(`site.message.descriptionTip`)),1)]),e(`div`,Xf,[e(`span`,Zf,c(t.descriptionSource),1),e(`div`,Qf,[u(l,{"model-value":t.descriptionSource,title:t.$t(`site.title.editDescription`),placeholder:t.$t(`site.placeholder.description`),onConfirm:n[0]||=e=>t.onSave({description:e})},null,8,[`model-value`,`title`,`placeholder`]),u(d,{model:`site`,field:`description`,"object-id":t.site.id,enabled:t.autoTranslatedFields.includes(`description`),"current-value":t.descriptionSource,onEnabledSuccess:t.onTranslationChanged,onDisabledSuccess:t.onTranslationChanged},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])])])]),e(`section`,$f,[e(`div`,ep,[e(`p`,tp,c(t.$t(`site.field.keywords`)),1),e(`p`,np,c(t.$t(`site.message.keywordsTip`)),1)]),e(`div`,rp,[e(`span`,ip,c(t.site.keywords?.join(`, `)),1),u(f,{"model-value":t.site?.keywords||[],title:t.$t(`site.title.editKeywords`),placeholder:t.$t(`site.placeholder.keywords`),tip:t.$t(`site.message.keywordsTip2`),onConfirm:n[1]||=e=>t.onSave({keywords:e})},null,8,[`model-value`,`title`,`placeholder`,`tip`])])])])}var op=G(Wf,[[`render`,ap],[`__scopeId`,`data-v-a6c2ba5f`]]),sp=z({name:`EditUser`,components:{ElDialog:U,ElButton:W,ElIcon:B,Edit:Et,UserChip:wl,UserPicker:Nl},props:{modelValue:{type:String,default:``},title:{type:String,required:!0}},emits:[`confirm`,`cancel`],data(){return{editing:!1,resolved:null}},methods:{async onOpen(){this.editing=!0,this.resolved=null;let e=this.modelValue;if(e){let t=await hl(e);this.editing&&this.modelValue===e&&(this.resolved=t)}},onSelect(e){this.resolved=e},onCancel(){this.editing=!1,this.$emit(`cancel`)},onClearValue(){this.$emit(`confirm`,``),this.editing=!1},onConfirm(){this.resolved?.id&&(this.$emit(`confirm`,this.resolved.id),this.editing=!1)}}}),cp={class:`edit-body`},lp={key:0,class:`preview`},up={key:1,class:`tip`},dp={class:`dialog-footer`},fp=[`aria-label`,`title`];function pp(t,r,i,a,s,l){let f=T(`user-picker`),m=T(`user-chip`),h=T(`el-button`),g=T(`el-dialog`),_=T(`edit`),v=T(`el-icon`);return L(),p(x,null,[u(g,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,width:`480px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,dp,[u(h,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),t.modelValue?(L(),A(h,{key:0,round:``,type:`danger`,onClick:t.onClearValue},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`onClick`])):d(``,!0),u(h,{round:``,type:`primary`,disabled:!t.resolved,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])])]),default:M(()=>[e(`div`,cp,[u(f,{onSelect:t.onSelect},null,8,[`onSelect`]),t.resolved?(L(),p(`div`,lp,[u(m,{"user-id":t.resolved.id},null,8,[`user-id`])])):(L(),p(`p`,up,c(t.$t(`site.message.editUserHint`)),1))])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[2]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[3]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(v,{class:`icon`},{default:M(()=>[u(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,fp)],64)}var mp=z({name:`DistributionSetting`,components:{EditUser:G(sp,[[`render`,pp],[`__scopeId`,`data-v-08f07de0`]]),UserChip:wl,SectionNotice:Ju},computed:{site(){return this.$store.getters.site||{distribution:{}}}},methods:{onSave(e){let t={...In(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})}}}),hp={class:`settings-list`},gp={class:`settings-item`},_p={class:`settings-label`},vp={class:`settings-title`},yp={class:`settings-tip`},bp={class:`settings-content`},xp={class:`settings-item`},Sp={class:`settings-label`},Cp={class:`settings-title`},wp={class:`settings-tip`},Tp={class:`settings-content`};function Ep(t,n,r,i,a,o){let s=T(`section-notice`),l=T(`user-chip`),d=T(`edit-user`);return L(),p(`div`,hp,[u(s,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,gp,[e(`div`,_p,[e(`p`,vp,c(t.$t(`site.field.distributionDefaultInviterId`)),1),e(`p`,yp,c(t.$t(`site.message.distributionDefaultInviterIdTip`)),1)]),e(`div`,bp,[u(l,{"user-id":t.site.distribution?.default_inviter_id},null,8,[`user-id`]),u(d,{"model-value":t.site.distribution?.default_inviter_id||``,title:t.$t(`site.title.editDistributionDefaultInviterId`),onConfirm:n[0]||=e=>t.onSave({distribution:{...t.site.distribution,default_inviter_id:e}})},null,8,[`model-value`,`title`])])]),e(`section`,xp,[e(`div`,Sp,[e(`p`,Cp,c(t.$t(`site.field.distributionForceInviterId`)),1),e(`p`,wp,c(t.$t(`site.message.distributionForceInviterIdTip`)),1)]),e(`div`,Tp,[u(l,{"user-id":t.site.distribution?.force_inviter_id},null,8,[`user-id`]),u(d,{"model-value":t.site.distribution?.force_inviter_id||``,title:t.$t(`site.title.editDistributionForceInviterId`),onConfirm:n[1]||=e=>t.onSave({distribution:{...t.site.distribution,force_inviter_id:e}})},null,8,[`model-value`,`title`])])])])}var Dp=G(mp,[[`render`,Ep]]),Op=z({name:`CapabilityOverrideDialog`,components:{AutoTranslateToggle:Uu,ElButton:W,ElDialog:U,ElForm:Ne,ElFormItem:Me,ElInput:Qn,ImageCropper:au,UploadIcon:Ft},props:{modelValue:{type:Boolean,default:!1},siteId:{type:String,required:!0},capability:{type:String,required:!0},defaultName:{type:String,required:!0},defaultIcon:{type:String,required:!0},override:{type:Object,default:null}},emits:[`update:modelValue`,`saved`],data(){return{record:null,displayName:``,iconUrl:``,autoTranslatedFields:[],iconEditorVisible:!1,submitting:!1,resetting:!1}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit(`update:modelValue`,e)}},mobile(){return typeof window<`u`&&window.innerWidth<640}},watch:{modelValue(e){e&&this.hydrate()},override(){this.modelValue&&this.hydrate()}},mounted(){this.modelValue&&this.hydrate()},methods:{hydrate(){this.record=this.override?{...this.override}:null,this.displayName=this.override?.display_name_source??this.override?.display_name??``,this.iconUrl=this.override?.icon_url??``,this.autoTranslatedFields=[...this.override?.auto_translated_fields??[]],this.iconEditorVisible=!1},extractError(e){let t=e?.response?.data;if(!t)return``;let n=t.detail;return typeof n==`string`?n:Object.values(t).flat().filter(e=>typeof e==`string`).join(` `)},async onSave(){let e=this.displayName.trim()||null,t=this.iconUrl.trim()||null;if(!e&&!t){this.record?.id?await this.onReset():H.warning(this.$t(`site.capabilityOverride.empty`));return}this.submitting=!0;try{if(this.record?.id){let{data:n}=await mi.update(this.record.id,{display_name:e,icon_url:t});this.record=n,H.success(this.$t(`site.capabilityOverride.saved`)),this.$emit(`saved`),this.visible=!1}else{let{data:n}=await mi.create({site:this.siteId,capability:this.capability,display_name:e,icon_url:t});this.record=n,this.displayName=n.display_name_source??n.display_name??``,this.iconUrl=n.icon_url??``,this.autoTranslatedFields=[...n.auto_translated_fields??[]],H.success(this.$t(`site.capabilityOverride.savedEnableTranslation`)),this.$emit(`saved`)}}catch(e){H.error(this.extractError(e)||this.$t(`site.capabilityOverride.saveFailed`))}finally{this.submitting=!1}},async onReset(){if(this.record?.id){try{await xi.confirm(this.$t(`site.capabilityOverride.resetConfirm`,{name:this.defaultName}),this.$t(`site.capabilityOverride.resetAll`),{type:`warning`,confirmButtonText:this.$t(`site.capabilityOverride.resetAll`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.resetting=!0;try{await mi.delete(this.record.id),H.success(this.$t(`site.capabilityOverride.resetDone`)),this.$emit(`saved`),this.visible=!1}catch(e){H.error(this.extractError(e)||this.$t(`site.capabilityOverride.saveFailed`))}finally{this.resetting=!1}}},async onTranslationEnabled(e){this.displayName=e.source,this.autoTranslatedFields=[`display_name`],this.record&&(this.record.display_name=e.fieldValue,this.record.display_name_source=e.source,this.record.auto_translated_fields=[`display_name`]),H.success(this.$t(`site.capabilityOverride.saved`)),this.$emit(`saved`)},async onTranslationDisabled(e){this.displayName=e.fieldValue??``,this.autoTranslatedFields=[],this.record&&(this.record.display_name=e.fieldValue,this.record.display_name_source=e.fieldValue,this.record.auto_translated_fields=[]),H.success(this.$t(`site.capabilityOverride.saved`)),this.$emit(`saved`)}}}),kp={class:`field-tip`},Ap={class:`icon-comparison`},jp={class:`icon-preview-block`},Mp={class:`preview-label`},Np=[`src`],Pp={class:`icon-preview-block`},Fp={class:`preview-label`},Ip=[`src`],Lp={class:`icon-actions`},Rp={class:`field-tip`},zp={class:`dialog-footer`};function Bp(t,r,i,a,s,l){let f=T(`auto-translate-toggle`),p=T(`el-input`),m=T(`el-form-item`),h=T(`UploadIcon`),g=T(`el-button`),_=T(`el-form`),v=T(`image-cropper`),y=T(`el-dialog`);return L(),A(y,{modelValue:t.visible,"onUpdate:modelValue":r[7]||=e=>t.visible=e,title:t.$t(`site.capabilityOverride.dialogTitle`,{name:t.defaultName}),width:t.mobile?`94vw`:`520px`,"close-on-click-modal":!1,"append-to-body":``},{footer:M(()=>[e(`div`,zp,[t.record?.id?(L(),A(g,{key:0,type:`danger`,plain:``,loading:t.resetting,onClick:t.onReset},{default:M(()=>[o(c(t.$t(`site.capabilityOverride.resetAll`)),1)]),_:1},8,[`loading`,`onClick`])):d(``,!0),r[8]||=e(`span`,{class:`footer-spacer`},null,-1),u(g,{onClick:r[6]||=e=>t.visible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(g,{type:`primary`,loading:t.submitting,onClick:t.onSave},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`onClick`])])]),default:M(()=>[u(_,{"label-position":`top`,onSubmit:r[3]||=n(()=>{},[`prevent`])},{default:M(()=>[u(m,{label:t.$t(`site.capabilityOverride.displayName`)},{default:M(()=>[u(p,{modelValue:t.displayName,"onUpdate:modelValue":r[0]||=e=>t.displayName=e,maxlength:`120`,"show-word-limit":``,clearable:``},{suffix:M(()=>[u(f,{model:`site_capability_override`,field:`display_name`,"object-id":t.record?.id,enabled:t.autoTranslatedFields.includes(`display_name`),"current-value":t.displayName,onEnabledSuccess:t.onTranslationEnabled,onDisabledSuccess:t.onTranslationDisabled},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])]),_:1},8,[`modelValue`]),e(`div`,kp,c(t.$t(`site.capabilityOverride.displayNameTip`,{name:t.defaultName})),1)]),_:1},8,[`label`]),u(m,{label:t.$t(`site.capabilityOverride.icon`)},{default:M(()=>[e(`div`,Ap,[e(`div`,jp,[e(`span`,Mp,c(t.$t(`site.capabilityOverride.defaultIcon`)),1),e(`img`,{src:t.defaultIcon,class:`icon-preview`,alt:``},null,8,Np)]),e(`div`,Pp,[e(`span`,Fp,c(t.$t(`site.capabilityOverride.currentIcon`)),1),e(`img`,{src:t.iconUrl||t.defaultIcon,class:`icon-preview`,alt:``},null,8,Ip)]),e(`div`,Lp,[u(g,{onClick:r[1]||=e=>t.iconEditorVisible=!0},{default:M(()=>[u(h,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.iconUrl?t.$t(`site.capabilityOverride.replaceIcon`):t.$t(`site.capabilityOverride.uploadIcon`)),1)]),_:1}),t.iconUrl?(L(),A(g,{key:0,link:``,type:`primary`,onClick:r[2]||=e=>t.iconUrl=``},{default:M(()=>[o(c(t.$t(`site.capabilityOverride.useDefaultIcon`)),1)]),_:1})):d(``,!0)])]),e(`div`,Rp,c(t.$t(`site.capabilityOverride.iconTip`)),1)]),_:1},8,[`label`])]),_:1}),u(v,{modelValue:t.iconEditorVisible,"onUpdate:modelValue":r[4]||=e=>t.iconEditorVisible=e,title:t.$t(`site.capabilityOverride.editIcon`),"format-hint":t.$t(`site.capabilityOverride.iconTip`),"aspect-ratio":1,"output-width":512,accept:`image/png,image/jpeg,image/webp`,shape:`rectangle`,onUploaded:r[5]||=e=>t.iconUrl=e},null,8,[`modelValue`,`title`,`format-hint`])]),_:1},8,[`modelValue`,`title`,`width`])}var Vp=z({name:`FunctionSetting`,components:{CapabilityOverrideDialog:G(Op,[[`render`,Bp],[`__scopeId`,`data-v-d4c64896`]]),ElButton:W,EditIcon:Et,ElSwitch:ct,ElTooltip:Fe,SectionNotice:Ju},data(){return{overrides:{},editingCapability:null,dialogVisible:!1,failedIcons:{},CAPABILITY_ICONS:li}},computed:{site(){return this.$store.getters.site||{features:{}}},featureKeys(){return[...Wr]}},watch:{"site.id":{immediate:!0,handler(e){e&&this.fetchOverrides()}}},methods:{defaultFeatureLabel(e){return this.$t(`site.field.features`+e.charAt(0).toUpperCase()+e.slice(1))},featureLabel(e){return ri(this.site,e,this.defaultFeatureLabel(e),li[e]).displayName},featureTip(e){return this.$t(`site.message.features`+e.charAt(0).toUpperCase()+e.slice(1))},featureIcon(e){return this.failedIcons[e]?li[e]:ri(this.site,e,this.defaultFeatureLabel(e),li[e]).iconUrl},async fetchOverrides(){if(this.site.id)try{let{data:e}=await mi.getAll({site:this.site.id,limit:100});this.overrides=Object.fromEntries((e.items||[]).map(e=>[e.capability,e]))}catch{H.error(this.$t(`site.capabilityOverride.fetchFailed`))}},onEdit(e){this.editingCapability=e,this.dialogVisible=!0},async onOverrideSaved(){this.failedIcons={},await Promise.all([this.fetchOverrides(),this.$store.dispatch(`getSite`)])},updateFeature(e,t){this.onSave({features:{...this.site.features||{},[e]:{...this.site.features?.[e]||{},...t}}})},onToggleFeature(e,t){this.updateFeature(e,{enabled:t})},onSave(e){let t={...In(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})}}}),Hp={class:`settings-list`},Up={class:`settings-label`},Wp={class:`capability-heading`},Gp=[`src`,`onError`],Kp={class:`settings-title`},qp={class:`settings-tip`},Jp={class:`settings-content`};function Yp(t,n,r,i,a,o){let s=T(`section-notice`),l=T(`EditIcon`),f=T(`el-button`),m=T(`el-tooltip`),h=T(`el-switch`),g=T(`capability-override-dialog`);return L(),p(`div`,Hp,[u(s,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),(L(!0),p(x,null,F(t.featureKeys,n=>(L(),p(`section`,{key:n,class:`settings-item`},[e(`div`,Up,[e(`div`,Wp,[e(`img`,{src:t.featureIcon(n),class:`capability-favicon`,alt:``,onError:e=>t.failedIcons[n]=!0},null,40,Gp),e(`p`,Kp,c(t.featureLabel(n)),1)]),e(`p`,qp,c(t.featureTip(n)),1)]),e(`div`,Jp,[u(m,{content:t.$t(`site.capabilityOverride.edit`),placement:`top`},{default:M(()=>[u(f,{circle:``,size:`small`,"aria-label":t.$t(`site.capabilityOverride.edit`),onClick:e=>t.onEdit(n)},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1032,[`content`]),u(h,{"model-value":t.site.features?.[n]?.enabled||!1,"inline-prompt":``,"active-text":t.$t(`site.button.enabled`),"inactive-text":t.$t(`site.button.disabled`),"onUpdate:modelValue":e=>t.onToggleFeature(n,e)},null,8,[`model-value`,`active-text`,`inactive-text`,`onUpdate:modelValue`])])]))),128)),t.editingCapability&&t.site.id?(L(),A(g,{key:0,modelValue:t.dialogVisible,"onUpdate:modelValue":n[0]||=e=>t.dialogVisible=e,"site-id":t.site.id,capability:t.editingCapability,"default-name":t.defaultFeatureLabel(t.editingCapability),"default-icon":t.CAPABILITY_ICONS[t.editingCapability],override:t.overrides[t.editingCapability]||null,onSaved:t.onOverrideSaved},null,8,[`modelValue`,`site-id`,`capability`,`default-name`,`default-icon`,`override`,`onSaved`])):d(``,!0)])}var Xp=G(Vp,[[`render`,Yp],[`__scopeId`,`data-v-b0fa8beb`]]),Zp=/^(?!.*--)[a-z0-9][a-z0-9-]{1,30}[a-z0-9]$/,Qp=z({name:`SubsiteSetting`,components:{ElCard:Ke,ElButton:W,ElTable:je,ElTableColumn:Ae,ElEmpty:et,ElDialog:U,ElForm:Ne,ElFormItem:Me,ElInput:Qn,ElTag:Fn,SectionNotice:Ju},directives:{loading:Ai},props:{autoOpenCreate:{type:Boolean,default:!1}},data(){return{Plus:E(Dt),SiteDomainStatus:Re,loading:!1,items:[],domainsBySite:{},opening:{visible:!1,urls:[]},creating:{visible:!1,submitting:!1,form:{slug:``,title:``}},deletingId:null}},computed:{parentSite(){return this.$store.state.site},user(){return this.$store.getters.user},subdomainZone(){return this.parentSite?.features?.subsite?.subdomain_zone||(typeof window<`u`&&window.location?.host?window.location.host.split(`:`)[0]:this.parentSite?.origin||``)},maxSubsitesPerUser(){let e=this.parentSite?.features?.subsite?.max_subsites_per_user;return typeof e==`number`&&e>0?e:5},canCreate(){return!!this.subdomainZone&&!!this.user?.id&&this.items.length<this.maxSubsitesPerUser}},watch:{autoOpenCreate:{immediate:!1,handler(e){e&&this.onOpenCreate()}}},mounted(){this.fetchSubsites(),this.autoOpenCreate&&this.onOpenCreate()},methods:{async fetchSubsites(){let e=this.user?.id;if(!e){this.items=[];return}let t=this.subdomainZone;if(!t){this.items=[];return}this.loading=!0;try{let{data:n}=await ui.getAll({user_id:e,origin__endswith:`.${t}`,ordering:`-created_at`});this.items=n?.items||[],await this.fetchDomains()}catch(e){console.error(`failed to load subsites`,e),H.error(this.$t(`subsite.message.loadFailed`))}finally{this.loading=!1}},async fetchDomains(){let e=this.items.filter(e=>e.id);if(e.length===0){this.domainsBySite={};return}let t=await Promise.all(e.map(async e=>{try{let{data:t}=await Lr.getAll({site:e.id,limit:50});return[e.id,t?.items||[]]}catch(t){return console.warn(`failed to load domains for site ${e.id}`,t),[e.id,[]]}}));this.domainsBySite=Object.fromEntries(t)},onOpenCreate(){this.creating.form.slug=``,this.creating.form.title=``,this.creating.visible=!0},onCancelCreate(){this.creating.visible=!1},async onSubmitCreate(){let e=this.creating.form.slug.trim().toLowerCase();if(!Zp.test(e)){H.warning(this.$t(`subsite.message.slugInvalid`));return}if(!this.subdomainZone){H.error(this.$t(`subsite.message.zoneMissing`));return}let t=`${e}.${this.subdomainZone}`;this.creating.submitting=!0;try{let{data:e}=await ui.create({origin:t,title:this.creating.form.title.trim()||void 0});H.success(this.$t(`subsite.message.created`)),this.creating.visible=!1,this.items=[e,...this.items],xi.confirm(this.$t(`subsite.message.openNowConfirm`,{origin:t}),this.$t(`subsite.title.openNow`),{confirmButtonText:this.$t(`subsite.button.open`),cancelButtonText:this.$t(`common.button.cancel`),type:`success`}).then(()=>window.open(`https://${t}/`,`_blank`,`noopener`)).catch(()=>{})}catch(e){let n=e?.response?.data;if(n?.code===`duplication`){H.error(this.$t(`subsite.message.slugTaken`,{origin:t}));return}let r=n?.detail?.origin??n?.origin??n?.detail??e?.message,i=Array.isArray(r)?r[0]:r;H.error(typeof i==`string`&&i?i:this.$t(`subsite.message.createFailed`))}finally{this.creating.submitting=!1}},onOpenSite(e){if(!e.origin)return;let t=[{href:`https://${e.origin}/`,hostname:e.origin,isCustom:!1}],n=this.customDomainsFor(e);for(let e of n)e.status===Re.Active&&e.hostname&&t.push({href:`https://${e.hostname}/`,hostname:e.hostname,isCustom:!0});if(t.length<=1){window.open(t[0].href,`_blank`,`noopener`);return}this.opening.urls=t,this.opening.visible=!0},onConfirmOpen(e){this.opening.visible=!1,window.open(e,`_blank`,`noopener`)},customDomainsFor(e){if(!e.id)return[];let t=this.domainsBySite[e.id]||[],n=e=>e===Re.Active?0:e===Re.Pending?1:2;return[...t].sort((e,t)=>{let r=n(e.status)-n(t.status);return r===0?(e.hostname||``).localeCompare(t.hostname||``):r})},onManageSite(e){if(!e.origin)return;let t=this.customDomainsFor(e).find(e=>e.status===Re.Active&&e.hostname)?.hostname||e.origin;window.open(`https://${t}/?dialog=settings`,`_blank`,`noopener`)},async onDeleteSite(e){if(!(!e.id||!e.origin)){try{await xi.confirm(this.$t(`subsite.message.deleteConfirm`,{origin:e.origin}),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}this.deletingId=e.id;try{if(await ui.delete(e.id),this.items=this.items.filter(t=>t.id!==e.id),e.id&&this.domainsBySite[e.id]){let t={...this.domainsBySite};delete t[e.id],this.domainsBySite=t}H.success(this.$t(`subsite.message.deleted`,{origin:e.origin}))}catch(e){let t=e?.response?.data?.detail||e?.message;H.error(typeof t==`string`?t:this.$t(`subsite.message.deleteFailed`))}finally{this.deletingId=null}}},rowUrl(e){return e.origin?`https://${e.origin}/`:`#`},formatDate(e){if(!e)return`-`;try{return new Date(e).toLocaleString()}catch{return e}}}}),$p={class:`subsite-settings`},em={class:`header`},tm={class:`settings-title`},nm={class:`settings-tip`},rm={class:`domain-list`},im=[`href`],am=[`href`],om={key:1,class:`custom-domain muted`},sm={class:`hostname`},cm={key:2,class:`custom-domain muted`},lm={class:`hostname`},um={key:0,class:`row-title`},dm={class:`row-actions`},fm={class:`open-hint`},pm={class:`open-actions`},mm={class:`hint`};function hm(t,r,i,a,s,l){let f=T(`section-notice`),m=T(`plus`),h=T(`el-button`),g=T(`el-empty`),_=T(`el-tag`),v=T(`el-table-column`),y=T(`el-table`),b=T(`el-card`),S=T(`el-dialog`),C=T(`el-input`),w=T(`el-form-item`),ee=T(`el-form`),E=P(`loading`);return L(),p(`div`,$p,[u(f,{tone:`official`,text:t.$t(`common.settings.officialOnlyHint`)},null,8,[`text`]),e(`div`,em,[e(`div`,null,[e(`p`,tm,c(t.$t(`subsite.title.index`)),1),e(`p`,nm,c(t.$t(`subsite.message.indexTip`)),1)]),u(h,{type:`primary`,round:``,disabled:!t.canCreate,onClick:t.onOpenCreate},{default:M(()=>[u(m,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`subsite.button.create`)),1)]),_:1},8,[`disabled`,`onClick`])]),O((L(),A(b,{shadow:`never`,class:`list-card`},{default:M(()=>[!t.loading&&t.items.length===0?(L(),A(g,{key:0,description:t.$t(`subsite.message.empty`)},null,8,[`description`])):(L(),A(y,{key:1,data:t.items,stripe:``,class:`subsite-table`},{default:M(()=>[u(v,{label:t.$t(`subsite.field.origin`),prop:`origin`,"min-width":`240`},{default:M(({row:n})=>[e(`div`,rm,[e(`a`,{href:t.rowUrl(n),target:`_blank`,rel:`noopener`,class:`origin-link primary`},c(n.origin),9,im),(L(!0),p(x,null,F(t.customDomainsFor(n),n=>(L(),p(x,{key:n.id},[n.status===t.SiteDomainStatus.Active?(L(),p(`a`,{key:0,href:`https://${n.hostname}/`,target:`_blank`,rel:`noopener`,class:`custom-domain origin-link`},[o(c(n.hostname)+` `,1),u(_,{size:`small`,type:`success`,effect:`plain`,round:``},{default:M(()=>[o(c(t.$t(`subsite.status.active`)),1)]),_:1})],8,am)):n.status===t.SiteDomainStatus.Pending?(L(),p(`div`,om,[e(`span`,sm,c(n.hostname),1),u(_,{size:`small`,type:`warning`,effect:`plain`,round:``},{default:M(()=>[o(c(t.$t(`subsite.status.pending`)),1)]),_:1})])):n.status===t.SiteDomainStatus.Failed?(L(),p(`div`,cm,[e(`span`,lm,c(n.hostname),1),u(_,{size:`small`,type:`danger`,effect:`plain`,round:``},{default:M(()=>[o(c(t.$t(`subsite.status.failed`)),1)]),_:1})])):d(``,!0)],64))),128))]),n.title?(L(),p(`div`,um,c(n.title),1)):d(``,!0)]),_:1},8,[`label`]),u(v,{label:t.$t(`subsite.field.createdAt`),prop:`created_at`,width:`170`},{default:M(({row:n})=>[e(`span`,null,c(t.formatDate(n.created_at)),1)]),_:1},8,[`label`]),u(v,{label:t.$t(`subsite.field.actions`),width:`260`,fixed:`right`,align:`right`},{default:M(({row:n})=>[e(`span`,dm,[u(h,{size:`small`,round:``,onClick:e=>t.onOpenSite(n)},{default:M(()=>[o(c(t.$t(`subsite.button.open`)),1)]),_:1},8,[`onClick`]),u(h,{size:`small`,round:``,onClick:e=>t.onManageSite(n)},{default:M(()=>[o(c(t.$t(`subsite.button.manage`)),1)]),_:1},8,[`onClick`]),u(h,{size:`small`,round:``,type:`danger`,plain:``,loading:t.deletingId===n.id,onClick:e=>t.onDeleteSite(n)},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`loading`,`onClick`])])]),_:1},8,[`label`])]),_:1},8,[`data`]))]),_:1})),[[E,t.loading]]),u(S,{modelValue:t.opening.visible,"onUpdate:modelValue":r[0]||=e=>t.opening.visible=e,title:t.$t(`subsite.title.openSite`),width:`420px`,class:`open-dialog`,"align-center":``,"append-to-body":``},{default:M(()=>[e(`p`,fm,c(t.$t(`subsite.message.openSiteHint`)),1),e(`div`,pm,[(L(!0),p(x,null,F(t.opening.urls,e=>(L(),A(h,{key:e.href,round:``,type:`primary`,onClick:n=>t.onConfirmOpen(e.href)},{default:M(()=>[o(c(t.$t(`subsite.button.open`))+` `+c(e.hostname),1)]),_:2},1032,[`onClick`]))),128))])]),_:1},8,[`modelValue`,`title`]),u(S,{modelValue:t.creating.visible,"onUpdate:modelValue":r[4]||=e=>t.creating.visible=e,title:t.$t(`subsite.title.create`),width:`480px`,class:`create-dialog`},{footer:M(()=>[e(`span`,null,[u(h,{round:``,onClick:t.onCancelCreate},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(h,{round:``,type:`primary`,loading:t.creating.submitting,disabled:!t.creating.form.slug.trim(),onClick:t.onSubmitCreate},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])]),default:M(()=>[u(ee,{model:t.creating.form,"label-width":`auto`,class:`form`,onSubmit:r[3]||=n(()=>{},[`prevent`])},{default:M(()=>[u(w,{label:t.$t(`subsite.field.slug`),required:``},{default:M(()=>[u(C,{modelValue:t.creating.form.slug,"onUpdate:modelValue":r[1]||=e=>t.creating.form.slug=e,placeholder:t.$t(`subsite.placeholder.slug`),maxlength:`32`,"show-word-limit":``,autofocus:``},{append:M(()=>[o(`.`+c(t.subdomainZone),1)]),_:1},8,[`modelValue`,`placeholder`]),e(`span`,mm,c(t.$t(`subsite.message.slugTip`)),1)]),_:1},8,[`label`]),u(w,{label:t.$t(`subsite.field.title`)},{default:M(()=>[u(C,{modelValue:t.creating.form.title,"onUpdate:modelValue":r[2]||=e=>t.creating.form.title=e,placeholder:t.$t(`subsite.placeholder.title`),maxlength:`80`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])])}var gm=G(Qp,[[`render`,hm],[`__scopeId`,`data-v-7394fdb6`]]),_m=/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/,vm=[`acedata.cloud`,`surl.id`,`localhost`];function ym(e){let t=(e||``).trim().toLowerCase();if(!t)return{ok:!1,reason:`empty`};if(t.includes(`://`))try{t=new URL(t).hostname||``}catch{return{ok:!1,reason:`invalid_url`}}if(t=t.replace(/\/.*$/,``).split(`:`)[0],!t)return{ok:!1,reason:`empty`};if(!t.includes(`.`))return{ok:!1,reason:`no_dot`};for(let e of vm)if(t===e||t.endsWith(`.`+e))return{ok:!1,reason:`reserved`};let n=t.split(`.`);if(n.length<2)return{ok:!1,reason:`too_few_labels`};for(let e of n)if(!e||!_m.test(e))return{ok:!1,reason:`bad_label`};return{ok:!0,value:t}}var bm=z({name:`CustomDomainSetting`,components:{ElButton:W,ElEmpty:et,ElForm:Ne,ElFormItem:Me,ElInput:Qn,ElTag:Fn,ElDivider:Xe,SectionNotice:Ju},directives:{loading:Ai},data(){return{loading:!1,domains:[],bind:{hostname:``},binding:!1,busy:{id:null,action:null}}},computed:{site(){return this.$store.state.site},displayDomains(){return this.domains.map(e=>this.normalizeDomain(e)).filter(e=>!!e).map(e=>({...e,dns_instructions:e.dns_instructions||this.buildDnsInstructions(e)}))}},mounted(){this.fetchDomains()},methods:{async fetchDomains(){if(this.site?.id){this.loading=!0;try{let{data:e}=await Lr.getAll({site:this.site.id});this.domains=Array.isArray(e?.items)?e.items.map(e=>this.normalizeDomain(e)).filter(e=>!!e):[]}catch(e){console.error(`failed to load domains`,e),H.error(this.$t(`subsite.message.domainsLoadFailed`))}finally{this.loading=!1}}},async onBind(){if(!this.site?.id)return;let e=ym(this.bind.hostname);if(!e.ok){H.warning(this.$t(`subsite.message.hostnameInvalid`));return}this.binding=!0;try{let{data:t}=await Lr.create({site:this.site.id,hostname:e.value});H.success(this.$t(`subsite.message.domainCreated`));let n=this.normalizeDomain(t);n?this.replaceRow(n):await this.fetchDomains(),this.bind.hostname=``}catch(t){let n=t?.response?.data;if(n?.code===`duplication`){H.error(this.$t(`subsite.message.domainTaken`,{hostname:e.value}));return}let r=n?.hostname||n?.detail||n?.site||t?.message;H.error(typeof r==`string`?r:this.$t(`subsite.message.domainCreateFailed`))}finally{this.binding=!1}},async onVerify(e){if(e.id){this.busy={id:e.id,action:`verify`};try{let{data:t}=await Lr.verify(e.id);this.replaceRow(t),t.status===`Active`?H.success(this.$t(`subsite.message.domainActive`)):t.status===`Failed`&&H.error(t.status_reason||this.$t(`subsite.message.domainFailed`))}catch(e){let t=e?.response?.data?.detail||e?.message;H.error(typeof t==`string`?t:this.$t(`subsite.message.domainVerifyFailed`))}finally{this.busy={id:null,action:null}}}},async onRefresh(e){if(e.id){this.busy={id:e.id,action:`refresh`};try{let{data:t}=await Lr.get(e.id);this.replaceRow(t)}catch(e){console.error(`refresh failed`,e)}finally{this.busy={id:null,action:null}}}},async onDelete(e){if(!(!e.id||!e.hostname)){try{await xi.confirm(this.$t(`subsite.message.domainDeleteConfirm`,{hostname:e.hostname}),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.busy={id:e.id,action:`delete`};try{await Lr.delete(e.id),this.domains=this.domains.filter(t=>t.id!==e.id)}catch(e){let t=e?.response?.data?.detail||e?.message;H.error(typeof t==`string`?t:this.$t(`subsite.message.domainDeleteFailed`))}finally{this.busy={id:null,action:null}}}},replaceRow(e){let t=this.normalizeDomain(e);if(!t)return;let n=this.domains.findIndex(t=>t.id===e.id);n>=0?this.domains.splice(n,1,t):this.domains=[t,...this.domains]},normalizeDomain(e){if(!e||typeof e!=`object`)return null;let t=e;return!t.id||!t.hostname?null:t},buildDnsInstructions(e){if(e.status===`Active`)return null;let t=(e.hostname||``).trim(),n=(e.proxy_cname||this.site?.metadata?.proxy_cname||``).trim();return!t||!n?null:{step:`cname`,record_type:`CNAME`,record_name:t,record_value:n,instructions:this.$t(`subsite.message.domainsIntro`)}},isBusy(e,t){return this.busy.id===e.id?t?this.busy.action===t:this.busy.action!==null:!1},statusLabel(e){if(!e)return`-`;let t=`subsite.status.${e.charAt(0).toLowerCase()+e.slice(1)}`;return this.$t(t)},statusTagType(e){return e===`Active`?`success`:e===`Failed`?`danger`:`warning`}}}),xm={class:`custom-domain-settings`},Sm={class:`header`},Cm={class:`settings-title`},wm={class:`settings-tip`},Tm={class:`domains-body`},Em={class:`domain-row-head`},Dm={class:`hostname`},Om={class:`row-actions`},km={key:0,class:`status-reason error`},Am={key:1,class:`dns-instructions`},jm={class:`instructions`},Mm={class:`dns-record`},Nm={class:`break`},Pm={class:`record-name-hint`},Fm={class:`bind-title`},Im={class:`form-tip`};function Lm(t,r,i,a,s,l){let f=T(`section-notice`),m=T(`el-empty`),h=T(`el-tag`),g=T(`el-button`),_=T(`el-divider`),v=T(`el-input`),y=T(`el-form-item`),b=T(`el-form`),S=P(`loading`);return L(),p(`div`,xm,[u(f,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`div`,Sm,[e(`p`,Cm,c(t.$t(`common.settings.customDomain`)),1),e(`p`,wm,c(t.$t(`subsite.message.domainsIntro`)),1)]),O((L(),p(`div`,Tm,[!t.loading&&t.displayDomains.length===0?(L(),A(m,{key:0,description:t.$t(`subsite.message.domainsEmpty`),"image-size":80},null,8,[`description`])):d(``,!0),(L(!0),p(x,null,F(t.displayDomains,n=>(L(),p(`div`,{key:n.id,class:`domain-row`},[e(`div`,Em,[e(`strong`,Dm,c(n.hostname),1),u(h,{type:t.statusTagType(n.status),size:`small`,class:`status-tag`,round:``},{default:M(()=>[o(c(t.statusLabel(n.status)),1)]),_:2},1032,[`type`]),e(`span`,Om,[n.status===`Active`?d(``,!0):(L(),A(g,{key:0,size:`small`,type:`primary`,round:``,loading:t.isBusy(n,`verify`),disabled:t.isBusy(n)&&!t.isBusy(n,`verify`),onClick:e=>t.onVerify(n)},{default:M(()=>[o(c(t.$t(`subsite.button.verify`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])),n.status===`Active`?(L(),A(g,{key:1,size:`small`,round:``,loading:t.isBusy(n,`refresh`),disabled:t.isBusy(n)&&!t.isBusy(n,`refresh`),onClick:e=>t.onRefresh(n)},{default:M(()=>[o(c(t.$t(`subsite.button.refresh`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])):d(``,!0),u(g,{size:`small`,type:`danger`,round:``,plain:``,loading:t.isBusy(n,`delete`),disabled:t.isBusy(n)&&!t.isBusy(n,`delete`),onClick:e=>t.onDelete(n)},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])]),n.status_reason?(L(),p(`div`,km,c(n.status_reason),1)):d(``,!0),n.dns_instructions?(L(),p(`div`,Am,[e(`p`,jm,c(n.dns_instructions.instructions),1),e(`table`,Mm,[e(`tbody`,null,[e(`tr`,null,[e(`th`,null,c(t.$t(`subsite.field.recordType`)),1),e(`td`,null,[e(`code`,null,c(n.dns_instructions.record_type),1)])]),e(`tr`,null,[e(`th`,null,c(t.$t(`subsite.field.recordName`)),1),e(`td`,null,[e(`code`,null,c(n.dns_instructions.record_name),1)])]),e(`tr`,null,[e(`th`,null,c(t.$t(`subsite.field.recordValue`)),1),e(`td`,null,[e(`code`,Nm,c(n.dns_instructions.record_value),1)])])])]),e(`p`,Pm,c(t.$t(`subsite.message.recordNameHint`)),1)])):d(``,!0)]))),128)),u(_),e(`h4`,Fm,c(t.$t(`subsite.title.bindDomain`)),1),u(b,{model:t.bind,"label-width":`auto`,class:`form`,onSubmit:r[1]||=n(()=>{},[`prevent`])},{default:M(()=>[u(y,{label:t.$t(`subsite.field.hostname`),required:``},{default:M(()=>[u(v,{modelValue:t.bind.hostname,"onUpdate:modelValue":r[0]||=e=>t.bind.hostname=e,placeholder:t.$t(`subsite.placeholder.hostname`),maxlength:`253`},null,8,[`modelValue`,`placeholder`]),e(`span`,Im,c(t.$t(`subsite.message.hostnameTip`)),1)]),_:1},8,[`label`]),u(y,null,{default:M(()=>[u(g,{round:``,type:`primary`,loading:t.binding,disabled:!t.bind.hostname.trim(),onClick:t.onBind},{default:M(()=>[o(c(t.$t(`subsite.button.bindDomain`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),_:1})]),_:1},8,[`model`])])),[[S,t.loading]])])}var Rm=G(bm,[[`render`,Lm],[`__scopeId`,`data-v-e66a20b5`]]),zm=[`email`,`google`,`github`,`apple`,`phone`,`wechat`],Bm=z({name:`AuthSetting`,components:{ElAlert:Ie,ElButton:W,ElDialog:U,ElForm:Ne,ElFormItem:Me,ElInput:Qn,ElOption:we,ElSelect:Ce,ElSwitch:ct,ElTooltip:Fe,SectionNotice:Ju},data(){return{smsCustomEnabled:!1,smsUrlDraft:``,smsSecretDraft:``,smsDocVisible:!1,smsTestVisible:!1,smsTesting:!1,smsTest:{url:``,secret:``,region:``,number:``},smsTestResult:null}},computed:{site(){return this.$store.getters.site||{}},auth(){return this.site?.auth||{}},providers(){return this.auth.providers||{}},enabledProviders(){return zm.filter(e=>this.providers?.[e]?.enabled===!0)},defaultProvider(){return this.auth.default_provider||``},loginMode(){return this.auth.login_mode===`iframe`?`iframe`:`redirect`},providerOptions(){return zm.map(e=>({value:e,label:this.$t(`site.field.authProvider_${e}`)}))},defaultProviderOptions(){let e=new Set(this.enabledProviders);return this.providerOptions.filter(t=>e.has(t.value))},smsDocRequestExample(){return[`POST https://your-domain/sms-webhook (HTTPS only)`,`Content-Type: application/json`,``,`{`,` "type": "verification.code.request",`,` "site": "your-site.com",`,` "channel": "sms",`,` "purpose": "login",`,` "locale": "en",`,` "to": { "region": "86", "number": "13800000000" },`,` "data": { "code": "123456", "ttl_seconds": 1800 }`,`}`].join(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/LocalTools-CpzJO__m.js","assets/index-C-w8AJfV.js","assets/rolldown-runtime--c01j_DQ.js","assets/preload-helper-zJ_50EbN.js","assets/constants-CdZEFH5x.js","assets/i18n-DhQn0Z8p.js","assets/vendor-chart-Dw-P17PN.js","assets/vendor-axios-Ck2ffRoh.js","assets/icon-CDmWyIgD.js","assets/install-Cn-SLM3u.js","assets/en-CpRrS3Ur.js","assets/index.browser.esm-BuWinGJ1.js","assets/buffer-CnhyIITQ.js","assets/eventemitter3-CwKRT-4Q.js","assets/vendor-dayjs-C9ICuEWn.js","assets/models-C4O1HNS0.js","assets/vendor-vue-CCKiwo0U.js","assets/use-deprecated-BAB4ggjd.js","assets/event-BGnHezxC.js","assets/use-aria-DApzlmKf.js","assets/aria-8oQuUBWy.js","assets/scroll-kDH1KTep.js","assets/vnode-B_FEx-YD.js","assets/debounce-5xtusvLq.js","assets/vendor-vue-router-Cnr45FPb.js","assets/index-CmAz1JTM.css","assets/file-C6dKDiai.js","assets/folder--oyQ8nfO.js","assets/mouse-pointer-2-DZcCmo__.js","assets/pencil-DJveEUCk.js","assets/plus-DsPtzHMZ.js","assets/shield-C30JJkad.js","assets/terminal-yXrC2I0y.js","assets/wand-sparkles-BFbcxwi3.js","assets/switch-BZMevA9h.js","assets/LocalTools-B6V3qEhM.css"])))=>i.map(i=>d[i]);
2
+ import"./rolldown-runtime--c01j_DQ.js";import{A as e,B as t,C as n,Et as r,G as i,Gt as a,I as o,It as s,Jt as c,K as l,L as u,M as d,Mt as f,N as p,Nt as m,P as h,Q as g,R as _,Rt as v,S as y,St as b,T as x,U as S,Vt as C,Wt as w,Y as ee,at as T,bt as E,ft as D,ht as O,it as k,j as A,k as j,lt as te,mt as M,nt as N,ot as P,pt as ne,qt as re,rt as F,st as I,tt as L,wt as R,x as ie,z}from"./vendor-chart-Dw-P17PN.js";import{$ as ae,F as B,J as V,L as oe,Ot as se,S as ce,X as le,at as ue,et as de,h as fe,ht as pe,it as me,o as he,q as ge,rt as _e,tt as ve}from"./icon-CDmWyIgD.js";import{a as ye,c as be,t as xe}from"./install-Cn-SLM3u.js";import{t as Se}from"./debounce-5xtusvLq.js";import{r as Ce,t as we}from"./select-K-2CZ3eR.js";import{n as Te,t as Ee}from"./use-aria-DApzlmKf.js";import{n as De,t as Oe}from"./table-CYivBc_q.js";import{n as ke,t as Ae}from"./form-BdKMEyCR.js";import{a as je,t as Me}from"./tooltip-CjkDaYbd.js";import{n as Ne,r as Pe,t as Fe}from"./event-BGnHezxC.js";import{t as Ie}from"./alert-BprQRUmf.js";import{b as Le,r as Re,v as H}from"./models-C4O1HNS0.js";import{a as ze,c as Be,i as Ve,n as He,r as Ue}from"./use-deprecated-BAB4ggjd.js";import{t as We}from"./scrollbar-3jGyy846.js";import{t as Ge}from"./avatar-DEN_WCPo.js";import{t as Ke}from"./card-IQwqnRJR.js";import{n as qe,r as Je}from"./radio-BNhFzeBO.js";import{t as Ye}from"./click-outside-CzJDhMNh.js";import{t as Xe}from"./divider-Du_3kymg.js";import{n as Ze,r as Qe,t as $e}from"./dropdown-CbNRUbfy.js";import{t as et}from"./empty-C5KjRN0h.js";import{t as tt}from"./input-number-D_PD56K7.js";import{n as nt,r as rt,t as it}from"./avatar-CnQsavBT.js";import{t as at}from"./popover-CCbUzZfK.js";import{t as ot}from"./slider-CAVbZ4km.js";import{t as st}from"./switch-BZMevA9h.js";import{t as ct}from"./arrow-down-wide-narrow-xP4Yk_m9.js";import{t as lt}from"./arrow-right-yD2bsK_A.js";import{t as ut}from"./brain-BvsRE_4G.js";import{t as dt}from"./chevron-down-kOQEc1DQ.js";import{n as ft,t as pt}from"./mail-D90C07ml.js";import{t as mt}from"./circle-check-DhFuCeIC.js";import{t as ht}from"./coins-D7u-P3hE.js";import{t as gt}from"./copy-C-eoCqpp.js";import{t as _t}from"./dollar-sign-CmuBygPk.js";import{t as vt}from"./globe-BEP94d7V.js";import{t as yt}from"./image-C9t8D3m5.js";import{t as bt}from"./info-CifZclsR.js";import{t as xt}from"./key-round-DpXGLbCi.js";import{t as St}from"./laptop-RhJDASeF.js";import{t as Ct}from"./lightbulb-BHpGUYNg.js";import{t as wt}from"./link-Dk_62wni.js";import{t as Tt}from"./pencil-DJveEUCk.js";import{t as Et}from"./plus-DsPtzHMZ.js";import{t as Dt}from"./refresh-cw-Bu2iSphh.js";import{t as Ot}from"./rotate-ccw-IPNYOxzK.js";import{t as kt}from"./rotate-cw-Cw8L_Hve.js";import{t as At}from"./search-CkC2D5Yj.js";import{t as jt}from"./tag-BAF7zUb4.js";import{t as Mt}from"./trash-2-zWLkqDxH.js";import{t as Nt}from"./triangle-alert-CCs6VvUs.js";import{t as Pt}from"./upload-Q8MqK29R.js";import{t as Ft}from"./user-DHY7x-vL.js";import{t as It}from"./wand-sparkles-BFbcxwi3.js";import{t as Lt}from"./vendor-axios-Ck2ffRoh.js";import{$ as Rt,Ct as zt,Dr as Bt,J as Vt,K as Ht,Ln as Ut,Ot as Wt,Pi as Gt,Q as Kt,Qi as qt,Rt as Jt,Si as Yt,Sn as Xt,St as Zt,X as Qt,Xi as $t,Y as en,Yi as tn,Yn as nn,Z as rn,Zi as an,_t as on,ar as sn,bt as cn,ca as ln,di as un,ea as dn,et as fn,hr as pn,ii as mn,it as hn,jr as gn,mi as _n,mt as vn,nn as yn,nr as bn,nt as xn,q as Sn,qr as Cn,rt as wn,ta as Tn,tt as En,ur as Dn,xr as On}from"./constants-CdZEFH5x.js";import{a as kn,r as An}from"./i18n-DhQn0Z8p.js";import{t as jn}from"./preload-helper-zJ_50EbN.js";import{$n as Mn,A as Nn,Aa as Pn,An as Fn,At as In,Ba as Ln,Bt as Rn,C as zn,Ca as U,Ci as Bn,Ct as Vn,Dn as Hn,Dt as Un,Ei as Wn,Et as Gn,F as Kn,Ft as qn,H as Jn,Ha as Yn,Ht as Xn,I as Zn,It as Qn,Lr as $n,Lt as er,Ma as W,Mt as tr,N as nr,Na as rr,Nn as ir,Nt as ar,O as G,On as or,Ot as sr,P as cr,Pa as lr,Pt as ur,Q as dr,Qn as fr,R as pr,Rt as mr,S as hr,St as gr,Ti as _r,Tt as vr,U as yr,Ut as br,Vt as xr,W as Sr,Wa as Cr,_ as wr,_a as Tr,_n as Er,_t as Dr,at as Or,b as kr,bt as Ar,c as jr,ct as Mr,d as Nr,da as Pr,dn as Fr,dt as Ir,er as Lr,ft as Rr,g as zr,ga as Br,gt as Vr,h as Hr,ht as Ur,i as Wr,jt as Gr,k as Kr,ka as qr,kn as Jr,kt as Yr,la as Xr,ln as Zr,lt as Qr,m as $r,ma as ei,mn as ti,mt as ni,n as ri,nr as ii,nt as ai,p as oi,pa as si,pt as ci,r as li,rr as ui,rt as di,sn as fi,st as pi,tr as mi,tt as hi,u as gi,ua as _i,un as vi,ut as yi,v as bi,va as xi,vt as Si,wi as Ci,wn as wi,wt as Ti,xa as Ei,xi as Di,xt as Oi,y as ki,ya as Ai,yt as ji,z as Mi,zt as Ni}from"./index-C-w8AJfV.js";import{t as Pi}from"./index.es-CpSPskGM.js";import{t as Fi}from"./Logo-CusEze2M.js";var Ii=ae({...Cr,valueKey:{type:String,default:`value`},modelValue:{type:[String,Number],default:``},debounce:{type:Number,default:300},placement:{type:de(String),values:[`top`,`top-start`,`top-end`,`bottom`,`bottom-start`,`bottom-end`],default:`bottom-start`},fetchSuggestions:{type:de([Function,Array]),default:m},popperClass:{type:String,default:``},triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:je.teleported,appendTo:je.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean}),Li={[Pe]:e=>w(e),[Ne]:e=>w(e),[Fe]:e=>w(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>C(e)},Ri=`ElAutocomplete`,zi=xe(ye(z({...z({name:Ri,inheritAttrs:!1}),props:Ii,emits:Li,setup(t,{expose:r,emit:s}){let l=t,d=j(()=>Te(l,Object.keys(Cr))),m=te(),_=He(),b=be(`autocomplete`),S=R(),C=R(),w=R(),T=R(),E=!1,D=!1,O=R([]),N=R(-1),P=R(``),ne=R(!1),I=R(!1),ie=R(!1),z=Be(),ae=j(()=>m.style),V=j(()=>(O.value.length>0||ie.value)&&ne.value),oe=j(()=>!l.hideLoading&&ie.value),se=j(()=>S.value?Array.from(S.value.$el.querySelectorAll(`input`)):[]),le=()=>{V.value&&(P.value=`${S.value.$el.offsetWidth}px`)},de=()=>{N.value=-1},fe=async e=>{if(I.value)return;let t=e=>{ie.value=!1,!I.value&&(v(e)?(O.value=e,N.value=l.highlightFirstItem?0:-1):me(Ri,`autocomplete suggestions must be an array`))};if(ie.value=!0,v(l.fetchSuggestions))t(l.fetchSuggestions);else{let n=await l.fetchSuggestions(e,t);v(n)&&t(n)}},pe=Se(fe,l.debounce),he=e=>{let t=!!e;if(s(Ne,e),s(Pe,e),I.value=!1,ne.value||=t,!l.triggerOnFocus&&!e){I.value=!0,O.value=[];return}pe(e)},ge=e=>{_.value||(e.target?.tagName!==`INPUT`||se.value.includes(document.activeElement))&&(ne.value=!0)},_e=e=>{s(Fe,e)},ve=e=>{if(D)D=!1;else{ne.value=!0,s(`focus`,e);let t=l.modelValue??``;l.triggerOnFocus&&!E&&pe(String(t))}},ye=e=>{setTimeout(()=>{if(w.value?.isFocusInsideContent()){D=!0;return}ne.value&&Ee(),s(`blur`,e)})},xe=()=>{ne.value=!1,s(Pe,``),s(`clear`)},Ce=async()=>{V.value&&N.value>=0&&N.value<O.value.length?ke(O.value[N.value]):l.selectWhenUnmatched&&(s(`select`,{value:l.modelValue}),O.value=[],N.value=-1)},we=e=>{V.value&&(e.preventDefault(),e.stopPropagation(),Ee())},Ee=()=>{ne.value=!1},De=()=>{var e;(e=S.value)==null||e.focus()},Oe=()=>{var e;(e=S.value)==null||e.blur()},ke=async e=>{s(Ne,e[l.valueKey]),s(Pe,e[l.valueKey]),s(`select`,e),O.value=[],N.value=-1},Ae=e=>{if(!V.value||ie.value)return;if(e<0){N.value=-1;return}e>=O.value.length&&(e=O.value.length-1);let t=C.value.querySelector(`.${b.be(`suggestion`,`wrap`)}`),n=t.querySelectorAll(`.${b.be(`suggestion`,`list`)} li`)[e],r=t.scrollTop,{offsetTop:i,scrollHeight:a}=n;i+a>r+t.clientHeight&&(t.scrollTop+=a),i<r&&(t.scrollTop-=a),N.value=e,S.value.ref.setAttribute(`aria-activedescendant`,`${z.value}-item-${N.value}`)},je=ue(T,()=>{w.value?.isFocusInsideContent()||V.value&&Ee()});return ee(()=>{je?.()}),g(()=>{S.value.ref.setAttribute(`role`,`textbox`),S.value.ref.setAttribute(`aria-autocomplete`,`list`),S.value.ref.setAttribute(`aria-controls`,`id`),S.value.ref.setAttribute(`aria-activedescendant`,`${z.value}-item-${N.value}`),E=S.value.ref.hasAttribute(`readonly`)}),r({highlightedIndex:N,activated:ne,loading:ie,inputRef:S,popperRef:w,suggestions:O,handleSelect:ke,handleKeyEnter:Ce,focus:De,blur:Oe,close:Ee,highlight:Ae,getData:fe}),(t,r)=>(L(),A(f(Me),{ref_key:`popperRef`,ref:w,visible:f(V),placement:t.placement,"fallback-placements":[`bottom-start`,`top-start`],"popper-class":[f(b).e(`popper`),t.popperClass],teleported:t.teleported,"append-to":t.appendTo,"gpu-acceleration":!1,pure:``,"manual-mode":``,effect:`light`,trigger:`click`,transition:`${f(b).namespace.value}-zoom-in-top`,persistent:``,role:`listbox`,onBeforeShow:le,onHide:de},{content:M(()=>[e(`div`,{ref_key:`regionRef`,ref:C,class:a([f(b).b(`suggestion`),f(b).is(`loading`,f(oe))]),style:re({[t.fitInputWidth?`width`:`minWidth`]:P.value,outline:`none`}),role:`region`},[u(f(We),{id:f(z),tag:`ul`,"wrap-class":f(b).be(`suggestion`,`wrap`),"view-class":f(b).be(`suggestion`,`list`),role:`listbox`},{default:M(()=>[f(oe)?(L(),p(`li`,{key:0},[k(t.$slots,`loading`,{},()=>[u(f(B),{class:a(f(b).is(`loading`))},{default:M(()=>[u(f(ce))]),_:1},8,[`class`])])])):(L(!0),p(x,{key:1},F(O.value,(e,n)=>(L(),p(`li`,{id:`${f(z)}-item-${n}`,key:n,class:a({highlighted:N.value===n}),role:`option`,"aria-selected":N.value===n,onClick:t=>ke(e)},[k(t.$slots,`default`,{item:e},()=>[o(c(e[t.valueKey]),1)])],10,[`id`,`aria-selected`,`onClick`]))),128))]),_:3},8,[`id`,`wrap-class`,`view-class`])],6)]),default:M(()=>[e(`div`,{ref_key:`listboxRef`,ref:T,class:a([f(b).b(),t.$attrs.class]),style:re(f(ae)),role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":f(V),"aria-owns":f(z)},[u(f(Ln),i({ref_key:`inputRef`,ref:S},i(f(d),t.$attrs),{"model-value":t.modelValue,disabled:f(_),onInput:he,onChange:_e,onFocus:ve,onBlur:ye,onClear:xe,onKeydown:[y(n(e=>Ae(N.value-1),[`prevent`]),[`up`]),y(n(e=>Ae(N.value+1),[`prevent`]),[`down`]),y(Ce,[`enter`]),y(Ee,[`tab`]),y(we,[`esc`])],onMousedown:ge}),h({_:2},[t.$slots.prepend?{name:`prepend`,fn:M(()=>[k(t.$slots,`prepend`)])}:void 0,t.$slots.append?{name:`append`,fn:M(()=>[k(t.$slots,`append`)])}:void 0,t.$slots.prefix?{name:`prefix`,fn:M(()=>[k(t.$slots,`prefix`)])}:void 0,t.$slots.suffix?{name:`suffix`,fn:M(()=>[k(t.$slots,`suffix`)])}:void 0]),1040,[`model-value`,`disabled`,`onKeydown`])],14,[`aria-expanded`,`aria-owns`])]),_:3},8,[`visible`,`placement`,`popper-class`,`teleported`,`append-to`,`transition`]))}}),[[`__file`,`autocomplete.vue`]])),Bi=ae({color:{type:de(Object),required:!0},vertical:Boolean}),Vi=!1;function Hi(e,t){if(!pe)return;let n=function(e){var n;(n=t.drag)==null||n.call(t,e)},r=function(e){var i;document.removeEventListener(`mousemove`,n),document.removeEventListener(`mouseup`,r),document.removeEventListener(`touchmove`,n),document.removeEventListener(`touchend`,r),document.onselectstart=null,document.ondragstart=null,Vi=!1,(i=t.end)==null||i.call(t,e)},i=function(e){var i;Vi||(e.preventDefault(),document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener(`mousemove`,n),document.addEventListener(`mouseup`,r),document.addEventListener(`touchmove`,n),document.addEventListener(`touchend`,r),Vi=!0,(i=t.start)==null||i.call(t,e))};e.addEventListener(`mousedown`,i),e.addEventListener(`touchstart`,i,{passive:!1})}var Ui=e=>{let n=t(),{t:i}=ve(),a=r(),o=r(),s=j(()=>e.color.get(`alpha`)),c=j(()=>i(`el.colorpicker.alphaLabel`));function l(e){var t;e.target!==a.value&&u(e),(t=a.value)==null||t.focus()}function u(t){if(!o.value||!a.value)return;let r=n.vnode.el.getBoundingClientRect(),{clientX:i,clientY:s}=qr(t);if(e.vertical){let t=s-r.top;t=Math.max(a.value.offsetHeight/2,t),t=Math.min(t,r.height-a.value.offsetHeight/2),e.color.set(`alpha`,Math.round((t-a.value.offsetHeight/2)/(r.height-a.value.offsetHeight)*100))}else{let t=i-r.left;t=Math.max(a.value.offsetWidth/2,t),t=Math.min(t,r.width-a.value.offsetWidth/2),e.color.set(`alpha`,Math.round((t-a.value.offsetWidth/2)/(r.width-a.value.offsetWidth)*100))}}function d(e){let{code:t,shiftKey:n}=e,r=n?10:1;switch(t){case Le.left:case Le.down:e.preventDefault(),e.stopPropagation(),f(-r);break;case Le.right:case Le.up:e.preventDefault(),e.stopPropagation(),f(r);break}}function f(t){let n=s.value+t;n=n<0?0:n>100?100:n,e.color.set(`alpha`,n)}return{thumb:a,bar:o,alpha:s,alphaLabel:c,handleDrag:u,handleClick:l,handleKeydown:d}},Wi=(e,{bar:n,thumb:r,handleDrag:i})=>{let a=t(),o=be(`color-alpha-slider`),s=R(0),c=R(0),l=R();function u(){if(!r.value||e.vertical)return 0;let t=a.vnode.el,n=e.color.get(`alpha`);return t?Math.round(n*(t.offsetWidth-r.value.offsetWidth/2)/100):0}function d(){if(!r.value)return 0;let t=a.vnode.el;if(!e.vertical)return 0;let n=e.color.get(`alpha`);return t?Math.round(n*(t.offsetHeight-r.value.offsetHeight/2)/100):0}function f(){if(e.color&&e.color.value){let{r:t,g:n,b:r}=e.color.toRgb();return`linear-gradient(to right, rgba(${t}, ${n}, ${r}, 0) 0%, rgba(${t}, ${n}, ${r}, 1) 100%)`}return``}function p(){s.value=u(),c.value=d(),l.value=f()}g(()=>{if(!n.value||!r.value)return;let e={drag:e=>{i(e)},end:e=>{i(e)}};Hi(n.value,e),Hi(r.value,e),p()}),D(()=>e.color.get(`alpha`),()=>p()),D(()=>e.color.value,()=>p());let m=j(()=>[o.b(),o.is(`vertical`,e.vertical)]),h=j(()=>o.e(`bar`)),_=j(()=>o.e(`thumb`));return{rootKls:m,barKls:h,barStyle:j(()=>({background:l.value})),thumbKls:_,thumbStyle:j(()=>({left:oe(s.value),top:oe(c.value)})),update:p}},Gi=ye(z({...z({name:`ElColorAlphaSlider`}),props:Bi,setup(t,{expose:n}){let r=t,{alpha:i,alphaLabel:o,bar:s,thumb:c,handleDrag:l,handleClick:u,handleKeydown:d}=Ui(r),{rootKls:m,barKls:h,barStyle:g,thumbKls:_,thumbStyle:v,update:y}=Wi(r,{bar:s,thumb:c,handleDrag:l});return n({update:y,bar:s,thumb:c}),(t,n)=>(L(),p(`div`,{class:a(f(m))},[e(`div`,{ref_key:`bar`,ref:s,class:a(f(h)),style:re(f(g)),onClick:f(u)},null,14,[`onClick`]),e(`div`,{ref_key:`thumb`,ref:c,class:a(f(_)),style:re(f(v)),"aria-label":f(o),"aria-valuenow":f(i),"aria-orientation":t.vertical?`vertical`:`horizontal`,"aria-valuemin":`0`,"aria-valuemax":`100`,role:`slider`,tabindex:`0`,onKeydown:f(d)},null,46,[`aria-label`,`aria-valuenow`,`aria-orientation`,`onKeydown`])],2))}}),[[`__file`,`alpha-slider.vue`]]),Ki=z({name:`ElColorHueSlider`,props:{color:{type:Object,required:!0},vertical:Boolean},setup(e){let n=be(`color-hue-slider`),r=t(),i=R(),a=R(),o=R(0),s=R(0),c=j(()=>e.color.get(`hue`));D(()=>c.value,()=>{p()});function l(e){e.target!==i.value&&u(e)}function u(t){if(!a.value||!i.value)return;let n=r.vnode.el.getBoundingClientRect(),{clientX:o,clientY:s}=qr(t),c;if(e.vertical){let e=s-n.top;e=Math.min(e,n.height-i.value.offsetHeight/2),e=Math.max(i.value.offsetHeight/2,e),c=Math.round((e-i.value.offsetHeight/2)/(n.height-i.value.offsetHeight)*360)}else{let e=o-n.left;e=Math.min(e,n.width-i.value.offsetWidth/2),e=Math.max(i.value.offsetWidth/2,e),c=Math.round((e-i.value.offsetWidth/2)/(n.width-i.value.offsetWidth)*360)}e.color.set(`hue`,c)}function d(){if(!i.value)return 0;let t=r.vnode.el;if(e.vertical)return 0;let n=e.color.get(`hue`);return t?Math.round(n*(t.offsetWidth-i.value.offsetWidth/2)/360):0}function f(){if(!i.value)return 0;let t=r.vnode.el;if(!e.vertical)return 0;let n=e.color.get(`hue`);return t?Math.round(n*(t.offsetHeight-i.value.offsetHeight/2)/360):0}function p(){o.value=d(),s.value=f()}return g(()=>{if(!a.value||!i.value)return;let e={drag:e=>{u(e)},end:e=>{u(e)}};Hi(a.value,e),Hi(i.value,e),p()}),{bar:a,thumb:i,thumbLeft:o,thumbTop:s,hueValue:c,handleClick:l,update:p,ns:n}}});function qi(t,n,r,i,o,s){return L(),p(`div`,{class:a([t.ns.b(),t.ns.is(`vertical`,t.vertical)])},[e(`div`,{ref:`bar`,class:a(t.ns.e(`bar`)),onClick:t.handleClick},null,10,[`onClick`]),e(`div`,{ref:`thumb`,class:a(t.ns.e(`thumb`)),style:re({left:t.thumbLeft+`px`,top:t.thumbTop+`px`})},null,6)],2)}var Ji=ye(Ki,[[`render`,qi],[`__file`,`hue-slider.vue`]]),Yi=ae({modelValue:{type:de(String),default:void 0},id:String,showAlpha:Boolean,colorFormat:String,disabled:Boolean,size:le,popperClass:{type:String,default:``},tabindex:{type:[String,Number],default:0},teleported:je.teleported,predefine:{type:de(Array)},validateEvent:{type:Boolean,default:!0},...V,...Ee([`ariaLabel`])}),Xi={[Pe]:e=>w(e)||se(e),[Fe]:e=>w(e)||se(e),activeChange:e=>w(e)||se(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},Zi=Symbol(`colorPickerContextKey`),Qi=class{constructor(e={}){this._hue=0,this._saturation=100,this._value=100,this._alpha=100,this._tiny=new lr,this._isValid=!1,this.enableAlpha=!1,this.format=``,this.value=``;for(let t in e)s(e,t)&&(this[t]=e[t]);e.value?this.fromString(e.value):this.doOnChange()}set(e,t){if(arguments.length===1&&typeof e==`object`){for(let t in e)s(e,t)&&this.set(t,e[t]);return}this[`_${e}`]=t,this._isValid=!0,this.doOnChange()}get(e){return[`hue`,`saturation`,`value`,`alpha`].includes(e)?Math.round(this[`_${e}`]):this[`_${e}`]}toRgb(){return this._isValid?this._tiny.toRgb():{r:255,g:255,b:255,a:0}}fromString(e){let t=new lr(e);if(this._isValid=t.isValid,t.isValid){let{h:e,s:n,v:r,a:i}=t.toHsv();this._hue=e,this._saturation=n*100,this._value=r*100,this._alpha=i*100}else this._hue=0,this._saturation=100,this._value=100,this._alpha=100;this.doOnChange()}compare(e){let t=new lr({h:e._hue,s:e._saturation/100,v:e._value/100,a:e._alpha/100});return this._tiny.equals(t)}doOnChange(){let{_hue:e,_saturation:t,_value:n,_alpha:r,format:i,enableAlpha:a}=this,o=i||(a?`rgb`:`hex`);i===`hex`&&a&&(o=`hex8`),this._tiny=new lr({h:e,s:t/100,v:n/100,a:r/100}),this.value=this._isValid?this._tiny.toString(o):``}},$i=z({props:{colors:{type:Array,required:!0},color:{type:Object,required:!0},enableAlpha:{type:Boolean,required:!0}},setup(e){let t=be(`color-predefine`),{currentColor:n}=S(Zi),r=R(a(e.colors,e.color));D(()=>n.value,e=>{let t=new Qi({value:e});r.value.forEach(e=>{e.selected=t.compare(e)})}),ne(()=>{r.value=a(e.colors,e.color)});function i(t){e.color.fromString(e.colors[t])}function a(e,t){return e.map(e=>{let n=new Qi({value:e});return n.selected=n.compare(t),n})}return{rgbaColors:r,handleSelect:i,ns:t}}});function ea(t,n,r,i,o,s){return L(),p(`div`,{class:a(t.ns.b())},[e(`div`,{class:a(t.ns.e(`colors`))},[(L(!0),p(x,null,F(t.rgbaColors,(n,r)=>(L(),p(`div`,{key:t.colors[r],class:a([t.ns.e(`color-selector`),t.ns.is(`alpha`,n.get(`alpha`)<100),{selected:n.selected}]),onClick:e=>t.handleSelect(r)},[e(`div`,{style:re({backgroundColor:n.value})},null,4)],10,[`onClick`]))),128))],2)],2)}var ta=ye($i,[[`render`,ea],[`__file`,`predefine.vue`]]),na=z({name:`ElSlPanel`,props:{color:{type:Object,required:!0}},setup(e){let n=be(`color-svpanel`),r=t(),i=R(0),a=R(0),o=R(`hsl(0, 100%, 50%)`),s=j(()=>({hue:e.color.get(`hue`),value:e.color.get(`value`)}));function c(){let t=e.color.get(`saturation`),n=e.color.get(`value`),{clientWidth:s,clientHeight:c}=r.vnode.el;a.value=t*s/100,i.value=(100-n)*c/100,o.value=`hsl(${e.color.get(`hue`)}, 100%, 50%)`}function l(t){let n=r.vnode.el.getBoundingClientRect(),{clientX:o,clientY:s}=qr(t),c=o-n.left,l=s-n.top;c=Math.max(0,c),c=Math.min(c,n.width),l=Math.max(0,l),l=Math.min(l,n.height),a.value=c,i.value=l,e.color.set({saturation:c/n.width*100,value:100-l/n.height*100})}return D(()=>s.value,()=>{c()}),g(()=>{Hi(r.vnode.el,{drag:e=>{l(e)},end:e=>{l(e)}}),c()}),{cursorTop:i,cursorLeft:a,background:o,colorValue:s,handleDrag:l,update:c,ns:n}}});function ra(t,n,r,i,o,s){return L(),p(`div`,{class:a(t.ns.b()),style:re({backgroundColor:t.background})},[e(`div`,{class:a(t.ns.e(`white`))},null,2),e(`div`,{class:a(t.ns.e(`black`))},null,2),e(`div`,{class:a(t.ns.e(`cursor`)),style:re({top:t.cursorTop+`px`,left:t.cursorLeft+`px`})},[e(`div`)],6)],6)}var ia=ye(na,[[`render`,ra],[`__file`,`sv-panel.vue`]]),aa=xe(ye(z({...z({name:`ElColorPicker`}),props:Yi,emits:Xi,setup(t,{expose:n,emit:r}){let s=t,{t:m}=ve(),h=be(`color`),{formItem:_}=Ve(),v=Ue(),x=He(),{valueOnClear:S,isEmptyValue:C}=ge(s,null),{inputId:w,isLabeledByFormItem:ee}=ze(s,{formItemContext:_}),T=R(),E=R(),k=R(),te=R(),P=R(),ne=R(),{isFocused:F,handleFocus:I,handleBlur:z}=Yn(P,{disabled:x,beforeBlur(e){return te.value?.isFocusInsideContent(e)},afterBlur(){xe(!1),Ee()}}),ae=!0,V=b(new Qi({enableAlpha:s.showAlpha,format:s.colorFormat||``,value:s.modelValue})),oe=R(!1),se=R(!1),ce=R(``),le=j(()=>!s.modelValue&&!se.value?`transparent`:ye(V,s.showAlpha)),ue=j(()=>!s.modelValue&&!se.value?``:V.value),de=j(()=>ee.value?void 0:s.ariaLabel||m(`el.colorpicker.defaultLabel`)),pe=j(()=>ee.value?_?.labelId:void 0),me=j(()=>[h.b(`picker`),h.is(`disabled`,x.value),h.bm(`picker`,v.value),h.is(`focused`,F.value)]);function ye(e,t){let{r:n,g:r,b:i,a}=e.toRgb();return t?`rgba(${n}, ${r}, ${i}, ${a})`:`rgb(${n}, ${r}, ${i})`}function xe(e){oe.value=e}let Ce=Se(xe,100,{leading:!0});function we(){x.value||xe(!0)}function Te(){Ce(!1),Ee()}function Ee(){l(()=>{s.modelValue?V.fromString(s.modelValue):(V.value=``,!ue.value&&ce.value&&(ce.value=``),l(()=>{se.value=!1}))})}function De(){x.value||(oe.value&&Ee(),Ce(!oe.value))}function Oe(){V.fromString(ce.value),V.value!==ce.value&&(ce.value=V.value)}function ke(){let e=C(V.value)?S.value:V.value;r(Pe,e),r(Fe,e),s.validateEvent&&_?.validate(`change`).catch(e=>_e(e)),Ce(!1),l(()=>{let e=new Qi({enableAlpha:s.showAlpha,format:s.colorFormat||``,value:s.modelValue});V.compare(e)||Ee()})}function Ae(){Ce(!1),r(Pe,S.value),r(Fe,S.value),s.modelValue!==S.value&&s.validateEvent&&_?.validate(`change`).catch(e=>_e(e)),Ee()}function je(){oe.value&&(Te(),F.value&&Re())}function Ne(e){e.preventDefault(),e.stopPropagation(),xe(!1),Ee()}function Ie(e){switch(e.code){case Le.enter:case Le.numpadEnter:case Le.space:e.preventDefault(),e.stopPropagation(),we(),ne.value.focus();break;case Le.esc:Ne(e);break}}function Re(){P.value.focus()}function H(){P.value.blur()}return g(()=>{s.modelValue&&(ce.value=ue.value)}),D(()=>s.modelValue,e=>{e?e&&e!==V.value&&(ae=!1,V.fromString(e)):se.value=!1}),D(()=>[s.colorFormat,s.showAlpha],()=>{V.enableAlpha=s.showAlpha,V.format=s.colorFormat||V.format,V.doOnChange(),r(Pe,V.value)}),D(()=>ue.value,e=>{ce.value=e,ae&&r(`activeChange`,e),ae=!0}),D(()=>V.value,()=>{!s.modelValue&&!se.value&&(se.value=!0)}),D(()=>oe.value,()=>{l(()=>{var e,t,n;(e=T.value)==null||e.update(),(t=E.value)==null||t.update(),(n=k.value)==null||n.update()})}),N(Zi,{currentColor:ue}),n({color:V,show:we,hide:Te,focus:Re,blur:H}),(t,n)=>(L(),A(f(Me),{ref_key:`popper`,ref:te,visible:oe.value,"show-arrow":!1,"fallback-placements":[`bottom`,`top`,`right`,`left`],offset:0,"gpu-acceleration":!1,"popper-class":[f(h).be(`picker`,`panel`),f(h).b(`dropdown`),t.popperClass],"stop-popper-mouse-event":!1,effect:`light`,trigger:`click`,teleported:t.teleported,transition:`${f(h).namespace.value}-zoom-in-top`,persistent:``,onHide:e=>xe(!1)},{content:M(()=>[O((L(),p(`div`,{onKeydown:y(Ne,[`esc`])},[e(`div`,{class:a(f(h).be(`dropdown`,`main-wrapper`))},[u(Ji,{ref_key:`hue`,ref:T,class:`hue-slider`,color:f(V),vertical:``},null,8,[`color`]),u(ia,{ref_key:`sv`,ref:E,color:f(V)},null,8,[`color`])],2),t.showAlpha?(L(),A(Gi,{key:0,ref_key:`alpha`,ref:k,color:f(V)},null,8,[`color`])):d(`v-if`,!0),t.predefine?(L(),A(ta,{key:1,ref:`predefine`,"enable-alpha":t.showAlpha,color:f(V),colors:t.predefine},null,8,[`enable-alpha`,`color`,`colors`])):d(`v-if`,!0),e(`div`,{class:a(f(h).be(`dropdown`,`btns`))},[e(`span`,{class:a(f(h).be(`dropdown`,`value`))},[u(f(Ln),{ref_key:`inputRef`,ref:ne,modelValue:ce.value,"onUpdate:modelValue":e=>ce.value=e,"validate-event":!1,size:`small`,onChange:Oe},null,8,[`modelValue`,`onUpdate:modelValue`])],2),u(f(W),{class:a(f(h).be(`dropdown`,`link-btn`)),text:``,size:`small`,onClick:Ae},{default:M(()=>[o(c(f(m)(`el.colorpicker.clear`)),1)]),_:1},8,[`class`]),u(f(W),{plain:``,size:`small`,class:a(f(h).be(`dropdown`,`btn`)),onClick:ke},{default:M(()=>[o(c(f(m)(`el.colorpicker.confirm`)),1)]),_:1},8,[`class`])],2)],40,[`onKeydown`])),[[f(Ye),je,P.value]])]),default:M(()=>[e(`div`,i({id:f(w),ref_key:`triggerRef`,ref:P},t.$attrs,{class:f(me),role:`button`,"aria-label":f(de),"aria-labelledby":f(pe),"aria-description":f(m)(`el.colorpicker.description`,{color:t.modelValue||``}),"aria-disabled":f(x),tabindex:f(x)?void 0:t.tabindex,onKeydown:Ie,onFocus:f(I),onBlur:f(z)}),[e(`div`,{class:a(f(h).be(`picker`,`trigger`)),onClick:De},[e(`span`,{class:a([f(h).be(`picker`,`color`),f(h).is(`alpha`,t.showAlpha)])},[e(`span`,{class:a(f(h).be(`picker`,`color-inner`)),style:re({backgroundColor:f(le)})},[O(u(f(B),{class:a([f(h).be(`picker`,`icon`),f(h).is(`icon-arrow-down`)])},{default:M(()=>[u(f(he))]),_:1},8,[`class`]),[[ie,t.modelValue||se.value]]),O(u(f(B),{class:a([f(h).be(`picker`,`empty`),f(h).is(`icon-close`)])},{default:M(()=>[u(f(fe))]),_:1},8,[`class`]),[[ie,!t.modelValue&&!se.value]])],6)],2)],2)],16,[`id`,`aria-label`,`aria-labelledby`,`aria-description`,`aria-disabled`,`tabindex`,`onFocus`,`onBlur`])]),_:1},8,[`visible`,`popper-class`,`teleported`,`transition`,`onHide`]))}}),[[`__file`,`color-picker.vue`]])),oa=Tr(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),sa=Tr(`megaphone`,[[`path`,{d:`M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z`,key:`q8bfy3`}],[`path`,{d:`M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14`,key:`1853fq`}],[`path`,{d:`M8 6v8`,key:`15ugcq`}]]),ca=Tr(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]),la=Tr(`route`,[[`circle`,{cx:`6`,cy:`19`,r:`3`,key:`1kj8tv`}],[`path`,{d:`M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15`,key:`1d8sl`}],[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}]]),ua=Tr(`settings`,[[`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`}]]),da=Tr(`shield-user`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M6.376 18.91a6 6 0 0 1 11.249.003`,key:`hnjrf2`}],[`circle`,{cx:`12`,cy:`11`,r:`4`,key:`1gt34v`}]]),fa=Tr(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),pa=Tr(`user-x`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`line`,{x1:`17`,x2:`22`,y1:`8`,y2:`13`,key:`3nzzx3`}],[`line`,{x1:`22`,x2:`17`,y1:`8`,y2:`13`,key:`1swrse`}]]),ma=Tr(`zoom-in`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`,key:`1vmskp`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),ha=Tr(`zoom-out`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),ga=z({name:`UserAvatar`,data(){return{defaultAvatar:it}},computed:{user(){return this.$store.getters?.user}}}),_a=[`src`];function va(e,t,n,r,i,a){return L(),p(`img`,{src:e.user?.avatar||e.defaultAvatar,class:`avatar`},null,8,_a)}var ya=G(ga,[[`render`,va],[`__scopeId`,`data-v-b0beddd3`]]),ba=z({name:`ThemeSelector`,components:{ArrowDown:dt,ElDropdown:$e,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElIcon:B},data(){return{theme:`light`}},computed:{currentLabel(){return this.theme===`dark`?this.$t(`common.theme.dark`):this.theme===`system`?this.$t(`common.theme.system`):this.$t(`common.theme.light`)}},mounted(){let e=_r(`THEME`);this.theme=e===`dark`||e===`system`?e:document.documentElement.classList.contains(`dark`)?`dark`:`light`},methods:{onSelect(e){this.theme=e,this.applyTheme()},applyTheme(){Wn(`THEME`,this.theme,{path:`/`,domain:Fr()}),vi(this.theme)}}}),xa={class:`el-dropdown-link`};function Sa(t,n,r,i,a,s){let l=T(`arrow-down`),d=T(`el-icon`),f=T(`el-dropdown-item`),p=T(`el-dropdown-menu`),m=T(`el-dropdown`);return L(),A(m,{trigger:`click`,onCommand:t.onSelect},{dropdown:M(()=>[u(p,null,{default:M(()=>[u(f,{command:`light`},{default:M(()=>[o(c(t.$t(`common.theme.light`)),1)]),_:1}),u(f,{command:`dark`},{default:M(()=>[o(c(t.$t(`common.theme.dark`)),1)]),_:1}),u(f,{command:`system`},{default:M(()=>[o(c(t.$t(`common.theme.system`)),1)]),_:1})]),_:1})]),default:M(()=>[e(`span`,xa,[o(c(t.currentLabel)+` `,1),u(d,{class:`el-icon--right`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`onCommand`])}var Ca=G(ba,[[`render`,Sa]]),wa=z({name:`Locale`,components:{ElDropdown:$e,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElIcon:B,ArrowDown:dt},computed:{site(){return this.$store.getters.site},locales(){return Kn(this.site?.supported_locales)},isForced(){return!!cr(this.site)},value(){return this.$i18n.locale},currentLabel(){let e=this.locales.find(e=>e.value===this.value);return e?e.label:this.value}},watch:{locales:{immediate:!0,handler(){this.ensureAllowedLocale()}},isForced(){this.ensureAllowedLocale()}},methods:{async ensureAllowedLocale(){let e=Zn(this.value,this.site);e!==this.value&&await this.applyLocale(e)},async onSelectLocale(e){this.$router.push({query:{...this.$route.query,locale:void 0}}),await this.applyLocale(e)},async applyLocale(e){await An(e),Wn(`LOCALE`,e,{path:`/`,domain:Fr()})}}}),Ta={class:`el-dropdown-link`};function Ea(t,n,r,i,a,s){let l=T(`arrow-down`),f=T(`el-icon`),m=T(`el-dropdown-item`),h=T(`el-dropdown-menu`),g=T(`el-dropdown`);return t.isForced?d(``,!0):(L(),A(g,{key:0,trigger:`click`,onCommand:t.onSelectLocale},{dropdown:M(()=>[u(h,null,{default:M(()=>[(L(!0),p(x,null,F(t.locales,(e,t)=>(L(),A(m,{key:t,command:e.value},{default:M(()=>[o(c(e.label),1)]),_:2},1032,[`command`]))),128))]),_:1})]),default:M(()=>[e(`span`,Ta,[o(c(t.currentLabel)+` `,1),u(f,{class:`el-icon--right`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`onCommand`]))}var Da=G(wa,[[`render`,Ea]]),Oa=z({name:`SendShortcutSelector`,components:{ArrowDown:dt,ElDropdown:$e,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElIcon:B},data(){return{shortcut:`enter`,modKey:typeof navigator<`u`&&/Mac|iPhone|iPad|iPod/.test(navigator.platform||navigator.userAgent)?`⌘`:`Ctrl`}},computed:{currentLabel(){return this.shortcut===`mod-enter`?this.$t(`common.sendShortcut.modEnter`,{key:this.modKey}):this.$t(`common.sendShortcut.enter`)}},mounted(){this.shortcut=_r(`SEND_SHORTCUT`)===`mod-enter`?`mod-enter`:`enter`},methods:{onSelect(e){this.shortcut=e,Wn(`SEND_SHORTCUT`,e,{path:`/`,domain:Fr()})}}}),ka={class:`el-dropdown-link`};function Aa(t,n,r,i,a,s){let l=T(`arrow-down`),d=T(`el-icon`),f=T(`el-dropdown-item`),p=T(`el-dropdown-menu`),m=T(`el-dropdown`);return L(),A(m,{trigger:`click`,onCommand:t.onSelect},{dropdown:M(()=>[u(p,null,{default:M(()=>[u(f,{command:`enter`},{default:M(()=>[o(c(t.$t(`common.sendShortcut.enter`)),1)]),_:1}),u(f,{command:`mod-enter`},{default:M(()=>[o(c(t.$t(`common.sendShortcut.modEnter`,{key:t.modKey})),1)]),_:1})]),_:1})]),default:M(()=>[e(`span`,ka,[o(c(t.currentLabel)+` `,1),u(d,{class:`el-icon--right`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})])]),_:1},8,[`onCommand`])}var ja=z({name:`GeneralSettings`,components:{ThemeSwitcher:Ca,LocaleSwitcher:Da,SendShortcut:G(Oa,[[`render`,Aa]])}}),Ma={class:`settings-list`},Na={class:`settings-item`},Pa={class:`settings-label`},Fa={class:`settings-title`},Ia={class:`settings-content`},La={class:`settings-item`},Ra={class:`settings-label`},za={class:`settings-title`},Ba={class:`settings-content`},Va={class:`settings-item`},Ha={class:`settings-label`},Ua={class:`settings-title`},Wa={class:`settings-content`};function Ga(t,n,r,i,a,o){let s=T(`theme-switcher`),l=T(`locale-switcher`),d=T(`send-shortcut`);return L(),p(`div`,Ma,[e(`section`,Na,[e(`div`,Pa,[e(`p`,Fa,c(t.$t(`common.settings.theme`)),1)]),e(`div`,Ia,[u(s)])]),e(`section`,La,[e(`div`,Ra,[e(`p`,za,c(t.$t(`common.settings.language`)),1)]),e(`div`,Ba,[u(l)])]),e(`section`,Va,[e(`div`,Ha,[e(`p`,Ua,c(t.$t(`common.settings.sendShortcut`)),1)]),e(`div`,Wa,[u(d)])])])}var Ka=G(ja,[[`render`,Ga]]),qa=z({name:`BYOKDialog`,components:{ErrorIcon:ft,ElButton:W,ElDialog:U,ElForm:Ae,ElFormItem:ke,ElInput:Ln,ElOption:we,ElSelect:Ce,SuccessIcon:mt},props:{visible:{type:Boolean,default:!1},credential:{type:Object,default:null},providers:{type:Array,default:()=>[]},token:{type:String,default:``}},emits:[`update:visible`,`saved`],data(){return{form:{provider:``,api_key:``,base_url:``,label:``},saving:!1,testing:!1,testResult:null}},computed:{rules(){return{provider:[{required:!0,message:this.$t(`byok.field.provider`),trigger:`change`}],api_key:[{required:!this.credential,message:this.$t(`byok.field.apiKeyPlaceholder`),trigger:`blur`}]}},placeholderBaseUrl(){let e=this.form.provider;return this.providers.find(t=>t.id===e)?.default_base_url??this.$t(`byok.field.baseUrlPlaceholder`)},apiKeyPlaceholder(){return this.credential?this.credential.api_key_masked?`${this.credential.api_key_masked} · ${this.$t(`byok.field.apiKeyEditPlaceholder`)}`:this.$t(`byok.field.apiKeyEditPlaceholder`):this.$t(`byok.field.apiKeyPlaceholder`)},canTest(){return!this.token||!this.form.provider?!1:this.credential?!0:!!this.form.api_key.trim()}},watch:{credential:{immediate:!0,handler(e){e?this.form={provider:e.provider,api_key:``,base_url:e.base_url??``,label:e.label??``}:this.form={provider:this.providers?.[0]?.id??``,api_key:``,base_url:``,label:``},this.testResult=null}}},methods:{providerDescription(e){return this.$t(`byok.providerDesc.${e}`)},onClose(e){(e===!1||e===void 0)&&this.$emit(`update:visible`,!1)},async persist(e={}){let t=this.$refs.formRef;if(t)try{await t.validate()}catch{return null}if(!this.token)return null;this.saving=!0;try{let t=this.form.base_url.trim(),n=this.form.label.trim(),r=this.form.api_key.trim();if(this.credential){let i={};return r&&(i.api_key=r),t!==(this.credential.base_url??``)&&(i.base_url=t),n!==(this.credential.label??``)&&(i.label=n),Object.keys(i).length>0&&await ir.update(this.credential.id,i,{token:this.token}),e.silent||H.success(this.$t(`byok.message.saveSuccess`)),this.credential.id}if(!this.form.provider)return null;let i={provider:this.form.provider,api_key:r,...t?{base_url:t}:{},...n?{label:n}:{}},{data:a}=await ir.create(i,{token:this.token});return e.silent||H.success(this.$t(`byok.message.saveSuccess`)),a?.id??null}catch(e){let t=e?.response?.data?.message||(e instanceof Error?e.message:`unknown error`);return console.error(`Failed to save BYOK credential`,e),H.error(this.$t(`byok.message.saveFailed`)+`: `+t),null}finally{this.saving=!1}},async onSubmit(){await this.persist()&&this.$emit(`saved`)},async buildTestPayload(){let e=this.$refs.formRef;if(e)try{await e.validate()}catch{return null}let t=this.form.provider;if(!this.token||!t)return null;let n=this.form.api_key.trim();return!this.credential&&!n?null:{...this.credential?{id:this.credential.id}:{},provider:t,...n?{api_key:n}:{},base_url:this.form.base_url.trim()}},resolveTestEndpoint(){let e=this.providers.find(e=>e.id===this.form.provider);return`${(this.form.base_url||e?.default_base_url||``).replace(/\/+$/,``)}/models`},async onTest(){this.testResult=null;let e=await this.buildTestPayload();if(!e)return;let t=this.resolveTestEndpoint();this.testing=!0;try{let{data:n}=await ir.test(e,{token:this.token});this.testResult={ok:!!n?.ok,endpoint:n?.endpoint||t,status:n?.status,message:n?.message}}catch(e){let n=e?.response?.status,r=e?.response?.data?.message||(e instanceof Error?e.message:`unknown error`);this.testResult={ok:!1,endpoint:t,status:n,message:r}}finally{this.testing=!1}}}}),Ja={class:`provider-option`},Ya={class:`provider-name`},Xa={class:`provider-desc`},Za={key:0,class:`current-key`},Qa={class:`hint`},$a={class:`test-result-title`},eo={key:0},to={key:1},no={class:`test-result-detail`};function ro(t,n,r,i,s,l){let f=T(`el-option`),m=T(`el-select`),h=T(`el-form-item`),g=T(`el-input`),_=T(`el-form`),v=T(`success-icon`),y=T(`error-icon`),b=T(`el-button`),S=T(`el-dialog`);return L(),A(S,{"model-value":t.visible,title:t.credential?t.$t(`byok.title.editCredential`):t.$t(`byok.title.addCredential`),width:`560px`,"close-on-click-modal":!1,"onUpdate:modelValue":t.onClose},{footer:M(()=>[u(b,{onClick:n[4]||=e=>t.onClose(!1)},{default:M(()=>[o(c(t.$t(`byok.button.cancel`)),1)]),_:1}),u(b,{loading:t.testing,disabled:t.saving||!t.canTest,onClick:t.onTest},{default:M(()=>[o(c(t.$t(`byok.button.test`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`]),u(b,{type:`primary`,loading:t.saving,onClick:t.onSubmit},{default:M(()=>[o(c(t.$t(`byok.button.save`)),1)]),_:1},8,[`loading`,`onClick`])]),default:M(()=>[u(_,{ref:`formRef`,model:t.form,rules:t.rules,"label-position":`top`},{default:M(()=>[u(h,{label:t.$t(`byok.field.provider`),prop:`provider`},{default:M(()=>[u(m,{modelValue:t.form.provider,"onUpdate:modelValue":n[0]||=e=>t.form.provider=e,placeholder:t.$t(`byok.field.provider`),disabled:!!t.credential,"popper-class":`byok-provider-select-popper`,class:`w-full`},{default:M(()=>[(L(!0),p(x,null,F(t.providers,n=>(L(),A(f,{key:n.id,label:n.label,value:n.id},{default:M(()=>[e(`div`,Ja,[e(`span`,Ya,c(n.label),1),e(`span`,Xa,c(t.providerDescription(n.id)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`disabled`])]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.apiKey`),prop:`api_key`},{default:M(()=>[u(g,{modelValue:t.form.api_key,"onUpdate:modelValue":n[1]||=e=>t.form.api_key=e,type:`password`,autocomplete:`new-password`,"show-password":``,placeholder:t.apiKeyPlaceholder},null,8,[`modelValue`,`placeholder`]),t.credential?.api_key_masked?(L(),p(`p`,Za,[e(`code`,null,c(t.credential.api_key_masked),1),e(`span`,null,c(t.$t(`byok.field.apiKeyEditPlaceholder`)),1)])):d(``,!0)]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.baseUrl`),prop:`base_url`},{default:M(()=>[u(g,{modelValue:t.form.base_url,"onUpdate:modelValue":n[2]||=e=>t.form.base_url=e,placeholder:t.placeholderBaseUrl},null,8,[`modelValue`,`placeholder`]),e(`p`,Qa,c(t.$t(`byok.message.baseUrlHelp`)),1)]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.label`)},{default:M(()=>[u(g,{modelValue:t.form.label,"onUpdate:modelValue":n[3]||=e=>t.form.label=e,placeholder:t.$t(`byok.field.labelPlaceholder`),maxlength:`64`,"show-word-limit":``},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`,`rules`]),t.testResult?(L(),p(`div`,{key:0,class:a([`test-result`,t.testResult.ok?`ok`:`fail`])},[e(`p`,$a,[t.testResult.ok?(L(),p(`span`,eo,[u(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`byok.test.success`)),1)])):(L(),p(`span`,to,[u(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`byok.test.failure`)),1)]))]),e(`dl`,no,[e(`dt`,null,c(t.$t(`byok.test.endpoint`)),1),e(`dd`,null,[e(`code`,null,`GET `+c(t.testResult.endpoint),1)]),t.testResult.status===void 0?d(``,!0):(L(),p(x,{key:0},[e(`dt`,null,c(t.$t(`byok.test.status`)),1),e(`dd`,null,[e(`code`,null,c(t.testResult.status),1)])],64)),t.testResult.message?(L(),p(x,{key:1},[e(`dt`,null,c(t.$t(`byok.test.message`)),1),e(`dd`,null,c(t.testResult.message),1)],64)):d(``,!0)])],2)):d(``,!0)]),_:1},8,[`model-value`,`title`,`onUpdate:modelValue`])}var io=z({name:`ByokSetting`,components:{AddIcon:Et,ElButton:W,ElSwitch:st,ElTable:Oe,ElTableColumn:De,ElTag:Pn,"byok-dialog":G(qa,[[`render`,ro],[`__scopeId`,`data-v-f1063685`]])},directives:{loading:Ai},data(){return{loading:!1,credentials:[],providers:[],togglingId:null,dialog:{visible:!1,credential:null}}},computed:{token(){return this.$store?.state?.chat?.credential?.token}},watch:{token:{immediate:!0,handler(e){e&&this.bootstrap()}}},async mounted(){if(!this.token)try{await this.$store.dispatch(`chat/getApplications`);let e=this.$store?.state?.chat?.applications;Array.isArray(e)&&e.length>0&&await this.$store.dispatch(`chat/setApplication`,e[0])}catch(e){console.error(`Failed to bootstrap chat application for BYOK`,e)}},methods:{async bootstrap(){await Promise.all([this.loadProviders(),this.loadCredentials()])},async loadProviders(){if(this.token)try{let{data:e}=await ir.providers({token:this.token});this.providers=e?.providers??[]}catch(e){console.error(`Failed to load BYOK providers`,e)}},async loadCredentials(){if(this.token){this.loading=!0;try{let{data:e}=await ir.list({token:this.token});this.credentials=e?.items??[]}catch(e){console.error(`Failed to load BYOK credentials`,e),H.error(this.$t(`byok.message.loadFailed`))}finally{this.loading=!1}}},onAdd(){this.dialog.credential=null,this.dialog.visible=!0},onEdit(e){this.dialog.credential=e,this.dialog.visible=!0},async onSaved(){this.dialog.visible=!1,this.dialog.credential=null,await this.loadCredentials()},async onToggleActive(e,t){if(this.token){this.togglingId=e.id;try{await ir.update(e.id,{is_active:t},{token:this.token}),await this.loadCredentials()}catch(e){console.error(`Failed to toggle BYOK credential`,e),H.error(this.$t(`byok.message.saveFailed`))}finally{this.togglingId=null}}},async onDelete(e){if(this.token){try{await xi.confirm(this.$t(`byok.message.deleteConfirm`,{provider:e.provider_label}),this.$t(`byok.title.deleteCredential`),{type:`warning`})}catch{return}try{await ir.delete(e.id,{token:this.token}),H.success(this.$t(`byok.message.deleteSuccess`)),await this.loadCredentials()}catch(e){console.error(`Failed to delete BYOK credential`,e),H.error(this.$t(`byok.message.saveFailed`))}}}}}),ao={class:`byok`},oo={class:`byok-intro`},so={class:`byok-intro-tip`},co={class:`byok-actions`},lo={key:0,class:`break-all`},uo={key:1,class:`text-[var(--el-text-color-placeholder)]`},fo={class:`text-xs text-[var(--el-text-color-regular)]`},po={key:0,class:`break-all text-xs`},mo={key:1,class:`text-[var(--el-text-color-placeholder)]`};function ho(t,n,r,i,a,s){let l=T(`add-icon`),f=T(`el-button`),m=T(`el-tag`),h=T(`el-table-column`),g=T(`el-switch`),_=T(`el-table`),v=T(`byok-dialog`),y=P(`loading`);return L(),p(`div`,ao,[e(`div`,oo,[e(`p`,so,c(t.$t(`byok.description.list`)),1)]),e(`div`,co,[u(f,{type:`primary`,round:``,size:`default`,disabled:!t.token,onClick:t.onAdd},{default:M(()=>[u(l,{class:`mr-1 text-[12px]`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`byok.button.add`)),1)]),_:1},8,[`disabled`,`onClick`])]),O((L(),A(_,{data:t.credentials,stripe:``,class:`byok-table`,"table-layout":`fixed`,"empty-text":t.$t(`byok.message.empty`)},{default:M(()=>[u(h,{label:t.$t(`byok.field.provider`),width:`130px`},{default:M(e=>[u(m,{type:e.row.is_active?`success`:`info`,effect:`dark`,round:``},{default:M(()=>[o(c(e.row.provider_label),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.label`),"min-width":`120px`},{default:M(e=>[e.row.label?(L(),p(`span`,lo,c(e.row.label),1)):(L(),p(`span`,uo,`—`))]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.apiKey`),width:`140px`},{default:M(t=>[e(`code`,fo,c(t.row.api_key_masked),1)]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.baseUrl`),"min-width":`160px`},{default:M(e=>[e.row.base_url?(L(),p(`span`,po,c(e.row.base_url),1)):(L(),p(`span`,mo,c(t.$t(`byok.value.default`)),1))]),_:1},8,[`label`]),u(h,{label:t.$t(`byok.field.isActive`),width:`80px`,"class-name":`text-center`},{default:M(e=>[u(g,{"model-value":e.row.is_active,loading:t.togglingId===e.row.id,onChange:n=>t.onToggleActive(e.row,!!n)},null,8,[`model-value`,`loading`,`onChange`])]),_:1},8,[`label`]),u(h,{label:t.$t(`common.field.operations`),width:`160px`,fixed:`right`},{default:M(e=>[u(f,{size:`small`,onClick:n=>t.onEdit(e.row)},{default:M(()=>[o(c(t.$t(`byok.button.edit`)),1)]),_:1},8,[`onClick`]),u(f,{size:`small`,type:`danger`,plain:``,onClick:n=>t.onDelete(e.row)},{default:M(()=>[o(c(t.$t(`byok.button.delete`)),1)]),_:1},8,[`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`,`empty-text`])),[[y,t.loading]]),t.dialog.visible?(L(),A(v,{key:0,visible:t.dialog.visible,"onUpdate:visible":n[0]||=e=>t.dialog.visible=e,credential:t.dialog.credential,providers:t.providers,token:t.token,onSaved:t.onSaved},null,8,[`visible`,`credential`,`providers`,`token`,`onSaved`])):d(``,!0)])}var go=G(io,[[`render`,ho],[`__scopeId`,`data-v-ebb61328`]]);function _o(e){let t=ti();return{Authorization:`Bearer ${e}`,"Content-Type":`application/json`,...t?{"x-site-origin":t}:{}}}var vo=`${ln}/aichat2/memories`,yo=1500,bo=480*1e3,xo=5;function So(){let e=Error(`memory import canceled`);return e.name=`AbortError`,e}function Co(e,t){return t?.aborted?Promise.reject(So()):new Promise((n,r)=>{let i=()=>{clearTimeout(a),r(So())},a=setTimeout(()=>{t?.removeEventListener(`abort`,i),n()},e);t?.addEventListener(`abort`,i,{once:!0})})}function wo(e){if(!e||typeof e!=`object`)throw Error(`invalid memory import status response`);let t=e.status;if(t!==`running`&&t!==`success`&&t!==`failed`)throw Error(`invalid memory import status response`);return e}var To=new class{async getProfile(e){let{data:t}=await Lt.post(vo,{action:`list`},{headers:_o(e)});return{items:t?.items??[],enabled:t?.enabled!==!1,importJob:t?.import_job?wo(t.import_job):null}}async setEnabled(e,t){let{data:n}=await Lt.post(vo,{action:`set_enabled`,enabled:t},{headers:_o(e)});return n?.enabled!==!1}async importText(e,t,n={}){let r=Ci(),i=r;for(let a=0;a<2;a++)try{let{data:a}=await Lt.post(vo,{action:`import`,id:r,text:t},{headers:_o(e),signal:n.signal});i=a?.task_id||r;break}catch(e){if(n.signal?.aborted||a===1)throw e;await Co(500,n.signal)}return this.waitForImport(e,i,n)}async waitForImport(e,t,n={}){let r=Date.now()+bo,i=0;for(;Date.now()<r;){if(n.signal?.aborted)throw So();let r;try{let{data:a}=await Lt.post(vo,{action:`import_status`,id:t},{headers:_o(e),signal:n.signal});r=wo(a),i=0}catch(e){if(n.signal?.aborted)throw So();if(i+=1,i>=xo)throw e;await Co(Math.min(yo*2**i,1e4),n.signal);continue}if(r.status===`success`)return{processed:r.processed??0,rejected:r.rejected??0,total:r.total??0};if(r.status===`failed`)throw Error(r.error||`memory import failed`);await Co(yo,n.signal)}throw Error(`memory import timed out`)}async remove(e,t){let{data:n}=await Lt.post(vo,{action:`delete`,id:t},{headers:_o(e)});return!!n?.success}async clear(e){let{data:t}=await Lt.post(vo,{action:`clear`},{headers:_o(e)});return!!t?.success}},Eo=z({name:`MemorySetting`,components:{CopyIcon:gt,ElButton:W,ElDialog:U,ElEmpty:et,ElInput:Ln,ElSwitch:st,IdeaIcon:Ct,SuccessIcon:mt},directives:{loading:Ai},data(){return{loading:!1,clearing:!1,removingId:null,memoryReady:!1,updatingMemory:!1,importVisible:!1,importing:!1,importText:``,importController:null,entries:[],importPromptCopied:!1,importPromptCopiedTimer:void 0}},computed:{memoryEnabled(){return this.$store?.state?.chat?.memoryEnabled!==!1},importPrompt(){return this.$t(`common.settings.memoryImportPrompt`)},token(){return this.$store?.state?.chat?.credential?.token}},watch:{token:{handler(e){e?this.fetch():this.memoryReady=!1}}},async created(){await nr(`chat`),this.token&&await this.fetch()},beforeUnmount(){this.importController?.abort(),this.importPromptCopiedTimer!==void 0&&window.clearTimeout(this.importPromptCopiedTimer)},methods:{openImport(){this.importPromptCopied=!1,this.importPromptCopiedTimer!==void 0&&(window.clearTimeout(this.importPromptCopiedTimer),this.importPromptCopiedTimer=void 0),this.importText=``,this.importVisible=!0},closeImport(){this.importing||(this.importVisible=!1,this.importPromptCopied=!1,this.importPromptCopiedTimer!==void 0&&(window.clearTimeout(this.importPromptCopiedTimer),this.importPromptCopiedTimer=void 0),this.importController?.abort(),this.importController=null)},async copyImportPrompt(){try{if(await fi(this.importPrompt)){this.importPromptCopied=!0,this.importPromptCopiedTimer!==void 0&&window.clearTimeout(this.importPromptCopiedTimer),this.importPromptCopiedTimer=window.setTimeout(()=>{this.importPromptCopied=!1,this.importPromptCopiedTimer=void 0},3e3);return}}catch(e){console.error(`failed to copy memory import prompt`,e)}H.error(this.$t(`common.message.copyFailed`))},async onImport(){if(!(!this.token||!this.importText.trim()||this.importing)){this.importing=!0,this.importController?.abort(),this.importController=new AbortController;try{let e=await To.importText(this.token,this.importText.trim(),{signal:this.importController.signal});this.importVisible=!1,this.importText=``,await this.fetch(),e.rejected>0?H.warning(this.$t(`common.settings.memoryImportPartial`,{processed:e.processed,rejected:e.rejected})):H.success(this.$t(`common.settings.memoryImportSuccess`,{count:e.processed}))}catch(e){console.error(`failed to import memories`,e);let t=e?.response?.status;if(e?.name===`AbortError`)return;t===409?H.warning(this.$t(`common.settings.memoryImportInProgress`)):t===400?H.error(this.$t(`common.settings.memoryImportInvalid`)):H.error(this.$t(`common.settings.memoryError`))}finally{this.importing=!1,this.importController=null}}},async resumeImport(e){if(!(!this.token||this.importing)){this.importing=!0,this.importVisible=!0,this.importController=new AbortController;try{let t=await To.waitForImport(this.token,e,{signal:this.importController.signal});this.importVisible=!1,await this.fetch(),H.success(this.$t(`common.settings.memoryImportSuccess`,{count:t.processed}))}catch(e){e?.name!==`AbortError`&&(console.error(`failed to resume memory import`,e),H.error(this.$t(`common.settings.memoryError`)))}finally{this.importing=!1,this.importController=null}}},async onMemoryEnabledChange(e){if(await nr(`chat`),!this.token)return;let t=e===!0;if(t!==this.memoryEnabled){this.updatingMemory=!0;try{let e=await To.setEnabled(this.token,t);this.$store.commit(`chat/setMemoryEnabled`,e)}catch(e){console.error(`failed to update memory preference`,e),H.error(this.$t(`common.settings.memoryError`))}finally{this.updatingMemory=!1}}},async fetch(){if(this.token){this.memoryReady=!1,this.loading=!0;try{let e=await To.getProfile(this.token);this.entries=e.items,this.$store.commit(`chat/setMemoryEnabled`,e.enabled),this.memoryReady=!0,e.importJob?.status===`running`&&!this.importing&&this.resumeImport(e.importJob.id)}catch(e){console.error(`failed to load memories`,e)}finally{this.loading=!1}}},async onRemove(e){if(this.token){this.removingId=e.id;try{await To.remove(this.token,e.id),this.entries=this.entries.filter(t=>t.id!==e.id)}catch(e){console.error(`failed to forget memory`,e),H.error(this.$t(`common.settings.memoryError`))}finally{this.removingId=null}}},async onClearAll(){if(this.token){try{await xi.confirm(this.$t(`common.settings.memoryClearConfirm`),this.$t(`common.settings.memoryClearAll`),{type:`warning`,confirmButtonText:this.$t(`common.settings.memoryClearAll`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.clearing=!0;try{await To.clear(this.token),this.entries=[]}catch(e){console.error(`failed to clear memories`,e),H.error(this.$t(`common.settings.memoryError`))}finally{this.clearing=!1}}}}}),Do={class:`settings-list memory-setting`},Oo={class:`hint muted`},ko={class:`memory-toggle-row`},Ao={class:`toggle-title`},jo={class:`hint muted`},Mo={key:0,class:`hint muted`},No={class:`section-head`},Po={class:`section-actions`},Fo={key:1,class:`rows`},Io={class:`memory-content`},Lo={class:`import-step`},Ro={class:`import-step-title`},zo={class:`import-step`},Bo={class:`import-step-title`};function Vo(t,n,r,i,a,s){let l=T(`el-switch`),f=T(`el-button`),m=T(`el-empty`),h=T(`idea-icon`),g=T(`el-input`),_=T(`success-icon`),v=T(`copy-icon`),y=T(`el-dialog`),b=P(`loading`);return L(),p(`div`,Do,[e(`p`,Oo,c(t.$t(`common.settings.memoryIntro`)),1),e(`div`,ko,[e(`div`,null,[e(`div`,Ao,c(t.$t(`common.settings.memoryEnabled`)),1),e(`div`,jo,c(t.$t(`common.settings.memoryEnabledHint`)),1)]),u(l,{"model-value":t.memoryEnabled,disabled:!t.memoryReady||t.updatingMemory,loading:t.updatingMemory,onChange:t.onMemoryEnabledChange},null,8,[`model-value`,`disabled`,`loading`,`onChange`])]),t.token?(L(),p(x,{key:1},[e(`div`,No,[e(`h3`,null,c(t.$t(`common.settings.memoryStored`)),1),e(`div`,Po,[u(f,{size:`small`,type:`primary`,disabled:!t.memoryEnabled,onClick:t.openImport},{default:M(()=>[o(c(t.$t(`common.settings.memoryImport`)),1)]),_:1},8,[`disabled`,`onClick`]),t.entries.length?(L(),A(f,{key:0,size:`small`,type:`danger`,loading:t.clearing,onClick:t.onClearAll},{default:M(()=>[o(c(t.$t(`common.settings.memoryClearAll`)),1)]),_:1},8,[`loading`,`onClick`])):d(``,!0)])]),O((L(),p(`div`,null,[!t.loading&&!t.entries.length?(L(),A(m,{key:0,description:t.$t(`common.settings.memoryEmpty`)},null,8,[`description`])):(L(),p(`ul`,Fo,[(L(!0),p(x,null,F(t.entries,n=>(L(),p(`li`,{key:n.id,class:`row memory-row`},[u(h,{class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`span`,Io,c(n.content),1),u(f,{size:`small`,type:`danger`,loading:t.removingId===n.id,onClick:e=>t.onRemove(n)},{default:M(()=>[o(c(t.$t(`common.settings.memoryForget`)),1)]),_:1},8,[`loading`,`onClick`])]))),128))]))])),[[b,t.loading]])],64)):(L(),p(`p`,Mo,c(t.$t(`common.settings.memoryNeedsChat`)),1)),u(y,{modelValue:t.importVisible,"onUpdate:modelValue":n[1]||=e=>t.importVisible=e,title:t.$t(`common.settings.memoryImportTitle`),width:`min(640px, 92vw)`,"append-to-body":``,"close-on-click-modal":!t.importing,"close-on-press-escape":!t.importing,"show-close":!t.importing},{footer:M(()=>[u(f,{disabled:t.importing,onClick:t.closeImport},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`disabled`,`onClick`]),u(f,{type:`primary`,disabled:!t.importText.trim(),loading:t.importing,onClick:t.onImport},{default:M(()=>[o(c(t.$t(`common.settings.memoryImportSubmit`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])]),default:M(()=>[e(`div`,Lo,[e(`div`,Ro,c(t.$t(`common.settings.memoryImportExportStep`)),1),u(g,{"model-value":t.importPrompt,type:`textarea`,rows:7,readonly:``,resize:`none`},null,8,[`model-value`]),u(f,{size:`small`,"aria-label":t.importPromptCopied?t.$t(`common.settings.memoryImportCopied`):t.$t(`common.settings.memoryImportCopy`),onClick:t.copyImportPrompt},{default:M(()=>[t.importPromptCopied?(L(),A(_,{key:0,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})):(L(),A(v,{key:1,class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),o(` `+c(t.importPromptCopied?t.$t(`common.settings.memoryImportCopied`):t.$t(`common.settings.memoryImportCopy`)),1)]),_:1},8,[`aria-label`,`onClick`])]),e(`div`,zo,[e(`div`,Bo,c(t.$t(`common.settings.memoryImportPasteStep`)),1),u(g,{modelValue:t.importText,"onUpdate:modelValue":n[0]||=e=>t.importText=e,type:`textarea`,rows:9,maxlength:5e4,"show-word-limit":``,placeholder:t.$t(`common.settings.memoryImportPlaceholder`)},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`modelValue`,`title`,`close-on-click-modal`,`close-on-press-escape`,`show-close`])])}var Ho=G(Eo,[[`render`,Vo],[`__scopeId`,`data-v-fc1b41fb`]]),Uo=z({name:`EditText`,components:{ElDialog:U,ElInput:Ln,ElButton:W,ElIcon:B,Edit:Tt},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0}},emits:[`confirm`,`cancel`],data(){return{editing:!1,value:this.modelValue}},methods:{onCancel(){this.editing=!1},onConfirm(){this.$emit(`confirm`,this.value),this.editing=!1}}}),Wo={class:`edit-body`},Go={class:`dialog-footer`},Ko=[`aria-label`,`title`];function qo(t,r,i,a,s,l){let d=T(`el-input`),f=T(`el-button`),m=T(`el-dialog`),h=T(`edit`),g=T(`el-icon`);return L(),p(x,null,[u(m,{modelValue:t.editing,"onUpdate:modelValue":r[1]||=e=>t.editing=e,title:t.title,width:`400px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,Go,[u(f,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(f,{round:``,type:`primary`,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])])]),default:M(()=>[e(`div`,Wo,[u(d,{modelValue:t.value,"onUpdate:modelValue":r[0]||=e=>t.value=e,placeholder:t.placeholder},null,8,[`modelValue`,`placeholder`])])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[2]||=e=>t.editing=!0,onKeydown:[r[3]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[4]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(g,{class:`icon`},{default:M(()=>[u(h,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Ko)],64)}var Jo=G(Uo,[[`render`,qo]]);function Yo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function K(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?Yo(Object(n),!0).forEach((function(t){Xo(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Yo(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function Xo(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Zo(e,t){if(e==null)return{};var n,r,i=function(e,t){if(e==null)return{};var n,r,i={},a=Object.keys(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function Qo(e){return function(e){if(Array.isArray(e))return $o(e)}(e)||function(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}(e)||function(e,t){if(e){if(typeof e==`string`)return $o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`)return Array.from(e);if(n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return $o(e,t)}}(e)||function(){throw TypeError(`Invalid attempt to spread non-iterable instance.
3
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function $o(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var es,ts,ns,q=(es=function(e){(function(){var t={}.hasOwnProperty;function n(){for(var e=[],r=0;r<arguments.length;r++){var i=arguments[r];if(i){var a=typeof i;if(a===`string`||a===`number`)e.push(i);else if(Array.isArray(i)){if(i.length){var o=n.apply(null,i);o&&e.push(o)}}else if(a===`object`)if(i.toString===Object.prototype.toString)for(var s in i)t.call(i,s)&&i[s]&&e.push(s);else e.push(i.toString())}}return e.join(` `)}e.exports?(n.default=n,e.exports=n):window.classNames=n})()},es(ns={path:ts,exports:{},require:function(e,t){return function(){throw Error(`Dynamic requires are not currently supported by @rollup/plugin-commonjs`)}(t==null&&ns.path)}},ns.exports),ns.exports),rs=function(e){return function(t,n){if(!t)return e;var r;typeof t==`string`?r=t:n=t;var i=e;return r&&(i+=`__`+r),i+(n?Object.keys(n).reduce((function(e,t){var r=n[t];return r&&(e+=` `+(typeof r==`boolean`?i+`--`+t:i+`--`+t+`_`+r)),e}),``):``)}};function is(e,t,n){var r,i,a,o,s;function c(){var l=Date.now()-o;l<t&&l>=0?r=setTimeout(c,t-l):(r=null,n||(s=e.apply(a,i),a=i=null))}t??=100;var l=function(){a=this,i=arguments,o=Date.now();var l=n&&!r;return r||=setTimeout(c,t),l&&(s=e.apply(a,i),a=i=null),s};return l.clear=function(){r&&=(clearTimeout(r),null)},l.flush=function(){r&&=(s=e.apply(a,i),a=i=null,clearTimeout(r),null)},l}is.debounce=is;var as=is,J=function(){return J=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},J.apply(this,arguments)};function os(e,t){var n,r;return e&&t?(n=``+e+t[0].toUpperCase()+t.slice(1),r=e+`-`+t):(n=e||t,r=e||t),{name:n,classname:r}}function ss(e){return/^blob:/.test(e)}function cs(e){return ss(e)||function(e){return/^data:/.test(e)}(e)}function ls(e){return!!(e&&e.constructor&&e.call&&e.apply)}function Y(e){return e===void 0}function us(e){return typeof e==`object`&&!!e}function ds(e,t,n){var r={};return us(e)?(Object.keys(t).forEach((function(i){Y(e[i])?r[i]=t[i]:us(t[i])?us(e[i])?r[i]=ds(e[i],t[i],n[i]):r[i]=e[i]?t[i]:n[i]:!0===t[i]||!1===t[i]?r[i]=!!e[i]:r[i]=e[i]})),r):e?t:n}function fs(e){var t=Number(e);return Number.isNaN(t)?e:t}function ps(e){return typeof(e==`number`||function(e){return typeof e==`object`&&!!e}(e)&&toString.call(e)==`[object Number]`)&&!ms(e)}function ms(e){return e!=e}function hs(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}var gs=function(e,t){e===void 0&&(e={}),t===void 0&&(t={}),this.type=`manipulateImage`,this.move=e,this.scale=t},_s=function(e,t){t===void 0&&(t={}),this.type=`resize`,this.directions=e,this.params=t},vs=function(e){this.type=`move`,this.directions=e},ys=function(){function e(e,t,n,r,i){this.type=`drag`,this.nativeEvent=e,this.position=n,this.previousPosition=r,this.element=t,this.anchor=i}return e.prototype.shift=function(){var e=this,t=e.element,n=e.anchor,r=e.position;if(t){var i=t.getBoundingClientRect(),a=i.left,o=i.top;return{left:r.left-a-n.left,top:r.top-o-n.top}}return{left:0,top:0}},e}(),bs={name:`DraggableElement`,props:{classname:{type:String}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},mounted:function(){if(!this.$refs.draggable)throw Error(`You should add ref "draggable" to your root element to use draggable mixin`);this.touches=[],this.hovered=!1},methods:{onMouseOver:function(){this.hovered||(this.hovered=!0,this.$emit(`enter`))},onMouseLeave:function(){this.hovered&&!this.touches.length&&(this.hovered=!1,this.$emit(`leave`))},onTouchStart:function(e){e.cancelable&&!this.disabled&&e.touches.length===1&&(this.touches=Qo(e.touches),this.hovered||=(this.$emit(`enter`),!0),e.touches.length&&this.initAnchor(this.touches.reduce((function(t,n){return{clientX:t.clientX+n.clientX/e.touches.length,clientY:t.clientY+n.clientY/e.touches.length}}),{clientX:0,clientY:0})),e.preventDefault&&e.preventDefault(),e.stopPropagation())},onTouchEnd:function(){this.processEnd()},onTouchMove:function(e){this.touches.length&&(this.processMove(e,e.touches),e.preventDefault&&e.preventDefault(),e.stopPropagation&&e.stopPropagation())},onMouseDown:function(e){if(!this.disabled){var t={fake:!0,clientX:e.clientX,clientY:e.clientY};this.touches=[t],this.initAnchor(t),e.stopPropagation()}},onMouseMove:function(e){this.touches.length&&(this.processMove(e,[{fake:!0,clientX:e.clientX,clientY:e.clientY}]),e.preventDefault&&e.preventDefault())},onMouseUp:function(){this.processEnd()},initAnchor:function(e){var t=this.$refs.draggable.getBoundingClientRect(),n=t.left,r=t.right,i=t.bottom,a=t.top;this.anchor={left:e.clientX-n,top:e.clientY-a,bottom:i-e.clientY,right:r-e.clientX}},processMove:function(e,t){var n=Qo(t);if(this.touches.length){if(this.touches.length===1&&n.length===1){var r=this.$refs.draggable;this.$emit(`drag`,new ys(e,r,{left:n[0].clientX,top:n[0].clientY},{left:this.touches[0].clientX,top:this.touches[0].clientY},this.anchor))}this.touches=n}},processEnd:function(){this.touches.length&&this.$emit(`drag-end`),this.hovered&&=(this.$emit(`leave`),!1),this.touches=[]}},emits:[`drag`,`drag-end`,`leave`,`enter`]};bs.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`draggable`,class:n.classname,onTouchstart:t[1]||=function(){return a.onTouchStart&&a.onTouchStart.apply(a,arguments)},onMousedown:t[2]||=function(){return a.onMouseDown&&a.onMouseDown.apply(a,arguments)},onMouseover:t[3]||=function(){return a.onMouseOver&&a.onMouseOver.apply(a,arguments)},onMouseleave:t[4]||=function(){return a.onMouseLeave&&a.onMouseLeave.apply(a,arguments)}},[k(e.$slots,`default`)],34)};var xs=rs(`vue-handler-wrapper`),Ss={name:`HandlerWrapper`,components:{DraggableElement:bs},props:{horizontalPosition:{type:String},verticalPosition:{type:String},disabled:{type:Boolean,default:!1}},computed:{classes:function(){var e;if(this.horizontalPosition||this.verticalPosition){var t,n=os(this.horizontalPosition,this.verticalPosition);e=xs((Xo(t={},n.classname,!0),Xo(t,`disabled`,this.disabled),t))}else e=xs({disabled:this.disabled});return{root:e,draggable:xs(`draggable`)}}},emits:[`leave`,`enter`,`drag`,`drag-end`]};Ss.render=function(e,t,n,r,i,a){var o=T(`DraggableElement`);return L(),A(`div`,{class:a.classes.root},[u(o,{class:a.classes.draggable,onDrag:t[1]||=function(t){return e.$emit(`drag`,t)},onDragEnd:t[2]||=function(t){return e.$emit(`drag-end`)},onLeave:t[3]||=function(t){return e.$emit(`leave`)},onEnter:t[4]||=function(t){return e.$emit(`enter`)}},{default:M((function(){return[k(e.$slots,`default`)]})),_:3},8,[`class`])],2)};var Cs=rs(`vue-line-wrapper`),ws={name:`LineWrapper`,components:{DraggableElement:bs},props:{position:{type:String,required:!0},disabled:{type:Boolean,default:!1}},computed:{classname:function(){var e;return Cs((Xo(e={},this.position,!0),Xo(e,`disabled`,this.disabled),e))}},emits:[`leave`,`enter`,`drag`,`drag-end`]};ws.render=function(e,t,n,r,i,a){var o=T(`DraggableElement`);return L(),A(o,{class:a.classname,onDrag:t[1]||=function(t){return e.$emit(`drag`,t)},onDragEnd:t[2]||=function(t){return e.$emit(`drag-end`)},onLeave:t[3]||=function(t){return e.$emit(`leave`)},onEnter:t[4]||=function(t){return e.$emit(`enter`)}},{default:M((function(){return[k(e.$slots,`default`)]})),_:3},8,[`class`])};var Ts=[`left`,`right`,`top`,`bottom`],Es=[`left`,`right`],Ds=[`top`,`bottom`],Os=[`left`,`top`],ks=[`fill-area`,`fit-area`,`stencil`,`none`],As={left:0,top:0,width:0,height:0};function js(e,t,n){return!(n||=[`width`,`height`,`left`,`top`]).some((function(n){return e[n]!==t[n]}))}function Ms(e){return{left:e.left,top:e.top,right:e.left+e.width,bottom:e.top+e.height}}function Ns(e,t){return{left:e.left-t.left,top:e.top-t.top}}function X(e){return{left:e.left+e.width/2,top:e.top+e.height/2}}function Ps(e,t){var n={left:0,top:0,right:0,bottom:0};return Ts.forEach((function(r){var i=t[r],a=Ms(e)[r];n[r]=i!==void 0&&a!==void 0?r===`left`||r===`top`?Math.max(0,i-a):Math.max(0,a-i):0})),n}function Fs(e,t){return{left:e.left-t.left,top:e.top-t.top,width:e.width+t.left+t.right,height:e.height+t.top+t.bottom}}function Is(e){return{left:-e.left,top:-e.top}}function Z(e,t){return J(J({},e),{left:e.left+t.left,top:e.top+t.top})}function Ls(e,t,n,r){if(t!==1){if(n){var i=X(e);return{width:e.width*t,height:e.height*t,left:e.left+e.width*(1-t)/2+(n.left-i.left)*(r||1-t),top:e.top+e.height*(1-t)/2+(n.top-i.top)*(r||1-t)}}return{width:e.width*t,height:e.height*t,left:e.left+e.width*(1-t)/2,top:e.top+e.height*(1-t)/2}}return e}function Q(e){return e.width/e.height}function Rs(e,t){return Math.min(t.right!==void 0&&t.left!==void 0?(t.right-t.left)/e.width:1/0,t.bottom!==void 0&&t.top!==void 0?(t.bottom-t.top)/e.height:1/0)}function zs(e,t){var n={left:0,top:0},r=Ps(e,t);return r.left&&r.left>0?n.left=r.left:r.right&&r.right>0&&(n.left=-r.right),r.top&&r.top>0?n.top=r.top:r.bottom&&r.bottom>0&&(n.top=-r.bottom),n}function Bs(e,t){var n;return t.minimum&&e<t.minimum?n=t.minimum:t.maximum&&e>t.maximum&&(n=t.maximum),n}function Vs(e,t){var n=Q(e),r=Q(t);return t.width<1/0&&t.height<1/0?n>r?{width:t.width,height:t.width/n}:{width:t.height*n,height:t.height}:t.width<1/0?{width:t.width,height:t.width/n}:t.height<1/0?{width:t.height*n,height:t.height}:e}function Hs(e,t){var n=t*Math.PI/180;return{width:Math.abs(e.width*Math.cos(n))+Math.abs(e.height*Math.sin(n)),height:Math.abs(e.width*Math.sin(n))+Math.abs(e.height*Math.cos(n))}}function Us(e,t){var n=t*Math.PI/180;return{left:e.left*Math.cos(n)-e.top*Math.sin(n),top:e.left*Math.sin(n)+e.top*Math.cos(n)}}function Ws(e,t){var n=Ps($(e,t),t);return n.left+n.right+n.top+n.bottom?n.left+n.right>n.top+n.bottom?Math.min((e.width+n.left+n.right)/e.width,Rs(e,t)):Math.min((e.height+n.top+n.bottom)/e.height,Rs(e,t)):1}function $(e,t,n){n===void 0&&(n=!1);var r=zs(e,t);return Z(e,n?Is(r):r)}function Gs(e){return{width:e.right!==void 0&&e.left!==void 0?e.right-e.left:1/0,height:e.bottom!==void 0&&e.top!==void 0?e.bottom-e.top:1/0}}function Ks(e,t){return J(J({},e),{minWidth:Math.min(t.width,e.minWidth),minHeight:Math.min(t.height,e.minHeight),maxWidth:Math.min(t.width,e.maxWidth),maxHeight:Math.min(t.height,e.maxHeight)})}function qs(e,t,n){n===void 0&&(n=!0);var r={};return Ts.forEach((function(i){var a=e[i],o=t[i];a!==void 0&&o!==void 0?r[i]=i===`left`||i===`top`?n?Math.max(a,o):Math.min(a,o):n?Math.min(a,o):Math.max(a,o):o===void 0?a!==void 0&&(r[i]=a):r[i]=o})),r}function Js(e,t){return qs(e,t,!0)}function Ys(e){var t=e.size,n=e.aspectRatio,r=e.ignoreMinimum,i=e.sizeRestrictions;return!!((t.correctRatio||Q(t)>=n.minimum&&Q(t)<=n.maximum)&&t.height<=i.maxHeight&&t.width<=i.maxWidth&&t.width&&t.height&&(r||t.height>=i.minHeight&&t.width>=i.minWidth))}function Xs(e,t){return(e.width-t.width)**2+(e.height-t.height)**2}function Zs(e){var t=e.width,n=e.height,r=e.sizeRestrictions,i={minimum:e.aspectRatio&&e.aspectRatio.minimum||0,maximum:e.aspectRatio&&e.aspectRatio.maximum||1/0},a={width:Math.max(r.minWidth,Math.min(r.maxWidth,t)),height:Math.max(r.minHeight,Math.min(r.maxHeight,n))};function o(e,a){return a===void 0&&(a=!1),e.reduce((function(e,o){return Ys({size:o,aspectRatio:i,sizeRestrictions:r,ignoreMinimum:a})&&(!e||Xs(o,{width:t,height:n})<Xs(e,{width:t,height:n}))?o:e}),null)}var s=[];i&&[i.minimum,i.maximum].forEach((function(e){e&&s.push({width:a.width,height:a.width/e,correctRatio:!0},{width:a.height*e,height:a.height,correctRatio:!0})})),Ys({size:a,aspectRatio:i,sizeRestrictions:r})&&s.push(a);var c=o(s)||o(s,!0);return c&&{width:c.width,height:c.height}}function Qs(e){var t=e.event,n=e.coordinates,r=e.positionRestrictions,i=r===void 0?{}:r,a=Z(n,t.directions);return Z(a,zs(a,i))}function $s(e){var t=e.coordinates,n=e.transform,r=e.imageSize,i=e.sizeRestrictions,a=e.positionRestrictions,o=e.aspectRatio,s=e.visibleArea,c=function(e,t){return Qs({coordinates:e,positionRestrictions:a,event:new vs({left:t.left-e.left,top:t.top-e.top})})},l=J({},t);return(Array.isArray(n)?n:[n]).forEach((function(e){var t={};Y((t=typeof e==`function`?e({coordinates:l,imageSize:r,visibleArea:s}):e).width)&&Y(t.height)||(l=function(e,t){return c(J(J(J({},e),Zs({width:t.width,height:t.height,sizeRestrictions:i,aspectRatio:o})),{left:0,top:0}),{left:e.left,top:e.top})}(l,J(J({},l),t))),Y(t.left)&&Y(t.top)||(l=c(l,J(J({},l),t)))})),l}function ec(e){e.event;var t=e.getAreaRestrictions,n=e.boundaries,r=e.coordinates,i=e.visibleArea;e.aspectRatio;var a=e.stencilSize,o=e.sizeRestrictions,s=e.positionRestrictions;e.stencilReference;var c,l,u,d=J({},r),f=J({},i),p=J({},a);c=Q(p),l=Q(d),u===void 0&&(u=.001),(c===0||l===0?Math.abs(l-c)<u:Math.abs(l/c)<1+u&&Math.abs(l/c)>1-u)||(d=J(J({},d),Zs({sizeRestrictions:o,width:d.width,height:d.height,aspectRatio:{minimum:Q(p),maximum:Q(p)}})));var m=Ws(f=Ls(f,d.width*n.width/(f.width*p.width)),t({visibleArea:f,type:`resize`}));return m!==1&&(f=Ls(f,m),d=Ls(d,m)),f=$(f=Z(f,Ns(X(d),X(f))),t({visibleArea:f,type:`move`})),{coordinates:d=$(d,Js(Ms(f),s)),visibleArea:f}}function tc(e){var t=e.event,n=e.getAreaRestrictions,r=e.boundaries,i=e.coordinates,a=e.visibleArea;e.aspectRatio,e.stencilSize,e.sizeRestrictions;var o=e.positionRestrictions;e.stencilReference;var s=J({},i),c=J({},a);if(i&&a&&t.type!==`manipulateImage`){var l={width:0,height:0};c.width,r.width,Q(r)>Q(s)?(l.height=.8*r.height,l.width=l.height*Q(s)):(l.width=.8*r.width,l.height=l.width*Q(s));var u=Ws(c=Ls(c,s.width*r.width/(c.width*l.width)),n({visibleArea:c,type:`resize`}));c=Ls(c,u),u!==1&&(l.height/=u,l.width/=u),c=$(c=Z(c,Ns(X(s),X(c))),n({visibleArea:c,type:`move`})),s=$(s,Js(Ms(c),o))}return{coordinates:s,visibleArea:c}}function nc(e){var t=e.event,n=e.coordinates,r=e.visibleArea,i=e.getAreaRestrictions,a=J({},r),o=J({},n);if(t.type===`setCoordinates`){var s=Math.max(0,o.width-a.width),c=Math.max(0,o.height-a.height);s>c?a=Ls(a,Math.min(o.width/a.width,Rs(a,i({visibleArea:a,type:`resize`})))):c>s&&(a=Ls(a,Math.min(o.height/a.height,Rs(a,i({visibleArea:a,type:`resize`}))))),a=$(a=Z(a,Is(zs(o,Ms(a)))),i({visibleArea:a,type:`move`}))}return{visibleArea:a,coordinates:o}}function rc(e){var t=e.imageSize,n=e.visibleArea,r=e.coordinates,i=n||t;return{left:(n?n.left:0)+i.width/2-r.width/2,top:(n?n.top:0)+i.height/2-r.height/2}}function ic(e){var t=e.imageSize,n=e.visibleArea,r=e.aspectRatio,i=e.sizeRestrictions,a=n||t,o=Math.min(r.maximum||1/0,Math.max(r.minimum||0,Q(a))),s=a.width<a.height?{width:.8*a.width,height:.8*a.width/o}:{height:.8*a.height,width:.8*a.height*o};return Zs(J(J({},s),{aspectRatio:r,sizeRestrictions:i}))}function ac(e){var t,n,r=e.imageSize,i=e.visibleArea,a=e.boundaries,o=e.aspectRatio,s=e.sizeRestrictions,c=e.stencilSize,l=i||r;return Q(l)>Q(a)?n=(t=c.height*l.height/a.height)*Q(c):t=(n=c.width*l.width/a.width)/Q(c),Zs({width:n,height:t,aspectRatio:o,sizeRestrictions:s})}function oc(e){var t=e.getAreaRestrictions,n=e.coordinates,r=e.imageSize,i=Q(e.boundaries);if(n){var a={height:Math.max(n.height,r.height),width:Math.max(n.width,r.width)},o=Vs({width:Q(a)>i?a.width:a.height*i,height:Q(a)>i?a.width/i:a.height},Gs(t())),s={left:n.left+n.width/2-o.width/2,top:n.top+n.height/2-o.height/2,width:o.width,height:o.height},c=Ps(n,Ms(J({left:0,top:0},r))),l={};return!c.left&&!c.right&&s.width<=r.width&&(l.left=0,l.right=r.width),!c.top&&!c.bottom&&s.height<=r.height&&(l.top=0,l.bottom=r.height),$(s,l)}var u=Q(r);return o={height:u>i?r.height:r.width/i,width:u>i?r.height*i:r.width},{left:r.width/2-o.width/2,top:r.height/2-o.height/2,width:o.width,height:o.height}}function sc(e,t){return qs(e,Ms(t))}function cc(e){var t=e.event,n=e.coordinates,r=e.visibleArea,i=e.sizeRestrictions,a=e.getAreaRestrictions,o=e.positionRestrictions,s=e.adjustStencil,c=t.scale,l=t.move,u=J({},r),d=J({},n),f=1,p=1,m=c.factor&&Math.abs(c.factor-1)>.001;u=Z(u,{left:l.left||0,top:l.top||0});var h={stencil:{minimum:Math.max(i.minWidth?i.minWidth/d.width:0,i.minHeight?i.minHeight/d.height:0),maximum:Math.min(i.maxWidth?i.maxWidth/d.width:1/0,i.maxHeight?i.maxHeight/d.height:1/0,Rs(d,o))},area:{maximum:Rs(u,a({visibleArea:u,type:`resize`}))}};c.factor&&m&&(c.factor<1?(p=Math.max(c.factor,h.stencil.minimum))>1&&(p=1):c.factor>1&&(p=Math.min(c.factor,Math.min(h.area.maximum,h.stencil.maximum)))<1&&(p=1)),p&&(u=Ls(u,p,c.center));var g=n.left-r.left,_=r.width+r.left-(n.width+n.left),v=n.top-r.top,y=r.height+r.top-(n.height+n.top);return u=$(u=Z(u,zs(u,{left:o.left===void 0?void 0:o.left-g*p,top:o.top===void 0?void 0:o.top-v*p,bottom:o.bottom===void 0?void 0:o.bottom+y*p,right:o.right===void 0?void 0:o.right+_*p})),a({visibleArea:u,type:`move`})),d.width*=p,d.height*=p,d.left=u.left+g*p,d.top=u.top+v*p,d=$(d,Js(Ms(u),o)),c.factor&&m&&s&&(c.factor>1?f=Math.min(h.area.maximum,c.factor)/p:c.factor<1&&(f=Math.max(d.height/u.height,d.width/u.width,c.factor/p)),f!==1&&(u=Z(u=$(u=Ls(u,f,c.factor>1?c.center:X(d)),a({visibleArea:u,type:`move`})),Is(zs(d,Ms(u)))))),{coordinates:d,visibleArea:u}}function lc(e){var t=e.aspectRatio,n=e.getAreaRestrictions,r=e.coordinates,i=e.visibleArea,a=e.sizeRestrictions,o=e.positionRestrictions,s=e.imageSize,c=e.previousImageSize,l=e.angle,u=J({},r),d=J({},i),f=Us(X(J({left:0,top:0},c)),l);return(u=J(J({},Zs({sizeRestrictions:a,aspectRatio:t,width:u.width,height:u.height})),Us(X(u),l))).left-=f.left-s.width/2+u.width/2,u.top-=f.top-s.height/2+u.height/2,d=Ls(d,Ws(d,n({visibleArea:d,type:`resize`}))),{coordinates:u=$(u,o),visibleArea:d=$(d=Z(d,Ns(X(u),X(r))),n({visibleArea:d,type:`move`}))}}function uc(e){var t=e.flip,n=e.previousFlip,r=e.rotate;e.aspectRatio;var i=e.getAreaRestrictions,a=e.coordinates,o=e.visibleArea,s=e.imageSize,c=J({},a),l=J({},o),u=n.horizontal!==t.horizontal,d=n.vertical!==t.vertical;if(u||d){var f=Us({left:s.width/2,top:s.height/2},-r),p=Us(X(c),-r),m=Us({left:u?f.left-(p.left-f.left):p.left,top:d?f.top-(p.top-f.top):p.top},r);c=Z(c,Ns(m,X(c))),p=Us(X(l),-r),l=$(l=Z(l,Ns(m=Us({left:u?f.left-(p.left-f.left):p.left,top:d?f.top-(p.top-f.top):p.top},r),X(l))),i({visibleArea:l,type:`move`}))}return{coordinates:c,visibleArea:l}}function dc(e){var t=e.directions,n=e.coordinates,r=e.positionRestrictions,i=r===void 0?{}:r,a=e.sizeRestrictions,o=e.preserveRatio,s=e.compensate,c=J({},t),l=Fs(n,c).width,u=Fs(n,c).height;l<0&&(c.left<0&&c.right<0?(c.left=-(n.width-a.minWidth)/(c.left/c.right),c.right=-(n.width-a.minWidth)/(c.right/c.left)):c.left<0?c.left=-(n.width-a.minWidth):c.right<0&&(c.right=-(n.width-a.minWidth))),u<0&&(c.top<0&&c.bottom<0?(c.top=-(n.height-a.minHeight)/(c.top/c.bottom),c.bottom=-(n.height-a.minHeight)/(c.bottom/c.top)):c.top<0?c.top=-(n.height-a.minHeight):c.bottom<0&&(c.bottom=-(n.height-a.minHeight)));var d=Ps(Fs(n,c),i);s&&(d.left&&d.left>0&&d.right===0?(c.right+=d.left,c.left-=d.left):d.right&&d.right>0&&d.left===0&&(c.left+=d.right,c.right-=d.right),d.top&&d.top>0&&d.bottom===0?(c.bottom+=d.top,c.top-=d.top):d.bottom&&d.bottom>0&&d.top===0&&(c.top+=d.bottom,c.bottom-=d.bottom),d=Ps(Fs(n,c),i));var f={width:1/0,height:1/0,left:1/0,right:1/0,top:1/0,bottom:1/0};if(Ts.forEach((function(e){var t=d[e];t&&c[e]&&(f[e]=Math.max(0,1-t/c[e]))})),o){var p=Math.min.apply(null,Ts.map((function(e){return f[e]})));p!==1/0&&Ts.forEach((function(e){c[e]*=p}))}else Ts.forEach((function(e){f[e]!==1/0&&(c[e]*=f[e])}));if(l=Fs(n,c).width,u=Fs(n,c).height,c.right+c.left&&(l>a.maxWidth?f.width=(a.maxWidth-n.width)/(c.right+c.left):l<a.minWidth&&(f.width=(a.minWidth-n.width)/(c.right+c.left))),c.bottom+c.top&&(u>a.maxHeight?f.height=(a.maxHeight-n.height)/(c.bottom+c.top):u<a.minHeight&&(f.height=(a.minHeight-n.height)/(c.bottom+c.top))),o){var m=Math.min(f.width,f.height);m!==1/0&&Ts.forEach((function(e){c[e]*=m}))}else f.width!==1/0&&Es.forEach((function(e){c[e]*=f.width})),f.height!==1/0&&Ds.forEach((function(e){c[e]*=f.height}));return c}function fc(e,t,n){return t==0&&n==0?e/2:t==0?0:n==0?e:e*Math.abs(t/(t+n))}var pc=rs(`vue-simple-handler`),mc=rs(`vue-simple-handler-wrapper`),hc={name:`SimpleHandler`,components:{HandlerWrapper:Ss},props:{defaultClass:{type:String},hoverClass:{type:String},wrapperClass:{type:String},horizontalPosition:{type:String},verticalPosition:{type:String},disabled:{type:Boolean,default:!1}},data:function(){return{hover:!1}},computed:{classes:function(){var e,t=(Xo(e={},this.horizontalPosition,!!this.horizontalPosition),Xo(e,this.verticalPosition,!!this.verticalPosition),Xo(e,`${this.horizontalPosition}-${this.verticalPosition}`,!!(this.verticalPosition&&this.horizontalPosition)),Xo(e,`hover`,this.hover),e);return{default:q(pc(t),this.defaultClass,this.hover&&this.hoverClass),wrapper:q(mc(t),this.wrapperClass)}}},methods:{onDrag:function(e){this.$emit(`drag`,e)},onEnter:function(){this.hover=!0},onLeave:function(){this.hover=!1},onDragEnd:function(){this.$emit(`drag-end`)}},emits:[`drag`,`drag-end`]};hc.render=function(e,t,n,r,i,a){var o=T(`HandlerWrapper`);return L(),A(o,{class:a.classes.wrapper,"vertical-position":n.verticalPosition,"horizontal-position":n.horizontalPosition,disabled:n.disabled,onDrag:a.onDrag,onDragEnd:a.onDragEnd,onEnter:a.onEnter,onLeave:a.onLeave},{default:M((function(){return[u(`div`,{class:a.classes.default},null,2)]})),_:1},8,[`class`,`vertical-position`,`horizontal-position`,`disabled`,`onDrag`,`onDragEnd`,`onEnter`,`onLeave`])};var gc=rs(`vue-simple-line`),_c=rs(`vue-simple-line-wrapper`),vc={name:`SimpleLine`,components:{LineWrapper:ws},props:{defaultClass:{type:String},hoverClass:{type:String},wrapperClass:{type:String},position:{type:String},disabled:{type:Boolean,default:!1}},data:function(){return{hover:!1}},computed:{classes:function(){return{root:q(gc(Xo({},this.position,!0)),this.defaultClass,this.hover&&this.hoverClass),wrapper:q(_c(Xo({},this.position,!0)),this.wrapperClass)}}},methods:{onDrag:function(e){this.$emit(`drag`,e)},onEnter:function(){this.hover=!0},onLeave:function(){this.hover=!1},onDragEnd:function(){this.$emit(`drag-end`)}},emits:[`drag`,`drag-end`]};vc.render=function(e,t,n,r,i,a){var o=T(`LineWrapper`);return L(),A(o,{class:a.classes.wrapper,position:n.position,disabled:n.disabled,onDrag:a.onDrag,onDragEnd:a.onDragEnd,onEnter:a.onEnter,onLeave:a.onLeave},{default:M((function(){return[u(`div`,{class:a.classes.root},null,2)]})),_:1},8,[`class`,`position`,`disabled`,`onDrag`,`onDragEnd`,`onEnter`,`onLeave`])};var yc=rs(`vue-bounding-box`),bc=[`east`,`west`,null],xc=[`south`,`north`,null],Sc={name:`BoundingBox`,props:{width:{type:Number},height:{type:Number},transitions:{type:Object},handlers:{type:Object,default:function(){return{eastNorth:!0,north:!0,westNorth:!0,west:!0,westSouth:!0,south:!0,eastSouth:!0,east:!0}}},handlersComponent:{type:[Object,String],default:function(){return hc}},handlersClasses:{type:Object,default:function(){return{}}},handlersWrappersClasses:{type:Object,default:function(){return{}}},lines:{type:Object,default:function(){return{west:!0,north:!0,east:!0,south:!0}}},linesComponent:{type:[Object,String],default:function(){return vc}},linesClasses:{type:Object,default:function(){return{}}},linesWrappersClasses:{type:Object,default:function(){return{}}},resizable:{type:Boolean,default:!0}},data:function(){var e=[];return bc.forEach((function(t){xc.forEach((function(n){if(t!==n){var r=os(t,n),i=r.name,a=r.classname;e.push({name:i,classname:a,verticalDirection:n,horizontalDirection:t})}}))})),{points:e}},computed:{style:function(){var e={};return this.width&&this.height&&(e.width=`${this.width}px`,e.height=`${this.height}px`,this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`)),e},classes:function(){var e=this.handlersClasses,t=this.handlersWrappersClasses,n=this.linesClasses,r=this.linesWrappersClasses;return{root:yc(),handlers:e,handlersWrappers:t,lines:n,linesWrappers:r}},lineNodes:function(){var e=this,t=[];return this.points.forEach((function(n){n.horizontalDirection&&n.verticalDirection||!e.lines[n.name]||t.push({name:n.name,component:e.linesComponent,class:q(e.classes.lines.default,e.classes.lines[n.name],!e.resizable&&e.classes.lines.disabled),wrapperClass:q(e.classes.linesWrappers.default,e.classes.linesWrappers[n.name],!e.resizable&&e.classes.linesWrappers.disabled),hoverClass:e.classes.lines.hover,verticalDirection:n.verticalDirection,horizontalDirection:n.horizontalDirection,disabled:!e.resizable})})),t},handlerNodes:function(){var e=this,t=[],n=this.width,r=this.height;return this.points.forEach((function(i){if(e.handlers[i.name]){var a={name:i.name,component:e.handlersComponent,class:q(e.classes.handlers.default,e.classes.handlers[i.name]),wrapperClass:q(e.classes.handlersWrappers.default,e.classes.handlersWrappers[i.name]),hoverClass:e.classes.handlers.hover,verticalDirection:i.verticalDirection,horizontalDirection:i.horizontalDirection,disabled:!e.resizable};if(n&&r){var o=i.horizontalDirection,s=i.verticalDirection,c=o===`east`?n:o===`west`?0:n/2,l=s===`south`?r:s===`north`?0:r/2;a.wrapperClass=yc(`handler`),a.wrapperStyle={transform:`translate(${c}px, ${l}px)`},e.transitions&&e.transitions.enabled&&(a.wrapperStyle.transition=`${e.transitions.time}ms ${e.transitions.timingFunction}`)}else a.wrapperClass=yc(`handler`,Xo({},i.classname,!0));t.push(a)}})),t}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},mounted:function(){this.touches=[]},methods:{onEnd:function(){this.$emit(`resize-end`)},onHandlerDrag:function(e,t,n){var r,i=e.shift(),a=i.left,o=i.top,s={left:0,right:0,top:0,bottom:0};t===`west`?s.left-=a:t===`east`&&(s.right+=a),n===`north`?s.top-=o:n===`south`&&(s.bottom+=o),!n&&t?r=`width`:n&&!t&&(r=`height`),this.resizable&&this.$emit(`resize`,new _s(s,{allowedDirections:{left:t===`west`||!t,right:t===`east`||!t,bottom:n===`south`||!n,top:n===`north`||!n},preserveAspectRatio:e.nativeEvent&&e.nativeEvent.shiftKey,respectDirection:r}))}},emits:[`resize`,`resize-end`]};Sc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`box`,class:a.classes.root,style:a.style},[k(e.$slots,`default`),u(`div`,null,[(L(!0),A(x,null,F(a.lineNodes,(function(e){return L(),A(I(e.component),{key:e.name,"default-class":e.class,"hover-class":e.hoverClass,"wrapper-class":e.wrapperClass,position:e.name,disabled:e.disabled,onDrag:function(t){return a.onHandlerDrag(t,e.horizontalDirection,e.verticalDirection)},onDragEnd:t[1]||=function(e){return a.onEnd()}},null,8,[`default-class`,`hover-class`,`wrapper-class`,`position`,`disabled`,`onDrag`])})),128))]),(L(!0),A(x,null,F(a.handlerNodes,(function(e){return L(),A(`div`,{key:e.name,style:e.wrapperStyle,class:e.wrapperClass},[(L(),A(I(e.component),{"default-class":e.class,"hover-class":e.hoverClass,"wrapper-class":e.wrapperClass,"horizontal-position":e.horizontalDirection,"vertical-position":e.verticalDirection,disabled:e.disabled,onDrag:function(t){return a.onHandlerDrag(t,e.horizontalDirection,e.verticalDirection)},onDragEnd:t[2]||=function(e){return a.onEnd()}},null,8,[`default-class`,`hover-class`,`wrapper-class`,`horizontal-position`,`vertical-position`,`disabled`,`onDrag`]))],6)})),128))],6)};var Cc=rs(`vue-draggable-area`),wc={name:`DraggableArea`,props:{movable:{type:Boolean,default:!0},activationDistance:{type:Number,default:20}},computed:{classnames:function(){return{default:Cc()}}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},mounted:function(){this.touches=[],this.touchStarted=!1},methods:{onTouchStart:function(e){if(e.cancelable){var t=this.movable&&e.touches.length===1;t&&(this.touches=Qo(e.touches)),(this.touchStarted||t)&&(e.preventDefault(),e.stopPropagation())}},onTouchEnd:function(){this.touchStarted=!1,this.processEnd()},onTouchMove:function(e){this.touches.length>=1&&(this.touchStarted?(this.processMove(e,e.touches),e.preventDefault(),e.stopPropagation()):hs({x:this.touches[0].clientX,y:this.touches[0].clientY},{x:e.touches[0].clientX,y:e.touches[0].clientY})>this.activationDistance&&(this.initAnchor({clientX:e.touches[0].clientX,clientY:e.touches[0].clientY}),this.touchStarted=!0))},onMouseDown:function(e){if(this.movable&&e.button===0){var t={fake:!0,clientX:e.clientX,clientY:e.clientY};this.touches=[t],this.initAnchor(t),e.stopPropagation()}},onMouseMove:function(e){this.touches.length&&(this.processMove(e,[{fake:!0,clientX:e.clientX,clientY:e.clientY}]),e.preventDefault&&e.cancelable&&e.preventDefault(),e.stopPropagation())},onMouseUp:function(){this.processEnd()},initAnchor:function(e){var t=this.$refs.container.getBoundingClientRect(),n=t.left,r=t.top;this.anchor={x:e.clientX-n,y:e.clientY-r}},processMove:function(e,t){var n=Qo(t);if(this.touches.length){var r=this.$refs.container.getBoundingClientRect(),i=r.left,a=r.top;this.touches.length===1&&n.length===1&&this.$emit(`move`,new vs({left:n[0].clientX-(i+this.anchor.x),top:n[0].clientY-(a+this.anchor.y)}))}},processEnd:function(){this.touches.length&&this.$emit(`move-end`),this.touches=[]}},emits:[`move`,`move-end`]};wc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`container`,onTouchstart:t[1]||=function(){return a.onTouchStart&&a.onTouchStart.apply(a,arguments)},onMousedown:t[2]||=function(){return a.onMouseDown&&a.onMouseDown.apply(a,arguments)}},[k(e.$slots,`default`)],544)};function Tc(e){return{rotate:e.rotate||0,flip:{horizontal:e?.flip?.horizontal||!1,vertical:e?.flip?.vertical||!1}}}function Ec(e){return new Promise((function(t,n){try{if(e)if(/^data:/i.test(e))t(function(e){e=e.replace(/^data:([^;]+);base64,/gim,``);for(var t=atob(e),n=t.length,r=new ArrayBuffer(n),i=new Uint8Array(r),a=0;a<n;a++)i[a]=t.charCodeAt(a);return r}(e));else if(/^blob:/i.test(e)){var r=new FileReader;r.onload=function(e){t(e.target.result)},a=e,o=function(e){r.readAsArrayBuffer(e)},(s=new XMLHttpRequest).open(`GET`,a,!0),s.responseType=`blob`,s.onload=function(){this.status!=200&&this.status!==0||o(this.response)},s.send()}else{var i=new XMLHttpRequest;i.onreadystatechange=function(){i.readyState===4&&(i.status===200||i.status===0?t(i.response):n(`Warning: could not load an image to parse its orientation`),i=null)},i.onprogress=function(){i.getResponseHeader(`content-type`)!==`image/jpeg`&&i.abort()},i.withCredentials=!1,i.open(`GET`,e,!0),i.responseType=`arraybuffer`,i.send(null)}else n(`Error: the image is empty`)}catch(e){n(e)}var a,o,s}))}function Dc(e){var t=e.rotate,n=e.flip,r=e.scaleX,i=e.scaleY,a=``;return a+=` rotate(`+t+`deg) `,a+=` scaleX(`+r*(n.horizontal?-1:1)+`) `,a+=` scaleY(`+i*(n.vertical?-1:1)+`) `}function Oc(e){try{var t,n=new DataView(e),r=void 0,i=void 0,a=void 0,o=void 0;if(n.getUint8(0)===255&&n.getUint8(1)===216)for(var s=n.byteLength,c=2;c+1<s;){if(n.getUint8(c)===255&&n.getUint8(c+1)===225){a=c;break}c++}if(a&&(r=a+10,function(e,t,n){var r,i=``;for(r=t,n+=t;r<n;r++)i+=String.fromCharCode(e.getUint8(r));return i}(n,a+4,4)===`Exif`)){var l=n.getUint16(r);if(((i=l===18761)||l===19789)&&n.getUint16(r+2,i)===42){var u=n.getUint32(r+4,i);u>=8&&(o=r+u)}}if(o){for(var d=n.getUint16(o,i),f=0;f<d;f++)if(c=o+12*f+2,n.getUint16(c,i)===274){c+=8,t=n.getUint16(c,i),n.setUint16(c,1,i);break}}return t}catch{return null}}var kc=rs(`vue-preview-result`),Ac={name:`PreviewResult`,props:{image:{type:Object},transitions:{type:Object},stencilCoordinates:{type:Object,default:function(){return{width:0,height:0,left:0,top:0}}},imageClass:{type:String}},computed:{classes:function(){return{root:kc(),wrapper:kc(`wrapper`),imageWrapper:kc(`image-wrapper`),image:q(kc(`image`),this.imageClass)}},wrapperStyle:function(){var e={width:`${this.stencilCoordinates.width}px`,height:`${this.stencilCoordinates.height}px`,left:`calc(50% - ${this.stencilCoordinates.width/2}px)`,top:`calc(50% - ${this.stencilCoordinates.height/2}px)`};return this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),e},imageStyle:function(){var e=this.image.transforms,t=Hs({width:this.image.width,height:this.image.height},e.rotate),n={width:`${this.image.width}px`,height:`${this.image.height}px`,left:`0px`,top:`0px`},r={left:(this.image.width-t.width)*e.scaleX/2,top:(this.image.height-t.height)*e.scaleY/2},i={left:(1-e.scaleX)*this.image.width/2,top:(1-e.scaleY)*this.image.height/2};return n.transform=`translate(
4
+ ${-this.stencilCoordinates.left-e.translateX-r.left-i.left}px,${-this.stencilCoordinates.top-e.translateY-r.top-i.top}px) `+Dc(e),this.transitions&&this.transitions.enabled&&(n.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),n}}};function jc(e,t){var n=t.getBoundingClientRect(),r=n.left,i=n.top,a={left:0,top:0},o=0;return e.forEach((function(t){a.left+=(t.clientX-r)/e.length,a.top+=(t.clientY-i)/e.length})),e.forEach((function(e){o+=hs({x:a.left,y:a.top},{x:e.clientX-r,y:e.clientY-i})})),{centerMass:a,spread:o,count:e.length}}Ac.render=function(e,t,n,r,i,a){return L(),A(`div`,{class:a.classes.root},[u(`div`,{ref:`wrapper`,class:a.classes.wrapper,style:a.wrapperStyle},[u(`img`,{ref:`image`,src:n.image.src,class:a.classes.image,style:a.imageStyle},null,14,[`src`])],6)],2)};var Mc={props:{touchMove:{type:Boolean,required:!0},mouseMove:{type:Boolean,required:!0},touchResize:{type:Boolean,required:!0},wheelResize:{type:[Boolean,Object],required:!0},eventsFilter:{type:Function,required:!1}},beforeMount:function(){window.addEventListener(`mouseup`,this.onMouseUp,{passive:!1}),window.addEventListener(`mousemove`,this.onMouseMove,{passive:!1}),window.addEventListener(`touchmove`,this.onTouchMove,{passive:!1}),window.addEventListener(`touchend`,this.onTouchEnd,{passive:!1})},beforeUnmount:function(){window.removeEventListener(`mouseup`,this.onMouseUp),window.removeEventListener(`mousemove`,this.onMouseMove),window.removeEventListener(`touchmove`,this.onTouchMove),window.removeEventListener(`touchend`,this.onTouchEnd)},created:function(){this.transforming=!1,this.debouncedProcessEnd=as(this.processEnd),this.touches=[]},methods:{processMove:function(e,t){if(this.touches.length){if(this.touches.length===1&&t.length===1)this.$emit(`move`,new gs({left:this.touches[0].clientX-t[0].clientX,top:this.touches[0].clientY-t[0].clientY}));else if(this.touches.length>1&&this.touchResize){var n=jc(t,this.$refs.container),r=this.oldGeometricProperties;r.count===n.count&&r.count>1&&this.$emit(`resize`,new gs({left:r.centerMass.left-n.centerMass.left,top:r.centerMass.top-n.centerMass.top},{factor:r.spread/n.spread,center:n.centerMass})),this.oldGeometricProperties=n}this.touches=t}},processEnd:function(){this.transforming&&(this.transforming=!1,this.$emit(`transform-end`))},processStart:function(){this.transforming=!0,this.debouncedProcessEnd.clear()},processEvent:function(e){return this.eventsFilter?!1!==this.eventsFilter(e,this.transforming):(e.preventDefault(),e.stopPropagation(),!0)},onTouchStart:function(e){if(e.cancelable&&(this.touchMove||this.touchResize&&e.touches.length>1)&&this.processEvent(e)){var t=this.$refs.container,n=t.getBoundingClientRect(),r=n.left,i=n.top,a=n.bottom,o=n.right;this.touches=Qo(e.touches).filter((function(e){return e.clientX>r&&e.clientX<o&&e.clientY>i&&e.clientY<a})),this.oldGeometricProperties=jc(this.touches,t)}},onTouchEnd:function(e){e.touches.length===0&&(this.touches=[],this.processEnd())},onTouchMove:function(e){var t=this;if(this.touches.length){var n=Qo(e.touches).filter((function(e){return!e.identifier||t.touches.find((function(t){return t.identifier===e.identifier}))}));this.processEvent(e)&&(this.processMove(e,n),this.processStart())}},onMouseDown:function(e){if(this.mouseMove&&`buttons`in e&&e.buttons===1&&this.processEvent(e)){var t={fake:!0,clientX:e.clientX,clientY:e.clientY};this.touches=[t],this.processStart()}},onMouseMove:function(e){this.touches.length&&this.processEvent(e)&&this.processMove(e,[{clientX:e.clientX,clientY:e.clientY}])},onMouseUp:function(){this.touches=[],this.processEnd()},onWheel:function(e){if(this.wheelResize&&this.processEvent(e)){var t=this.$refs.container.getBoundingClientRect(),n=t.left,r=t.top,i=1+this.wheelResize.ratio*(o=e.deltaY||e.detail||e.wheelDelta,(s=+o)==0||ms(s)?s:s>0?1:-1),a={left:e.clientX-n,top:e.clientY-r};this.$emit(`resize`,new gs({},{factor:i,center:a})),this.touches.length||this.debouncedProcessEnd()}var o,s}},emits:[`resize`,`move`,`transform-end`]};Mc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`container`,onTouchstart:t[1]||=function(){return a.onTouchStart&&a.onTouchStart.apply(a,arguments)},onMousedown:t[2]||=function(){return a.onMouseDown&&a.onMouseDown.apply(a,arguments)},onWheel:t[3]||=function(){return a.onWheel&&a.onWheel.apply(a,arguments)}},[k(e.$slots,`default`)],544)};var Nc={components:{TransformableImage:Mc},props:{touchMove:{type:Boolean,required:!0},mouseMove:{type:Boolean,required:!0},touchResize:{type:Boolean,required:!0},wheelResize:{type:[Boolean,Object],required:!0}},emits:[`resize`,`move`]};Nc.render=function(e,t,n,r,i,a){var o=T(`transformable-image`);return L(),A(o,{"touch-move":n.touchMove,"touch-resize":n.touchResize,"mouse-move":n.mouseMove,"wheel-resize":n.wheelResize,onMove:t[1]||=function(t){return e.$emit(`move`,t)},onResize:t[2]||=function(t){return e.$emit(`resize`,t)}},{default:M((function(){return[k(e.$slots,`default`)]})),_:3},8,[`touch-move`,`touch-resize`,`mouse-move`,`wheel-resize`])};var Pc=rs(`vue-preview`),Fc={props:{coordinates:{type:Object},transitions:{type:Object},image:{type:Object,default:function(){return{}}},imageClass:{type:String},width:{type:Number},height:{type:Number},fill:{type:Boolean}},data:function(){return{calculatedImageSize:{width:0,height:0},calculatedSize:{width:0,height:0}}},computed:{classes:function(){return{root:Pc({fill:this.fill}),wrapper:Pc(`wrapper`),imageWrapper:Pc(`image-wrapper`),image:q(Pc(`image`),this.imageClass)}},style:function(){if(this.fill)return{};var e={};return this.width&&(e.width=`${this.size.width}px`),this.height&&(e.height=`${this.size.height}px`),this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),e},wrapperStyle:function(){var e={width:`${this.size.width}px`,height:`${this.size.height}px`,left:`calc(50% - ${this.size.width/2}px)`,top:`calc(50% - ${this.size.height/2}px)`};return this.transitions&&this.transitions.enabled&&(e.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),e},imageStyle:function(){if(this.coordinates&&this.image){var e=this.coordinates.width/this.size.width,t=K(K({rotate:0,flip:{horizontal:!1,vertical:!1}},this.image.transforms),{},{scaleX:1/e,scaleY:1/e}),n=this.imageSize.width,r=this.imageSize.height,i=Hs({width:n,height:r},t.rotate),a={width:`${n}px`,height:`${r}px`,left:`0px`,top:`0px`},o={rotate:{left:(n-i.width)*t.scaleX/2,top:(r-i.height)*t.scaleY/2},scale:{left:(1-t.scaleX)*n/2,top:(1-t.scaleY)*r/2}};return a.transform=`translate(
5
+ ${-this.coordinates.left/e-o.rotate.left-o.scale.left}px,${-this.coordinates.top/e-o.rotate.top-o.scale.top}px) `+Dc(t),this.transitions&&this.transitions.enabled&&(a.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),a}return{}},size:function(){return{width:this.width||this.calculatedSize.width,height:this.height||this.calculatedSize.height}},imageSize:function(){return{width:this.image.width||this.calculatedImageSize.width,height:this.image.height||this.calculatedImageSize.height}}},watch:{image:function(e){(e.width||e.height)&&this.onChangeImage()}},mounted:function(){var e=this;this.onChangeImage(),this.$refs.image.addEventListener(`load`,(function(){e.refreshImage()})),window.addEventListener(`resize`,this.refresh),window.addEventListener(`orientationchange`,this.refresh)},unmounted:function(){window.removeEventListener(`resize`,this.refresh),window.removeEventListener(`orientationchange`,this.refresh)},methods:{refreshImage:function(){var e=this.$refs.image;this.calculatedImageSize.height=e.naturalHeight,this.calculatedImageSize.width=e.naturalWidth},refresh:function(){var e=this.$refs.root;this.width||(this.calculatedSize.width=e.clientWidth),this.height||(this.calculatedSize.height=e.clientHeight)},onChangeImage:function(){var e=this.$refs.image;e&&e.complete&&this.refreshImage(),this.refresh()}}};Fc.render=function(e,t,n,r,i,a){return L(),A(`div`,{ref:`root`,class:a.classes.root,style:a.style},[u(`div`,{ref:`wrapper`,class:a.classes.wrapper,style:a.wrapperStyle},[O(u(`img`,{ref:`image`,src:n.image&&n.image.src,class:a.classes.image,style:a.imageStyle},null,14,[`src`]),[[ie,n.image&&n.image.src]])],6)],6)};var Ic={components:{Preview:Fc},inheritAttrs:!1};Ic.render=function(e,t,n,r,a,o){var s=T(`preview`);return L(),A(s,i(e.$attrs,{fill:!0}),null,16)};var Lc=rs(`vue-rectangle-stencil`),Rc={name:`RectangleStencil`,components:{StencilPreview:Ic,BoundingBox:Sc,DraggableArea:wc},props:{image:{type:Object},coordinates:{type:Object},stencilCoordinates:{type:Object},handlers:{type:Object},handlersComponent:{type:[Object,String],default:function(){return hc}},lines:{type:Object},linesComponent:{type:[Object,String],default:function(){return vc}},aspectRatio:{type:[Number,String]},minAspectRatio:{type:[Number,String]},maxAspectRatio:{type:[Number,String]},movable:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},transitions:{type:Object},movingClass:{type:String},resizingClass:{type:String},previewClass:{type:String},boundingBoxClass:{type:String},linesClasses:{type:Object,default:function(){return{}}},linesWrappersClasses:{type:Object,default:function(){return{}}},handlersClasses:{type:Object,default:function(){return{}}},handlersWrappersClasses:{type:Object,default:function(){return{}}}},data:function(){return{moving:!1,resizing:!1}},computed:{classes:function(){return{stencil:q(Lc({movable:this.movable,moving:this.moving,resizing:this.resizing}),this.moving&&this.movingClass,this.resizing&&this.resizingClass),preview:q(Lc(`preview`),this.previewClass),boundingBox:q(Lc(`bounding-box`),this.boundingBoxClass)}},style:function(){var e=this.stencilCoordinates,t=e.height,n=e.width,r=e.left,i=e.top,a={width:`${n}px`,height:`${t}px`,transform:`translate(${r}px, ${i}px)`};return this.transitions&&this.transitions.enabled&&(a.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),a}},methods:{onMove:function(e){this.$emit(`move`,e),this.moving=!0},onMoveEnd:function(){this.$emit(`move-end`),this.moving=!1},onResize:function(e){this.$emit(`resize`,e),this.resizing=!0},onResizeEnd:function(){this.$emit(`resize-end`),this.resizing=!1},aspectRatios:function(){return{minimum:this.aspectRatio||this.minAspectRatio,maximum:this.aspectRatio||this.maxAspectRatio}}},emits:[`resize`,`resize-end`,`move`,`move-end`]};Rc.render=function(e,t,n,r,i,a){var o=T(`stencil-preview`),s=T(`draggable-area`),c=T(`bounding-box`);return L(),A(`div`,{class:a.classes.stencil,style:a.style},[u(c,{width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,transitions:n.transitions,class:a.classes.boundingBox,handlers:n.handlers,"handlers-component":n.handlersComponent,"handlers-classes":n.handlersClasses,"handlers-wrappers-classes":n.handlersWrappersClasses,lines:n.lines,"lines-component":n.linesComponent,"lines-classes":n.linesClasses,"lines-wrappers-classes":n.linesWrappersClasses,resizable:n.resizable,onResize:a.onResize,onResizeEnd:a.onResizeEnd},{default:M((function(){return[u(s,{movable:n.movable,onMove:a.onMove,onMoveEnd:a.onMoveEnd},{default:M((function(){return[u(o,{image:n.image,coordinates:n.coordinates,width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,class:a.classes.preview,transitions:n.transitions},null,8,[`image`,`coordinates`,`width`,`height`,`class`,`transitions`])]})),_:1},8,[`movable`,`onMove`,`onMoveEnd`])]})),_:1},8,[`width`,`height`,`transitions`,`class`,`handlers`,`handlers-component`,`handlers-classes`,`handlers-wrappers-classes`,`lines`,`lines-component`,`lines-classes`,`lines-wrappers-classes`,`resizable`,`onResize`,`onResizeEnd`])],6)};var zc=rs(`vue-circle-stencil`),Bc={components:{StencilPreview:Ic,BoundingBox:Sc,DraggableArea:wc},props:{image:{type:Object},coordinates:{type:Object},stencilCoordinates:{type:Object},handlers:{type:Object,default:function(){return{eastNorth:!0,westNorth:!0,westSouth:!0,eastSouth:!0}}},handlersComponent:{type:[Object,String],default:function(){return hc}},handlersClasses:{type:Object,default:function(){return{}}},handlersWrappersClasses:{type:Object,default:function(){return{}}},lines:{type:Object},linesComponent:{type:[Object,String],default:function(){return vc}},linesClasses:{type:Object,default:function(){return{}}},linesWrappersClasses:{type:Object,default:function(){return{}}},movable:{type:Boolean,default:!0},resizable:{type:Boolean,default:!0},transitions:{type:Object},movingClass:{type:String},resizingClass:{type:String},previewClass:{type:String},boundingBoxClass:{type:String}},data:function(){return{moving:!1,resizing:!1}},computed:{classes:function(){return{stencil:q(zc({movable:this.movable,moving:this.moving,resizing:this.resizing}),this.moving&&this.movingClass,this.resizing&&this.resizingClass),preview:q(zc(`preview`),this.previewClass),boundingBox:q(zc(`bounding-box`),this.boundingBoxClass)}},style:function(){var e=this.stencilCoordinates,t=e.height,n=e.width,r=e.left,i=e.top,a={width:`${n}px`,height:`${t}px`,transform:`translate(${r}px, ${i}px)`};return this.transitions&&this.transitions.enabled&&(a.transition=`${this.transitions.time}ms ${this.transitions.timingFunction}`),a}},methods:{onMove:function(e){this.$emit(`move`,e),this.moving=!0},onMoveEnd:function(){this.$emit(`move-end`),this.moving=!1},onResize:function(e){this.$emit(`resize`,e),this.resizing=!0},onResizeEnd:function(){this.$emit(`resize-end`),this.resizing=!1},aspectRatios:function(){return{minimum:1,maximum:1}}},emits:[`resize`,`resize-end`,`move`,`move-end`]};Bc.render=function(e,t,n,r,i,a){var o=T(`stencil-preview`),s=T(`draggable-area`),c=T(`bounding-box`);return L(),A(`div`,{class:a.classes.stencil,style:a.style},[u(c,{width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,transitions:n.transitions,class:a.classes.boundingBox,handlers:n.handlers,"handlers-component":n.handlersComponent,"handlers-classes":n.handlersClasses,"handlers-wrappers-classes":n.handlersWrappersClasses,lines:n.lines,"lines-component":n.linesComponent,"lines-classes":n.linesClasses,"lines-wrappers-classes":n.linesWrappersClasses,resizable:n.resizable,onResize:a.onResize,onResizeEnd:a.onResizeEnd},{default:M((function(){return[u(s,{movable:n.movable,onMove:a.onMove,onMoveEnd:a.onMoveEnd},{default:M((function(){return[u(o,{image:n.image,coordinates:n.coordinates,width:n.stencilCoordinates.width,height:n.stencilCoordinates.height,class:a.classes.preview,transitions:n.transitions},null,8,[`image`,`coordinates`,`width`,`height`,`class`,`transitions`])]})),_:1},8,[`movable`,`onMove`,`onMoveEnd`])]})),_:1},8,[`width`,`height`,`transitions`,`class`,`handlers`,`handlers-component`,`handlers-classes`,`handlers-wrappers-classes`,`lines`,`lines-component`,`lines-classes`,`lines-wrappers-classes`,`resizable`,`onResize`,`onResizeEnd`])],6)};var Vc=[`transitions`],Hc=rs(`vue-advanced-cropper`),Uc={name:`Cropper`,components:{BackgroundWrapper:Nc},props:{src:{type:String,default:null},stencilComponent:{type:[Object,String],default:function(){return Rc}},backgroundWrapperComponent:{type:[Object,String],default:function(){return Nc}},stencilProps:{type:Object,default:function(){return{}}},autoZoom:{type:Boolean,default:!1},imageClass:{type:String},boundariesClass:{type:String},backgroundClass:{type:String},foregroundClass:{type:String},minWidth:{type:[Number,String]},minHeight:{type:[Number,String]},maxWidth:{type:[Number,String]},maxHeight:{type:[Number,String]},debounce:{type:[Boolean,Number],default:500},transitions:{type:Boolean,default:!0},checkOrientation:{type:Boolean,default:!0},canvas:{type:[Object,Boolean],default:!0},crossOrigin:{type:[Boolean,String],default:void 0},transitionTime:{type:Number,default:300},imageRestriction:{type:String,default:`fit-area`,validator:function(e){return ks.indexOf(e)!==-1}},roundResult:{type:Boolean,default:!0},defaultSize:{type:[Function,Object]},defaultPosition:{type:[Function,Object]},defaultVisibleArea:{type:[Function,Object]},defaultTransforms:{type:[Function,Object]},defaultBoundaries:{type:[Function,String],validator:function(e){return!(typeof e==`string`&&e!==`fill`&&e!==`fit`)}},priority:{type:String,default:`coordinates`},stencilSize:{type:[Object,Function]},resizeImage:{type:[Boolean,Object],default:!0},moveImage:{type:[Boolean,Object],default:!0},autoZoomAlgorithm:{type:Function},resizeAlgorithm:{type:Function,default:function(e){var t=e.event,n=e.coordinates,r=e.aspectRatio,i=e.positionRestrictions,a=e.sizeRestrictions,o=J(J({},n),{right:n.left+n.width,bottom:n.top+n.height}),s=t.params||{},c=J({},t.directions),l=s.allowedDirections||{left:!0,right:!0,bottom:!0,top:!0};a.widthFrozen&&(c.left=0,c.right=0),a.heightFrozen&&(c.top=0,c.bottom=0),Ts.forEach((function(e){l[e]||(c[e]=0)}));var u=Fs(o,c=dc({coordinates:o,directions:c,sizeRestrictions:a,positionRestrictions:i})).width,d=Fs(o,c).height,f=s.preserveRatio?Q(o):Bs(u/d,r);if(f){var p=s.respectDirection;if(p||=o.width>=o.height||f===1?`width`:`height`,p===`width`){var m=u/f-o.height;if(l.top&&l.bottom){var h=c.top,g=c.bottom;c.bottom=fc(m,g,h),c.top=fc(m,h,g)}else l.bottom?c.bottom=m:l.top?c.top=m:l.right?c.right=0:l.left&&(c.left=0)}else if(p===`height`){var _=o.width-d*f;if(l.left&&l.right){var v=c.left,y=c.right;c.left=-fc(_,v,y),c.right=-fc(_,y,v)}else l.left?c.left=-_:l.right?c.right=-_:l.top?c.top=0:l.bottom&&(c.bottom=0)}c=dc({directions:c,coordinates:o,sizeRestrictions:a,positionRestrictions:i,preserveRatio:!0,compensate:s.compensate})}return u=Fs(o,c).width,d=Fs(o,c).height,(f=s.preserveRatio?Q(o):Bs(u/d,r))&&Math.abs(f-u/d)>.001&&Ts.forEach((function(e){l[e]||(c[e]=0)})),Qs({event:new vs({left:-c.left,top:-c.top}),coordinates:{width:n.width+c.right+c.left,height:n.height+c.top+c.bottom,left:n.left,top:n.top},positionRestrictions:i})}},moveAlgorithm:{type:Function,default:Qs},initStretcher:{type:Function,default:function(e){var t=e.stretcher,n=e.imageSize,r=Q(n);t.style.width=n.width+`px`,t.style.height=t.clientWidth/r+`px`,t.style.width=t.clientWidth+`px`}},fitCoordinates:{type:Function,default:function(e){var t=e.visibleArea,n=e.coordinates,r=e.aspectRatio,i=e.sizeRestrictions,a=e.positionRestrictions,o=J(J({},n),Zs({width:n.width,height:n.height,aspectRatio:r,sizeRestrictions:{maxWidth:t.width,maxHeight:t.height,minHeight:Math.min(t.height,i.minHeight),minWidth:Math.min(t.width,i.minWidth)}}));return o=$(o=Z(o,Ns(X(n),X(o))),Js(Ms(t),a))}},fitVisibleArea:{type:Function,default:function(e){var t=e.visibleArea,n=e.boundaries,r=e.getAreaRestrictions,i=e.coordinates,a=J({},t);a.height=a.width/Q(n),a.top+=(t.height-a.height)/2,(i.height-a.height>0||i.width-a.width>0)&&(a=Ls(a,Math.max(i.height/a.height,i.width/a.width)));var o=Is(zs(i,Ms(a=Ls(a,Ws(a,r({visibleArea:a,type:`resize`}))))));return a.width<i.width&&(o.left=0),a.height<i.height&&(o.top=0),a=$(a=Z(a,o),r({visibleArea:a,type:`move`}))}},areaRestrictionsAlgorithm:{type:Function,default:function(e){var t=e.visibleArea,n=e.boundaries,r=e.imageSize,i=e.imageRestriction,a=e.type,o={};return i===`fill-area`?o={left:0,top:0,right:r.width,bottom:r.height}:i===`fit-area`&&(Q(n)>Q(r)?(o={top:0,bottom:r.height},t&&a===`move`&&(t.width>r.width?(o.left=-(t.width-r.width)/2,o.right=r.width-o.left):(o.left=0,o.right=r.width))):(o={left:0,right:r.width},t&&a===`move`&&(t.height>r.height?(o.top=-(t.height-r.height)/2,o.bottom=r.height-o.top):(o.top=0,o.bottom=r.height)))),o}},sizeRestrictionsAlgorithm:{type:Function,default:function(e){return{minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight}}},positionRestrictionsAlgorithm:{type:Function,default:function(e){var t=e.imageSize,n={};return e.imageRestriction!==`none`&&(n={left:0,top:0,right:t.width,bottom:t.height}),n}}},data:function(){return{transitionsActive:!1,imageLoaded:!1,imageAttributes:{width:null,height:null,crossOrigin:null,src:null},defaultImageTransforms:{rotate:0,flip:{horizontal:!1,vertical:!1}},appliedImageTransforms:{rotate:0,flip:{horizontal:!1,vertical:!1}},boundaries:{width:0,height:0},visibleArea:null,coordinates:K({},As)}},computed:{image:function(){return{src:this.imageAttributes.src,width:this.imageAttributes.width,height:this.imageAttributes.height,transforms:this.imageTransforms}},imageTransforms:function(){return{rotate:this.appliedImageTransforms.rotate,flip:{horizontal:this.appliedImageTransforms.flip.horizontal,vertical:this.appliedImageTransforms.flip.vertical},translateX:this.visibleArea?this.visibleArea.left/this.coefficient:0,translateY:this.visibleArea?this.visibleArea.top/this.coefficient:0,scaleX:1/this.coefficient,scaleY:1/this.coefficient}},imageSize:function(){var e=function(e){return e*Math.PI/180}(this.imageTransforms.rotate);return{width:Math.abs(this.imageAttributes.width*Math.cos(e))+Math.abs(this.imageAttributes.height*Math.sin(e)),height:Math.abs(this.imageAttributes.width*Math.sin(e))+Math.abs(this.imageAttributes.height*Math.cos(e))}},initialized:function(){return!!(this.visibleArea&&this.imageLoaded)},settings:function(){var e=ds(this.resizeImage,{touch:!0,wheel:{ratio:.1},adjustStencil:!0},{touch:!1,wheel:!1,adjustStencil:!1});return{moveImage:ds(this.moveImage,{touch:!0,mouse:!0},{touch:!1,mouse:!1}),resizeImage:e}},coefficient:function(){return this.visibleArea?this.visibleArea.width/this.boundaries.width:0},areaRestrictions:function(){return this.imageLoaded?this.areaRestrictionsAlgorithm({imageSize:this.imageSize,imageRestriction:this.imageRestriction,boundaries:this.boundaries}):{}},transitionsOptions:function(){return{enabled:this.transitionsActive,timingFunction:`ease-in-out`,time:350}},sizeRestrictions:function(){if(this.boundaries.width&&this.boundaries.height&&this.imageSize.width&&this.imageSize.height){var e=this.sizeRestrictionsAlgorithm({imageSize:this.imageSize,minWidth:Y(this.minWidth)?0:fs(this.minWidth),minHeight:Y(this.minHeight)?0:fs(this.minHeight),maxWidth:Y(this.maxWidth)?1/0:fs(this.maxWidth),maxHeight:Y(this.maxHeight)?1/0:fs(this.maxHeight)});if(e=function(e){var t=e.areaRestrictions,n=e.sizeRestrictions;e.imageSize;var r=e.boundaries,i=e.positionRestrictions;e.imageRestriction;var a=J(J({},n),{minWidth:n.minWidth===void 0?0:n.minWidth,minHeight:n.minHeight===void 0?0:n.minHeight,maxWidth:n.maxWidth===void 0?1/0:n.maxWidth,maxHeight:n.maxHeight===void 0?1/0:n.maxHeight});i.left!==void 0&&i.right!==void 0&&(a.maxWidth=Math.min(a.maxWidth,i.right-i.left)),i.bottom!==void 0&&i.top!==void 0&&(a.maxHeight=Math.min(a.maxHeight,i.bottom-i.top));var o=Gs(t),s=Vs(r,o);return o.width<1/0&&(!a.maxWidth||a.maxWidth>s.width)&&(a.maxWidth=Math.min(a.maxWidth,s.width)),o.height<1/0&&(!a.maxHeight||a.maxHeight>s.height)&&(a.maxHeight=Math.min(a.maxHeight,s.height)),a.minWidth>a.maxWidth&&(a.minWidth=a.maxWidth,a.widthFrozen=!0),a.minHeight>a.maxHeight&&(a.minHeight=a.maxHeight,a.heightFrozen=!0),a}({sizeRestrictions:e,areaRestrictions:this.getAreaRestrictions({visibleArea:this.visibleArea,type:`resize`}),imageSize:this.imageSize,boundaries:this.boundaries,positionRestrictions:this.positionRestrictions,imageRestriction:this.imageRestriction,visibleArea:this.visibleArea,stencilSize:this.getStencilSize()}),this.visibleArea&&this.stencilSize){var t=this.getStencilSize(),n=Gs(this.getAreaRestrictions({visibleArea:this.visibleArea,type:`resize`}));e.maxWidth=Math.min(e.maxWidth,n.width*t.width/this.boundaries.width),e.maxHeight=Math.min(e.maxHeight,n.height*t.height/this.boundaries.height),e.maxWidth<e.minWidth&&(e.minWidth=e.maxWidth),e.maxHeight<e.minHeight&&(e.minHeight=e.maxHeight)}return e}return{minWidth:0,minHeight:0,maxWidth:0,maxHeight:0}},positionRestrictions:function(){return this.positionRestrictionsAlgorithm({imageSize:this.imageSize,imageRestriction:this.imageRestriction})},classes:function(){return{cropper:Hc(),image:q(Hc(`image`),this.imageClass),stencil:Hc(`stencil`),boundaries:q(Hc(`boundaries`),this.boundariesClass),stretcher:q(Hc(`stretcher`)),background:q(Hc(`background`),this.backgroundClass),foreground:q(Hc(`foreground`),this.foregroundClass),imageWrapper:q(Hc(`image-wrapper`)),cropperWrapper:q(Hc(`cropper-wrapper`))}},stencilCoordinates:function(){if(this.initialized){var e=this.coordinates,t=e.width,n=e.height,r=e.left,i=e.top;return{width:t/this.coefficient,height:n/this.coefficient,left:(r-this.visibleArea.left)/this.coefficient,top:(i-this.visibleArea.top)/this.coefficient}}return this.defaultCoordinates()},boundariesStyle:function(){var e={width:this.boundaries.width?`${Math.round(this.boundaries.width)}px`:`auto`,height:this.boundaries.height?`${Math.round(this.boundaries.height)}px`:`auto`,transition:`opacity ${this.transitionTime}ms`,pointerEvents:this.imageLoaded?`all`:`none`};return this.imageLoaded||(e.opacity=`0`),e},imageStyle:function(){var e=this.imageAttributes.width>this.imageAttributes.height?{width:Math.min(1024,this.imageAttributes.width),height:Math.min(1024,this.imageAttributes.width)/(this.imageAttributes.width/this.imageAttributes.height)}:{height:Math.min(1024,this.imageAttributes.height),width:Math.min(1024,this.imageAttributes.height)*(this.imageAttributes.width/this.imageAttributes.height)},t={left:(e.width-this.imageSize.width)/(2*this.coefficient),top:(e.height-this.imageSize.height)/(2*this.coefficient)},n={left:(1-1/this.coefficient)*e.width/2,top:(1-1/this.coefficient)*e.height/2},r=K(K({},this.imageTransforms),{},{scaleX:this.imageTransforms.scaleX*(this.imageAttributes.width/e.width),scaleY:this.imageTransforms.scaleY*(this.imageAttributes.height/e.height)}),i={width:`${e.width}px`,height:`${e.height}px`,left:`0px`,top:`0px`,transform:`translate(${-t.left-n.left-this.imageTransforms.translateX}px, ${-t.top-n.top-this.imageTransforms.translateY}px)`+Dc(r)};return this.transitionsOptions.enabled&&(i.transition=`${this.transitionsOptions.time}ms ${this.transitionsOptions.timingFunction}`),i}},watch:{src:function(){this.onChangeImage()},stencilComponent:function(){var e=this;this.$nextTick((function(){e.resetCoordinates(),e.runAutoZoom(`setCoordinates`),e.onChange()}))},minWidth:function(){this.onPropsChange()},maxWidth:function(){this.onPropsChange()},minHeight:function(){this.onPropsChange()},maxHeight:function(){this.onPropsChange()},imageRestriction:function(){this.reset()},stencilProps:function(e,t){[`aspectRatio`,`minAspectRatio`,`maxAspectRatio`].find((function(n){return e[n]!==t[n]}))&&this.$nextTick(this.onPropsChange)}},created:function(){this.debouncedUpdate=as(this.update,this.debounce),this.debouncedDisableTransitions=as(this.disableTransitions,this.transitionsOptions.time),this.awaiting=!1},mounted:function(){this.$refs.image.addEventListener(`load`,this.onSuccessLoadImage),this.$refs.image.addEventListener(`error`,this.onFailLoadImage),this.onChangeImage(),window.addEventListener(`resize`,this.refresh),window.addEventListener(`orientationchange`,this.refresh)},unmounted:function(){window.removeEventListener(`resize`,this.refresh),window.removeEventListener(`orientationchange`,this.refresh),this.imageAttributes.revoke&&this.imageAttributes.src&&URL.revokeObjectURL(this.imageAttributes.src),this.debouncedUpdate.clear(),this.debouncedDisableTransitions.clear()},methods:{getResult:function(){var e=this.initialized?this.prepareResult(K({},this.coordinates)):this.defaultCoordinates(),t={rotate:this.imageTransforms.rotate%360,flip:K({},this.imageTransforms.flip)};if(this.src&&this.imageLoaded){var n=this;return{image:this.image,coordinates:e,visibleArea:this.visibleArea?K({},this.visibleArea):null,imageTransforms:t,get canvas(){return n.canvas?n.getCanvas():void 0}}}return{image:this.image,coordinates:e,visibleArea:this.visibleArea?K({},this.visibleArea):null,canvas:void 0,imageTransforms:t}},zoom:function(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).transitions,r=n===void 0||n;this.onManipulateImage(new gs({},{factor:1/e,center:t}),{normalize:!1,transitions:r})},move:function(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).transitions,r=n===void 0||n;this.onManipulateImage(new gs({left:e||0,top:t||0}),{normalize:!1,transitions:r})},setCoordinates:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=n.autoZoom,i=r===void 0||r,a=n.transitions,o=a===void 0||a;this.$nextTick((function(){t.imageLoaded?(t.transitionsActive||(o&&t.enableTransitions(),t.coordinates=t.applyTransform(e),i&&t.runAutoZoom(`setCoordinates`),o&&t.debouncedDisableTransitions()),t.onChange()):t.delayedTransforms=e}))},refresh:function(){var e=this,t=this.$refs.image;if(this.src&&t)return this.initialized?this.updateVisibleArea().then((function(){e.onChange()})):this.resetVisibleArea().then((function(){e.onChange()}))},reset:function(){var e=this;return this.resetVisibleArea().then((function(){e.onChange(!1)}))},awaitRender:function(e){var t=this;this.awaiting||(this.awaiting=!0,this.$nextTick((function(){e(),t.awaiting=!1})))},prepareResult:function(e){return this.roundResult?function(e){var t=e.coordinates,n=e.sizeRestrictions,r=e.positionRestrictions,i={width:Math.round(t.width),height:Math.round(t.height),left:Math.round(t.left),top:Math.round(t.top)};return i.width>n.maxWidth?i.width=Math.floor(t.width):i.width<n.minWidth&&(i.width=Math.ceil(t.width)),i.height>n.maxHeight?i.height=Math.floor(t.height):i.height<n.minHeight&&(i.height=Math.ceil(t.height)),$(i,r)}(K(K({},this.getPublicProperties()),{},{positionRestrictions:sc(this.positionRestrictions,this.visibleArea),coordinates:e})):e},processAutoZoom:function(e,t,n,r){var i=this.autoZoomAlgorithm;i||=this.stencilSize?ec:this.autoZoom?tc:nc;var a=i({event:{type:e,params:r},visibleArea:t,coordinates:n,boundaries:this.boundaries,aspectRatio:this.getAspectRatio(),positionRestrictions:this.positionRestrictions,getAreaRestrictions:this.getAreaRestrictions,sizeRestrictions:this.sizeRestrictions,stencilSize:this.getStencilSize()});return K(K({},a),{},{changed:!js(a.visibleArea,t)||!js(a.coordinates,n)})},runAutoZoom:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.transitions,r=n!==void 0&&n,i=Zo(t,Vc),a=this.processAutoZoom(e,this.visibleArea,this.coordinates,i),o=a.visibleArea,s=a.coordinates,c=a.changed;r&&c&&this.enableTransitions(),this.visibleArea=o,this.coordinates=s,r&&c&&this.debouncedDisableTransitions()},normalizeEvent:function(e){return function(e){var t=e.event,n=e.visibleArea,r=e.coefficient;if(t.type===`manipulateImage`)return J(J({},t),{move:{left:t.move&&t.move.left?r*t.move.left:0,top:t.move&&t.move.top?r*t.move.top:0},scale:{factor:t.scale&&t.scale.factor?t.scale.factor:1,center:t.scale&&t.scale.center?{left:t.scale.center.left*r+n.left,top:t.scale.center.top*r+n.top}:null}});if(t.type===`resize`){var i=J(J({},t),{directions:J({},t.directions)});return Ts.forEach((function(e){i.directions[e]*=r})),i}if(t.type===`move`){var a=J(J({},t),{directions:J({},t.directions)});return Os.forEach((function(e){a.directions[e]*=r})),a}return t}(K(K({},this.getPublicProperties()),{},{event:e}))},getCanvas:function(){if(this.$refs.canvas){var e=this.$refs.canvas,t=this.$refs.image,n=this.imageTransforms.rotate!==0||this.imageTransforms.flip.horizontal||this.imageTransforms.flip.vertical?function(e,t,n){var r=n.rotate,i=n.flip,a={width:t.naturalWidth,height:t.naturalHeight},o=Hs(a,r),s=e.getContext(`2d`);e.height=o.height,e.width=o.width,s.save();var c=Us(X(J({left:0,top:0},a)),r);return s.translate(-(c.left-o.width/2),-(c.top-o.height/2)),s.rotate(r*Math.PI/180),s.translate(i.horizontal?a.width:0,i.vertical?a.height:0),s.scale(i.horizontal?-1:1,i.vertical?-1:1),s.drawImage(t,0,0,a.width,a.height),s.restore(),e}(this.$refs.sourceCanvas,t,this.imageTransforms):t,r=K({minWidth:0,minHeight:0,maxWidth:1/0,maxHeight:1/0,maxArea:this.maxCanvasSize,imageSmoothingEnabled:!0,imageSmoothingQuality:`high`,fillColor:`transparent`},this.canvas),i=function(e){return e.find((function(e){return t=e,!Number.isNaN(parseFloat(t))&&isFinite(t);var t}))},a=Zs({sizeRestrictions:{minWidth:i([r.width,r.minWidth])||0,minHeight:i([r.height,r.minHeight])||0,maxWidth:i([r.width,r.maxWidth])||1/0,maxHeight:i([r.height,r.maxHeight])||1/0},width:this.coordinates.width,height:this.coordinates.height,aspectRatio:{minimum:this.coordinates.width/this.coordinates.height,maximum:this.coordinates.width/this.coordinates.height}});if(r.maxArea&&a.width*a.height>r.maxArea){var o=Math.sqrt(r.maxArea/(a.width*a.height));a={width:Math.round(o*a.width),height:Math.round(o*a.height)}}return function(e,t,n,r,i){e.width=r?r.width:n.width,e.height=r?r.height:n.height;var a=e.getContext(`2d`);a.clearRect(0,0,e.width,e.height),i&&(i.imageSmoothingEnabled&&(a.imageSmoothingEnabled=i.imageSmoothingEnabled),i.imageSmoothingQuality&&(a.imageSmoothingQuality=i.imageSmoothingQuality),i.fillColor&&(a.fillStyle=i.fillColor,a.fillRect(0,0,e.width,e.height),a.save()));var o=n.left<0?-n.left:0,s=n.top<0?-n.top:0;a.drawImage(t,n.left+o,n.top+s,n.width,n.height,o*(e.width/n.width),s*(e.height/n.height),e.width,e.height)}(e,n,this.coordinates,a,r),e}},update:function(){this.$emit(`change`,this.getResult())},applyTransform:function(e){var t=arguments.length>1&&arguments[1]!==void 0&&arguments[1],n=this.visibleArea&&t?Ks(this.sizeRestrictions,this.visibleArea):this.sizeRestrictions,r=this.visibleArea&&t?sc(this.positionRestrictions,this.visibleArea):this.positionRestrictions;return $s({transform:e,coordinates:this.coordinates,imageSize:this.imageSize,sizeRestrictions:n,positionRestrictions:r,aspectRatio:this.getAspectRatio(),visibleArea:this.visibleArea})},resetCoordinates:function(){var e=this;if(this.$refs.image){this.$refs.cropper,this.$refs.image;var t=this.defaultSize;t||=this.stencilSize?ac:ic;var n=this.sizeRestrictions;n.minWidth,n.minHeight,n.maxWidth,n.maxHeight;var r=ls(t)?t({boundaries:this.boundaries,imageSize:this.imageSize,aspectRatio:this.getAspectRatio(),sizeRestrictions:this.sizeRestrictions,stencilSize:this.getStencilSize(),visibleArea:this.visibleArea}):t,i=this.defaultPosition||rc,a=[r,function(t){var n=t.coordinates;return K({},ls(i)?i({coordinates:n,imageSize:e.imageSize,visibleArea:e.visibleArea}):e.defaultPosition)}];this.delayedTransforms&&a.push.apply(a,Qo(Array.isArray(this.delayedTransforms)?this.delayedTransforms:[this.delayedTransforms])),this.coordinates=this.applyTransform(a,!0),this.delayedTransforms=null}},clearImage:function(){var e=this;this.imageLoaded=!1,setTimeout((function(){var t=e.$refs.stretcher;t&&(t.style.height=`auto`,t.style.width=`auto`),e.coordinates=e.defaultCoordinates(),e.boundaries={width:0,height:0}}),this.transitionTime)},enableTransitions:function(){this.transitions&&(this.transitionsActive=!0)},disableTransitions:function(){this.transitionsActive=!1},updateBoundaries:function(){var e=this,t=this.$refs.stretcher,n=this.$refs.cropper;return this.initStretcher({cropper:n,stretcher:t,imageSize:this.imageSize}),this.$nextTick().then((function(){var t={cropper:n,imageSize:e.imageSize};if(ls(e.defaultBoundaries)?e.boundaries=e.defaultBoundaries(t):e.defaultBoundaries===`fit`?e.boundaries=function(e){var t=e.cropper,n=e.imageSize,r=t.clientHeight,i=t.clientWidth,a=r,o=n.width*r/n.height;return o>i&&(o=i,a=n.height*i/n.width),{width:o,height:a}}(t):e.boundaries=function(e){var t=e.cropper;return{width:t.clientWidth,height:t.clientHeight}}(t),!e.boundaries.width||!e.boundaries.height)throw Error(`It's impossible to fit the cropper in the current container`)}))},resetVisibleArea:function(){var e=this;return this.appliedImageTransforms=K(K({},this.defaultImageTransforms),{},{flip:K({},this.defaultImageTransforms.flip)}),this.updateBoundaries().then((function(){e.priority!==`visible-area`&&(e.visibleArea=null,e.resetCoordinates());var t,n,r,i,a,o,s=e.defaultVisibleArea||oc;e.visibleArea=ls(s)?s({imageSize:e.imageSize,boundaries:e.boundaries,coordinates:e.priority===`visible-area`?null:e.coordinates,getAreaRestrictions:e.getAreaRestrictions,stencilSize:e.getStencilSize()}):e.defaultVisibleArea,e.visibleArea=(t={visibleArea:e.visibleArea,boundaries:e.boundaries,getAreaRestrictions:e.getAreaRestrictions},n=t.visibleArea,r=t.boundaries,i=t.getAreaRestrictions,a=J({},n),o=Q(r),a.width/a.height!==o&&(a.height=a.width/o),$(a,i({visibleArea:a,type:`move`}))),e.priority===`visible-area`?e.resetCoordinates():e.coordinates=e.fitCoordinates({visibleArea:e.visibleArea,coordinates:e.coordinates,aspectRatio:e.getAspectRatio(),positionRestrictions:e.positionRestrictions,sizeRestrictions:e.sizeRestrictions}),e.runAutoZoom(`resetVisibleArea`)})).catch((function(){e.visibleArea=null}))},updateVisibleArea:function(){var e=this;return this.updateBoundaries().then((function(){e.visibleArea=e.fitVisibleArea({imageSize:e.imageSize,boundaries:e.boundaries,visibleArea:e.visibleArea,coordinates:e.coordinates,getAreaRestrictions:e.getAreaRestrictions}),e.coordinates=e.fitCoordinates({visibleArea:e.visibleArea,coordinates:e.coordinates,aspectRatio:e.getAspectRatio(),positionRestrictions:e.positionRestrictions,sizeRestrictions:e.sizeRestrictions}),e.runAutoZoom(`updateVisibleArea`)})).catch((function(){e.visibleArea=null}))},onChange:function(){(!(arguments.length>0&&arguments[0]!==void 0)||arguments[0])&&this.debounce?this.debouncedUpdate():this.update()},onChangeImage:function(){var e,t=this;if(this.imageLoaded=!1,this.delayedTransforms=null,this.src){if(function(e){if(cs(e))return!1;var t=window.location,n=/(\w+:)?(?:\/\/)([\w.-]+)?(?::(\d+))?\/?/.exec(e)||[],r={protocol:n[1]||``,host:n[2]||``,port:n[3]||``},i=function(e){return e.port||((e.protocol||t.protocol)===`http`?80:433)};return!(!r.protocol&&!r.host&&!r.port||r.protocol&&r.protocol==t.protocol&&r.host&&r.host==t.host&&r.host&&i(r)==i(t))}(this.src)){var n=Y(this.crossOrigin)?this.canvas:this.crossOrigin;!0===n&&(n=`anonymous`),this.imageAttributes.crossOrigin=n||null}if(this.checkOrientation){var r=(e=this.src,new Promise((function(t){Ec(e).then((function(n){var r=Oc(n);t(n?{source:e,arrayBuffer:n,orientation:r}:{source:e,arrayBuffer:null,orientation:null})})).catch((function(n){console.warn(n),t({source:e,arrayBuffer:null,orientation:null})}))})));setTimeout((function(){r.then(t.onParseImage)}),this.transitionTime)}else setTimeout((function(){t.onParseImage({source:t.src})}),this.transitionTime)}else this.clearImage()},onFailLoadImage:function(){this.imageAttributes.src&&(this.clearImage(),this.$emit(`error`))},onSuccessLoadImage:function(){var e=this,t=this.$refs.image;t&&!this.imageLoaded&&(this.imageAttributes.height=t.naturalHeight,this.imageAttributes.width=t.naturalWidth,this.imageLoaded=!0,this.resetVisibleArea().then((function(){e.$emit(`ready`),e.onChange(!1)})))},onParseImage:function(e){var t=this,n=e.source,r=e.arrayBuffer,i=e.orientation;this.imageAttributes.revoke&&this.imageAttributes.src&&URL.revokeObjectURL(this.imageAttributes.src),this.imageAttributes.revoke=!1,r&&i&&i>1?ss(n)||!cs(n)?(this.imageAttributes.src=URL.createObjectURL(new Blob([r])),this.imageAttributes.revoke=!0):this.imageAttributes.src=function(e){for(var t=[],n=new Uint8Array(e);n.length>0;){var r=n.subarray(0,8192);t.push(String.fromCharCode.apply(null,Array.from?Array.from(r):r.slice())),n=n.subarray(8192)}return`data:image/jpeg;base64,`+btoa(t.join(``))}(r):this.imageAttributes.src=n,ls(this.defaultTransforms)?this.appliedImageTransforms=Tc(this.defaultTransforms()):us(this.defaultTransforms)?this.appliedImageTransforms=Tc(this.defaultTransforms):this.appliedImageTransforms=function(e){var t=Tc({});if(e)switch(e){case 2:t.flip.horizontal=!0;break;case 3:t.rotate=-180;break;case 4:t.flip.vertical=!0;break;case 5:t.rotate=90,t.flip.vertical=!0;break;case 6:t.rotate=90;break;case 7:t.rotate=90,t.flip.horizontal=!0;break;case 8:t.rotate=-90}return t}(i),this.defaultImageTransforms=K(K({},this.appliedImageTransforms),{},{flip:K({},this.appliedImageTransforms.flip)}),this.$nextTick((function(){var e=t.$refs.image;e&&e.complete&&(function(e){return!!e.naturalWidth}(e)?t.onSuccessLoadImage():t.onFailLoadImage())}))},onResizeEnd:function(){this.runAutoZoom(`resize`,{transitions:!0})},onMoveEnd:function(){this.runAutoZoom(`move`,{transitions:!0})},onMove:function(e){var t=this;this.transitionsOptions.enabled||this.awaitRender((function(){t.coordinates=t.moveAlgorithm(K(K({},t.getPublicProperties()),{},{positionRestrictions:sc(t.positionRestrictions,t.visibleArea),coordinates:t.coordinates,event:t.normalizeEvent(e)})),t.onChange()}))},onResize:function(e){var t=this;this.transitionsOptions.enabled||this.stencilSize&&!this.autoZoom||this.awaitRender((function(){var n=t.sizeRestrictions,r=Math.min(t.coordinates.width,t.coordinates.height,20*t.coefficient);t.coordinates=t.resizeAlgorithm(K(K({},t.getPublicProperties()),{},{positionRestrictions:sc(t.positionRestrictions,t.visibleArea),sizeRestrictions:{maxWidth:Math.min(n.maxWidth,t.visibleArea.width),maxHeight:Math.min(n.maxHeight,t.visibleArea.height),minWidth:Math.max(n.minWidth,r),minHeight:Math.max(n.minHeight,r)},event:t.normalizeEvent(e)})),t.onChange(),t.ticking=!1}))},onManipulateImage:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.transitionsOptions.enabled){var n=t.transitions,r=n!==void 0&&n,i=t.normalize,a=i===void 0||i;r&&this.enableTransitions();var o=cc(K(K({},this.getPublicProperties()),{},{event:a?this.normalizeEvent(e):e,getAreaRestrictions:this.getAreaRestrictions,imageRestriction:this.imageRestriction,adjustStencil:!this.stencilSize&&this.settings.resizeImage.adjustStencil})),s=o.visibleArea,c=o.coordinates;this.visibleArea=s,this.coordinates=c,this.runAutoZoom(`manipulateImage`),this.onChange(),r&&this.debouncedDisableTransitions()}},onPropsChange:function(){this.coordinates=this.applyTransform(this.coordinates,!0),this.onChange(!1)},getAreaRestrictions:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.visibleArea,n=e.type,r=n===void 0?`move`:n;return this.areaRestrictionsAlgorithm({boundaries:this.boundaries,imageSize:this.imageSize,imageRestriction:this.imageRestriction,visibleArea:t,type:r})},getAspectRatio:function(e){var t,n,r=this.stencilProps,i=r.aspectRatio,a=r.minAspectRatio,o=r.maxAspectRatio;if(this.$refs.stencil&&this.$refs.stencil.aspectRatios){var s=this.$refs.stencil.aspectRatios();t=s.minimum,n=s.maximum}if(Y(t)&&(t=Y(i)?a:i),Y(n)&&(n=Y(i)?o:i),!e&&(Y(t)||Y(n))){var c=this.getStencilSize(),l=c?Q(c):null;Y(t)&&(t=ps(l)?l:void 0),Y(n)&&(n=ps(l)?l:void 0)}return{minimum:t,maximum:n}},getStencilSize:function(){if(this.stencilSize)return e={currentStencilSize:{width:this.stencilCoordinates.width,height:this.stencilCoordinates.height},stencilSize:this.stencilSize,boundaries:this.boundaries,coefficient:this.coefficient,coordinates:this.coordinates,aspectRatio:this.getAspectRatio(!0)},t=e.boundaries,n=e.stencilSize,r=e.aspectRatio,Bs(Q(i=ls(n)?n({boundaries:t,aspectRatio:r}):n),r)&&(i=Zs({sizeRestrictions:{maxWidth:t.width,maxHeight:t.height,minWidth:0,minHeight:0},width:i.width,height:i.height,aspectRatio:{minimum:r.minimum,maximum:r.maximum}})),(i.width>t.width||i.height>t.height)&&(i=Zs({sizeRestrictions:{maxWidth:t.width,maxHeight:t.height,minWidth:0,minHeight:0},width:i.width,height:i.height,aspectRatio:{minimum:Q(i),maximum:Q(i)}})),i;var e,t,n,r,i},getPublicProperties:function(){return{coefficient:this.coefficient,visibleArea:this.visibleArea,coordinates:this.coordinates,boundaries:this.boundaries,sizeRestrictions:this.sizeRestrictions,positionRestrictions:this.positionRestrictions,aspectRatio:this.getAspectRatio(),imageRestriction:this.imageRestriction}},defaultCoordinates:function(){return K({},As)},flip:function(e,t){var n=(arguments.length>2&&arguments[2]!==void 0?arguments[2]:{}).transitions,r=n===void 0||n;if(!this.transitionsActive){r&&this.enableTransitions();var i=K({},this.imageTransforms.flip),a=uc({flip:{horizontal:e?!i.horizontal:i.horizontal,vertical:t?!i.vertical:i.vertical},previousFlip:i,rotate:this.imageTransforms.rotate,visibleArea:this.visibleArea,coordinates:this.coordinates,imageSize:this.imageSize,positionRestrictions:this.positionRestrictions,sizeRestrictions:this.sizeRestrictions,getAreaRestrictions:this.getAreaRestrictions,aspectRatio:this.getAspectRatio()}),o=a.visibleArea,s=a.coordinates;e&&(this.appliedImageTransforms.flip.horizontal=!this.appliedImageTransforms.flip.horizontal),t&&(this.appliedImageTransforms.flip.vertical=!this.appliedImageTransforms.flip.vertical),this.visibleArea=o,this.coordinates=s,this.onChange(),r&&this.debouncedDisableTransitions()}},rotate:function(e){var t=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}).transitions,n=t===void 0||t;if(!this.transitionsActive){n&&this.enableTransitions();var r=K({},this.imageSize);this.appliedImageTransforms.rotate+=e;var i=lc({visibleArea:this.visibleArea,coordinates:this.coordinates,previousImageSize:r,imageSize:this.imageSize,angle:e,positionRestrictions:this.positionRestrictions,sizeRestrictions:this.sizeRestrictions,getAreaRestrictions:this.getAreaRestrictions,aspectRatio:this.getAspectRatio()}),a=i.visibleArea,o=i.coordinates,s=this.processAutoZoom(`rotateImage`,a,o);a=s.visibleArea,o=s.coordinates,this.visibleArea=a,this.coordinates=o,this.onChange(),n&&this.debouncedDisableTransitions()}}},emits:[`change`,`error`,`ready`]},Wc={key:0,ref:`canvas`,style:{display:`none`}},Gc={key:1,ref:`sourceCanvas`,style:{display:`none`}};Uc.render=function(e,t,r,a,o,s){return L(),A(`div`,{ref:`cropper`,class:s.classes.cropper},[u(`div`,{ref:`stretcher`,class:s.classes.stretcher},null,2),u(`div`,{class:s.classes.boundaries,style:s.boundariesStyle},[(L(),A(I(r.backgroundWrapperComponent),{class:s.classes.cropperWrapper,"wheel-resize":s.settings.resizeImage.wheel,"touch-resize":s.settings.resizeImage.touch,"touch-move":s.settings.moveImage.touch,"mouse-move":s.settings.moveImage.mouse,onMove:s.onManipulateImage,onResize:s.onManipulateImage},{default:M((function(){return[u(`div`,{class:s.classes.background,style:s.boundariesStyle},null,6),u(`div`,{class:s.classes.imageWrapper},[u(`img`,{ref:`image`,crossorigin:o.imageAttributes.crossOrigin,src:o.imageAttributes.src,class:s.classes.image,style:s.imageStyle,onMousedown:t[1]||=n((function(){}),[`prevent`])},null,46,[`crossorigin`,`src`])],2),u(`div`,{class:s.classes.foreground,style:s.boundariesStyle},null,6),O((L(),A(I(r.stencilComponent),i({ref:`stencil`,image:s.image,coordinates:o.coordinates,"stencil-coordinates":s.stencilCoordinates,transitions:s.transitionsOptions},r.stencilProps,{onResize:s.onResize,onResizeEnd:s.onResizeEnd,onMove:s.onMove,onMoveEnd:s.onMoveEnd}),null,16,[`image`,`coordinates`,`stencil-coordinates`,`transitions`,`onResize`,`onResizeEnd`,`onMove`,`onMoveEnd`])),[[ie,o.imageLoaded]]),r.canvas?(L(),A(`canvas`,Wc,null,512)):d(``,!0),r.canvas?(L(),A(`canvas`,Gc,null,512)):d(``,!0)]})),_:1},8,[`class`,`wheel-resize`,`touch-resize`,`touch-move`,`mouse-move`,`onMove`,`onResize`]))],6)],2)};var Kc=e=>e===`favicon`?`brand`:`balanced`,qc=(e,t,n)=>e===`favicon`?{light:n.color,dark:n.color}:t===`mono`?{light:n.light,dark:n.dark}:t===`brand`?{light:n.color,dark:n.color}:{light:n.color,dark:n.adaptiveDark||n.dark},Jc=z({name:`BrandAssetStudio`,components:{Cropper:Uc,EditIcon:Tt,ElAlert:Ie,ElButton:W,ElButtonGroup:rr,ElColorPicker:aa,ElDialog:U,ElIcon:B,ElRadioButton:qe,ElRadioGroup:Je,ElSlider:ot,ElSwitch:st,ElTag:Pn,ElTooltip:Me,ImageIcon:yt,RedoIcon:kt,RefreshIcon:Dt,SortIcon:ct,UndoIcon:Ot,UploadIcon:Pt,ZoomInIcon:ma,ZoomOutIcon:ha},props:{kind:{type:String,default:`logo`},title:{type:String,required:!0},tip:{type:String,required:!0},width:{type:Number,required:!0},height:{type:Number,required:!0}},emits:[`confirm`],data(){return{rectangleStencil:Rc,editing:!1,step:`crop`,imageSrc:``,sourceBlob:null,analysis:null,assets:null,removeBackground:!1,backgroundColor:`#ffffff`,tolerance:42,appearance:Kc(this.kind),analyzing:!1,processing:!1,processedSignature:``}},computed:{aspectRatio(){return this.width/this.height},busy(){return this.analyzing||this.processing},controlsSignature(){return`${this.removeBackground}:${this.backgroundColor.toLowerCase()}:${this.tolerance}`},controlsDirty(){return!!this.assets&&this.processedSignature!==this.controlsSignature},selectedUrls(){return this.assets?qc(this.kind,this.appearance,{color:this.assets.color.url,light:this.assets.light.url,dark:this.assets.dark.url,adaptiveDark:this.assets.adaptive_dark?.url}):null},analysisSummary(){return this.analysis?this.$t(`site.logoStudio.analysisSummary`,{width:this.analysis.width,height:this.analysis.height,confidence:Math.round(this.analysis.background.confidence*100)}):``},defaultSizePercent(){return({imageSize:e})=>{let t=e.width*.9,n=t/this.aspectRatio;if(n<=e.height*.9)return{width:t,height:n};let r=e.height*.9;return{width:r*this.aspectRatio,height:r}}}},methods:{openPicker(){this.$refs.fileInput.click()},onPick(e){let t=e.target,n=t.files?.[0];n&&this.loadFile(n),t.value=``},onDrop(e){let t=e.dataTransfer?.files?.[0];t&&this.loadFile(t)},loadFile(e){if(!e.type.startsWith(`image/`)){H.error(this.$t(`site.imageCropper.invalidType`));return}let t=new FileReader;t.onload=e=>{this.imageSrc=e.target?.result||``},t.readAsDataURL(e)},onZoom(e){this.$refs.cropperRef?.zoom?.(e)},onRotate(e){this.$refs.cropperRef?.rotate?.(e)},onFlip(){this.$refs.cropperRef?.flip?.(!0,!1)},async croppedBlob(){let e=this.$refs.cropperRef?.getResult?.();if(!e?.canvas)throw Error(this.$t(`site.imageCropper.noImage`));let t=document.createElement(`canvas`),n=Math.max(3,Math.ceil(512/Math.max(this.width,this.height)));t.width=this.width*n,t.height=this.height*n;let r=t.getContext(`2d`);if(!r)throw Error(this.$t(`site.imageCropper.canvasError`));return r.drawImage(e.canvas,0,0,t.width,t.height),await new Promise((e,n)=>{t.toBlob(t=>t?e(t):n(Error(this.$t(`site.imageCropper.canvasError`))),`image/png`)})},async analyzeAndProcess(){this.analyzing=!0;try{this.sourceBlob=await this.croppedBlob();let e=new FormData;e.append(`file`,this.sourceBlob,`${this.kind}.png`);let{data:t}=await Bn.post(`/logo-assets/analyze/`,e,{headers:{"Content-Type":`multipart/form-data`},timeout:6e4});this.analysis=t.analysis,this.removeBackground=t.analysis.background.removable,this.backgroundColor=t.analysis.background.color||`#ffffff`,this.appearance=Kc(this.kind),await this.processCurrent()&&(this.step=`preview`)}catch(e){this.showError(e)}finally{this.analyzing=!1}},async processCurrent(){if(!this.sourceBlob)return!1;this.processing=!0;try{let e=new FormData;e.append(`file`,this.sourceBlob,`${this.kind}.png`),e.append(`remove_background`,String(this.removeBackground)),e.append(`background_color`,this.backgroundColor),e.append(`tolerance`,String(this.tolerance));let{data:t}=await Bn.post(`/logo-assets/process/`,e,{headers:{"Content-Type":`multipart/form-data`},timeout:6e4});return this.assets=t.assets,this.processedSignature=this.controlsSignature,!0}catch(e){return this.showError(e),!1}finally{this.processing=!1}},confirm(){!this.assets||!this.selectedUrls||this.controlsDirty||(this.$emit(`confirm`,{color:this.assets.color.url,light:this.selectedUrls.light,dark:this.selectedUrls.dark}),this.editing=!1)},showError(e){let t=e?.response;H.error(t?.data?.error||t?.data?.detail||e?.message||this.$t(`site.imageCropper.uploadFailed`))},reset(){this.step=`crop`,this.imageSrc=``,this.sourceBlob=null,this.analysis=null,this.assets=null,this.removeBackground=!1,this.backgroundColor=`#ffffff`,this.tolerance=42,this.appearance=Kc(this.kind),this.analyzing=!1,this.processing=!1,this.processedSignature=``}}}),Yc=[`aria-label`,`title`],Xc={key:0,class:`cropper-shell`},Zc={key:1,class:`studio`},Qc={class:`analysis-row`},$c={class:`controls`},el={class:`control-row`},tl={key:0,class:`control-grid`},nl={class:`tolerance-control`},rl={class:`theme-previews`},il={class:`theme-preview theme-preview--light`},al=[`src`],ol={class:`theme-preview theme-preview--dark`},sl=[`src`];function cl(t,r,i,a,s,l){let f=T(`edit-icon`),m=T(`el-icon`),h=T(`Cropper`),g=T(`zoom-in-icon`),_=T(`el-button`),v=T(`el-tooltip`),b=T(`zoom-out-icon`),S=T(`undo-icon`),C=T(`redo-icon`),w=T(`sort-icon`),ee=T(`image-icon`),E=T(`el-button-group`),D=T(`upload-icon`),O=T(`el-tag`),k=T(`el-switch`),j=T(`el-color-picker`),te=T(`el-slider`),N=T(`refresh-icon`),P=T(`el-radio-button`),ne=T(`el-radio-group`),re=T(`el-alert`),F=T(`el-dialog`);return L(),p(x,null,[e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[0]||=e=>t.editing=!0,onKeydown:[r[1]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[2]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(m,null,{default:M(()=>[u(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Yc),u(F,{modelValue:t.editing,"onUpdate:modelValue":r[18]||=e=>t.editing=e,title:t.title,width:`min(880px, calc(100vw - 32px))`,"close-on-click-modal":!1,"append-to-body":``,onClosed:t.reset},{footer:M(()=>[u(_,{onClick:r[15]||=e=>t.editing=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),t.step===`preview`?(L(),A(_,{key:0,onClick:r[16]||=e=>t.step=`crop`},{default:M(()=>[o(c(t.$t(`site.logoStudio.back`)),1)]),_:1})):d(``,!0),u(_,{type:`primary`,loading:t.busy,disabled:t.step===`crop`?!t.imageSrc:!t.assets||t.controlsDirty,onClick:r[17]||=e=>t.step===`crop`?t.analyzeAndProcess():t.confirm()},{default:M(()=>[o(c(t.step===`crop`?t.$t(`site.logoStudio.analyze`):t.$t(`site.logoStudio.apply`)),1)]),_:1},8,[`loading`,`disabled`])]),default:M(()=>[t.step===`crop`?(L(),p(x,{key:0},[t.imageSrc?(L(),p(`div`,Xc,[u(h,{ref:`cropperRef`,class:`cropper`,src:t.imageSrc,"stencil-props":{aspectRatio:t.aspectRatio},"stencil-component":t.rectangleStencil,"default-size":t.defaultSizePercent,"resize-image":{adjustStencil:!1},"image-restriction":`fit-area`},null,8,[`src`,`stencil-props`,`stencil-component`,`default-size`]),u(E,{class:`toolbar`},{default:M(()=>[u(v,{content:t.$t(`site.imageCropper.zoomIn`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.zoomIn`),onClick:r[3]||=e=>t.onZoom(1.25)},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.zoomOut`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.zoomOut`),onClick:r[4]||=e=>t.onZoom(.8)},{default:M(()=>[u(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.rotateLeft`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.rotateLeft`),onClick:r[5]||=e=>t.onRotate(-90)},{default:M(()=>[u(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.rotateRight`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.rotateRight`),onClick:r[6]||=e=>t.onRotate(90)},{default:M(()=>[u(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.flipHorizontal`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.flipHorizontal`),onClick:t.onFlip},{default:M(()=>[u(w,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:1},8,[`content`]),u(v,{content:t.$t(`site.imageCropper.replace`)},{default:M(()=>[u(_,{"aria-label":t.$t(`site.imageCropper.replace`),onClick:t.openPicker},{default:M(()=>[u(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:1},8,[`content`])]),_:1})])):(L(),p(`div`,{key:1,class:`dropzone`,onClick:r[7]||=(...e)=>t.openPicker&&t.openPicker(...e),onDrop:r[8]||=n((...e)=>t.onDrop&&t.onDrop(...e),[`prevent`]),onDragover:r[9]||=n(()=>{},[`prevent`])},[u(D,{class:`dropzone-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),e(`p`,null,c(t.$t(`site.imageCropper.dropHere`)),1),e(`span`,null,c(t.tip),1)],32))],64)):(L(),p(`div`,Zc,[e(`div`,Qc,[e(`div`,null,[e(`strong`,null,c(t.$t(`site.logoStudio.analysisReady`)),1),e(`span`,null,c(t.analysisSummary),1)]),u(O,{type:t.analysis?.background.removable?`success`:`info`,effect:`light`},{default:M(()=>[o(c(t.analysis?.background.removable?t.$t(`site.logoStudio.backgroundDetected`):t.$t(`site.logoStudio.transparentOrComplex`)),1)]),_:1},8,[`type`])]),e(`div`,$c,[e(`div`,el,[e(`span`,null,c(t.$t(`site.logoStudio.removeBackground`)),1),u(k,{modelValue:t.removeBackground,"onUpdate:modelValue":r[10]||=e=>t.removeBackground=e},null,8,[`modelValue`])]),t.removeBackground?(L(),p(`div`,tl,[e(`label`,null,[e(`span`,null,c(t.$t(`site.logoStudio.backgroundColor`)),1),u(j,{modelValue:t.backgroundColor,"onUpdate:modelValue":r[11]||=e=>t.backgroundColor=e,predefine:[`#ffffff`,`#000000`]},null,8,[`modelValue`])]),e(`label`,nl,[e(`span`,null,c(t.$t(`site.logoStudio.edgeTolerance`)),1),u(te,{modelValue:t.tolerance,"onUpdate:modelValue":r[12]||=e=>t.tolerance=e,min:20,max:96,step:1},null,8,[`modelValue`])]),u(_,{loading:t.processing,disabled:!t.controlsDirty,onClick:t.processCurrent},{default:M(()=>[u(N,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`site.logoStudio.refreshPreview`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])):d(``,!0)]),t.kind===`logo`?(L(),A(ne,{key:0,modelValue:t.appearance,"onUpdate:modelValue":r[13]||=e=>t.appearance=e,class:`appearance-picker`},{default:M(()=>[u(P,{value:`brand`},{default:M(()=>[o(c(t.$t(`site.logoStudio.modeBrand`)),1)]),_:1}),u(P,{value:`balanced`},{default:M(()=>[o(c(t.$t(`site.logoStudio.modeBalanced`)),1)]),_:1}),u(P,{value:`mono`},{default:M(()=>[o(c(t.$t(`site.logoStudio.modeMono`)),1)]),_:1})]),_:1},8,[`modelValue`])):d(``,!0),e(`div`,rl,[e(`div`,il,[e(`span`,null,c(t.$t(`site.logoStudio.lightTheme`)),1),t.selectedUrls?(L(),p(`img`,{key:0,src:t.selectedUrls.light,alt:``},null,8,al)):d(``,!0)]),e(`div`,ol,[e(`span`,null,c(t.$t(`site.logoStudio.darkTheme`)),1),t.selectedUrls?(L(),p(`img`,{key:0,src:t.selectedUrls.dark,alt:``},null,8,sl)):d(``,!0)])]),t.controlsDirty?(L(),A(re,{key:1,type:`warning`,closable:!1,"show-icon":``},{default:M(()=>[o(c(t.$t(`site.logoStudio.previewOutdated`)),1)]),_:1})):d(``,!0)])),e(`input`,{ref:`fileInput`,type:`file`,accept:`image/jpeg,image/png,image/webp`,hidden:``,onChange:r[14]||=(...e)=>t.onPick&&t.onPick(...e)},null,544)]),_:1},8,[`modelValue`,`title`,`onClosed`])],64)}var ll=G(Jc,[[`render`,cl],[`__scopeId`,`data-v-997a8592`]]),ul=new Map,dl=new Map,fl=new Set;function pl(e){e?.id&&(ul.set(e.id,e),fl.delete(e.id))}async function ml(e){return e?ul.has(e)?ul.get(e):fl.has(e)?null:hl(e):null}async function hl(e){if(ul.has(e))return ul.get(e);if(fl.has(e))return null;let t=dl.get(e);return t||(t=Di.resolve(e).then(t=>{let n=(t.data||[]).find(t=>t.id===e)||null;return n?ul.set(e,n):fl.add(e),n}).catch(()=>(fl.add(e),null)).finally(()=>{dl.delete(e)}),dl.set(e,t)),t}var gl=z({name:`UserChip`,components:{ElAvatar:Ge,ElIcon:B,UserIcon:Ft,WarningFilled:Nt},props:{userId:{type:String,default:``}},data(){return{user:null,state:`loading`}},computed:{shortId(){let e=this.userId||``;return e.length>8?e.slice(0,8):e}},watch:{userId:{immediate:!0,handler(e){this.load(e)}}},methods:{async load(e){if(!e){this.user=null,this.state=`ready`;return}if(ul.has(e)){this.user=ul.get(e),this.state=`ready`;return}if(fl.has(e)){this.user=null,this.state=`missing`;return}this.state=`loading`;let t=await hl(e);this.userId===e&&(t?(this.user=t,this.state=`ready`):(this.user=null,this.state=`missing`))}}}),_l={key:0,class:`user-chip__placeholder`},vl=[`title`],yl=[`title`],bl=[`title`],xl={key:2,class:`user-chip__contact`};function Sl(t,n,r,i,o,s){let l=T(`warning-filled`),f=T(`el-icon`),m=T(`el-avatar`),h=T(`user-icon`);return L(),p(`span`,{class:a([`user-chip`,{"is-empty":!t.userId,"is-missing":!!t.userId&&t.state===`missing`}])},[t.userId?t.state===`loading`?(L(),p(`span`,{key:1,class:`user-chip__id`,title:t.userId},c(t.shortId),9,vl)):t.state===`missing`?(L(),p(x,{key:2},[u(f,{class:`user-chip__icon`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`span`,{class:`user-chip__id`,title:t.userId},c(t.shortId),9,yl)],64)):(L(),p(x,{key:3},[t.user?.avatar?(L(),A(m,{key:0,src:t.user.avatar,size:22,class:`user-chip__avatar`},null,8,[`src`])):(L(),A(m,{key:1,size:22,class:`user-chip__avatar`},{default:M(()=>[u(f,null,{default:M(()=>[u(h,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})]),_:1})),e(`span`,{class:`user-chip__name`,title:t.userId},c(t.user?.display_name||t.shortId),9,bl),t.user?.contact?(L(),p(`span`,xl,c(t.user.contact),1)):d(``,!0)],64)):(L(),p(`span`,_l,`—`))],2)}var Cl=G(gl,[[`render`,Sl],[`__scopeId`,`data-v-6efaf549`]]),wl={__empty:!0,value:``,id:``},Tl=z({name:`UserPicker`,components:{ElAutocomplete:zi,ElAvatar:Ge,ElIcon:B,SearchIcon:At,UserIcon:Ft,WarningFilled:Nt},props:{placeholder:{type:String,default:``},excludeIds:{type:Array,default:()=>[]}},emits:[`select`],data(){return{input:``}},computed:{placeholderText(){return this.placeholder||this.$t(`site.message.editUserHint`)}},methods:{shortIdOf(e){let t=e.id||``;return t.length>8?t.slice(0,8):t},async onFetch(e){let t=(e||``).trim();if(!t)return[];try{let e=((await Di.resolve(t)).data||[]).map(e=>{pl(e);let t=this.excludeIds.includes(e.id);return{...e,value:e.display_name||e.nickname||this.shortIdOf(e),__excluded:t}});return e.length===0?[wl]:e}catch{return[wl]}},onSelect(e){if(e&&(e.__empty||e.__excluded)){this.input=``;return}let t=e;pl(t),this.$emit(`select`,t),this.input=``},onClear(){this.input=``},onInput(){},focus(){let e=this.$refs.auto?.focus;typeof e==`function`&&e.call(this.$refs.auto)}}}),El={class:`user-picker__empty-text`},Dl={class:`user-picker__option-text`},Ol={class:`user-picker__option-name`},kl={class:`user-picker__option-contact`},Al={key:2,class:`user-picker__excluded-tag`};function jl(t,n,r,i,o,s){let l=T(`search-icon`),f=T(`el-icon`),m=T(`warning-filled`),h=T(`el-avatar`),g=T(`user-icon`),_=T(`el-autocomplete`);return L(),A(_,{ref:`auto`,modelValue:t.input,"onUpdate:modelValue":n[0]||=e=>t.input=e,"fetch-suggestions":t.onFetch,placeholder:t.placeholderText,debounce:350,"trigger-on-focus":!1,"hide-loading":!1,"value-key":`value`,"popper-class":`user-picker__popper`,clearable:``,onSelect:t.onSelect,onClear:t.onClear,onInput:t.onInput},{prefix:M(()=>[u(f,null,{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})]),default:M(({item:n})=>[e(`div`,{class:a([`user-picker__option`,{"user-picker__option--empty":n.__empty,"user-picker__option--excluded":n.__excluded}])},[n.__empty?(L(),p(x,{key:0},[u(f,{class:`user-picker__empty-icon`},{default:M(()=>[u(m,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`span`,El,c(t.$t(`site.message.userNotFound`)),1)],64)):(L(),p(x,{key:1},[n.avatar?(L(),A(h,{key:0,src:n.avatar,size:32,class:`user-picker__avatar`},null,8,[`src`])):(L(),A(h,{key:1,size:32,class:`user-picker__avatar`},{default:M(()=>[u(f,null,{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})]),_:1})),e(`div`,Dl,[e(`div`,Ol,c(n.display_name),1),e(`div`,kl,c(n.contact||t.shortIdOf(n)),1)]),n.__excluded?(L(),p(`span`,Al,c(t.$t(`site.message.userAlreadyAdded`)),1)):d(``,!0)],64))],2)]),_:1},8,[`modelValue`,`fetch-suggestions`,`placeholder`,`onSelect`,`onClear`,`onInput`])}var Ml=G(Tl,[[`render`,jl],[`__scopeId`,`data-v-d570686b`]]),Nl=z({name:`EditUsers`,components:{ElDialog:U,ElButton:W,ElIcon:B,ElDivider:Xe,Edit:Tt,Close:Br,WarningFilled:Nt,UserChip:Cl,UserPicker:Ml},props:{modelValue:{type:Array,default:()=>[]},title:{type:String,required:!0},min:{type:Number,default:0},minErrorMessage:{type:String,default:``},removeLabel:{type:String,default:``}},emits:[`confirm`,`cancel`],data(){return{editing:!1,working:[],errorMessage:``}},computed:{canConfirm(){return this.working.length>=this.min}},methods:{onOpen(){this.editing=!0,this.working=[...this.modelValue],this.errorMessage=``},onAdd(e){e?.id&&(this.working.includes(e.id)||(this.working=[...this.working,e.id],this.errorMessage=``))},onRemove(e){if(this.working.length<=this.min){this.errorMessage=this.minErrorMessage;return}this.working=this.working.filter(t=>t!==e)},onCancel(){this.editing=!1,this.$emit(`cancel`)},onConfirm(){if(!this.canConfirm){this.errorMessage=this.minErrorMessage;return}this.$emit(`confirm`,this.working),this.editing=!1}}}),Pl={class:`edit-body`},Fl={key:0,class:`empty`},Il={class:`empty-text`},Ll={key:1,class:`chip-list`},Rl={class:`tip`},zl={key:2,class:`error`},Bl={class:`dialog-footer`},Vl=[`aria-label`,`title`];function Hl(t,r,i,a,s,l){let f=T(`user-chip`),m=T(`close`),h=T(`el-icon`),g=T(`el-divider`),_=T(`user-picker`),v=T(`warning-filled`),b=T(`el-button`),S=T(`el-dialog`),C=T(`edit`);return L(),p(x,null,[u(S,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,width:`520px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,Bl,[u(b,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(b,{round:``,type:`primary`,disabled:!t.canConfirm,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])])]),default:M(()=>[e(`div`,Pl,[t.working.length===0?(L(),p(`div`,Fl,[e(`span`,Il,c(t.$t(`site.message.editUsersEmpty`)),1)])):(L(),p(`ul`,Ll,[(L(!0),p(x,null,F(t.working,e=>(L(),p(`li`,{key:e,class:`chip-item`},[u(f,{"user-id":e},null,8,[`user-id`]),u(h,{class:`chip-remove`,role:`button`,tabindex:`0`,"aria-label":t.removeLabel||t.$t(`common.button.remove`),title:t.removeLabel||t.$t(`common.button.remove`),onClick:n=>t.onRemove(e),onKeydown:[y(n(n=>t.onRemove(e),[`prevent`]),[`enter`]),y(n(n=>t.onRemove(e),[`prevent`]),[`space`])]},{default:M(()=>[u(m,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`,`onClick`,`onKeydown`])]))),128))])),u(g,{class:`divider`},{default:M(()=>[o(c(t.$t(`site.title.addUser`)),1)]),_:1}),u(_,{"exclude-ids":t.working,onSelect:t.onAdd},null,8,[`exclude-ids`,`onSelect`]),e(`p`,Rl,c(t.$t(`site.message.editUserHint`)),1),t.errorMessage?(L(),p(`p`,zl,[u(h,{class:`error-icon`},{default:M(()=>[u(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),o(` `+c(t.errorMessage),1)])):d(``,!0)])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[2]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[3]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(h,{class:`icon`},{default:M(()=>[u(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Vl)],64)}var Ul=G(Nl,[[`render`,Hl],[`__scopeId`,`data-v-63627034`]]),Wl=z({name:`EditLocales`,components:{Edit:Tt,ElButton:W,ElDialog:U,ElIcon:B,ElOption:we,ElSelect:Ce},props:{modelValue:{type:Array,required:!0},title:{type:String,required:!0}},emits:[`confirm`],data(){return{editing:!1,working:[],options:kn}},methods:{onOpen(){this.working=[...this.modelValue],this.editing=!0},onConfirm(){this.working.length!==0&&(this.$emit(`confirm`,this.working),this.editing=!1)}}}),Gl={class:`edit-body locale-edit-body`},Kl={key:0,class:`error`},ql={class:`dialog-footer`},Jl=[`aria-label`,`title`];function Yl(t,r,i,a,s,l){let f=T(`el-option`),m=T(`el-select`),h=T(`el-button`),g=T(`el-dialog`),_=T(`edit`),v=T(`el-icon`);return L(),p(x,null,[u(g,{modelValue:t.editing,"onUpdate:modelValue":r[2]||=e=>t.editing=e,title:t.title,width:`min(520px, 94vw)`,class:`edit-dialog`,"append-to-body":``},{footer:M(()=>[e(`span`,ql,[u(h,{round:``,onClick:r[1]||=e=>t.editing=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(h,{round:``,type:`primary`,disabled:t.working.length===0,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])])]),default:M(()=>[e(`div`,Gl,[u(m,{modelValue:t.working,"onUpdate:modelValue":r[0]||=e=>t.working=e,multiple:``,filterable:``,"collapse-tags":``,"collapse-tags-tooltip":``,"max-collapse-tags":4,placeholder:t.$t(`site.placeholder.supportedLocales`),class:`locale-select`},{default:M(()=>[(L(!0),p(x,null,F(t.options,e=>(L(),A(f,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`]),t.working.length===0?(L(),p(`p`,Kl,c(t.$t(`site.message.atLeastOneLocale`)),1)):d(``,!0)])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[3]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[4]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[5]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(v,{class:`icon`},{default:M(()=>[u(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Jl)],64)}var Xl=G(Wl,[[`render`,Yl],[`__scopeId`,`data-v-116b42a2`]]),Zl=z({name:`ImageCropper`,components:{ElDialog:U,ElButton:W,ElButtonGroup:rr,ElIcon:B,ElTooltip:Me,ZoomIn:ma,ZoomOut:ha,RefreshLeft:Ot,RefreshRight:kt,ImageIcon:yt,Upload:Pt,Sort:ct,Cropper:Uc},props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:``},shape:{type:String,default:`rectangle`},aspectRatio:{type:Number,default:1},outputWidth:{type:Number,default:512},accept:{type:String,default:`image/*`},dialogWidth:{type:String,default:`640px`},formatHint:{type:String,default:``}},emits:[`update:modelValue`,`uploaded`],data(){return{imageSrc:``,sourceMime:``,uploading:!1,Upload:Pt}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit(`update:modelValue`,e)}},stencilComponent(){return this.shape===`circle`?Bc:Rc},stencilProps(){return this.shape===`circle`?{aspectRatio:1}:{aspectRatio:this.aspectRatio}},defaultSizePercent(){return({imageSize:e})=>{let t=this.aspectRatio,n=e.width*.9,r=n/t;if(r<=e.height*.9)return{width:n,height:r};let i=e.height*.9;return{width:i*t,height:i}}},resolvedFormatHint(){return this.formatHint||this.$t(`site.imageCropper.formatHint`)}},watch:{modelValue(e){e&&(this.imageSrc=``)}},methods:{openPicker(){this.$refs.fileInput.click()},onPick(e){let t=e.target,n=t.files?.[0];n&&this.loadFile(n),t.value=``},onDrop(e){let t=e.dataTransfer?.files?.[0];t&&this.loadFile(t)},loadFile(e){if(!e.type.startsWith(`image/`)){H.error(this.$t(`site.imageCropper.invalidType`));return}this.sourceMime=e.type;let t=new FileReader;t.onload=e=>{this.imageSrc=e.target?.result||``},t.readAsDataURL(e)},hasAlpha(){let e=this.sourceMime;return e===`image/png`||e===`image/webp`||e===`image/gif`},onZoom(e){this.$refs.cropperRef?.zoom?.(e)},onRotate(e){this.$refs.cropperRef?.rotate?.(e)},onFlip(e,t){this.$refs.cropperRef?.flip?.(e,t)},onClosed(){this.imageSrc=``,this.sourceMime=``,this.uploading=!1},async onConfirm(){let e=this.$refs.cropperRef?.getResult?.()?.canvas;if(!e){H.error(this.$t(`site.imageCropper.noImage`));return}let t=this.outputWidth,n=Math.round(t/this.aspectRatio),r=document.createElement(`canvas`);r.width=t,r.height=n;let i=r.getContext(`2d`);if(!i){H.error(this.$t(`site.imageCropper.canvasError`));return}i.drawImage(e,0,0,t,n);let a=this.hasAlpha(),o=a?`image/png`:`image/jpeg`,s=a?`png`:`jpg`;this.uploading=!0;try{let e=await new Promise((e,t)=>{r.toBlob(n=>n?e(n):t(Error(`toBlob failed`)),o,.92)}),t=`image-${Date.now()}.${s}`,n=new FormData;n.append(`file`,e,t);let{data:i}=await Bn.post(`/files/`,n,{headers:{"Content-Type":`multipart/form-data`},timeout:6e4});this.$emit(`uploaded`,i.file_url),this.visible=!1}catch(e){let t=e;H.error(t?.response?.data?.detail||t?.response?.data?.error||t?.message||this.$t(`site.imageCropper.uploadFailed`))}finally{this.uploading=!1}}}}),Ql={key:0,class:`cropper-shell`},$l={class:`toolbar`},eu={class:`dropzone-text`},tu={class:`dropzone-hint`},nu=[`accept`];function ru(t,r,i,a,s,l){let d=T(`Cropper`),f=T(`zoom-in`),m=T(`el-button`),h=T(`el-tooltip`),g=T(`zoom-out`),_=T(`refresh-left`),v=T(`refresh-right`),y=T(`sort`),b=T(`image-icon`),x=T(`el-button-group`),S=T(`Upload`),C=T(`el-icon`),w=T(`el-dialog`);return L(),A(w,{modelValue:t.visible,"onUpdate:modelValue":r[10]||=e=>t.visible=e,title:t.title,width:t.dialogWidth,"close-on-click-modal":!1,"append-to-body":``,onClosed:t.onClosed},{footer:M(()=>[u(m,{onClick:r[9]||=e=>t.visible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(m,{type:`primary`,loading:t.uploading,disabled:!t.imageSrc,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:M(()=>[t.imageSrc?(L(),p(`div`,Ql,[u(d,{ref:`cropperRef`,class:`cropper`,src:t.imageSrc,"stencil-props":t.stencilProps,"stencil-component":t.stencilComponent,"default-size":t.defaultSizePercent,"resize-image":{adjustStencil:!1},"image-restriction":`fit-area`},null,8,[`src`,`stencil-props`,`stencil-component`,`default-size`]),e(`div`,$l,[u(x,null,{default:M(()=>[u(h,{content:t.$t(`site.imageCropper.zoomIn`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.zoomIn`),title:t.$t(`site.imageCropper.zoomIn`),onClick:r[0]||=e=>t.onZoom(1.25)},{default:M(()=>[u(f,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.zoomOut`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.zoomOut`),title:t.$t(`site.imageCropper.zoomOut`),onClick:r[1]||=e=>t.onZoom(.8)},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.rotateLeft`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.rotateLeft`),title:t.$t(`site.imageCropper.rotateLeft`),onClick:r[2]||=e=>t.onRotate(-90)},{default:M(()=>[u(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.rotateRight`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.rotateRight`),title:t.$t(`site.imageCropper.rotateRight`),onClick:r[3]||=e=>t.onRotate(90)},{default:M(()=>[u(v,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.flipHorizontal`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.flipHorizontal`),title:t.$t(`site.imageCropper.flipHorizontal`),onClick:r[4]||=e=>t.onFlip(!0,!1)},{default:M(()=>[u(y,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`])]),_:1},8,[`content`]),u(h,{content:t.$t(`site.imageCropper.replace`),placement:`top`},{default:M(()=>[u(m,{size:`large`,"aria-label":t.$t(`site.imageCropper.replace`),title:t.$t(`site.imageCropper.replace`),onClick:t.openPicker},{default:M(()=>[u(b,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`title`,`onClick`])]),_:1},8,[`content`])]),_:1})])])):(L(),p(`div`,{key:1,class:`dropzone`,onClick:r[5]||=(...e)=>t.openPicker&&t.openPicker(...e),onDrop:r[6]||=n((...e)=>t.onDrop&&t.onDrop(...e),[`prevent`]),onDragover:r[7]||=n(()=>{},[`prevent`])},[u(C,{class:`dropzone-icon`},{default:M(()=>[u(S,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1}),e(`p`,eu,c(t.$t(`site.imageCropper.dropHere`)),1),e(`p`,tu,c(t.resolvedFormatHint),1)],32)),e(`input`,{ref:`fileInput`,type:`file`,accept:t.accept,hidden:``,onChange:r[8]||=(...e)=>t.onPick&&t.onPick(...e)},null,40,nu)]),_:1},8,[`modelValue`,`title`,`width`,`onClosed`])}var iu=G(Zl,[[`render`,ru],[`__scopeId`,`data-v-92074016`]]),au=z({name:`EditImage`,components:{ElIcon:B,Edit:Tt,ImageCropper:iu},props:{modelValue:{type:String,required:!0},title:{type:String,required:!0},tip:{type:String,required:!0},width:{type:Number,default:200},height:{type:Number,default:200}},emits:[`confirm`,`cancel`],data(){return{editing:!1}},computed:{aspectRatio(){return this.width/this.height},outputWidth(){let e=Math.max(this.width,this.height),t=Math.max(1,Math.ceil(512/e));return this.width*t}},methods:{onUploaded(e){this.$emit(`confirm`,e)}}}),ou=[`aria-label`,`title`];function su(t,r,i,a,o,s){let c=T(`image-cropper`),l=T(`edit`),d=T(`el-icon`);return L(),p(x,null,[u(c,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,"aspect-ratio":t.aspectRatio,"output-width":t.outputWidth,"format-hint":t.tip,shape:`rectangle`,onUploaded:t.onUploaded},null,8,[`modelValue`,`title`,`aspect-ratio`,`output-width`,`format-hint`,`onUploaded`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=e=>t.editing=!0,onKeydown:[r[2]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[3]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(d,{class:`icon`},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,ou)],64)}var cu=G(au,[[`render`,su],[`__scopeId`,`data-v-7646724c`]]),lu={discord:{icon:jr,fontAwesome:!0,scheme:`text`,brand:`Discord`},x:{icon:hr,fontAwesome:!0,scheme:`text`,brand:`X`},twitter:{icon:hr,fontAwesome:!0,scheme:`text`,brand:`X`},wechat:{icon:ki,fontAwesome:!0,scheme:`text`},telegram:{icon:wr,fontAwesome:!0,scheme:`text`,brand:`Telegram`},whatsapp:{icon:kr,fontAwesome:!0,scheme:`text`,brand:`WhatsApp`},facebook:{icon:gi,fontAwesome:!0,scheme:`text`,brand:`Facebook`},instagram:{icon:oi,fontAwesome:!0,scheme:`text`,brand:`Instagram`},youtube:{icon:zn,fontAwesome:!0,scheme:`text`,brand:`YouTube`},tiktok:{icon:bi,fontAwesome:!0,scheme:`text`,brand:`TikTok`},linkedin:{icon:Hr,fontAwesome:!0,scheme:`text`,brand:`LinkedIn`},github:{icon:Nr,fontAwesome:!0,scheme:`text`,brand:`GitHub`},qq:{icon:zr,fontAwesome:!0,scheme:`text`,brand:`QQ`},line:{icon:$r,fontAwesome:!0,scheme:`text`,brand:`LINE`},phone:{icon:fa,scheme:`tel`},email:{icon:pt,scheme:`mailto`},website:{icon:vt,scheme:`text`}},uu={icon:wt,scheme:`text`},du=e=>(e||``).trim().toLowerCase(),fu=e=>lu[du(e)]||uu,pu=e=>fu(e).icon,mu=e=>!!fu(e).fontAwesome,hu=e=>fu(e).brand||``,gu=new Set([`phone`,`email`,`website`,`wechat`]),_u=e=>{let t=du(e);return gu.has(t)?`common.settings.contactType_${t}`:``},vu=[`wechat`,`phone`,`email`,`discord`,`x`,`telegram`,`whatsapp`,`website`],yu=/^[a-z][a-z0-9_-]{0,31}$/,bu=/^https?:\/\/[^\s/?#]+/i,xu=/^[^@\s]+@[^@\s]+\.[^@\s]+$/,Su=/^[+()\-.\s0-9]{3,40}$/,Cu=2048,wu=254,Tu=200,Eu=100,Du=30,Ou=z({name:`EditContacts`,components:{ElDialog:U,ElInput:Ln,ElButton:W,ElIcon:B,ElImage:Ei,ElSelect:Ce,ElOption:we,Edit:Tt,Plus:Et,Delete:Mt,EditImage:cu,FontAwesomeIcon:Pi},props:{modelValue:{type:Array,default:()=>[]},title:{type:String,required:!0}},emits:[`confirm`,`cancel`],data(){return{Plus:Et,Delete:Mt,editing:!1,rows:this.toRows(this.modelValue)}},computed:{typeOptions(){let e=new Set(vu),t=vu.map(e=>({value:e,label:this.typeLabel(e)}));for(let n of this.rows){let r=(n.type||``).trim().toLowerCase();r&&!e.has(r)&&(e.add(r),t.push({value:r,label:this.typeLabel(r)}))}return t}},watch:{modelValue(e){this.editing||(this.rows=this.toRows(e))}},methods:{contactUsesFontAwesome:mu,toRows(e){return(e||[]).map(e=>({type:e.type||``,label:e.label||``,value:e.value||``,url:e.url||``,qr:e.qr||``}))},rowIcon(e){return pu(e)},typeLabel(e){let t=hu(e);if(t)return t;let n=_u(e);return n?this.$t(n):e},valuePlaceholder(e){let t=(e||``).trim().toLowerCase();return t===`phone`?`+86 400-000-0000`:t===`email`?`support@example.com`:this.$t(`common.settings.contactValuePlaceholder`)},onOpen(){this.rows=this.toRows(this.modelValue),this.rows.length===0&&this.addRow(),this.editing=!0},onCancel(){this.editing=!1,this.$emit(`cancel`)},addRow(){this.rows.push({type:``,label:``,value:``,url:``,qr:``})},removeRow(e){this.rows.splice(e,1)},isBlankRow(e){return!e.type.trim()&&!e.label.trim()&&!e.value.trim()&&!e.url.trim()&&!e.qr.trim()},validate(){let e=this.rows.filter(e=>!this.isBlankRow(e));if(e.length>Du)return this.$t(`common.settings.contactTooMany`,{max:Du});let t=e=>!bu.test(e)||e.length>Cu;for(let n of e){let e=n.type.trim().toLowerCase();if(!yu.test(e))return this.$t(`common.settings.contactInvalidType`);let r=n.value.trim(),i=n.url.trim(),a=n.qr.trim();if(!r&&!i&&!a)return this.$t(`common.settings.contactRowNeedsValue`);if(n.label.trim().length>Eu)return this.$t(`common.settings.contactInvalidValue`);if(i&&t(i))return this.$t(`common.settings.contactInvalidUrl`,{field:this.typeLabel(e)});if(a&&t(a))return this.$t(`common.settings.contactInvalidUrl`,{field:this.$t(`common.settings.contactQr`)});if(r){if(e===`phone`&&!Su.test(r))return this.$t(`common.settings.contactInvalidPhone`);if(e===`email`&&(!xu.test(r)||r.length>wu))return this.$t(`common.settings.contactInvalidEmail`);if(e!==`phone`&&e!==`email`&&r.length>Tu)return this.$t(`common.settings.contactInvalidValue`)}}return``},buildContacts(){return this.rows.filter(e=>!this.isBlankRow(e)).map(e=>{let t={type:e.type.trim().toLowerCase()};return e.label.trim()&&(t.label=e.label.trim()),e.value.trim()&&(t.value=e.value.trim()),e.url.trim()&&(t.url=e.url.trim()),e.qr.trim()&&(t.qr=e.qr.trim()),t})},onConfirm(){let e=this.validate();if(e){H.error(e);return}this.$emit(`confirm`,this.buildContacts()),this.editing=!1}}}),ku={class:`hint`},Au={class:`rows`},ju={class:`row-head`},Mu={class:`qr-row`},Nu={class:`qr-label`},Pu={class:`dialog-footer`},Fu=[`aria-label`,`title`];function Iu(t,r,i,a,s,l){let f=T(`font-awesome-icon`),m=T(`el-option`),h=T(`el-select`),g=T(`delete`),_=T(`el-button`),v=T(`el-input`),b=T(`el-image`),S=T(`edit-image`),C=T(`plus`),w=T(`el-dialog`),ee=T(`edit`),E=T(`el-icon`);return L(),p(x,null,[u(w,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,width:`560px`,class:`edit-contacts-dialog`,"append-to-body":``},{footer:M(()=>[e(`span`,Pu,[u(_,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(_,{round:``,type:`primary`,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])])]),default:M(()=>[e(`p`,ku,c(t.$t(`common.settings.contactEditorHint`)),1),e(`div`,Au,[(L(!0),p(x,null,F(t.rows,(n,r)=>(L(),p(`div`,{key:r,class:`contact-row`},[e(`div`,ju,[t.contactUsesFontAwesome(n.type)?(L(),A(f,{key:0,icon:t.rowIcon(n.type),class:`row-icon`},null,8,[`icon`])):(L(),A(I(t.rowIcon(n.type)),{key:1,class:`row-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),u(h,{modelValue:n.type,"onUpdate:modelValue":e=>n.type=e,filterable:``,"allow-create":``,"default-first-option":``,class:`type-select`,placeholder:t.$t(`common.settings.contactType`)},{default:M(()=>[(L(!0),p(x,null,F(t.typeOptions,e=>(L(),A(m,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),u(_,{link:``,type:`danger`,onClick:e=>t.removeRow(r)},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.button.delete`)),1)]),_:1},8,[`onClick`])]),u(v,{modelValue:n.label,"onUpdate:modelValue":e=>n.label=e,class:`row-field`,placeholder:t.$t(`common.settings.contactLabelPlaceholder`)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),u(v,{modelValue:n.value,"onUpdate:modelValue":e=>n.value=e,class:`row-field`,placeholder:t.valuePlaceholder(n.type)},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]),u(v,{modelValue:n.url,"onUpdate:modelValue":e=>n.url=e,class:`row-field`,placeholder:`https://...`},null,8,[`modelValue`,`onUpdate:modelValue`]),e(`div`,Mu,[e(`span`,Nu,c(t.$t(`common.settings.contactQr`)),1),n.qr?(L(),A(b,{key:0,src:n.qr,class:`qr-thumb`,fit:`contain`},null,8,[`src`])):d(``,!0),u(S,{"model-value":n.qr,title:t.$t(`common.settings.contactQr`),tip:t.$t(`common.settings.contactQrTip`),width:200,height:200,onConfirm:e=>n.qr=e},null,8,[`model-value`,`title`,`tip`,`onConfirm`]),n.qr?(L(),A(_,{key:1,link:``,type:`danger`,onClick:e=>n.qr=``},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`onClick`])):d(``,!0)])]))),128))]),u(_,{class:`add-btn`,onClick:t.addRow},{default:M(()=>[u(C,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.settings.contactAdd`)),1)]),_:1},8,[`onClick`])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[2]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[3]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(E,{class:`icon`},{default:M(()=>[u(ee,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Fu)],64)}var Lu=G(Ou,[[`render`,Iu],[`__scopeId`,`data-v-eb19330b`]]),Ru=z({name:`AutoTranslateToggle`,components:{GlobeIcon:vt,ElButton:W,ElTooltip:Me},props:{model:{type:String,required:!0},objectId:{type:String,default:void 0},field:{type:String,required:!0},enabled:{type:Boolean,default:!1},currentValue:{type:String,default:``},disabledReason:{type:String,default:``}},emits:[`update:enabled`,`enabled-success`,`disabled-success`],data(){return{busy:!1}},computed:{isDisabled(){return!this.objectId},tooltipContent(){return this.isDisabled?this.disabledReason||this.$t(`site.autoTranslate.tooltipDisabledNotSaved`):this.enabled?this.$t(`site.autoTranslate.tooltipOn`):this.$t(`site.autoTranslate.tooltipOff`)}},methods:{async onClick(){this.busy||this.isDisabled||!this.objectId||(this.enabled?await this.onDisable():await this.onEnable())},async onEnable(){if(!this.objectId)return;let e=(this.currentValue??``).trim();if(!e){H.warning(this.$t(`site.autoTranslate.empty`));return}try{await xi.confirm(this.$t(`site.autoTranslate.confirmEnable`),this.$t(`site.autoTranslate.tooltipOff`),{type:`info`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.busy=!0;try{let{data:t}=await fr.enable({model:this.model,object_id:this.objectId,field:this.field,content:e});this.$emit(`update:enabled`,!0);let n={source:t.source,fieldValue:t.field_value};this.$emit(`enabled-success`,n)}catch(e){this.handleError(e)}finally{this.busy=!1}},async onDisable(){if(this.objectId){try{await xi.confirm(this.$t(`site.autoTranslate.confirmDisable`),this.$t(`site.autoTranslate.tooltipOn`),{type:`warning`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.busy=!0;try{let{data:e}=await fr.disable({model:this.model,object_id:this.objectId,field:this.field});this.$emit(`update:enabled`,!1);let t={fieldValue:e.field_value};this.$emit(`disabled-success`,t)}catch(e){this.handleError(e)}finally{this.busy=!1}}},handleError(e){let t=e?.response?.data?.detail;H.error(t||this.$t(`site.autoTranslate.error`))}}}),zu={class:`icon-wrap`},Bu={key:0,class:`dot`};function Vu(t,n,r,i,o,s){let c=T(`globe-icon`),l=T(`el-button`),f=T(`el-tooltip`);return L(),A(f,{effect:`dark`,content:t.tooltipContent,placement:`top`},{default:M(()=>[u(l,{class:a([`auto-translate-toggle`,{"is-on":t.enabled,"is-off":!t.enabled}]),loading:t.busy,disabled:t.isDisabled,"aria-label":t.tooltipContent,title:t.tooltipContent,circle:``,size:`small`,type:t.enabled?`primary`:`default`,onClick:t.onClick},{default:M(()=>[e(`span`,zu,[u(c,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),t.enabled?(L(),p(`span`,Bu)):d(``,!0)])]),_:1},8,[`class`,`loading`,`disabled`,`aria-label`,`title`,`type`,`onClick`])]),_:1},8,[`content`])}var Hu=G(Ru,[[`render`,Vu],[`__scopeId`,`data-v-75a2e84a`]]),Uu={info:bt,admin:da,official:vt},Wu=z({name:`SettingSectionNotice`,props:{text:{type:String,default:``},tone:{type:String,default:`info`,validator:e=>[`info`,`admin`,`official`].includes(e)}},computed:{resolvedIcon(){return Uu[this.tone]||bt}}}),Gu={class:`text`};function Ku(t,n,r,i,s,l){return L(),p(`div`,{class:a([`setting-notice`,t.tone])},[(L(),A(I(t.resolvedIcon),{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,Gu,[k(t.$slots,`default`,{},()=>[o(c(t.text),1)],!0)])],2)}var qu=G(Wu,[[`render`,Ku],[`__scopeId`,`data-v-8e3ef39a`]]),Ju=[`#277186`,`#0ea5e9`,`#2563eb`,`#7c3aed`,`#db2777`,`#dc2626`,`#ea580c`,`#16a34a`,`#0d9488`,`#475569`],Yu=z({name:`SiteSetting`,components:{EditText:Jo,BrandAssetStudio:ll,EditUsers:Ul,EditLocales:Xl,EditContacts:Lu,UserChip:Cl,AutoTranslateToggle:Hu,ElButton:W,ElColorPicker:aa,ElImage:Ei,ElOption:we,ElSelect:Ce,ElTag:Pn,FontAwesomeIcon:Pi,SectionNotice:qu},data(){return{primaryColorPresets:Ju}},computed:{site(){return this.$store.getters.site||{}},titleSource(){return this.site?.title_source??this.site?.title??``},autoTranslatedFields(){return this.site?.auto_translated_fields??[]},storedPrimaryColor(){return this.site?.theme?.primary_color},currentPrimaryColor(){return this.storedPrimaryColor||`#277186`},hasCustomPrimaryColor(){let e=this.storedPrimaryColor;return!!e&&e.toLowerCase()!==`#277186`},supportedLocaleValues(){return this.site?.supported_locales?.length?[...this.site.supported_locales]:kn.map(e=>e.value)},supportedLocalesSummary(){if(!this.site?.supported_locales?.length)return this.$t(`site.message.allLocales`);let e=new Set(this.site.supported_locales);return kn.filter(t=>e.has(t.value)).map(e=>e.label).join(`、`)},contacts(){return wi(this.site)},forcedLocaleValue(){return this.site?.forced_locale||``},forcedLocaleOptions(){return Kn(this.site?.supported_locales)},hasContacts(){return or(this.site)}},methods:{contactUsesFontAwesome:mu,contactIconFor(e){return pu(e)},contactSummary(e){if(e.label)return e.label;if(e.value)return e.value;let t=hu(e.type);if(t)return t;let n=_u(e.type);return n?this.$t(n):e.type},onLogoProcessed(e){this.onSave({logo:e.color,logo_light:e.light,logo_dark:e.dark})},onFaviconProcessed(e){this.onSave({favicon:e.color})},onSave(e){let t={...Fn(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})},onSaveContacts(e){let t={...this.site?.branding||{}};Array.isArray(e)&&e.length>0?t.contacts=e:delete t.contacts,this.onSave({branding:t})},onSaveSupportedLocales(e){let t=e.length===kn.length?null:e,n={supported_locales:t},r=this.site?.forced_locale;r&&t&&!t.includes(r)&&(n.forced_locale=null),this.onSave(n)},onSaveForcedLocale(e){this.onSave({forced_locale:e||null})},onTranslationChanged(){this.$store.dispatch(`getSite`)},onPrimaryColorPicked(e){let t=e||void 0;this.persistPrimaryColor(t)},onPrimaryColorReset(){this.persistPrimaryColor(void 0)},persistPrimaryColor(e){Zr(e||null);let t={...this.site?.theme||{},primary_color:e};e||delete t.primary_color,this.onSave({theme:t})}}}),Xu={class:`settings-list`},Zu={class:`settings-item`},Qu={class:`settings-label`},$u={class:`settings-title`},ed={class:`settings-tip`},td={class:`settings-content`},nd={class:`settings-value`},rd={class:`settings-item`},id={class:`settings-label`},ad={class:`settings-title`},od={class:`settings-tip`},sd={class:`settings-content`},cd={class:`settings-value`},ld={class:`settings-actions`},ud={class:`settings-item`},dd={class:`settings-label`},fd={class:`settings-title`},pd={class:`settings-tip`},md={class:`settings-content`},hd={class:`settings-item`},gd={class:`settings-label`},_d={class:`settings-title`},vd={class:`settings-tip`},yd={class:`settings-content`},bd={class:`settings-item`},xd={class:`settings-label`},Sd={class:`settings-title`},Cd={class:`settings-tip`},wd={class:`settings-content primary-color-content`},Td={class:`settings-value primary-color-value`},Ed={class:`settings-item`},Dd={class:`settings-label`},Od={class:`settings-title`},kd={class:`settings-tip`},Ad={class:`settings-content`},jd={class:`settings-value`},Md={class:`settings-item`},Nd={class:`settings-label`},Pd={class:`settings-title`},Fd={class:`settings-tip`},Id={class:`settings-content`},Ld={class:`settings-item`},Rd={class:`settings-label`},zd={class:`settings-title`},Bd={class:`settings-tip`},Vd={class:`settings-content`},Hd={class:`admins-list`},Ud={class:`settings-item`},Wd={class:`settings-label`},Gd={class:`settings-title`},Kd={class:`settings-tip`},qd={class:`settings-content`},Jd={key:0,class:`contacts-summary`},Yd={key:1,class:`settings-value`};function Xd(t,n,r,i,a,s){let l=T(`section-notice`),f=T(`edit-text`),m=T(`auto-translate-toggle`),h=T(`el-image`),g=T(`brand-asset-studio`),_=T(`el-color-picker`),v=T(`el-button`),y=T(`edit-locales`),b=T(`el-option`),S=T(`el-select`),C=T(`user-chip`),w=T(`edit-users`),ee=T(`font-awesome-icon`),E=T(`el-tag`),D=T(`edit-contacts`);return L(),p(`div`,Xu,[u(l,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,Zu,[e(`div`,Qu,[e(`p`,$u,c(t.$t(`site.field.origin`)),1),e(`p`,ed,c(t.$t(`site.message.originTip`)),1)]),e(`div`,td,[e(`span`,nd,c(t.site.origin),1)])]),e(`section`,rd,[e(`div`,id,[e(`p`,ad,c(t.$t(`site.field.title`)),1),e(`p`,od,c(t.$t(`site.message.titleTip`)),1)]),e(`div`,sd,[e(`span`,cd,c(t.titleSource),1),e(`div`,ld,[u(f,{"model-value":t.titleSource,title:t.$t(`site.title.editTitle`),placeholder:t.$t(`site.placeholder.title`),onConfirm:n[0]||=e=>t.onSave({title:e})},null,8,[`model-value`,`title`,`placeholder`]),u(m,{model:`site`,field:`title`,"object-id":t.site.id,enabled:t.autoTranslatedFields.includes(`title`),"current-value":t.titleSource,onEnabledSuccess:t.onTranslationChanged,onDisabledSuccess:t.onTranslationChanged},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])])])]),e(`section`,ud,[e(`div`,dd,[e(`p`,fd,c(t.$t(`site.field.logo`)),1),e(`p`,pd,c(t.$t(`site.message.logoTip`)),1)]),e(`div`,md,[u(h,{src:t.site.logo,class:`settings-media`,fit:`contain`},null,8,[`src`]),u(g,{kind:`logo`,title:t.$t(`site.title.editLogo`),tip:t.$t(`site.message.editLogoTip`),width:240,height:72,onConfirm:t.onLogoProcessed},null,8,[`title`,`tip`,`onConfirm`])])]),e(`section`,hd,[e(`div`,gd,[e(`p`,_d,c(t.$t(`site.field.favicon`)),1),e(`p`,vd,c(t.$t(`site.message.faviconTip`)),1)]),e(`div`,yd,[u(h,{src:t.site.favicon,class:`settings-media favicon`,fit:`contain`},null,8,[`src`]),u(g,{kind:`favicon`,title:t.$t(`site.title.editFavicon`),tip:t.$t(`site.message.editFaviconTip`),width:128,height:128,onConfirm:t.onFaviconProcessed},null,8,[`title`,`tip`,`onConfirm`])])]),e(`section`,bd,[e(`div`,xd,[e(`p`,Sd,c(t.$t(`site.field.primaryColor`)),1),e(`p`,Cd,c(t.$t(`site.message.primaryColorTip`)),1)]),e(`div`,wd,[u(_,{"model-value":t.currentPrimaryColor,"color-format":`hex`,predefine:t.primaryColorPresets,onChange:t.onPrimaryColorPicked},null,8,[`model-value`,`predefine`,`onChange`]),e(`span`,Td,c(t.currentPrimaryColor),1),t.hasCustomPrimaryColor?(L(),A(v,{key:0,link:``,type:`primary`,onClick:t.onPrimaryColorReset},{default:M(()=>[o(c(t.$t(`site.button.resetPrimaryColor`)),1)]),_:1},8,[`onClick`])):d(``,!0)])]),e(`section`,Ed,[e(`div`,Dd,[e(`p`,Od,c(t.$t(`site.field.supportedLocales`)),1),e(`p`,kd,c(t.$t(`site.message.supportedLocalesTip`)),1)]),e(`div`,Ad,[e(`span`,jd,c(t.supportedLocalesSummary),1),u(y,{"model-value":t.supportedLocaleValues,title:t.$t(`site.title.editSupportedLocales`),onConfirm:t.onSaveSupportedLocales},null,8,[`model-value`,`title`,`onConfirm`])])]),e(`section`,Md,[e(`div`,Nd,[e(`p`,Pd,c(t.$t(`site.field.forcedLocale`)),1),e(`p`,Fd,c(t.$t(`site.message.forcedLocaleTip`)),1)]),e(`div`,Id,[u(S,{"model-value":t.forcedLocaleValue,class:`forced-locale-select`,clearable:``,placeholder:t.$t(`site.placeholder.autoDetectLocale`),"onUpdate:modelValue":t.onSaveForcedLocale},{default:M(()=>[(L(!0),p(x,null,F(t.forcedLocaleOptions,e=>(L(),A(b,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])])]),e(`section`,Ld,[e(`div`,Rd,[e(`p`,zd,c(t.$t(`site.field.admins`)),1),e(`p`,Bd,c(t.$t(`site.message.adminsTip`)),1)]),e(`div`,Vd,[e(`div`,Hd,[(L(!0),p(x,null,F(t.site.admins||[],e=>(L(),A(C,{key:e,"user-id":e,class:`admins-chip`},null,8,[`user-id`]))),128))]),u(w,{"model-value":t.site?.admins||[],title:t.$t(`site.title.editAdmins`),min:1,"min-error-message":t.$t(`site.message.atLeastOneAdmin`),onConfirm:n[1]||=e=>t.onSave({admins:e})},null,8,[`model-value`,`title`,`min-error-message`])])]),e(`section`,Ud,[e(`div`,Wd,[e(`p`,Gd,c(t.$t(`site.field.contacts`)),1),e(`p`,Kd,c(t.$t(`site.message.contactsTip`)),1)]),e(`div`,qd,[t.hasContacts?(L(),p(`div`,Jd,[(L(!0),p(x,null,F(t.contacts,(e,n)=>(L(),A(E,{key:n,size:`small`,round:``,class:`contact-chip`},{default:M(()=>[t.contactUsesFontAwesome(e.type)?(L(),A(ee,{key:0,icon:t.contactIconFor(e.type),class:`chip-icon`},null,8,[`icon`])):(L(),A(I(t.contactIconFor(e.type)),{key:1,class:`chip-icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),o(` `+c(t.contactSummary(e)),1)]),_:2},1024))),128))])):(L(),p(`span`,Yd,c(t.$t(`site.message.contactsEmpty`)),1)),u(D,{"model-value":t.contacts,title:t.$t(`site.title.editContacts`),onConfirm:t.onSaveContacts},null,8,[`model-value`,`title`,`onConfirm`])])])])}var Zd=G(Yu,[[`render`,Xd],[`__scopeId`,`data-v-c06bc5b1`]]),Qd=1e3;function $d(){return{service:``,visible:!0,markupRatio:void 0,displayTitle:``,displaySummary:``,sortOrder:0,autoTranslatedFields:[]}}var ef=z({name:`SiteServicesSetting`,components:{ElButton:W,ElCard:Ke,ElTable:Oe,ElTableColumn:De,ElEmpty:et,ElDialog:U,ElForm:Ae,ElFormItem:ke,ElInput:Ln,ElInputNumber:tt,ElSelect:Ce,ElOption:we,ElSwitch:st,ElTag:Pn,SectionNotice:qu,AutoTranslateToggle:Hu},directives:{loading:Ai},data(){return{Plus:E(Et),MARKUP_RATIO_MAX:5,siteMarkupDraftPercent:0,siteMarkupConfirmedPercent:0,siteMarkupSaving:!1,pendingSiteMarkupPercent:void 0,disableRechargeSaving:!1,loading:!1,catalogLoading:!1,submitting:!1,deletingId:``,rows:[],catalog:[],catalogMap:{},dialogVisible:!1,editingRow:null,form:$d(),mobile:typeof window<`u`&&window.innerWidth<768}},computed:{site(){return this.$store.getters.site||{}},siteId(){return this.site?.id},disableRecharge(){return Jr(this.site)},siteDefaultRatio(){return Hn(this.site)},siteMarkupPercent(){return Math.round(this.siteDefaultRatio*1e4)/100},markupPercentMax(){let e=typeof this.form.markupRatio==`number`?this.form.markupRatio:0;return Math.max(5,e)*100},markupPercent:{get(){return typeof this.form.markupRatio==`number`?Math.round(this.form.markupRatio*1e4)/100:void 0},set(e){this.form.markupRatio=typeof e==`number`?e/100:void 0}},effectiveRatio(){return typeof this.form.markupRatio==`number`?this.form.markupRatio:this.siteDefaultRatio},catalogOptions(){return this.catalog.filter(e=>!!e.icon_url).sort((e,t)=>{let n=(e.title||e.id||``).toLowerCase(),r=(t.title||t.id||``).toLowerCase();return n<r?-1:+(n>r)})}},watch:{siteMarkupPercent:{immediate:!0,handler(e){!this.siteMarkupSaving&&this.pendingSiteMarkupPercent===void 0&&(this.siteMarkupDraftPercent=e,this.siteMarkupConfirmedPercent=e)}},siteId:{immediate:!0,handler(e){e?(this.onFetch(),this.onFetchCatalog()):this.rows=[]}}},mounted(){window.addEventListener(`resize`,this.onResize)},beforeUnmount(){window.removeEventListener(`resize`,this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},async onToggleDisableRecharge(e){if(!(!this.siteId||this.disableRechargeSaving)){this.disableRechargeSaving=!0;try{let t=this.site.metadata||{};await ui.update(this.siteId,{...Fn(this.site),metadata:{...t,disable_recharge:e}}),await this.$store.dispatch(`getSite`)}catch{H.error(this.$t(`site.services.message.saveFailed`))}finally{this.disableRechargeSaving=!1}}},async onSaveSiteMarkup(e){if(!this.siteId)return;let t=Math.min(500,Math.max(0,Number(e)||0)),n=Math.round(t*100)/100;if(this.siteMarkupDraftPercent=n,this.pendingSiteMarkupPercent=n,this.siteMarkupSaving)return;this.siteMarkupSaving=!0;let r=!1;try{for(;this.pendingSiteMarkupPercent!==void 0;){let e=this.pendingSiteMarkupPercent;this.pendingSiteMarkupPercent=void 0;let t=this.siteId;if(!t)break;let n=this.site.metadata||{};await ui.update(t,{...Fn(this.site),metadata:{...n,pricing:{...n.pricing||{},markup_ratio:e/100}}}),this.siteMarkupConfirmedPercent=e}}catch{r=!0,this.pendingSiteMarkupPercent=void 0,H.error(this.$t(`site.services.message.saveFailed`)),this.siteMarkupDraftPercent=this.siteMarkupConfirmedPercent}try{let e=await this.$store.dispatch(`getSite`);if(e){let t=Math.round(Hn(e)*1e4)/100;this.siteMarkupConfirmedPercent=t,this.siteMarkupDraftPercent=t}else r||(H.error(this.$t(`site.services.message.fetchFailed`)),this.siteMarkupDraftPercent=this.siteMarkupConfirmedPercent)}catch{r||H.error(this.$t(`site.services.message.fetchFailed`)),this.siteMarkupDraftPercent=this.siteMarkupConfirmedPercent}finally{this.siteMarkupSaving=!1}},formatMarkup(e){let t=Math.round(e*100*10)/10;return`+${Number.isInteger(t)?t.toFixed(0):t.toFixed(1)}%`},catalogTitle(e){if(!e)return`—`;let t=this.catalogMap[e];return t?.title||t?.alias||e},catalogAlias(e){if(e)return this.catalogMap[e]?.alias},catalogIcon(e){if(e)return this.catalogMap[e]?.icon_url||void 0},optionLabel(e){return[e.title,e.alias,e.id].filter(Boolean).join(` `)},isAlreadyOverridden(e){return e?this.rows.some(t=>t.service===e&&t.id!==this.editingRow?.id):!1},async onFetch(){if(!this.siteId){this.rows=[];return}this.loading=!0;try{let{data:e}=await ii.getAll({site:this.siteId,limit:Qd,ordering:`sort_order,created_at`});this.rows=e.items||[]}catch{H.error(this.$t(`site.services.message.fetchFailed`))}finally{this.loading=!1}},async onFetchCatalog(){if(!(this.catalog.length>0)){this.catalogLoading=!0;try{let{data:e}=await $n.getAll({limit:Qd,private:!1});this.catalog=e.items||[],this.catalogMap=Object.fromEntries(this.catalog.map(e=>[e.id,e]))}catch{}finally{this.catalogLoading=!1}}},onOpenCreate(){this.editingRow=null,this.form=$d(),this.dialogVisible=!0},onOpenEdit(e){this.editingRow=e,this.form={service:e.service||``,visible:e.visible!==!1,markupRatio:typeof e.markup_ratio==`number`?e.markup_ratio:void 0,displayTitle:e.display_title_source??e.display_title??``,displaySummary:e.display_summary_source??e.display_summary??``,sortOrder:typeof e.sort_order==`number`?e.sort_order:0,autoTranslatedFields:[...e.auto_translated_fields??[]]},this.dialogVisible=!0},async onDisplayTitleEnabled(e){this.form.displayTitle=e.source,this.form.autoTranslatedFields=[...new Set([...this.form.autoTranslatedFields,`display_title`])].sort(),this.editingRow&&(this.editingRow.display_title=e.fieldValue,this.editingRow.display_title_source=e.source,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onDisplayTitleDisabled(e){let t=e.fieldValue??``;this.form.displayTitle=t,this.form.autoTranslatedFields=this.form.autoTranslatedFields.filter(e=>e!==`display_title`),this.editingRow&&(this.editingRow.display_title=t||null,this.editingRow.display_title_source=t||null,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onDisplaySummaryEnabled(e){this.form.displaySummary=e.source,this.form.autoTranslatedFields=[...new Set([...this.form.autoTranslatedFields,`display_summary`])].sort(),this.editingRow&&(this.editingRow.display_summary=e.fieldValue,this.editingRow.display_summary_source=e.source,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onDisplaySummaryDisabled(e){let t=e.fieldValue??``;this.form.displaySummary=t,this.form.autoTranslatedFields=this.form.autoTranslatedFields.filter(e=>e!==`display_summary`),this.editingRow&&(this.editingRow.display_summary=t||null,this.editingRow.display_summary_source=t||null,this.editingRow.auto_translated_fields=[...this.form.autoTranslatedFields]),H.success(this.$t(`site.services.message.saved`)),await this.onFetch()},async onSubmit(){this.editingRow?await this.onUpdate():await this.onCreate()},async onCreate(){if(!this.siteId||!this.form.service){H.error(this.$t(`site.services.message.serviceRequired`));return}this.submitting=!0;try{await ii.create({site:this.siteId,service:this.form.service,visible:this.form.visible,markup_ratio:typeof this.form.markupRatio==`number`?this.form.markupRatio:null,display_title:this.form.displayTitle.trim()||null,display_summary:this.form.displaySummary.trim()||null,sort_order:typeof this.form.sortOrder==`number`?this.form.sortOrder:0}),H.success(this.$t(`site.services.message.saved`)),this.dialogVisible=!1,await this.onFetch()}catch(e){H.error(this.extractError(e)||this.$t(`site.services.message.saveFailed`))}finally{this.submitting=!1}},async onUpdate(){let e=this.editingRow;if(e?.id){this.submitting=!0;try{await ii.update(e.id,{visible:this.form.visible,markup_ratio:typeof this.form.markupRatio==`number`?this.form.markupRatio:null,display_title:this.form.displayTitle.trim()||null,display_summary:this.form.displaySummary.trim()||null,sort_order:typeof this.form.sortOrder==`number`?this.form.sortOrder:0}),H.success(this.$t(`site.services.message.saved`)),this.dialogVisible=!1,this.editingRow=null,await this.onFetch()}catch(e){H.error(this.extractError(e)||this.$t(`site.services.message.saveFailed`))}finally{this.submitting=!1}}},async onDelete(e){if(e.id){try{await xi.confirm(this.$t(`site.services.message.deleteConfirm`,{name:this.catalogTitle(e.service)}),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}this.deletingId=e.id;try{await ii.delete(e.id),H.success(this.$t(`site.services.message.deleted`)),await this.onFetch()}catch(e){H.error(this.extractError(e)||this.$t(`site.services.message.deleteFailed`))}finally{this.deletingId=``}}},extractError(e){let t=e?.response?.data;return t&&typeof t==`object`?Object.values(t).flat().filter(Boolean).join(`; `):``}}}),tf={class:`site-services-settings`},nf={class:`default-price-section`},rf={class:`settings-title`},af={class:`settings-tip`},of={class:`markup-row`},sf={class:`default-price-section`},cf={class:`settings-title`},lf={class:`settings-tip`},uf={class:`header`},df={class:`settings-title`},ff={class:`settings-tip`},pf={class:`service-cell`},mf=[`src`],hf={class:`service-cell-text`},gf={key:0,class:`muted`},_f={key:0,class:`muted`},vf={key:1},yf={key:0,class:`muted`},bf={key:1},xf={class:`service-option`},Sf=[`src`],Cf={class:`option-title`},wf={key:1,class:`option-alias`},Tf={class:`field-desc`},Ef={class:`field-desc`},Df={class:`markup-row`},Of={class:`field-desc`},kf={class:`field-desc`},Af={class:`field-desc`},jf={class:`auto-translate-inline`},Mf={class:`field-tip`},Nf={class:`field-desc`};function Pf(t,r,i,a,s,l){let f=T(`section-notice`),m=T(`el-input-number`),h=T(`el-switch`),g=T(`plus`),_=T(`el-button`),v=T(`el-empty`),y=T(`el-table-column`),b=T(`el-tag`),S=T(`el-table`),C=T(`el-card`),w=T(`el-input`),ee=T(`el-option`),E=T(`el-select`),D=T(`el-form-item`),k=T(`auto-translate-toggle`),j=T(`el-form`),te=T(`el-dialog`),N=P(`loading`);return L(),p(`div`,tf,[u(f,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,nf,[e(`div`,null,[e(`p`,rf,c(t.$t(`site.field.markupRatio`)),1),e(`p`,af,c(t.$t(`site.message.markupRatioTip`)),1)]),e(`div`,of,[u(m,{"model-value":t.siteMarkupDraftPercent,min:0,max:t.MARKUP_RATIO_MAX*100,step:1,precision:2,"controls-position":`right`,disabled:t.siteMarkupSaving,class:`markup-input`,onChange:t.onSaveSiteMarkup},null,8,[`model-value`,`max`,`disabled`,`onChange`]),r[10]||=e(`span`,{class:`markup-percent`},`%`,-1)])]),e(`section`,sf,[e(`div`,null,[e(`p`,cf,c(t.$t(`site.field.disableRecharge`)),1),e(`p`,lf,c(t.$t(`site.message.disableRechargeTip`)),1)]),u(h,{"model-value":t.disableRecharge,"inline-prompt":``,loading:t.disableRechargeSaving,disabled:t.disableRechargeSaving||!t.siteId,"active-text":t.$t(`site.button.enabled`),"inactive-text":t.$t(`site.button.disabled`),"onUpdate:modelValue":r[0]||=e=>t.onToggleDisableRecharge(e)},null,8,[`model-value`,`loading`,`disabled`,`active-text`,`inactive-text`])]),e(`div`,uf,[e(`div`,null,[e(`p`,df,c(t.$t(`site.services.title`)),1),e(`p`,ff,c(t.$t(`site.services.tip`)),1)]),u(_,{type:`primary`,round:``,disabled:!t.site?.id,onClick:t.onOpenCreate},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`site.services.addButton`)),1)]),_:1},8,[`disabled`,`onClick`])]),O((L(),A(C,{shadow:`never`,class:`list-card`},{default:M(()=>[!t.loading&&t.rows.length===0?(L(),A(v,{key:0,description:t.$t(`site.services.empty`),"image-size":80},null,8,[`description`])):(L(),A(S,{key:1,data:t.rows,stripe:``,class:`overrides-table`},{default:M(()=>[u(y,{label:t.$t(`site.services.field.service`),"min-width":`200`},{default:M(({row:n})=>[e(`div`,pf,[t.catalogIcon(n.service)?(L(),p(`img`,{key:0,src:t.catalogIcon(n.service),class:`service-favicon`,alt:``},null,8,mf)):d(``,!0),e(`div`,hf,[e(`strong`,null,c(t.catalogTitle(n.service)),1),t.catalogAlias(n.service)?(L(),p(`div`,gf,c(t.catalogAlias(n.service)),1)):d(``,!0)])])]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.visible`),width:`96`,align:`center`},{default:M(({row:e})=>[u(b,{type:e.visible===!1?`info`:`success`,size:`small`,round:``,effect:`plain`},{default:M(()=>[o(c(e.visible===!1?t.$t(`site.services.status.hidden`):t.$t(`site.services.status.visible`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.customMarkupRatio`),width:`150`,align:`right`},{default:M(({row:e})=>[e.markup_ratio===null||e.markup_ratio===void 0?(L(),p(`span`,_f,c(t.$t(`site.services.status.inherit`)),1)):(L(),p(`span`,vf,c(t.formatMarkup(e.markup_ratio)),1))]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.displayTitle`),"min-width":`140`},{default:M(({row:e})=>[e.display_title?(L(),p(`span`,bf,c(e.display_title),1)):(L(),p(`span`,yf,`—`))]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.sortOrder`),width:`88`,align:`right`},{default:M(({row:e})=>[o(c(e.sort_order??0),1)]),_:1},8,[`label`]),u(y,{label:t.$t(`site.services.field.action`),width:`150`,align:`right`,fixed:`right`},{default:M(({row:e})=>[u(_,{size:`small`,round:``,onClick:n=>t.onOpenEdit(e)},{default:M(()=>[o(c(t.$t(`common.button.edit`)),1)]),_:1},8,[`onClick`]),u(_,{size:`small`,round:``,type:`danger`,plain:``,loading:t.deletingId===e.id,onClick:n=>t.onDelete(e)},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`loading`,`onClick`])]),_:1},8,[`label`])]),_:1},8,[`data`]))]),_:1})),[[N,t.loading]]),u(te,{modelValue:t.dialogVisible,"onUpdate:modelValue":r[9]||=e=>t.dialogVisible=e,title:t.editingRow?t.$t(`site.services.dialog.edit`):t.$t(`site.services.dialog.create`),width:t.mobile?`94vw`:`520px`,class:`site-service-override-dialog`,"close-on-click-modal":!1,"append-to-body":``},{footer:M(()=>[u(_,{round:``,onClick:r[8]||=e=>t.dialogVisible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(_,{type:`primary`,round:``,loading:t.submitting,disabled:!t.editingRow&&!t.form.service,onClick:t.onSubmit},{default:M(()=>[o(c(t.editingRow?t.$t(`common.button.update`):t.$t(`common.button.create`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:M(()=>[u(j,{model:t.form,"label-position":`top`,class:`service-override-form`,onSubmit:r[7]||=n(()=>{},[`prevent`])},{default:M(()=>[u(D,{label:t.$t(`site.services.field.service`),required:``},{default:M(()=>[t.editingRow?(L(),A(w,{key:0,"model-value":t.catalogTitle(t.editingRow.service),readonly:``},null,8,[`model-value`])):(L(),A(E,{key:1,modelValue:t.form.service,"onUpdate:modelValue":r[1]||=e=>t.form.service=e,filterable:``,loading:t.catalogLoading,"popper-class":`service-catalog-select-popper`,class:`w-full`},{default:M(()=>[(L(!0),p(x,null,F(t.catalogOptions,n=>(L(),A(ee,{key:n.id,label:t.optionLabel(n),value:n.id,disabled:t.isAlreadyOverridden(n.id)},{default:M(()=>[e(`span`,xf,[n.icon_url?(L(),p(`img`,{key:0,src:n.icon_url,class:`option-favicon`,alt:``},null,8,Sf)):d(``,!0),e(`span`,Cf,c(n.title||n.id),1),n.alias?(L(),p(`span`,wf,c(n.alias),1)):d(``,!0),t.isAlreadyOverridden(n.id)?(L(),A(b,{key:2,size:`small`,type:`info`,round:``},{default:M(()=>[o(c(t.$t(`site.services.message.alreadyOverridden`)),1)]),_:1})):d(``,!0)])]),_:2},1032,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`loading`])),e(`div`,Tf,c(t.$t(`site.services.placeholder.service`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.visible`)},{default:M(()=>[u(h,{modelValue:t.form.visible,"onUpdate:modelValue":r[2]||=e=>t.form.visible=e},null,8,[`modelValue`]),e(`div`,Ef,c(t.$t(`site.services.tip.visible`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.customMarkupRatio`)},{default:M(()=>[e(`div`,Df,[u(m,{modelValue:t.markupPercent,"onUpdate:modelValue":r[3]||=e=>t.markupPercent=e,min:0,max:t.markupPercentMax,step:1,precision:2,"controls-position":`right`,placeholder:t.$t(`site.services.placeholder.markup`),class:`markup-input`},null,8,[`modelValue`,`max`,`placeholder`]),r[11]||=e(`span`,{class:`markup-percent`},`%`,-1)]),e(`div`,Of,c(t.$t(`site.services.tip.markup`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.displayTitle`)},{default:M(()=>[u(w,{modelValue:t.form.displayTitle,"onUpdate:modelValue":r[4]||=e=>t.form.displayTitle=e,maxlength:`120`,"show-word-limit":``,clearable:``},{suffix:M(()=>[u(k,{model:`site_service_override`,field:`display_title`,"object-id":t.editingRow?.id,enabled:t.form.autoTranslatedFields.includes(`display_title`),"current-value":t.form.displayTitle,onEnabledSuccess:t.onDisplayTitleEnabled,onDisabledSuccess:t.onDisplayTitleDisabled},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])]),_:1},8,[`modelValue`]),e(`div`,kf,c(t.$t(`site.services.placeholder.displayTitle`)),1)]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.displaySummary`)},{default:M(()=>[u(w,{modelValue:t.form.displaySummary,"onUpdate:modelValue":r[5]||=e=>t.form.displaySummary=e,type:`textarea`,rows:3,clearable:``},null,8,[`modelValue`]),e(`div`,Af,c(t.$t(`site.services.placeholder.displaySummary`)),1),e(`div`,jf,[u(k,{model:`site_service_override`,field:`display_summary`,"object-id":t.editingRow?.id,enabled:t.form.autoTranslatedFields.includes(`display_summary`),"current-value":t.form.displaySummary,onEnabledSuccess:t.onDisplaySummaryEnabled,onDisabledSuccess:t.onDisplaySummaryDisabled},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`]),e(`span`,Mf,c(t.editingRow?t.form.autoTranslatedFields.includes(`display_summary`)?t.$t(`site.autoTranslate.tooltipOn`):t.$t(`site.autoTranslate.tooltipOff`):t.$t(`site.autoTranslate.tooltipDisabledNotSaved`)),1)])]),_:1},8,[`label`]),u(D,{label:t.$t(`site.services.field.sortOrder`)},{default:M(()=>[u(m,{modelValue:t.form.sortOrder,"onUpdate:modelValue":r[6]||=e=>t.form.sortOrder=e,min:-1e3,max:1e3,step:1,precision:0,"controls-position":`right`},null,8,[`modelValue`]),e(`div`,Nf,c(t.$t(`site.services.tip.sortOrder`)),1)]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`,`width`])])}var Ff=G(ef,[[`render`,Pf],[`__scopeId`,`data-v-7cb83655`]]),If=z({name:`EditText`,components:{ElDialog:U,ElInput:Ln,ElButton:W,ElIcon:B,ElTag:Pn,Edit:Tt},props:{modelValue:{type:Array,required:!0},title:{type:String,required:!0},placeholder:{type:String,required:!0},tip:{type:String,default:void 0},min:{type:Number,default:void 0},minErrorMessage:{type:String,default:void 0}},emits:[`confirm`,`cancel`],data(){return{inputVisible:!1,inputValue:``,editing:!1,value:JSON.parse(JSON.stringify(this.modelValue))}},methods:{onCancel(){this.editing=!1},onConfirm(){if(this.min!==void 0&&this.value.length<this.min){H.error(this.minErrorMessage);return}this.$emit(`confirm`,this.value),this.editing=!1},onClose(e){this.value.splice(this.value.indexOf(e),1)},onInputConfirm(){let e=this.inputValue;e&&this.value.push(e),this.inputVisible=!1,this.inputValue=``},onNewItem(){this.inputVisible=!0,this.$nextTick(()=>{this.$refs.input.focus()})}}}),Lf={class:`edit-body`},Rf={class:`tags`},zf={class:`block tip`},Bf={class:`dialog-footer`},Vf=[`aria-label`,`title`];function Hf(t,r,i,a,s,l){let d=T(`el-tag`),f=T(`el-input`),m=T(`el-button`),h=T(`el-dialog`),g=T(`edit`),_=T(`el-icon`);return L(),p(x,null,[u(h,{modelValue:t.editing,"onUpdate:modelValue":r[1]||=e=>t.editing=e,title:t.title,width:`400px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,Bf,[u(m,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(m,{round:``,type:`primary`,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`onClick`])])]),default:M(()=>[e(`div`,Lf,[e(`div`,Rf,[(L(!0),p(x,null,F(t.value,(e,n)=>(L(),A(d,{key:n,closable:``,round:``,class:`mr-2 mb-2`,"disable-transitions":!1,onClose:n=>t.onClose(e)},{default:M(()=>[o(c(e),1)]),_:2},1032,[`onClose`]))),128))]),t.inputVisible?(L(),A(f,{key:0,ref:`input`,modelValue:t.inputValue,"onUpdate:modelValue":r[0]||=e=>t.inputValue=e,class:`block`,onKeyup:y(t.onInputConfirm,[`enter`]),onBlur:t.onInputConfirm},null,8,[`modelValue`,`onKeyup`,`onBlur`])):(L(),A(m,{key:1,round:``,class:`block`,size:`small`,onClick:t.onNewItem},{default:M(()=>[...r[5]||=[o(` + `,-1)]]),_:1},8,[`onClick`])),e(`span`,zf,c(t.tip),1)])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[2]||=e=>t.editing=!0,onKeydown:[r[3]||=y(n(e=>t.editing=!0,[`prevent`]),[`enter`]),r[4]||=y(n(e=>t.editing=!0,[`prevent`]),[`space`])]},[u(_,{class:`icon`},{default:M(()=>[u(g,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,Vf)],64)}var Uf=z({name:`SettingSeo`,components:{EditText:Jo,EditArray:G(If,[[`render`,Hf]]),AutoTranslateToggle:Hu,SectionNotice:qu},computed:{site(){return this.$store.getters.site||{}},descriptionSource(){return this.site?.description_source??this.site?.description??``},autoTranslatedFields(){return this.site?.auto_translated_fields??[]}},methods:{onSave(e){let t={...Fn(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})},onTranslationChanged(){this.$store.dispatch(`getSite`)}}}),Wf={class:`settings-list`},Gf={class:`settings-item`},Kf={class:`settings-label`},qf={class:`settings-title`},Jf={class:`settings-tip`},Yf={class:`settings-content`},Xf={class:`settings-value`},Zf={class:`settings-actions`},Qf={class:`settings-item`},$f={class:`settings-label`},ep={class:`settings-title`},tp={class:`settings-tip`},np={class:`settings-content`},rp={class:`settings-value`};function ip(t,n,r,i,a,o){let s=T(`section-notice`),l=T(`edit-text`),d=T(`auto-translate-toggle`),f=T(`edit-array`);return L(),p(`div`,Wf,[u(s,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,Gf,[e(`div`,Kf,[e(`p`,qf,c(t.$t(`site.field.description`)),1),e(`p`,Jf,c(t.$t(`site.message.descriptionTip`)),1)]),e(`div`,Yf,[e(`span`,Xf,c(t.descriptionSource),1),e(`div`,Zf,[u(l,{"model-value":t.descriptionSource,title:t.$t(`site.title.editDescription`),placeholder:t.$t(`site.placeholder.description`),onConfirm:n[0]||=e=>t.onSave({description:e})},null,8,[`model-value`,`title`,`placeholder`]),u(d,{model:`site`,field:`description`,"object-id":t.site.id,enabled:t.autoTranslatedFields.includes(`description`),"current-value":t.descriptionSource,onEnabledSuccess:t.onTranslationChanged,onDisabledSuccess:t.onTranslationChanged},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])])])]),e(`section`,Qf,[e(`div`,$f,[e(`p`,ep,c(t.$t(`site.field.keywords`)),1),e(`p`,tp,c(t.$t(`site.message.keywordsTip`)),1)]),e(`div`,np,[e(`span`,rp,c(t.site.keywords?.join(`, `)),1),u(f,{"model-value":t.site?.keywords||[],title:t.$t(`site.title.editKeywords`),placeholder:t.$t(`site.placeholder.keywords`),tip:t.$t(`site.message.keywordsTip2`),onConfirm:n[1]||=e=>t.onSave({keywords:e})},null,8,[`model-value`,`title`,`placeholder`,`tip`])])])])}var ap=G(Uf,[[`render`,ip],[`__scopeId`,`data-v-a6c2ba5f`]]),op=z({name:`EditUser`,components:{ElDialog:U,ElButton:W,ElIcon:B,Edit:Tt,UserChip:Cl,UserPicker:Ml},props:{modelValue:{type:String,default:``},title:{type:String,required:!0}},emits:[`confirm`,`cancel`],data(){return{editing:!1,resolved:null}},methods:{async onOpen(){this.editing=!0,this.resolved=null;let e=this.modelValue;if(e){let t=await ml(e);this.editing&&this.modelValue===e&&(this.resolved=t)}},onSelect(e){this.resolved=e},onCancel(){this.editing=!1,this.$emit(`cancel`)},onClearValue(){this.$emit(`confirm`,``),this.editing=!1},onConfirm(){this.resolved?.id&&(this.$emit(`confirm`,this.resolved.id),this.editing=!1)}}}),sp={class:`edit-body`},cp={key:0,class:`preview`},lp={key:1,class:`tip`},up={class:`dialog-footer`},dp=[`aria-label`,`title`];function fp(t,r,i,a,s,l){let f=T(`user-picker`),m=T(`user-chip`),h=T(`el-button`),g=T(`el-dialog`),_=T(`edit`),v=T(`el-icon`);return L(),p(x,null,[u(g,{modelValue:t.editing,"onUpdate:modelValue":r[0]||=e=>t.editing=e,title:t.title,width:`480px`,class:`edit-dialog`},{footer:M(()=>[e(`span`,up,[u(h,{round:``,onClick:t.onCancel},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),t.modelValue?(L(),A(h,{key:0,round:``,type:`danger`,onClick:t.onClearValue},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`onClick`])):d(``,!0),u(h,{round:``,type:`primary`,disabled:!t.resolved,onClick:t.onConfirm},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`disabled`,`onClick`])])]),default:M(()=>[e(`div`,sp,[u(f,{onSelect:t.onSelect},null,8,[`onSelect`]),t.resolved?(L(),p(`div`,cp,[u(m,{"user-id":t.resolved.id},null,8,[`user-id`])])):(L(),p(`p`,lp,c(t.$t(`site.message.editUserHint`)),1))])]),_:1},8,[`modelValue`,`title`]),e(`span`,{class:`edit`,role:`button`,tabindex:`0`,"aria-label":t.$t(`common.button.edit`),title:t.$t(`common.button.edit`),onClick:r[1]||=(...e)=>t.onOpen&&t.onOpen(...e),onKeydown:[r[2]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`enter`]),r[3]||=y(n((...e)=>t.onOpen&&t.onOpen(...e),[`prevent`]),[`space`])]},[u(v,{class:`icon`},{default:M(()=>[u(_,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1})],40,dp)],64)}var pp=z({name:`DistributionSetting`,components:{EditUser:G(op,[[`render`,fp],[`__scopeId`,`data-v-08f07de0`]]),UserChip:Cl,SectionNotice:qu},computed:{site(){return this.$store.getters.site||{distribution:{}}}},methods:{onSave(e){let t={...Fn(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})}}}),mp={class:`settings-list`},hp={class:`settings-item`},gp={class:`settings-label`},_p={class:`settings-title`},vp={class:`settings-tip`},yp={class:`settings-content`},bp={class:`settings-item`},xp={class:`settings-label`},Sp={class:`settings-title`},Cp={class:`settings-tip`},wp={class:`settings-content`};function Tp(t,n,r,i,a,o){let s=T(`section-notice`),l=T(`user-chip`),d=T(`edit-user`);return L(),p(`div`,mp,[u(s,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,hp,[e(`div`,gp,[e(`p`,_p,c(t.$t(`site.field.distributionDefaultInviterId`)),1),e(`p`,vp,c(t.$t(`site.message.distributionDefaultInviterIdTip`)),1)]),e(`div`,yp,[u(l,{"user-id":t.site.distribution?.default_inviter_id},null,8,[`user-id`]),u(d,{"model-value":t.site.distribution?.default_inviter_id||``,title:t.$t(`site.title.editDistributionDefaultInviterId`),onConfirm:n[0]||=e=>t.onSave({distribution:{...t.site.distribution,default_inviter_id:e}})},null,8,[`model-value`,`title`])])]),e(`section`,bp,[e(`div`,xp,[e(`p`,Sp,c(t.$t(`site.field.distributionForceInviterId`)),1),e(`p`,Cp,c(t.$t(`site.message.distributionForceInviterIdTip`)),1)]),e(`div`,wp,[u(l,{"user-id":t.site.distribution?.force_inviter_id},null,8,[`user-id`]),u(d,{"model-value":t.site.distribution?.force_inviter_id||``,title:t.$t(`site.title.editDistributionForceInviterId`),onConfirm:n[1]||=e=>t.onSave({distribution:{...t.site.distribution,force_inviter_id:e}})},null,8,[`model-value`,`title`])])])])}var Ep=G(pp,[[`render`,Tp]]),Dp=z({name:`CapabilityOverrideDialog`,components:{AutoTranslateToggle:Hu,ElButton:W,ElDialog:U,ElForm:Ae,ElFormItem:ke,ElInput:Ln,ImageCropper:iu,UploadIcon:Pt},props:{modelValue:{type:Boolean,default:!1},siteId:{type:String,required:!0},capability:{type:String,required:!0},defaultName:{type:String,required:!0},defaultIcon:{type:String,required:!0},override:{type:Object,default:null}},emits:[`update:modelValue`,`saved`],data(){return{record:null,displayName:``,iconUrl:``,autoTranslatedFields:[],iconEditorVisible:!1,submitting:!1,resetting:!1}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit(`update:modelValue`,e)}},mobile(){return typeof window<`u`&&window.innerWidth<640}},watch:{modelValue(e){e&&this.hydrate()},override(){this.modelValue&&this.hydrate()}},mounted(){this.modelValue&&this.hydrate()},methods:{hydrate(){this.record=this.override?{...this.override}:null,this.displayName=this.override?.display_name_source??this.override?.display_name??``,this.iconUrl=this.override?.icon_url??``,this.autoTranslatedFields=[...this.override?.auto_translated_fields??[]],this.iconEditorVisible=!1},extractError(e){let t=e?.response?.data;if(!t)return``;let n=t.detail;return typeof n==`string`?n:Object.values(t).flat().filter(e=>typeof e==`string`).join(` `)},async onSave(){let e=this.displayName.trim()||null,t=this.iconUrl.trim()||null;if(!e&&!t){this.record?.id?await this.onReset():H.warning(this.$t(`site.capabilityOverride.empty`));return}this.submitting=!0;try{if(this.record?.id){let{data:n}=await mi.update(this.record.id,{display_name:e,icon_url:t});this.record=n,H.success(this.$t(`site.capabilityOverride.saved`)),this.$emit(`saved`),this.visible=!1}else{let{data:n}=await mi.create({site:this.siteId,capability:this.capability,display_name:e,icon_url:t});this.record=n,this.displayName=n.display_name_source??n.display_name??``,this.iconUrl=n.icon_url??``,this.autoTranslatedFields=[...n.auto_translated_fields??[]],H.success(this.$t(`site.capabilityOverride.savedEnableTranslation`)),this.$emit(`saved`)}}catch(e){H.error(this.extractError(e)||this.$t(`site.capabilityOverride.saveFailed`))}finally{this.submitting=!1}},async onReset(){if(this.record?.id){try{await xi.confirm(this.$t(`site.capabilityOverride.resetConfirm`,{name:this.defaultName}),this.$t(`site.capabilityOverride.resetAll`),{type:`warning`,confirmButtonText:this.$t(`site.capabilityOverride.resetAll`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.resetting=!0;try{await mi.delete(this.record.id),H.success(this.$t(`site.capabilityOverride.resetDone`)),this.$emit(`saved`),this.visible=!1}catch(e){H.error(this.extractError(e)||this.$t(`site.capabilityOverride.saveFailed`))}finally{this.resetting=!1}}},async onTranslationEnabled(e){this.displayName=e.source,this.autoTranslatedFields=[`display_name`],this.record&&(this.record.display_name=e.fieldValue,this.record.display_name_source=e.source,this.record.auto_translated_fields=[`display_name`]),H.success(this.$t(`site.capabilityOverride.saved`)),this.$emit(`saved`)},async onTranslationDisabled(e){this.displayName=e.fieldValue??``,this.autoTranslatedFields=[],this.record&&(this.record.display_name=e.fieldValue,this.record.display_name_source=e.fieldValue,this.record.auto_translated_fields=[]),H.success(this.$t(`site.capabilityOverride.saved`)),this.$emit(`saved`)}}}),Op={class:`field-tip`},kp={class:`icon-comparison`},Ap={class:`icon-preview-block`},jp={class:`preview-label`},Mp=[`src`],Np={class:`icon-preview-block`},Pp={class:`preview-label`},Fp=[`src`],Ip={class:`icon-actions`},Lp={class:`field-tip`},Rp={class:`dialog-footer`};function zp(t,r,i,a,s,l){let f=T(`auto-translate-toggle`),p=T(`el-input`),m=T(`el-form-item`),h=T(`UploadIcon`),g=T(`el-button`),_=T(`el-form`),v=T(`image-cropper`),y=T(`el-dialog`);return L(),A(y,{modelValue:t.visible,"onUpdate:modelValue":r[7]||=e=>t.visible=e,title:t.$t(`site.capabilityOverride.dialogTitle`,{name:t.defaultName}),width:t.mobile?`94vw`:`520px`,"close-on-click-modal":!1,"append-to-body":``},{footer:M(()=>[e(`div`,Rp,[t.record?.id?(L(),A(g,{key:0,type:`danger`,plain:``,loading:t.resetting,onClick:t.onReset},{default:M(()=>[o(c(t.$t(`site.capabilityOverride.resetAll`)),1)]),_:1},8,[`loading`,`onClick`])):d(``,!0),r[8]||=e(`span`,{class:`footer-spacer`},null,-1),u(g,{onClick:r[6]||=e=>t.visible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(g,{type:`primary`,loading:t.submitting,onClick:t.onSave},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`onClick`])])]),default:M(()=>[u(_,{"label-position":`top`,onSubmit:r[3]||=n(()=>{},[`prevent`])},{default:M(()=>[u(m,{label:t.$t(`site.capabilityOverride.displayName`)},{default:M(()=>[u(p,{modelValue:t.displayName,"onUpdate:modelValue":r[0]||=e=>t.displayName=e,maxlength:`120`,"show-word-limit":``,clearable:``},{suffix:M(()=>[u(f,{model:`site_capability_override`,field:`display_name`,"object-id":t.record?.id,enabled:t.autoTranslatedFields.includes(`display_name`),"current-value":t.displayName,onEnabledSuccess:t.onTranslationEnabled,onDisabledSuccess:t.onTranslationDisabled},null,8,[`object-id`,`enabled`,`current-value`,`onEnabledSuccess`,`onDisabledSuccess`])]),_:1},8,[`modelValue`]),e(`div`,Op,c(t.$t(`site.capabilityOverride.displayNameTip`,{name:t.defaultName})),1)]),_:1},8,[`label`]),u(m,{label:t.$t(`site.capabilityOverride.icon`)},{default:M(()=>[e(`div`,kp,[e(`div`,Ap,[e(`span`,jp,c(t.$t(`site.capabilityOverride.defaultIcon`)),1),e(`img`,{src:t.defaultIcon,class:`icon-preview`,alt:``},null,8,Mp)]),e(`div`,Np,[e(`span`,Pp,c(t.$t(`site.capabilityOverride.currentIcon`)),1),e(`img`,{src:t.iconUrl||t.defaultIcon,class:`icon-preview`,alt:``},null,8,Fp)]),e(`div`,Ip,[u(g,{onClick:r[1]||=e=>t.iconEditorVisible=!0},{default:M(()=>[u(h,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.iconUrl?t.$t(`site.capabilityOverride.replaceIcon`):t.$t(`site.capabilityOverride.uploadIcon`)),1)]),_:1}),t.iconUrl?(L(),A(g,{key:0,link:``,type:`primary`,onClick:r[2]||=e=>t.iconUrl=``},{default:M(()=>[o(c(t.$t(`site.capabilityOverride.useDefaultIcon`)),1)]),_:1})):d(``,!0)])]),e(`div`,Lp,c(t.$t(`site.capabilityOverride.iconTip`)),1)]),_:1},8,[`label`])]),_:1}),u(v,{modelValue:t.iconEditorVisible,"onUpdate:modelValue":r[4]||=e=>t.iconEditorVisible=e,title:t.$t(`site.capabilityOverride.editIcon`),"format-hint":t.$t(`site.capabilityOverride.iconTip`),"aspect-ratio":1,"output-width":512,accept:`image/png,image/jpeg,image/webp`,shape:`rectangle`,onUploaded:r[5]||=e=>t.iconUrl=e},null,8,[`modelValue`,`title`,`format-hint`])]),_:1},8,[`modelValue`,`title`,`width`])}var Bp=z({name:`FunctionSetting`,components:{CapabilityOverrideDialog:G(Dp,[[`render`,zp],[`__scopeId`,`data-v-d4c64896`]]),ElButton:W,EditIcon:Tt,ElSwitch:st,ElTooltip:Me,SectionNotice:qu},data(){return{overrides:{},editingCapability:null,dialogVisible:!1,failedIcons:{},CAPABILITY_ICONS:li}},computed:{site(){return this.$store.getters.site||{features:{}}},featureKeys(){return[...Wr]}},watch:{"site.id":{immediate:!0,handler(e){e&&this.fetchOverrides()}}},methods:{defaultFeatureLabel(e){return this.$t(`site.field.features`+e.charAt(0).toUpperCase()+e.slice(1))},featureLabel(e){return ri(this.site,e,this.defaultFeatureLabel(e),li[e]).displayName},featureTip(e){return this.$t(`site.message.features`+e.charAt(0).toUpperCase()+e.slice(1))},featureIcon(e){return this.failedIcons[e]?li[e]:ri(this.site,e,this.defaultFeatureLabel(e),li[e]).iconUrl},async fetchOverrides(){if(this.site.id)try{let{data:e}=await mi.getAll({site:this.site.id,limit:100});this.overrides=Object.fromEntries((e.items||[]).map(e=>[e.capability,e]))}catch{H.error(this.$t(`site.capabilityOverride.fetchFailed`))}},onEdit(e){this.editingCapability=e,this.dialogVisible=!0},async onOverrideSaved(){this.failedIcons={},await Promise.all([this.fetchOverrides(),this.$store.dispatch(`getSite`)])},updateFeature(e,t){this.onSave({features:{...this.site.features||{},[e]:{...this.site.features?.[e]||{},...t}}})},onToggleFeature(e,t){this.updateFeature(e,{enabled:t})},onSave(e){let t={...Fn(this.site),...e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})}}}),Vp={class:`settings-list`},Hp={class:`settings-label`},Up={class:`capability-heading`},Wp=[`src`,`onError`],Gp={class:`settings-title`},Kp={class:`settings-tip`},qp={class:`settings-content`};function Jp(t,n,r,i,a,o){let s=T(`section-notice`),l=T(`EditIcon`),f=T(`el-button`),m=T(`el-tooltip`),h=T(`el-switch`),g=T(`capability-override-dialog`);return L(),p(`div`,Vp,[u(s,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),(L(!0),p(x,null,F(t.featureKeys,n=>(L(),p(`section`,{key:n,class:`settings-item`},[e(`div`,Hp,[e(`div`,Up,[e(`img`,{src:t.featureIcon(n),class:`capability-favicon`,alt:``,onError:e=>t.failedIcons[n]=!0},null,40,Wp),e(`p`,Gp,c(t.featureLabel(n)),1)]),e(`p`,Kp,c(t.featureTip(n)),1)]),e(`div`,qp,[u(m,{content:t.$t(`site.capabilityOverride.edit`),placement:`top`},{default:M(()=>[u(f,{circle:``,size:`small`,"aria-label":t.$t(`site.capabilityOverride.edit`),onClick:e=>t.onEdit(n)},{default:M(()=>[u(l,{size:`1em`,"aria-hidden":`true`,focusable:`false`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1032,[`content`]),u(h,{"model-value":t.site.features?.[n]?.enabled||!1,"inline-prompt":``,"active-text":t.$t(`site.button.enabled`),"inactive-text":t.$t(`site.button.disabled`),"onUpdate:modelValue":e=>t.onToggleFeature(n,e)},null,8,[`model-value`,`active-text`,`inactive-text`,`onUpdate:modelValue`])])]))),128)),t.editingCapability&&t.site.id?(L(),A(g,{key:0,modelValue:t.dialogVisible,"onUpdate:modelValue":n[0]||=e=>t.dialogVisible=e,"site-id":t.site.id,capability:t.editingCapability,"default-name":t.defaultFeatureLabel(t.editingCapability),"default-icon":t.CAPABILITY_ICONS[t.editingCapability],override:t.overrides[t.editingCapability]||null,onSaved:t.onOverrideSaved},null,8,[`modelValue`,`site-id`,`capability`,`default-name`,`default-icon`,`override`,`onSaved`])):d(``,!0)])}var Yp=G(Bp,[[`render`,Jp],[`__scopeId`,`data-v-b0fa8beb`]]),Xp=/^(?!.*--)[a-z0-9][a-z0-9-]{1,30}[a-z0-9]$/,Zp=z({name:`SubsiteSetting`,components:{ElCard:Ke,ElButton:W,ElTable:Oe,ElTableColumn:De,ElEmpty:et,ElDialog:U,ElForm:Ae,ElFormItem:ke,ElInput:Ln,ElTag:Pn,SectionNotice:qu},directives:{loading:Ai},props:{autoOpenCreate:{type:Boolean,default:!1}},data(){return{Plus:E(Et),SiteDomainStatus:Re,loading:!1,items:[],domainsBySite:{},opening:{visible:!1,urls:[]},creating:{visible:!1,submitting:!1,form:{slug:``,title:``}},deletingId:null}},computed:{parentSite(){return this.$store.state.site},user(){return this.$store.getters.user},subdomainZone(){return this.parentSite?.features?.subsite?.subdomain_zone||(typeof window<`u`&&window.location?.host?window.location.host.split(`:`)[0]:this.parentSite?.origin||``)},maxSubsitesPerUser(){let e=this.parentSite?.features?.subsite?.max_subsites_per_user;return typeof e==`number`&&e>0?e:5},canCreate(){return!!this.subdomainZone&&!!this.user?.id&&this.items.length<this.maxSubsitesPerUser}},watch:{autoOpenCreate:{immediate:!1,handler(e){e&&this.onOpenCreate()}}},mounted(){this.fetchSubsites(),this.autoOpenCreate&&this.onOpenCreate()},methods:{async fetchSubsites(){let e=this.user?.id;if(!e){this.items=[];return}let t=this.subdomainZone;if(!t){this.items=[];return}this.loading=!0;try{let{data:n}=await ui.getAll({user_id:e,origin__endswith:`.${t}`,ordering:`-created_at`});this.items=n?.items||[],await this.fetchDomains()}catch(e){console.error(`failed to load subsites`,e),H.error(this.$t(`subsite.message.loadFailed`))}finally{this.loading=!1}},async fetchDomains(){let e=this.items.filter(e=>e.id);if(e.length===0){this.domainsBySite={};return}let t=await Promise.all(e.map(async e=>{try{let{data:t}=await Lr.getAll({site:e.id,limit:50});return[e.id,t?.items||[]]}catch(t){return console.warn(`failed to load domains for site ${e.id}`,t),[e.id,[]]}}));this.domainsBySite=Object.fromEntries(t)},onOpenCreate(){this.creating.form.slug=``,this.creating.form.title=``,this.creating.visible=!0},onCancelCreate(){this.creating.visible=!1},async onSubmitCreate(){let e=this.creating.form.slug.trim().toLowerCase();if(!Xp.test(e)){H.warning(this.$t(`subsite.message.slugInvalid`));return}if(!this.subdomainZone){H.error(this.$t(`subsite.message.zoneMissing`));return}let t=`${e}.${this.subdomainZone}`;this.creating.submitting=!0;try{let{data:e}=await ui.create({origin:t,title:this.creating.form.title.trim()||void 0});H.success(this.$t(`subsite.message.created`)),this.creating.visible=!1,this.items=[e,...this.items],xi.confirm(this.$t(`subsite.message.openNowConfirm`,{origin:t}),this.$t(`subsite.title.openNow`),{confirmButtonText:this.$t(`subsite.button.open`),cancelButtonText:this.$t(`common.button.cancel`),type:`success`}).then(()=>window.open(`https://${t}/`,`_blank`,`noopener`)).catch(()=>{})}catch(e){let n=e?.response?.data;if(n?.code===`duplication`){H.error(this.$t(`subsite.message.slugTaken`,{origin:t}));return}let r=n?.detail?.origin??n?.origin??n?.detail??e?.message,i=Array.isArray(r)?r[0]:r;H.error(typeof i==`string`&&i?i:this.$t(`subsite.message.createFailed`))}finally{this.creating.submitting=!1}},onOpenSite(e){if(!e.origin)return;let t=[{href:`https://${e.origin}/`,hostname:e.origin,isCustom:!1}],n=this.customDomainsFor(e);for(let e of n)e.status===Re.Active&&e.hostname&&t.push({href:`https://${e.hostname}/`,hostname:e.hostname,isCustom:!0});if(t.length<=1){window.open(t[0].href,`_blank`,`noopener`);return}this.opening.urls=t,this.opening.visible=!0},onConfirmOpen(e){this.opening.visible=!1,window.open(e,`_blank`,`noopener`)},customDomainsFor(e){if(!e.id)return[];let t=this.domainsBySite[e.id]||[],n=e=>e===Re.Active?0:e===Re.Pending?1:2;return[...t].sort((e,t)=>{let r=n(e.status)-n(t.status);return r===0?(e.hostname||``).localeCompare(t.hostname||``):r})},onManageSite(e){if(!e.origin)return;let t=this.customDomainsFor(e).find(e=>e.status===Re.Active&&e.hostname)?.hostname||e.origin;window.open(`https://${t}/?dialog=settings`,`_blank`,`noopener`)},async onDeleteSite(e){if(!(!e.id||!e.origin)){try{await xi.confirm(this.$t(`subsite.message.deleteConfirm`,{origin:e.origin}),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`),confirmButtonClass:`el-button--danger`})}catch{return}this.deletingId=e.id;try{if(await ui.delete(e.id),this.items=this.items.filter(t=>t.id!==e.id),e.id&&this.domainsBySite[e.id]){let t={...this.domainsBySite};delete t[e.id],this.domainsBySite=t}H.success(this.$t(`subsite.message.deleted`,{origin:e.origin}))}catch(e){let t=e?.response?.data?.detail||e?.message;H.error(typeof t==`string`?t:this.$t(`subsite.message.deleteFailed`))}finally{this.deletingId=null}}},rowUrl(e){return e.origin?`https://${e.origin}/`:`#`},formatDate(e){if(!e)return`-`;try{return new Date(e).toLocaleString()}catch{return e}}}}),Qp={class:`subsite-settings`},$p={class:`header`},em={class:`settings-title`},tm={class:`settings-tip`},nm={class:`domain-list`},rm=[`href`],im=[`href`],am={key:1,class:`custom-domain muted`},om={class:`hostname`},sm={key:2,class:`custom-domain muted`},cm={class:`hostname`},lm={key:0,class:`row-title`},um={class:`row-actions`},dm={class:`open-hint`},fm={class:`open-actions`},pm={class:`hint`};function mm(t,r,i,a,s,l){let f=T(`section-notice`),m=T(`plus`),h=T(`el-button`),g=T(`el-empty`),_=T(`el-tag`),v=T(`el-table-column`),y=T(`el-table`),b=T(`el-card`),S=T(`el-dialog`),C=T(`el-input`),w=T(`el-form-item`),ee=T(`el-form`),E=P(`loading`);return L(),p(`div`,Qp,[u(f,{tone:`official`,text:t.$t(`common.settings.officialOnlyHint`)},null,8,[`text`]),e(`div`,$p,[e(`div`,null,[e(`p`,em,c(t.$t(`subsite.title.index`)),1),e(`p`,tm,c(t.$t(`subsite.message.indexTip`)),1)]),u(h,{type:`primary`,round:``,disabled:!t.canCreate,onClick:t.onOpenCreate},{default:M(()=>[u(m,{size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`subsite.button.create`)),1)]),_:1},8,[`disabled`,`onClick`])]),O((L(),A(b,{shadow:`never`,class:`list-card`},{default:M(()=>[!t.loading&&t.items.length===0?(L(),A(g,{key:0,description:t.$t(`subsite.message.empty`)},null,8,[`description`])):(L(),A(y,{key:1,data:t.items,stripe:``,class:`subsite-table`},{default:M(()=>[u(v,{label:t.$t(`subsite.field.origin`),prop:`origin`,"min-width":`240`},{default:M(({row:n})=>[e(`div`,nm,[e(`a`,{href:t.rowUrl(n),target:`_blank`,rel:`noopener`,class:`origin-link primary`},c(n.origin),9,rm),(L(!0),p(x,null,F(t.customDomainsFor(n),n=>(L(),p(x,{key:n.id},[n.status===t.SiteDomainStatus.Active?(L(),p(`a`,{key:0,href:`https://${n.hostname}/`,target:`_blank`,rel:`noopener`,class:`custom-domain origin-link`},[o(c(n.hostname)+` `,1),u(_,{size:`small`,type:`success`,effect:`plain`,round:``},{default:M(()=>[o(c(t.$t(`subsite.status.active`)),1)]),_:1})],8,im)):n.status===t.SiteDomainStatus.Pending?(L(),p(`div`,am,[e(`span`,om,c(n.hostname),1),u(_,{size:`small`,type:`warning`,effect:`plain`,round:``},{default:M(()=>[o(c(t.$t(`subsite.status.pending`)),1)]),_:1})])):n.status===t.SiteDomainStatus.Failed?(L(),p(`div`,sm,[e(`span`,cm,c(n.hostname),1),u(_,{size:`small`,type:`danger`,effect:`plain`,round:``},{default:M(()=>[o(c(t.$t(`subsite.status.failed`)),1)]),_:1})])):d(``,!0)],64))),128))]),n.title?(L(),p(`div`,lm,c(n.title),1)):d(``,!0)]),_:1},8,[`label`]),u(v,{label:t.$t(`subsite.field.createdAt`),prop:`created_at`,width:`170`},{default:M(({row:n})=>[e(`span`,null,c(t.formatDate(n.created_at)),1)]),_:1},8,[`label`]),u(v,{label:t.$t(`subsite.field.actions`),width:`260`,fixed:`right`,align:`right`},{default:M(({row:n})=>[e(`span`,um,[u(h,{size:`small`,round:``,onClick:e=>t.onOpenSite(n)},{default:M(()=>[o(c(t.$t(`subsite.button.open`)),1)]),_:1},8,[`onClick`]),u(h,{size:`small`,round:``,onClick:e=>t.onManageSite(n)},{default:M(()=>[o(c(t.$t(`subsite.button.manage`)),1)]),_:1},8,[`onClick`]),u(h,{size:`small`,round:``,type:`danger`,plain:``,loading:t.deletingId===n.id,onClick:e=>t.onDeleteSite(n)},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`loading`,`onClick`])])]),_:1},8,[`label`])]),_:1},8,[`data`]))]),_:1})),[[E,t.loading]]),u(S,{modelValue:t.opening.visible,"onUpdate:modelValue":r[0]||=e=>t.opening.visible=e,title:t.$t(`subsite.title.openSite`),width:`420px`,class:`open-dialog`,"align-center":``,"append-to-body":``},{default:M(()=>[e(`p`,dm,c(t.$t(`subsite.message.openSiteHint`)),1),e(`div`,fm,[(L(!0),p(x,null,F(t.opening.urls,e=>(L(),A(h,{key:e.href,round:``,type:`primary`,onClick:n=>t.onConfirmOpen(e.href)},{default:M(()=>[o(c(t.$t(`subsite.button.open`))+` `+c(e.hostname),1)]),_:2},1032,[`onClick`]))),128))])]),_:1},8,[`modelValue`,`title`]),u(S,{modelValue:t.creating.visible,"onUpdate:modelValue":r[4]||=e=>t.creating.visible=e,title:t.$t(`subsite.title.create`),width:`480px`,class:`create-dialog`},{footer:M(()=>[e(`span`,null,[u(h,{round:``,onClick:t.onCancelCreate},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1},8,[`onClick`]),u(h,{round:``,type:`primary`,loading:t.creating.submitting,disabled:!t.creating.form.slug.trim(),onClick:t.onSubmitCreate},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])]),default:M(()=>[u(ee,{model:t.creating.form,"label-width":`auto`,class:`form`,onSubmit:r[3]||=n(()=>{},[`prevent`])},{default:M(()=>[u(w,{label:t.$t(`subsite.field.slug`),required:``},{default:M(()=>[u(C,{modelValue:t.creating.form.slug,"onUpdate:modelValue":r[1]||=e=>t.creating.form.slug=e,placeholder:t.$t(`subsite.placeholder.slug`),maxlength:`32`,"show-word-limit":``,autofocus:``},{append:M(()=>[o(`.`+c(t.subdomainZone),1)]),_:1},8,[`modelValue`,`placeholder`]),e(`span`,pm,c(t.$t(`subsite.message.slugTip`)),1)]),_:1},8,[`label`]),u(w,{label:t.$t(`subsite.field.title`)},{default:M(()=>[u(C,{modelValue:t.creating.form.title,"onUpdate:modelValue":r[2]||=e=>t.creating.form.title=e,placeholder:t.$t(`subsite.placeholder.title`),maxlength:`80`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`])]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])])}var hm=G(Zp,[[`render`,mm],[`__scopeId`,`data-v-7394fdb6`]]),gm=/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/,_m=[`acedata.cloud`,`surl.id`,`localhost`];function vm(e){let t=(e||``).trim().toLowerCase();if(!t)return{ok:!1,reason:`empty`};if(t.includes(`://`))try{t=new URL(t).hostname||``}catch{return{ok:!1,reason:`invalid_url`}}if(t=t.replace(/\/.*$/,``).split(`:`)[0],!t)return{ok:!1,reason:`empty`};if(!t.includes(`.`))return{ok:!1,reason:`no_dot`};for(let e of _m)if(t===e||t.endsWith(`.`+e))return{ok:!1,reason:`reserved`};let n=t.split(`.`);if(n.length<2)return{ok:!1,reason:`too_few_labels`};for(let e of n)if(!e||!gm.test(e))return{ok:!1,reason:`bad_label`};return{ok:!0,value:t}}var ym=z({name:`CustomDomainSetting`,components:{ElButton:W,ElEmpty:et,ElForm:Ae,ElFormItem:ke,ElInput:Ln,ElTag:Pn,ElDivider:Xe,SectionNotice:qu},directives:{loading:Ai},data(){return{loading:!1,domains:[],bind:{hostname:``},binding:!1,busy:{id:null,action:null}}},computed:{site(){return this.$store.state.site},displayDomains(){return this.domains.map(e=>this.normalizeDomain(e)).filter(e=>!!e).map(e=>({...e,dns_instructions:e.dns_instructions||this.buildDnsInstructions(e)}))}},mounted(){this.fetchDomains()},methods:{async fetchDomains(){if(this.site?.id){this.loading=!0;try{let{data:e}=await Lr.getAll({site:this.site.id});this.domains=Array.isArray(e?.items)?e.items.map(e=>this.normalizeDomain(e)).filter(e=>!!e):[]}catch(e){console.error(`failed to load domains`,e),H.error(this.$t(`subsite.message.domainsLoadFailed`))}finally{this.loading=!1}}},async onBind(){if(!this.site?.id)return;let e=vm(this.bind.hostname);if(!e.ok){H.warning(this.$t(`subsite.message.hostnameInvalid`));return}this.binding=!0;try{let{data:t}=await Lr.create({site:this.site.id,hostname:e.value});H.success(this.$t(`subsite.message.domainCreated`));let n=this.normalizeDomain(t);n?this.replaceRow(n):await this.fetchDomains(),this.bind.hostname=``}catch(t){let n=t?.response?.data;if(n?.code===`duplication`){H.error(this.$t(`subsite.message.domainTaken`,{hostname:e.value}));return}let r=n?.hostname||n?.detail||n?.site||t?.message;H.error(typeof r==`string`?r:this.$t(`subsite.message.domainCreateFailed`))}finally{this.binding=!1}},async onVerify(e){if(e.id){this.busy={id:e.id,action:`verify`};try{let{data:t}=await Lr.verify(e.id);this.replaceRow(t),t.status===`Active`?H.success(this.$t(`subsite.message.domainActive`)):t.status===`Failed`&&H.error(t.status_reason||this.$t(`subsite.message.domainFailed`))}catch(e){let t=e?.response?.data?.detail||e?.message;H.error(typeof t==`string`?t:this.$t(`subsite.message.domainVerifyFailed`))}finally{this.busy={id:null,action:null}}}},async onRefresh(e){if(e.id){this.busy={id:e.id,action:`refresh`};try{let{data:t}=await Lr.get(e.id);this.replaceRow(t)}catch(e){console.error(`refresh failed`,e)}finally{this.busy={id:null,action:null}}}},async onDelete(e){if(!(!e.id||!e.hostname)){try{await xi.confirm(this.$t(`subsite.message.domainDeleteConfirm`,{hostname:e.hostname}),this.$t(`common.button.delete`),{type:`warning`,confirmButtonText:this.$t(`common.button.delete`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.busy={id:e.id,action:`delete`};try{await Lr.delete(e.id),this.domains=this.domains.filter(t=>t.id!==e.id)}catch(e){let t=e?.response?.data?.detail||e?.message;H.error(typeof t==`string`?t:this.$t(`subsite.message.domainDeleteFailed`))}finally{this.busy={id:null,action:null}}}},replaceRow(e){let t=this.normalizeDomain(e);if(!t)return;let n=this.domains.findIndex(t=>t.id===e.id);n>=0?this.domains.splice(n,1,t):this.domains=[t,...this.domains]},normalizeDomain(e){if(!e||typeof e!=`object`)return null;let t=e;return!t.id||!t.hostname?null:t},buildDnsInstructions(e){if(e.status===`Active`)return null;let t=(e.hostname||``).trim(),n=(e.proxy_cname||this.site?.metadata?.proxy_cname||``).trim();return!t||!n?null:{step:`cname`,record_type:`CNAME`,record_name:t,record_value:n,instructions:this.$t(`subsite.message.domainsIntro`)}},isBusy(e,t){return this.busy.id===e.id?t?this.busy.action===t:this.busy.action!==null:!1},statusLabel(e){if(!e)return`-`;let t=`subsite.status.${e.charAt(0).toLowerCase()+e.slice(1)}`;return this.$t(t)},statusTagType(e){return e===`Active`?`success`:e===`Failed`?`danger`:`warning`}}}),bm={class:`custom-domain-settings`},xm={class:`header`},Sm={class:`settings-title`},Cm={class:`settings-tip`},wm={class:`domains-body`},Tm={class:`domain-row-head`},Em={class:`hostname`},Dm={class:`row-actions`},Om={key:0,class:`status-reason error`},km={key:1,class:`dns-instructions`},Am={class:`instructions`},jm={class:`dns-record`},Mm={class:`break`},Nm={class:`record-name-hint`},Pm={class:`bind-title`},Fm={class:`form-tip`};function Im(t,r,i,a,s,l){let f=T(`section-notice`),m=T(`el-empty`),h=T(`el-tag`),g=T(`el-button`),_=T(`el-divider`),v=T(`el-input`),y=T(`el-form-item`),b=T(`el-form`),S=P(`loading`);return L(),p(`div`,bm,[u(f,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`div`,xm,[e(`p`,Sm,c(t.$t(`common.settings.customDomain`)),1),e(`p`,Cm,c(t.$t(`subsite.message.domainsIntro`)),1)]),O((L(),p(`div`,wm,[!t.loading&&t.displayDomains.length===0?(L(),A(m,{key:0,description:t.$t(`subsite.message.domainsEmpty`),"image-size":80},null,8,[`description`])):d(``,!0),(L(!0),p(x,null,F(t.displayDomains,n=>(L(),p(`div`,{key:n.id,class:`domain-row`},[e(`div`,Tm,[e(`strong`,Em,c(n.hostname),1),u(h,{type:t.statusTagType(n.status),size:`small`,class:`status-tag`,round:``},{default:M(()=>[o(c(t.statusLabel(n.status)),1)]),_:2},1032,[`type`]),e(`span`,Dm,[n.status===`Active`?d(``,!0):(L(),A(g,{key:0,size:`small`,type:`primary`,round:``,loading:t.isBusy(n,`verify`),disabled:t.isBusy(n)&&!t.isBusy(n,`verify`),onClick:e=>t.onVerify(n)},{default:M(()=>[o(c(t.$t(`subsite.button.verify`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])),n.status===`Active`?(L(),A(g,{key:1,size:`small`,round:``,loading:t.isBusy(n,`refresh`),disabled:t.isBusy(n)&&!t.isBusy(n,`refresh`),onClick:e=>t.onRefresh(n)},{default:M(()=>[o(c(t.$t(`subsite.button.refresh`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])):d(``,!0),u(g,{size:`small`,type:`danger`,round:``,plain:``,loading:t.isBusy(n,`delete`),disabled:t.isBusy(n)&&!t.isBusy(n,`delete`),onClick:e=>t.onDelete(n)},{default:M(()=>[o(c(t.$t(`common.button.delete`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])])]),n.status_reason?(L(),p(`div`,Om,c(n.status_reason),1)):d(``,!0),n.dns_instructions?(L(),p(`div`,km,[e(`p`,Am,c(n.dns_instructions.instructions),1),e(`table`,jm,[e(`tbody`,null,[e(`tr`,null,[e(`th`,null,c(t.$t(`subsite.field.recordType`)),1),e(`td`,null,[e(`code`,null,c(n.dns_instructions.record_type),1)])]),e(`tr`,null,[e(`th`,null,c(t.$t(`subsite.field.recordName`)),1),e(`td`,null,[e(`code`,null,c(n.dns_instructions.record_name),1)])]),e(`tr`,null,[e(`th`,null,c(t.$t(`subsite.field.recordValue`)),1),e(`td`,null,[e(`code`,Mm,c(n.dns_instructions.record_value),1)])])])]),e(`p`,Nm,c(t.$t(`subsite.message.recordNameHint`)),1)])):d(``,!0)]))),128)),u(_),e(`h4`,Pm,c(t.$t(`subsite.title.bindDomain`)),1),u(b,{model:t.bind,"label-width":`auto`,class:`form`,onSubmit:r[1]||=n(()=>{},[`prevent`])},{default:M(()=>[u(y,{label:t.$t(`subsite.field.hostname`),required:``},{default:M(()=>[u(v,{modelValue:t.bind.hostname,"onUpdate:modelValue":r[0]||=e=>t.bind.hostname=e,placeholder:t.$t(`subsite.placeholder.hostname`),maxlength:`253`},null,8,[`modelValue`,`placeholder`]),e(`span`,Fm,c(t.$t(`subsite.message.hostnameTip`)),1)]),_:1},8,[`label`]),u(y,null,{default:M(()=>[u(g,{round:``,type:`primary`,loading:t.binding,disabled:!t.bind.hostname.trim(),onClick:t.onBind},{default:M(()=>[o(c(t.$t(`subsite.button.bindDomain`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),_:1})]),_:1},8,[`model`])])),[[S,t.loading]])])}var Lm=G(ym,[[`render`,Im],[`__scopeId`,`data-v-e66a20b5`]]),Rm=[`email`,`google`,`github`,`apple`,`phone`,`wechat`],zm=z({name:`AuthSetting`,components:{ElAlert:Ie,ElButton:W,ElDialog:U,ElForm:Ae,ElFormItem:ke,ElInput:Ln,ElOption:we,ElSelect:Ce,ElSwitch:st,ElTooltip:Me,SectionNotice:qu},data(){return{smsCustomEnabled:!1,smsUrlDraft:``,smsSecretDraft:``,smsDocVisible:!1,smsTestVisible:!1,smsTesting:!1,smsTest:{url:``,secret:``,region:``,number:``},smsTestResult:null}},computed:{site(){return this.$store.getters.site||{}},auth(){return this.site?.auth||{}},providers(){return this.auth.providers||{}},enabledProviders(){return Rm.filter(e=>this.providers?.[e]?.enabled===!0)},defaultProvider(){return this.auth.default_provider||``},loginMode(){return this.auth.login_mode===`iframe`?`iframe`:`redirect`},providerOptions(){return Rm.map(e=>({value:e,label:this.$t(`site.field.authProvider_${e}`)}))},defaultProviderOptions(){let e=new Set(this.enabledProviders);return this.providerOptions.filter(t=>e.has(t.value))},smsDocRequestExample(){return[`POST https://your-domain/sms-webhook (HTTPS only)`,`Content-Type: application/json`,``,`{`,` "type": "verification.code.request",`,` "site": "your-site.com",`,` "channel": "sms",`,` "purpose": "login",`,` "locale": "en",`,` "to": { "region": "86", "number": "13800000000" },`,` "data": { "code": "123456", "ttl_seconds": 1800 }`,`}`].join(`
6
6
  `)},smsDocSignatureExample(){return[`webhook-id: msg_2b1c... // unique per request`,`webhook-timestamp: 1720000000 // unix seconds`,`webhook-signature: v1,<base64> // see below`,``,`// verify (Standard Webhooks):`,"signed = `${webhook-id}.${webhook-timestamp}.${rawBody}`",`expected = "v1," + base64(HMAC_SHA256(secret, signed))`,`// constant-time compare expected === webhook-signature`].join(`
7
7
  `)},smsDocResponseExample(){return[`HTTP 200 → success`,``,`// or, to signal failure explicitly:`,`{ "success": false, "error": { "message": "..." } }`].join(`
8
- `)}},created(){this.smsUrlDraft=this.auth.sms?.webhook_url||``,this.smsCustomEnabled=!!this.auth.sms?.webhook_url},methods:{isProviderEnabled(e){return this.providers?.[e]?.enabled===!0},isOnlyEnabledProvider(e){return this.enabledProviders.length===1&&this.enabledProviders[0]===e},onProviderToggle(e,t){let n=new Set(this.enabledProviders);if(t?n.add(e):n.delete(e),n.size===0){H.warning(this.$t(`site.message.authProvidersAtLeastOne`));return}let r={...this.providers||{}};for(let e of zm)r[e]={...r[e]||{},enabled:n.has(e)};let i=this.defaultProvider;(!i||!n.has(i))&&(i=zm.find(e=>n.has(e))||e),this.persistAuth({...this.auth,providers:r,default_provider:i})},onDefaultProviderChange(e){if(!e)return;let t={...this.providers||{}};for(let n of zm)t[n]={...t[n]||{},enabled:n===e?!0:t[n]?.enabled===!0};this.persistAuth({...this.auth,providers:t,default_provider:e})},onLoginModeChange(e){this.persistAuth({...this.auth,login_mode:e})},async onSmsCustomToggle(e){if(e){this.smsCustomEnabled=!0;return}if(this.auth.sms?.webhook_url)try{await xi.confirm(this.$t(`site.message.authSmsWebhookDisableConfirm`),this.$t(`site.field.authSmsWebhookDisableTitle`),{type:`warning`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.smsCustomEnabled=!1,this.smsUrlDraft=``,this.smsSecretDraft=``;let t={...this.auth};delete t.sms,this.persistAuth(t)},onSmsWebhookUrlChange(e){let t=(e||``).trim();this.smsUrlDraft=t;let n={...this.auth.sms||{}};t?n.webhook_url=t:delete n.webhook_url,this.persistAuth({...this.auth,sms:n})},onSmsWebhookSecretChange(e){let t=(e||``).trim();t&&this.persistAuth({...this.auth,sms:{...this.auth.sms||{},webhook_secret:t}})},openSmsTest(){this.smsTest={url:this.smsUrlDraft,secret:this.smsSecretDraft,region:``,number:``},this.smsTestResult=null,this.smsTestVisible=!0},async runSmsTest(){let e=(this.smsTest.url||``).trim(),t=(this.smsTest.secret||``).trim();if(!(!e||!t)){this.smsTesting=!0,this.smsTestResult=null;try{let{data:n}=await Nn.test({webhook_url:e,webhook_secret:t,site:this.site?.origin||``,region:(this.smsTest.region||``).trim(),receiver:(this.smsTest.number||``).trim()});n?.success?this.smsTestResult={ok:!0,message:this.$t(`site.message.authSmsWebhookTestOk`)}:this.smsTestResult={ok:!1,message:n?.message||this.$t(`site.message.authSmsWebhookTestFailed`)}}catch(e){let t=e?.response?.data?.message||e?.message||this.$t(`site.message.authSmsWebhookTestFailed`);this.smsTestResult={ok:!1,message:t}}finally{this.smsTesting=!1}}},persistAuth(e){let t={...In(this.site),auth:e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})}}}),Vm={class:`settings-list`},Hm={class:`settings-item`},Um={class:`settings-label`},Wm={class:`settings-title`},Gm={class:`settings-tip`},Km={class:`settings-content auth-providers-content`},qm={class:`auth-providers-list`},Jm={class:`auth-providers-row__label`},Ym={class:`settings-item`},Xm={class:`settings-label`},Zm={class:`settings-title`},Qm={class:`settings-tip`},$m={class:`settings-content`},eh={class:`settings-item`},th={class:`settings-label`},nh={class:`settings-title`},rh={class:`settings-content`},ih={class:`settings-item`},ah={class:`settings-label`},oh={class:`settings-title`},sh={class:`settings-tip`},ch={class:`settings-content auth-sms-content`},lh={class:`auth-sms-toggle`},uh={class:`auth-sms-toggle__label`},dh={class:`auth-sms-actions`},fh={class:`auth-sms-doc`},ph={class:`auth-sms-code`},mh={class:`auth-sms-code`},hh={class:`auth-sms-code`};function gh(t,n,r,i,a,s){let l=T(`section-notice`),f=T(`el-switch`),m=T(`el-option`),h=T(`el-select`),g=T(`el-button`),_=T(`el-tooltip`),v=T(`el-input`),y=T(`el-dialog`),b=T(`el-form-item`),S=T(`el-form`),C=T(`el-alert`);return L(),p(`div`,Vm,[u(l,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,Hm,[e(`div`,Um,[e(`p`,Wm,c(t.$t(`site.field.authEnabledProviders`)),1),e(`p`,Gm,c(t.$t(`site.message.authEnabledProvidersTip`)),1)]),e(`div`,Km,[e(`ul`,qm,[(L(!0),p(x,null,F(t.providerOptions,n=>(L(),p(`li`,{key:n.value,class:`auth-providers-row`},[e(`span`,Jm,c(n.label),1),u(f,{"model-value":t.isProviderEnabled(n.value),disabled:t.isOnlyEnabledProvider(n.value),onChange:e=>t.onProviderToggle(n.value,!!e)},null,8,[`model-value`,`disabled`,`onChange`])]))),128))])])]),e(`section`,Ym,[e(`div`,Xm,[e(`p`,Zm,c(t.$t(`site.field.authDefaultProvider`)),1),e(`p`,Qm,c(t.$t(`site.message.authDefaultProviderTip`)),1)]),e(`div`,$m,[u(h,{"model-value":t.defaultProvider,class:`auth-default-provider-select`,placeholder:t.$t(`site.placeholder.authDefaultProvider`),onChange:t.onDefaultProviderChange},{default:M(()=>[(L(!0),p(x,null,F(t.defaultProviderOptions,e=>(L(),A(m,{key:e.value,value:e.value,label:e.label},null,8,[`value`,`label`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onChange`])])]),e(`section`,eh,[e(`div`,th,[e(`p`,nh,c(t.$t(`common.settings.loginMode`)),1)]),e(`div`,rh,[u(h,{"model-value":t.loginMode,class:`auth-default-provider-select`,onChange:t.onLoginModeChange},{default:M(()=>[u(m,{value:`redirect`,label:t.$t(`common.loginMode.redirect`)},null,8,[`label`]),u(m,{value:`iframe`,label:t.$t(`common.loginMode.iframe`)},null,8,[`label`])]),_:1},8,[`model-value`,`onChange`])])]),e(`section`,ih,[e(`div`,ah,[e(`p`,oh,[o(c(t.$t(`site.field.authSmsWebhook`))+` `,1),u(g,{link:``,type:`primary`,class:`auth-sms-doc-link`,onClick:n[0]||=e=>t.smsDocVisible=!0},{default:M(()=>[o(c(t.$t(`site.field.authSmsWebhookDoc`)),1)]),_:1})]),e(`p`,sh,c(t.$t(`site.message.authSmsWebhookTip`)),1)]),e(`div`,ch,[u(_,{disabled:t.isProviderEnabled(`phone`),content:t.$t(`site.message.authSmsWebhookNeedsPhone`),placement:`top`},{default:M(()=>[e(`span`,lh,[u(f,{"model-value":t.smsCustomEnabled,disabled:!t.isProviderEnabled(`phone`),onChange:n[1]||=e=>t.onSmsCustomToggle(!!e)},null,8,[`model-value`,`disabled`]),e(`span`,uh,c(t.$t(`site.field.authSmsWebhookEnable`)),1)])]),_:1},8,[`disabled`,`content`]),t.smsCustomEnabled&&t.isProviderEnabled(`phone`)?(L(),p(x,{key:0},[u(v,{"model-value":t.smsUrlDraft,class:`auth-sms-input`,placeholder:t.$t(`site.placeholder.authSmsWebhookUrl`),"onUpdate:modelValue":n[2]||=e=>t.smsUrlDraft=e,onChange:t.onSmsWebhookUrlChange},null,8,[`model-value`,`placeholder`,`onChange`]),u(v,{"model-value":t.smsSecretDraft,type:`password`,"show-password":``,class:`auth-sms-input`,placeholder:t.$t(`site.placeholder.authSmsWebhookSecret`),"onUpdate:modelValue":n[3]||=e=>t.smsSecretDraft=e,onChange:t.onSmsWebhookSecretChange},null,8,[`model-value`,`placeholder`,`onChange`]),e(`div`,dh,[u(g,{disabled:!t.smsUrlDraft,onClick:t.openSmsTest},{default:M(()=>[o(c(t.$t(`site.field.authSmsWebhookTest`)),1)]),_:1},8,[`disabled`,`onClick`])])],64)):d(``,!0)])]),u(y,{modelValue:t.smsDocVisible,"onUpdate:modelValue":n[5]||=e=>t.smsDocVisible=e,title:t.$t(`site.field.authSmsWebhookDocTitle`),class:`auth-sms-dialog`,width:`640px`},{footer:M(()=>[u(g,{type:`primary`,onClick:n[4]||=e=>t.smsDocVisible=!1},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1})]),default:M(()=>[e(`div`,fh,[e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocIntro`)),1),e(`h4`,null,c(t.$t(`site.field.authSmsWebhookDocRequest`)),1),e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocRequest`)),1),e(`pre`,ph,c(t.smsDocRequestExample),1),e(`h4`,null,c(t.$t(`site.field.authSmsWebhookDocHeaders`)),1),e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocHeaders`)),1),e(`pre`,mh,c(t.smsDocSignatureExample),1),e(`h4`,null,c(t.$t(`site.field.authSmsWebhookDocResponse`)),1),e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocResponse`)),1),e(`pre`,hh,c(t.smsDocResponseExample),1)])]),_:1},8,[`modelValue`,`title`]),u(y,{modelValue:t.smsTestVisible,"onUpdate:modelValue":n[11]||=e=>t.smsTestVisible=e,title:t.$t(`site.field.authSmsWebhookTestTitle`),class:`auth-sms-dialog`,width:`480px`},{footer:M(()=>[u(g,{onClick:n[10]||=e=>t.smsTestVisible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(g,{type:`primary`,loading:t.smsTesting,disabled:!t.smsTest.url||!t.smsTest.secret,onClick:t.runSmsTest},{default:M(()=>[o(c(t.$t(`site.field.authSmsWebhookTestSend`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:M(()=>[u(S,{"label-position":`top`},{default:M(()=>[u(b,{label:t.$t(`site.placeholder.authSmsWebhookUrl`)},{default:M(()=>[u(v,{modelValue:t.smsTest.url,"onUpdate:modelValue":n[6]||=e=>t.smsTest.url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),u(b,{label:t.$t(`site.placeholder.authSmsWebhookSecret`)},{default:M(()=>[u(v,{modelValue:t.smsTest.secret,"onUpdate:modelValue":n[7]||=e=>t.smsTest.secret=e,type:`password`,"show-password":``},null,8,[`modelValue`])]),_:1},8,[`label`]),u(b,{label:t.$t(`site.field.authSmsWebhookTestRegion`)},{default:M(()=>[u(v,{modelValue:t.smsTest.region,"onUpdate:modelValue":n[8]||=e=>t.smsTest.region=e,placeholder:`86`},null,8,[`modelValue`])]),_:1},8,[`label`]),u(b,{label:t.$t(`site.field.authSmsWebhookTestNumber`)},{default:M(()=>[u(v,{modelValue:t.smsTest.number,"onUpdate:modelValue":n[9]||=e=>t.smsTest.number=e},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1}),t.smsTestResult?(L(),A(C,{key:0,type:t.smsTestResult.ok?`success`:`error`,title:t.smsTestResult.message,closable:!1,"show-icon":``},null,8,[`type`,`title`])):d(``,!0)]),_:1},8,[`modelValue`,`title`])])}var _h=G(Bm,[[`render`,gh],[`__scopeId`,`data-v-bf82e562`]]),vh=z({name:`AboutSetting`,components:{ElButton:W,ElImage:Ei,FontAwesomeIcon:Fi,GlobeIcon:yt,LaunchIcon:la},emits:[`switch-tab`],data(){return{faGithub:Nr}},computed:{site(){return this.$store?.state?.site},isFirstPartyOfficial(){return Er()||si()||Xr()},contacts(){return wi(this.site)},hasContacts(){return or(this.site)}},methods:{contactUsesFontAwesome:hu,contactIconFor(e){return mu(e)},contactHref(e){if(e.url)return e.url;let t=pu(e.type).scheme;return e.value&&t===`tel`?`tel:${e.value}`:e.value&&t===`mailto`?`mailto:${e.value}`:``},linkAttrs(e){return/^https?:/i.test(this.contactHref(e))?{target:`_blank`,rel:`noopener noreferrer`}:{}},contactText(e){if(e.label)return e.label;if(e.value)return e.value;let t=gu(e.type);if(t)return t;let n=vu(e.type);return n?this.$t(n):this.capitalize(e.type)},capitalize(e){return e?e.charAt(0).toUpperCase()+e.slice(1):``},onBuildOneClick(){this.$emit(`switch-tab`,{tab:gn,autoOpenCreateSubsite:!0})}}}),yh={class:`settings-list`},bh={class:`settings-item`},xh={class:`settings-label`},Sh={class:`settings-title`},Ch={class:`settings-tip`},wh={class:`settings-content`},Th={href:`https://github.com/AceDataCloud/Nexior`,target:`_blank`,rel:`noopener noreferrer`,class:`about-link`},Eh={class:`settings-item`},Dh={class:`settings-label`},Oh={class:`settings-title`},kh={class:`settings-tip`},Ah={class:`settings-content`},jh={href:`https://platform.acedata.cloud`,target:`_blank`,rel:`noopener noreferrer`,class:`about-link`},Mh={class:`settings-item`},Nh={class:`settings-label`},Ph={class:`settings-title`},Fh={class:`settings-tip`},Ih={class:`settings-content`},Lh={key:1,class:`settings-item contacts-item`},Rh={class:`settings-label`},zh={class:`settings-title`},Bh={class:`settings-tip`},Vh={class:`settings-content contacts-content`},Hh=[`href`],Uh={key:1,class:`about-link contact-static`};function Wh(t,n,r,a,s,l){let f=T(`font-awesome-icon`),m=T(`globe-icon`),h=T(`launch-icon`),g=T(`el-button`),_=T(`el-image`);return L(),p(`div`,yh,[t.isFirstPartyOfficial?(L(),p(x,{key:0},[e(`section`,bh,[e(`div`,xh,[e(`p`,Sh,c(t.$t(`common.settings.poweredBy`)),1),e(`p`,Ch,c(t.$t(`common.settings.poweredByTip`)),1)]),e(`div`,wh,[e(`a`,Th,[u(f,{icon:t.faGithub,class:`icon`},null,8,[`icon`]),n[0]||=e(`span`,null,`Nexior`,-1)])])]),e(`section`,Eh,[e(`div`,Dh,[e(`p`,Oh,c(t.$t(`common.settings.apiService`)),1),e(`p`,kh,c(t.$t(`common.settings.apiServiceTip`)),1)]),e(`div`,Ah,[e(`a`,jh,[u(m,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n[1]||=e(`span`,null,`Ace Data Cloud`,-1)])])]),e(`section`,Mh,[e(`div`,Nh,[e(`p`,Ph,c(t.$t(`common.settings.buildYourOwn`)),1),e(`p`,Fh,c(t.$t(`common.settings.buildYourOwnTip`)),1)]),e(`div`,Ih,[u(g,{type:`primary`,onClick:t.onBuildOneClick},{default:M(()=>[u(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.settings.buildNow`)),1)]),_:1},8,[`onClick`])])])],64)):d(``,!0),t.hasContacts?(L(),p(`section`,Lh,[e(`div`,Rh,[e(`p`,zh,c(t.$t(`common.settings.contactSupport`)),1),e(`p`,Bh,c(t.$t(`common.settings.contactSupportTip`)),1)]),e(`div`,Vh,[(L(!0),p(x,null,F(t.contacts,(n,r)=>(L(),p(`div`,{key:r,class:`contact-entry`},[t.contactHref(n)?(L(),p(`a`,i({key:0,href:t.contactHref(n)},{ref_for:!0},t.linkAttrs(n),{class:`about-link`}),[t.contactUsesFontAwesome(n.type)?(L(),A(f,{key:0,icon:t.contactIconFor(n.type),class:`icon`},null,8,[`icon`])):(L(),A(I(t.contactIconFor(n.type)),{key:1,class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,c(t.contactText(n)),1)],16,Hh)):(L(),p(`span`,Uh,[t.contactUsesFontAwesome(n.type)?(L(),A(f,{key:0,icon:t.contactIconFor(n.type),class:`icon`},null,8,[`icon`])):(L(),A(I(t.contactIconFor(n.type)),{key:1,class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,c(t.contactText(n)),1)])),n.qr?(L(),A(_,{key:2,src:n.qr,"preview-src-list":[n.qr],"preview-teleported":!0,fit:`contain`,class:`contact-qr`},null,8,[`src`,`preview-src-list`])):d(``,!0)]))),128))])])):d(``,!0)])}var Gh=z({name:`UserSetting`,components:{ElDialog:U,ElMenu:it,ElMenuItem:nt,GeneralSetting:qa,ByokSetting:_o,MemorySetting:Uo,SiteSetting:Qd,SiteServicesSetting:If,SeoSetting:op,DistributionSetting:Dp,FunctionSetting:Xp,SubsiteSetting:gm,CustomDomainSetting:Rm,AuthSetting:_h,AboutSetting:G(vh,[[`render`,Wh],[`__scopeId`,`data-v-ab745e5e`]]),LocalToolsSetting:_(()=>Mn(()=>import(`./LocalTools-Y7QXXXv1.js`).then(e=>e.n),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34])))},props:{visible:{type:Boolean,default:!1},initialTab:{type:String,default:``}},emits:[`update:visible`],data(){return{SETTING_TAB_GENERAL:zt,SETTING_TAB_API_KEY:Ht,SETTING_TAB_MEMORY:Dn,SETTING_TAB_SITE:Sn,SETTING_TAB_SITE_SERVICES:Tn,SETTING_TAB_SEO:`seo`,SETTING_TAB_DISTRIBUTION:an,SETTING_TAB_FUNCTION:qt,SETTING_TAB_AUTH:tn,SETTING_TAB_SUBSITES:gn,SETTING_TAB_CUSTOM_DOMAIN:$t,SETTING_TAB_ABOUT:Cn,SETTING_TAB_LOCAL_TOOLS:pn,activeTab:zt,autoOpenCreateSubsite:!1,mobile:typeof window<`u`&&window.innerWidth<768}},computed:{navItems(){return[{key:zt,label:this.$t(`common.settings.general`),icon:E(da),visible:!0},{key:Ht,label:this.$t(`common.settings.apiKey`),icon:E(St),visible:!0},{key:Dn,label:this.$t(`common.settings.memory`),icon:E(dt),visible:!0},{key:Sn,label:this.$t(`common.settings.site`),icon:E(ca),visible:this.isSiteConfigVisible},{key:Tn,label:this.$t(`common.settings.siteServices`),icon:E(Mt),visible:this.isSiteConfigVisible},{key:`seo`,label:this.$t(`common.settings.seo`),icon:E(fa),visible:this.isSiteConfigVisible},{key:an,label:this.$t(`common.settings.distribution`),icon:E(vt),visible:this.isSiteConfigVisible},{key:qt,label:this.$t(`common.settings.function`),icon:E(Lt),visible:this.isSiteConfigVisible},{key:tn,label:this.$t(`common.settings.auth`),icon:E(ut),visible:this.isSiteConfigVisible},{key:gn,label:this.$t(`common.settings.subsites`),icon:E(ua),visible:this.isSubsitesVisible},{key:$t,label:this.$t(`common.settings.customDomain`),icon:E(yt),visible:this.isCustomDomainVisible},{key:pn,label:this.$t(`common.settings.localTools`),icon:E(Ct),visible:this.isDesktopApp},{key:Cn,label:this.$t(`common.settings.about`),icon:E(xt),visible:!0}]},visibleNavItems(){return this.navItems.filter(e=>e.visible)},currentTab(){return this.visibleNavItems.some(e=>e.key===this.activeTab)?this.activeTab:zt},isSiteAdmin(){return!!this.$store?.state?.site?.admins?.includes(this.$store.getters.user?.id)},isMainOfficialHost(){return Er()},isWebSurface(){return ei()},isSiteConfigVisible(){return this.isWebSurface&&this.isSiteAdmin},isSubsitesVisible(){return this.isWebSurface&&this.isMainOfficialHost},isCustomDomainVisible(){return this.isWebSurface&&!this.isMainOfficialHost&&this.isSiteAdmin},isDesktopApp(){return!!Pn()},dialogWidth(){return this.mobile?`94vw`:this.currentTab===`apiKey`||this.currentTab===`siteServices`||this.currentTab===`subsites`?`min(900px, 94vw)`:`50%`}},watch:{visible(e){e&&(this.activeTab=this.initialTab||`general`,this.autoOpenCreateSubsite=!1)}},mounted(){window.addEventListener(`resize`,this.onResize)},beforeUnmount(){window.removeEventListener(`resize`,this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},onClose(){this.$emit(`update:visible`,!1)},onSwitchTab(e){e?.tab&&(this.activeTab=e.tab,this.autoOpenCreateSubsite=e.tab===`subsites`&&!!e.autoOpenCreateSubsite)}}}),Kh={key:0},qh={key:1},Jh={key:2},Yh={key:3},Xh={key:4},Zh={key:5},Qh={key:6},$h={key:7},eg={key:8},tg={key:9},ng={key:10},rg={key:11},ig={key:12};function ag(t,n,r,i,s,l){let f=T(`el-menu-item`),m=T(`el-menu`),h=T(`general-setting`),g=T(`byok-setting`),_=T(`memory-setting`),v=T(`site-setting`),y=T(`site-services-setting`),b=T(`seo-setting`),S=T(`distribution-setting`),C=T(`function-setting`),w=T(`auth-setting`),ee=T(`subsite-setting`),E=T(`custom-domain-setting`),D=T(`local-tools-setting`),O=T(`about-setting`),k=T(`el-dialog`);return L(),A(k,{class:a([`settings-dialog`,t.mobile?`is-mobile`:``]),"model-value":t.visible,width:t.dialogWidth,onClose:t.onClose},{default:M(()=>[e(`div`,{class:a([`settings`,t.mobile?`flex flex-col`:`flex h-[450px]`])},[e(`aside`,{class:a(t.mobile?`border-b w-full`:`h-full border-r`)},[u(m,{class:a([`border-r-0 settings-menu`,t.mobile?`is-mobile flex flex-row overflow-x-auto`:``]),mode:t.mobile?`horizontal`:`vertical`,"default-active":t.currentTab},{default:M(()=>[(L(!0),p(x,null,F(t.visibleNavItems,e=>(L(),A(f,{key:e.key,index:e.key,class:a([`items-center cursor-pointer`,t.mobile?`flex-shrink-0 px-3 py-2 text-sm`:`flex w-[180px] px-2 py-2`,t.currentTab===e.key?`active`:``]),onClick:n=>t.activeTab=e.key},{default:M(()=>[(L(),A(I(e.icon),{class:a(t.mobile?`mr-1.5`:`mr-2`),size:`1em`,"aria-hidden":`true`,focusable:`false`},null,8,[`class`])),o(` `+c(e.label),1)]),_:2},1032,[`index`,`class`,`onClick`]))),128))]),_:1},8,[`class`,`mode`,`default-active`])],2),e(`main`,{class:a([`flex-1 overflow-y-auto`,t.mobile?`p-4`:`p-6`])},[t.currentTab===t.SETTING_TAB_GENERAL?(L(),p(`div`,Kh,[u(h)])):t.currentTab===t.SETTING_TAB_API_KEY?(L(),p(`div`,qh,[u(g)])):t.currentTab===t.SETTING_TAB_MEMORY?(L(),p(`div`,Jh,[u(_)])):t.currentTab===t.SETTING_TAB_SITE&&t.isSiteConfigVisible?(L(),p(`div`,Yh,[u(v)])):t.currentTab===t.SETTING_TAB_SITE_SERVICES&&t.isSiteConfigVisible?(L(),p(`div`,Xh,[u(y)])):t.currentTab===t.SETTING_TAB_SEO&&t.isSiteConfigVisible?(L(),p(`div`,Zh,[u(b)])):t.currentTab===t.SETTING_TAB_DISTRIBUTION&&t.isSiteConfigVisible?(L(),p(`div`,Qh,[u(S)])):t.currentTab===t.SETTING_TAB_FUNCTION&&t.isSiteConfigVisible?(L(),p(`div`,$h,[u(C)])):t.currentTab===t.SETTING_TAB_AUTH&&t.isSiteConfigVisible?(L(),p(`div`,eg,[u(w)])):t.currentTab===t.SETTING_TAB_SUBSITES&&t.isSubsitesVisible?(L(),p(`div`,tg,[u(ee,{"auto-open-create":t.autoOpenCreateSubsite},null,8,[`auto-open-create`])])):t.currentTab===t.SETTING_TAB_CUSTOM_DOMAIN&&t.isCustomDomainVisible?(L(),p(`div`,ng,[u(E)])):t.currentTab===t.SETTING_TAB_LOCAL_TOOLS&&t.isDesktopApp?(L(),p(`div`,rg,[u(D)])):t.currentTab===t.SETTING_TAB_ABOUT?(L(),p(`div`,ig,[u(O,{onSwitchTab:t.onSwitchTab},null,8,[`onSwitchTab`])])):d(``,!0)],2)],2)]),_:1},8,[`class`,`model-value`,`width`,`onClose`])}var og=G(Gh,[[`render`,ag],[`__scopeId`,`data-v-51df28ae`]]),sg=z({name:`DeleteAccountDialog`,components:{ElDialog:U,ElInput:Qn,ElButton:W,ElAlert:Ie},props:{visible:{type:Boolean,default:!1}},emits:[`update:visible`],data(){return{deleteConfirmText:``,deleting:!1}},computed:{user(){return this.$store.getters.user},deleteConfirmMatched(){let e=this.$store.getters.user?.username;return!!e&&this.deleteConfirmText.trim()===e}},methods:{async confirmDeleteAccount(){if(!(!this.deleteConfirmMatched||this.deleting)){this.deleting=!0;try{await Di.deleteMe(),this.deleting=!1,this.$emit(`update:visible`,!1),H.success(this.$t(`common.message.deleteAccountSuccess`).toString()),await this.$store.dispatch(`logout`),this.$router.push({name:Si})}catch{this.deleting=!1,H.error(this.$t(`common.message.deleteAccountFailed`).toString())}}},onClosed(){this.deleteConfirmText=``}}}),cg={class:`delete-consequences`},lg={class:`delete-type-prompt`},ug={class:`delete-username`};function dg(t,n,r,i,a,s){let l=T(`el-alert`),d=T(`el-input`),f=T(`el-button`),p=T(`el-dialog`);return L(),A(p,{"model-value":t.visible,title:t.$t(`common.nav.deleteAccount`),width:`90%`,"align-center":``,class:`delete-account-dialog`,"onUpdate:modelValue":n[2]||=e=>t.$emit(`update:visible`,e),onClosed:t.onClosed},{footer:M(()=>[u(f,{round:``,onClick:n[1]||=e=>t.$emit(`update:visible`,!1)},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(f,{type:`danger`,round:``,disabled:!t.deleteConfirmMatched,loading:t.deleting,onClick:t.confirmDeleteAccount},{default:M(()=>[o(c(t.$t(`common.button.deletePermanently`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])]),default:M(()=>[u(l,{title:t.$t(`common.message.deleteAccountWarning`),type:`error`,closable:!1,"show-icon":``,class:`mb-3`},null,8,[`title`]),e(`p`,cg,c(t.$t(`common.message.deleteAccountConsequences`)),1),e(`p`,lg,c(t.$t(`common.message.deleteAccountTypePrompt`)),1),e(`p`,ug,c(t.user.username),1),u(d,{modelValue:t.deleteConfirmText,"onUpdate:modelValue":n[0]||=e=>t.deleteConfirmText=e,placeholder:t.$t(`common.message.deleteAccountPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`onClosed`])}var fg=z({name:`UserCenter`,components:{CreditsIcon:gt,GlobeIcon:yt,LogoutIcon:sa,MobileIcon:pa,SettingsIcon:da,UserIcon:It,UserRemoveIcon:ma,UserAvatar:ba,UserSetting:og,DeleteAccountDialog:G(sg,[[`render`,dg],[`__scopeId`,`data-v-f6c5bef8`]]),UpdateMenuItem:at,ElDivider:Xe,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElDropdown:$e},data(){return{showMenu:!1,showSetting:!1,showDeleteAccount:!1,settingTab:``}},computed:{user(){return this.$store.getters?.user},authenticated(){return this.$store.getters?.authenticated},isNative(){return si()},isMainOfficialHost(){return Er()},isIOS(){return _i()}},mounted(){document.addEventListener(`click`,this.closeMenu),window.addEventListener(`open-user-settings`,this.onOpenSettingsEvent),this.maybeOpenFromQuery()},unmounted(){document.removeEventListener(`click`,this.closeMenu),window.removeEventListener(`open-user-settings`,this.onOpenSettingsEvent)},methods:{toggleMenu(){this.showMenu=!this.showMenu},closeMenu(e){let t=e.target;this.$el.contains(t)||(this.showMenu=!1)},async onLogout(){await this.$store.dispatch(`logout`)},onLogin(){this.$store.dispatch(`login`,{redirect:this.$route.fullPath})},onDownload(){this.$router.push({name:pi})},onConsole(){this.$router.push({name:dr})},onDistribution(){this.$router.push({name:Or})},onDeleteAccount(){this.showDeleteAccount=!0},onSettings(){this.settingTab=``,this.showSetting=!0},onOpenSettingsEvent(e){this.settingTab=e?.detail?.tab??``,this.showSetting=!0},maybeOpenFromQuery(){let e=this.$route?.query??{},t=e.dialog,n=e.tab;if(!t&&window.location?.search){let e=new URLSearchParams(window.location.search);t=e.get(`dialog`)??void 0,n||=e.get(`tab`)??void 0}if((Array.isArray(t)?t[0]:t)!==`settings`)return;let r=Array.isArray(n)?n[0]:n;this.settingTab=typeof r==`string`?r:``,this.showSetting=!0}}}),pg={class:`center`},mg={key:0,class:`px-4 py-4 text-sm font-medium`};function hg(t,n,r,i,a,s){let l=T(`user-avatar`),f=T(`el-divider`),m=T(`user-icon`),h=T(`el-dropdown-item`),g=T(`mobile-icon`),_=T(`settings-icon`),v=T(`update-menu-item`),y=T(`credits-icon`),b=T(`globe-icon`),S=T(`user-remove-icon`),C=T(`logout-icon`),w=T(`el-dropdown-menu`),ee=T(`el-dropdown`),E=T(`user-setting`),D=T(`delete-account-dialog`);return L(),p(x,null,[e(`div`,pg,[u(ee,{trigger:`click`},{dropdown:M(()=>[t.user.email?(L(),p(`div`,mg,c(t.user?.email),1)):d(``,!0),t.user.email?(L(),A(f,{key:1,class:`mb-1 mt-1`})):d(``,!0),u(w,null,{default:M(()=>[t.authenticated?d(``,!0):(L(),A(h,{key:0,class:`py-2`,onClick:t.onLogin},{default:M(()=>[u(m,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.button.login`)),1)]),_:1},8,[`onClick`])),!t.isNative&&t.isMainOfficialHost?(L(),A(h,{key:1,class:`py-2`,onClick:t.onDownload},{default:M(()=>[u(g,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.mobileApp`)),1)]),_:1},8,[`onClick`])):d(``,!0),u(h,{class:`py-2`,onClick:t.onSettings},{default:M(()=>[u(_,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.setting`)),1)]),_:1},8,[`onClick`]),u(v),u(h,{class:`py-2`,onClick:t.onDistribution},{default:M(()=>[u(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.distribution`)),1)]),_:1},8,[`onClick`]),u(h,{class:`py-2`,onClick:t.onConsole},{default:M(()=>[u(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.console`)),1)]),_:1},8,[`onClick`]),t.isIOS?(L(),A(h,{key:2,class:`py-2`,onClick:t.onDeleteAccount},{default:M(()=>[u(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.deleteAccount`)),1)]),_:1},8,[`onClick`])):d(``,!0),t.authenticated?(L(),A(h,{key:3,class:`py-2`,onClick:t.onLogout},{default:M(()=>[u(C,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.logOut`)),1)]),_:1},8,[`onClick`])):d(``,!0)]),_:1})]),default:M(()=>[u(l,{class:`cursor-pointer`})]),_:1})]),u(E,{visible:t.showSetting,"onUpdate:visible":n[0]||=e=>t.showSetting=e,"initial-tab":t.settingTab},null,8,[`visible`,`initial-tab`]),u(D,{visible:t.showDeleteAccount,"onUpdate:visible":n[1]||=e=>t.showDeleteAccount=e},null,8,[`visible`])],64)}var gg=G(fg,[[`render`,hg]]),_g={[Mi]:`chatgpt`,[ai]:`deepseek`,[Ur]:`grok`,[Rr]:`gemini`,[yr]:`claude`,[Ar]:`kimi`,[Gn]:`midjourney`,[yi]:`flux`,[Un]:`nanobanana`,[Yr]:`openaiimage`,[qn]:`seedream`,[Pi]:`suno`,[ar]:`producer`,[Qr]:`fish`,[ur]:`seedance`,[ci]:`grokvideo`,[sr]:`omni`,[Ti]:`luma`,[Dr]:`hailuo`,[gr]:`kling`,[Sr]:`veo`,[vr]:`maestro`,[tr]:`poivelle`,[di]:`digitalhuman`,[er]:`sora`,[Gr]:`pixverse`,[Yn]:`wan`,[Qt]:`serp`,[br]:`webextrator`,[Cr]:`codingBridge`},vg=z({name:`Navigator`,components:{ElImage:Ei,ElPopover:ot,Logo:Ii,ElTooltip:Fe,UserCenter:gg},props:{direction:{type:String,default:`column`}},data(){return{operating:{dark:!1,locale:!1},activeIndex:this.$route.name,containerHeight:0,showOverflow:!1,resizeObserver:null,failedCapabilityIcons:{},isFullscreen:!1,offFullscreen:null}},computed:{links(){let e=[];return this.$store?.state?.site?.features?.chatgpt?.enabled&&e.push({route:{name:Mi},displayName:this.$t(`common.nav.chatgpt`),logo:nn,routes:[pr,Mi],category:`chat`}),this.$store?.state?.site?.features?.deepseek?.enabled&&e.push({route:{name:ai},displayName:this.$t(`common.nav.deepseek`),logo:on,routes:[hi,ai],category:`chat`}),this.$store?.state?.site?.features?.grok?.enabled&&e.push({route:{name:Ur},displayName:this.$t(`common.nav.grok`),logo:fn,routes:[ni,Ur],category:`chat`}),this.$store?.state?.site?.features?.gemini?.enabled&&e.push({route:{name:Rr},displayName:this.$t(`common.nav.gemini`),logo:Jt,routes:[Ir,Rr],category:`chat`}),this.$store?.state?.site?.features?.claude?.enabled&&e.push({route:{name:yr},displayName:this.$t(`common.nav.claude`),logo:en,routes:[Jn,yr],category:`chat`}),this.$store?.state?.site?.features?.kimi?.enabled&&e.push({route:{name:Ar},displayName:this.$t(`common.nav.kimi`),logo:En,routes:[ji,Ar],category:`chat`}),this.$store?.state?.site?.features?.midjourney?.enabled&&e.push({route:{name:Gn},displayName:this.$t(`common.nav.midjourney`),logo:Kt,routes:[Gn],category:`image`}),this.$store?.state?.site?.features?.flux?.enabled&&e.push({route:{name:yi},displayName:this.$t(`common.nav.flux`),logo:mn,routes:[yi],category:`image`}),this.$store?.state?.site?.features?.nanobanana?.enabled&&e.push({route:{name:Un},displayName:this.$t(`common.nav.nanobanana`),logo:rn,routes:[Un],category:`image`}),this.$store?.state?.site?.features?.openaiimage?.enabled&&e.push({route:{name:Yr},displayName:this.$t(`common.nav.openaiimage`),logo:Wt,routes:[Yr],category:`image`}),this.$store?.state?.site?.features?.seedream?.enabled&&e.push({route:{name:qn},displayName:this.$t(`common.nav.seedream`),logo:Zt,routes:[qn],category:`image`}),this.$store?.state?.site?.features?.suno?.enabled&&e.push({route:{name:Pi},displayName:this.$t(`common.nav.suno`),logo:cn,routes:[Pi,mr],category:`music`}),this.$store?.state?.site?.features?.producer?.enabled&&e.push({route:{name:ar},displayName:this.$t(`common.nav.producer`),logo:xn,routes:[ar],category:`music`}),this.$store?.state?.site?.features?.fish?.enabled&&e.push({route:{name:Qr},displayName:this.$t(`common.nav.fish`),logo:yn,routes:[Qr,Mr],category:`audio`}),this.$store?.state?.site?.features?.seedance?.enabled&&e.push({route:{name:ur},displayName:this.$t(`common.nav.seedance`),logo:bn,routes:[ur],category:`video`}),this.$store?.state?.site?.features?.grokvideo?.enabled&&e.push({route:{name:ci},displayName:this.$t(`common.nav.grokvideo`),logo:Yt,routes:[ci],category:`video`}),this.$store?.state?.site?.features?.omni?.enabled&&e.push({route:{name:sr},displayName:this.$t(`common.nav.omni`),logo:Gt,routes:[sr],category:`video`}),this.$store?.state?.site?.features?.luma?.enabled&&e.push({route:{name:Ti},displayName:this.$t(`common.nav.luma`),logo:Xt,routes:[Ti,Vn],category:`video`}),this.$store?.state?.site?.features?.hailuo?.enabled&&e.push({route:{name:Dr},displayName:this.$t(`common.nav.hailuo`),logo:On,routes:[Dr,Vr],category:`video`}),this.$store?.state?.site?.features?.kling?.enabled&&e.push({route:{name:gr},displayName:this.$t(`common.nav.kling`),logo:vn,routes:[gr,Oi],category:`video`}),this.$store?.state?.site?.features?.veo?.enabled&&e.push({route:{name:Sr},displayName:this.$t(`common.nav.veo`),logo:dn,routes:[Sr,Rn],category:`video`}),this.$store?.state?.site?.features?.maestro?.enabled&&e.push({route:{name:vr},displayName:this.$t(`common.nav.maestro`),logo:wn,routes:[vr],category:`video`}),this.$store?.state?.site?.features?.poivelle?.enabled&&e.push({route:{name:tr},displayName:this.$t(`poivelle.nav.name`),logo:_n,routes:[tr],category:`video`,capability:`poivelle`,defaultLogo:_n}),this.$store?.state?.site?.features?.digitalhuman?.enabled&&e.push({route:{name:di},displayName:this.$t(`common.nav.digitalhuman`),logo:Vt,routes:[di],category:`video`}),this.$store?.state?.site?.features?.sora?.enabled&&e.push({route:{name:er},displayName:this.$t(`common.nav.sora`),logo:hn,routes:[er,Zn],category:`video`}),this.$store?.state?.site?.features?.pixverse?.enabled&&e.push({route:{name:Gr},displayName:this.$t(`common.nav.pixverse`),logo:kn,routes:[Gr,Ln],category:`video`}),this.$store?.state?.site?.features?.wan?.enabled&&e.push({route:{name:Yn},displayName:this.$t(`common.nav.wan`),logo:ln,routes:[Yn],category:`video`}),this.$store?.state?.site?.features?.serp?.enabled&&e.push({route:{name:Qt},displayName:this.$t(`common.nav.serp`),logo:Bt,routes:[Qt],category:`search`}),this.$store?.state?.site?.features?.webextrator?.enabled&&e.push({route:{name:br},displayName:this.$t(`common.nav.webextrator`),logo:sn,routes:[br],category:`data`}),this.$store?.state?.site?.features?.codingBridge?.enabled&&e.push({route:{name:Cr},displayName:this.$t(`common.nav.codingBridge`),logo:Ut,routes:[Cr],category:`data`}),e.map(e=>{let t=_g[e.route.name];if(!t||!e.logo)return e;let n=e.logo,r=ri(this.$store.state.site,t,e.displayName,n);return{...e,capability:t,defaultLogo:n,displayName:r.displayName,logo:this.failedCapabilityIcons[t]?n:r.iconUrl}})},authenticated(){return!!this.$store.state.token.access},maxVisibleItems(){if(this.direction===`row`)return this.links.length;let e=Math.floor((this.containerHeight+15)/50);return Math.max(e,3)},visibleLinks(){return this.links.length<=this.maxVisibleItems?this.links:this.links.slice(0,this.maxVisibleItems-1)},overflowLinks(){return this.links.length<=this.maxVisibleItems?[]:this.links.slice(this.maxVisibleItems-1)},overflowPreviewLinks(){return this.overflowLinks.slice(0,4)},isOverflowActive(){let e=this.$route.name;return this.overflowLinks.some(t=>t.routes.includes(e))},dockCollapsed(){return this.direction===`row`&&!!this.$store.state.setting?.dockCollapsed}},watch:{$route(){this.showOverflow=!1},dockCollapsed:{immediate:!0,handler(e){this.syncDockClass(e)}}},mounted(){if(this.$refs.linksContainer){let e=this.$refs.linksContainer;this.containerHeight=e.clientHeight,this.resizeObserver=new ResizeObserver(e=>{for(let t of e)this.containerHeight=t.contentRect.height}),this.resizeObserver.observe(e)}this.offFullscreen=Kr()?.onFullscreenChange(e=>{this.isFullscreen=e})??null},beforeUnmount(){this.resizeObserver&&=(this.resizeObserver.disconnect(),null),this.offFullscreen&&=(this.offFullscreen(),null)},methods:{syncDockClass(e){typeof document>`u`||document.documentElement.classList.toggle(`dock-collapsed`,e)},onToggleDock(){this.$store.commit(`setSetting`,{dockCollapsed:!this.$store.state.setting?.dockCollapsed})},onCapabilityIconError(e){e.capability&&e.defaultLogo&&e.logo!==e.defaultLogo&&(this.failedCapabilityIcons[e.capability]=!0)},isMacOS:Pr,onHome(){this.$router.push({name:Si})},onOverflowItemClick(e){this.showOverflow=!1,this.$router.push(e.route)}}}),yg=[`direction`],bg=[`aria-expanded`,`aria-label`,`title`],xg={key:1,class:`brand`},Sg=[`inert`],Cg={class:`top`},wg={ref:`linksContainer`,class:`links`},Tg=[`title`],Eg={class:`folder-preview`},Dg={class:`overflow-menu`},Og=[`onClick`],kg={class:`overflow-name`},Ag={class:`bottom`};function jg(t,r,i,o,s,l){let f=T(`logo`),m=T(`el-image`),h=T(`el-tooltip`),g=T(`el-popover`),_=T(`user-center`);return L(),p(`div`,{direction:t.direction,class:a([`navigator`,{collapsed:t.direction===`column`,"is-mac":t.isMacOS()&&!t.isFullscreen,"dock-collapsed":t.dockCollapsed}])},[t.direction===`row`?(L(),p(`button`,{key:0,type:`button`,class:`dock-handle`,"aria-expanded":!t.dockCollapsed,"aria-label":t.dockCollapsed?t.$t(`common.nav.expandDock`):t.$t(`common.nav.collapseDock`),title:t.dockCollapsed?t.$t(`common.nav.expandDock`):t.$t(`common.nav.collapseDock`),onClick:r[0]||=(...e)=>t.onToggleDock&&t.onToggleDock(...e)},[...r[2]||=[e(`span`,{class:`dock-handle-grip`},null,-1)]],8,bg)):d(``,!0),t.direction===`column`?(L(),p(`div`,xg,[u(f,{collapsed:``,onClick:n(t.onHome,[`stop`])},null,8,[`onClick`])])):d(``,!0),e(`div`,{class:`dock-body`,inert:t.dockCollapsed||void 0},[e(`div`,Cg,[e(`div`,wg,[(L(!0),p(x,null,F(t.visibleLinks,(e,n)=>(L(),p(`div`,{key:n,class:a({link:!0,active:e.routes.includes(t.$route.name)})},[u(h,{effect:`dark`,content:e.displayName,placement:t.direction===`row`?`top`:`right`},{default:M(()=>[e.logo?(L(),A(m,{key:0,src:e.logo,class:`avatar`,onError:n=>t.onCapabilityIconError(e),onClick:n=>t.$router.push(e.route)},null,8,[`src`,`onError`,`onClick`])):d(``,!0)]),_:2},1032,[`content`,`placement`])],2))),128)),t.overflowLinks.length>0?(L(),p(`div`,{key:0,class:a({link:!0,active:t.isOverflowActive})},[u(g,{visible:t.showOverflow,"onUpdate:visible":r[1]||=e=>t.showOverflow=e,placement:t.direction===`row`?`top`:`right-start`,width:180,trigger:`click`,"show-arrow":!1,"popper-class":`navigator-overflow-popover`},{reference:M(()=>[e(`div`,{class:a([`more-button`,{active:t.isOverflowActive}]),title:t.$t(`common.nav.more`)},[e(`div`,Eg,[(L(!0),p(x,null,F(t.overflowPreviewLinks,(e,n)=>(L(),A(m,{key:n,src:e.logo,class:`folder-icon`,fit:`cover`,onError:n=>t.onCapabilityIconError(e)},null,8,[`src`,`onError`]))),128))])],10,Tg)]),default:M(()=>[e(`div`,Dg,[(L(!0),p(x,null,F(t.overflowLinks,(n,r)=>(L(),p(`div`,{key:r,class:a({"overflow-item":!0,active:n.routes.includes(t.$route.name)}),onClick:e=>t.onOverflowItemClick(n)},[n.logo?(L(),A(m,{key:0,src:n.logo,class:`overflow-avatar`,fit:`cover`,onError:e=>t.onCapabilityIconError(n)},null,8,[`src`,`onError`])):d(``,!0),e(`span`,kg,c(n.displayName),1)],10,Og))),128))])]),_:1},8,[`visible`,`placement`])],2)):d(``,!0)],512)]),e(`div`,Ag,[u(_)])],8,Sg)],10,yg)}var Mg=G(vg,[[`render`,jg],[`__scopeId`,`data-v-21953556`]]);export{Mg as t};
8
+ `)}},created(){this.smsUrlDraft=this.auth.sms?.webhook_url||``,this.smsCustomEnabled=!!this.auth.sms?.webhook_url},methods:{isProviderEnabled(e){return this.providers?.[e]?.enabled===!0},isOnlyEnabledProvider(e){return this.enabledProviders.length===1&&this.enabledProviders[0]===e},onProviderToggle(e,t){let n=new Set(this.enabledProviders);if(t?n.add(e):n.delete(e),n.size===0){H.warning(this.$t(`site.message.authProvidersAtLeastOne`));return}let r={...this.providers||{}};for(let e of Rm)r[e]={...r[e]||{},enabled:n.has(e)};let i=this.defaultProvider;(!i||!n.has(i))&&(i=Rm.find(e=>n.has(e))||e),this.persistAuth({...this.auth,providers:r,default_provider:i})},onDefaultProviderChange(e){if(!e)return;let t={...this.providers||{}};for(let n of Rm)t[n]={...t[n]||{},enabled:n===e?!0:t[n]?.enabled===!0};this.persistAuth({...this.auth,providers:t,default_provider:e})},onLoginModeChange(e){this.persistAuth({...this.auth,login_mode:e})},async onSmsCustomToggle(e){if(e){this.smsCustomEnabled=!0;return}if(this.auth.sms?.webhook_url)try{await xi.confirm(this.$t(`site.message.authSmsWebhookDisableConfirm`),this.$t(`site.field.authSmsWebhookDisableTitle`),{type:`warning`,confirmButtonText:this.$t(`common.button.confirm`),cancelButtonText:this.$t(`common.button.cancel`)})}catch{return}this.smsCustomEnabled=!1,this.smsUrlDraft=``,this.smsSecretDraft=``;let t={...this.auth};delete t.sms,this.persistAuth(t)},onSmsWebhookUrlChange(e){let t=(e||``).trim();this.smsUrlDraft=t;let n={...this.auth.sms||{}};t?n.webhook_url=t:delete n.webhook_url,this.persistAuth({...this.auth,sms:n})},onSmsWebhookSecretChange(e){let t=(e||``).trim();t&&this.persistAuth({...this.auth,sms:{...this.auth.sms||{},webhook_secret:t}})},openSmsTest(){this.smsTest={url:this.smsUrlDraft,secret:this.smsSecretDraft,region:``,number:``},this.smsTestResult=null,this.smsTestVisible=!0},async runSmsTest(){let e=(this.smsTest.url||``).trim(),t=(this.smsTest.secret||``).trim();if(!(!e||!t)){this.smsTesting=!0,this.smsTestResult=null;try{let{data:n}=await Mn.test({webhook_url:e,webhook_secret:t,site:this.site?.origin||``,region:(this.smsTest.region||``).trim(),receiver:(this.smsTest.number||``).trim()});n?.success?this.smsTestResult={ok:!0,message:this.$t(`site.message.authSmsWebhookTestOk`)}:this.smsTestResult={ok:!1,message:n?.message||this.$t(`site.message.authSmsWebhookTestFailed`)}}catch(e){let t=e?.response?.data?.message||e?.message||this.$t(`site.message.authSmsWebhookTestFailed`);this.smsTestResult={ok:!1,message:t}}finally{this.smsTesting=!1}}},persistAuth(e){let t={...Fn(this.site),auth:e};ui.update(this.site?.id,t).then(()=>{console.debug(`getSite for id`,this.site?.id),this.$store.dispatch(`getSite`)})}}}),Bm={class:`settings-list`},Vm={class:`settings-item`},Hm={class:`settings-label`},Um={class:`settings-title`},Wm={class:`settings-tip`},Gm={class:`settings-content auth-providers-content`},Km={class:`auth-providers-list`},qm={class:`auth-providers-row__label`},Jm={class:`settings-item`},Ym={class:`settings-label`},Xm={class:`settings-title`},Zm={class:`settings-tip`},Qm={class:`settings-content`},$m={class:`settings-item`},eh={class:`settings-label`},th={class:`settings-title`},nh={class:`settings-content`},rh={class:`settings-item`},ih={class:`settings-label`},ah={class:`settings-title`},oh={class:`settings-tip`},sh={class:`settings-content auth-sms-content`},ch={class:`auth-sms-toggle`},lh={class:`auth-sms-toggle__label`},uh={class:`auth-sms-actions`},dh={class:`auth-sms-doc`},fh={class:`auth-sms-code`},ph={class:`auth-sms-code`},mh={class:`auth-sms-code`};function hh(t,n,r,i,a,s){let l=T(`section-notice`),f=T(`el-switch`),m=T(`el-option`),h=T(`el-select`),g=T(`el-button`),_=T(`el-tooltip`),v=T(`el-input`),y=T(`el-dialog`),b=T(`el-form-item`),S=T(`el-form`),C=T(`el-alert`);return L(),p(`div`,Bm,[u(l,{tone:`admin`,text:t.$t(`common.settings.adminOnlyHint`)},null,8,[`text`]),e(`section`,Vm,[e(`div`,Hm,[e(`p`,Um,c(t.$t(`site.field.authEnabledProviders`)),1),e(`p`,Wm,c(t.$t(`site.message.authEnabledProvidersTip`)),1)]),e(`div`,Gm,[e(`ul`,Km,[(L(!0),p(x,null,F(t.providerOptions,n=>(L(),p(`li`,{key:n.value,class:`auth-providers-row`},[e(`span`,qm,c(n.label),1),u(f,{"model-value":t.isProviderEnabled(n.value),disabled:t.isOnlyEnabledProvider(n.value),onChange:e=>t.onProviderToggle(n.value,!!e)},null,8,[`model-value`,`disabled`,`onChange`])]))),128))])])]),e(`section`,Jm,[e(`div`,Ym,[e(`p`,Xm,c(t.$t(`site.field.authDefaultProvider`)),1),e(`p`,Zm,c(t.$t(`site.message.authDefaultProviderTip`)),1)]),e(`div`,Qm,[u(h,{"model-value":t.defaultProvider,class:`auth-default-provider-select`,placeholder:t.$t(`site.placeholder.authDefaultProvider`),onChange:t.onDefaultProviderChange},{default:M(()=>[(L(!0),p(x,null,F(t.defaultProviderOptions,e=>(L(),A(m,{key:e.value,value:e.value,label:e.label},null,8,[`value`,`label`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onChange`])])]),e(`section`,$m,[e(`div`,eh,[e(`p`,th,c(t.$t(`common.settings.loginMode`)),1)]),e(`div`,nh,[u(h,{"model-value":t.loginMode,class:`auth-default-provider-select`,onChange:t.onLoginModeChange},{default:M(()=>[u(m,{value:`redirect`,label:t.$t(`common.loginMode.redirect`)},null,8,[`label`]),u(m,{value:`iframe`,label:t.$t(`common.loginMode.iframe`)},null,8,[`label`])]),_:1},8,[`model-value`,`onChange`])])]),e(`section`,rh,[e(`div`,ih,[e(`p`,ah,[o(c(t.$t(`site.field.authSmsWebhook`))+` `,1),u(g,{link:``,type:`primary`,class:`auth-sms-doc-link`,onClick:n[0]||=e=>t.smsDocVisible=!0},{default:M(()=>[o(c(t.$t(`site.field.authSmsWebhookDoc`)),1)]),_:1})]),e(`p`,oh,c(t.$t(`site.message.authSmsWebhookTip`)),1)]),e(`div`,sh,[u(_,{disabled:t.isProviderEnabled(`phone`),content:t.$t(`site.message.authSmsWebhookNeedsPhone`),placement:`top`},{default:M(()=>[e(`span`,ch,[u(f,{"model-value":t.smsCustomEnabled,disabled:!t.isProviderEnabled(`phone`),onChange:n[1]||=e=>t.onSmsCustomToggle(!!e)},null,8,[`model-value`,`disabled`]),e(`span`,lh,c(t.$t(`site.field.authSmsWebhookEnable`)),1)])]),_:1},8,[`disabled`,`content`]),t.smsCustomEnabled&&t.isProviderEnabled(`phone`)?(L(),p(x,{key:0},[u(v,{"model-value":t.smsUrlDraft,class:`auth-sms-input`,placeholder:t.$t(`site.placeholder.authSmsWebhookUrl`),"onUpdate:modelValue":n[2]||=e=>t.smsUrlDraft=e,onChange:t.onSmsWebhookUrlChange},null,8,[`model-value`,`placeholder`,`onChange`]),u(v,{"model-value":t.smsSecretDraft,type:`password`,"show-password":``,class:`auth-sms-input`,placeholder:t.$t(`site.placeholder.authSmsWebhookSecret`),"onUpdate:modelValue":n[3]||=e=>t.smsSecretDraft=e,onChange:t.onSmsWebhookSecretChange},null,8,[`model-value`,`placeholder`,`onChange`]),e(`div`,uh,[u(g,{disabled:!t.smsUrlDraft,onClick:t.openSmsTest},{default:M(()=>[o(c(t.$t(`site.field.authSmsWebhookTest`)),1)]),_:1},8,[`disabled`,`onClick`])])],64)):d(``,!0)])]),u(y,{modelValue:t.smsDocVisible,"onUpdate:modelValue":n[5]||=e=>t.smsDocVisible=e,title:t.$t(`site.field.authSmsWebhookDocTitle`),class:`auth-sms-dialog`,width:`640px`},{footer:M(()=>[u(g,{type:`primary`,onClick:n[4]||=e=>t.smsDocVisible=!1},{default:M(()=>[o(c(t.$t(`common.button.confirm`)),1)]),_:1})]),default:M(()=>[e(`div`,dh,[e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocIntro`)),1),e(`h4`,null,c(t.$t(`site.field.authSmsWebhookDocRequest`)),1),e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocRequest`)),1),e(`pre`,fh,c(t.smsDocRequestExample),1),e(`h4`,null,c(t.$t(`site.field.authSmsWebhookDocHeaders`)),1),e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocHeaders`)),1),e(`pre`,ph,c(t.smsDocSignatureExample),1),e(`h4`,null,c(t.$t(`site.field.authSmsWebhookDocResponse`)),1),e(`p`,null,c(t.$t(`site.message.authSmsWebhookDocResponse`)),1),e(`pre`,mh,c(t.smsDocResponseExample),1)])]),_:1},8,[`modelValue`,`title`]),u(y,{modelValue:t.smsTestVisible,"onUpdate:modelValue":n[11]||=e=>t.smsTestVisible=e,title:t.$t(`site.field.authSmsWebhookTestTitle`),class:`auth-sms-dialog`,width:`480px`},{footer:M(()=>[u(g,{onClick:n[10]||=e=>t.smsTestVisible=!1},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(g,{type:`primary`,loading:t.smsTesting,disabled:!t.smsTest.url||!t.smsTest.secret,onClick:t.runSmsTest},{default:M(()=>[o(c(t.$t(`site.field.authSmsWebhookTestSend`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),default:M(()=>[u(S,{"label-position":`top`},{default:M(()=>[u(b,{label:t.$t(`site.placeholder.authSmsWebhookUrl`)},{default:M(()=>[u(v,{modelValue:t.smsTest.url,"onUpdate:modelValue":n[6]||=e=>t.smsTest.url=e},null,8,[`modelValue`])]),_:1},8,[`label`]),u(b,{label:t.$t(`site.placeholder.authSmsWebhookSecret`)},{default:M(()=>[u(v,{modelValue:t.smsTest.secret,"onUpdate:modelValue":n[7]||=e=>t.smsTest.secret=e,type:`password`,"show-password":``},null,8,[`modelValue`])]),_:1},8,[`label`]),u(b,{label:t.$t(`site.field.authSmsWebhookTestRegion`)},{default:M(()=>[u(v,{modelValue:t.smsTest.region,"onUpdate:modelValue":n[8]||=e=>t.smsTest.region=e,placeholder:`86`},null,8,[`modelValue`])]),_:1},8,[`label`]),u(b,{label:t.$t(`site.field.authSmsWebhookTestNumber`)},{default:M(()=>[u(v,{modelValue:t.smsTest.number,"onUpdate:modelValue":n[9]||=e=>t.smsTest.number=e},null,8,[`modelValue`])]),_:1},8,[`label`])]),_:1}),t.smsTestResult?(L(),A(C,{key:0,type:t.smsTestResult.ok?`success`:`error`,title:t.smsTestResult.message,closable:!1,"show-icon":``},null,8,[`type`,`title`])):d(``,!0)]),_:1},8,[`modelValue`,`title`])])}var gh=G(zm,[[`render`,hh],[`__scopeId`,`data-v-bf82e562`]]),_h=z({name:`AboutSetting`,components:{ElButton:W,ElImage:Ei,FontAwesomeIcon:Pi,GlobeIcon:vt,LaunchIcon:ca},emits:[`switch-tab`],data(){return{faGithub:Nr}},computed:{site(){return this.$store?.state?.site},isFirstPartyOfficial(){return Er()||si()||Xr()},contacts(){return wi(this.site)},hasContacts(){return or(this.site)}},methods:{contactUsesFontAwesome:mu,contactIconFor(e){return pu(e)},contactHref(e){if(e.url)return e.url;let t=fu(e.type).scheme;return e.value&&t===`tel`?`tel:${e.value}`:e.value&&t===`mailto`?`mailto:${e.value}`:``},linkAttrs(e){return/^https?:/i.test(this.contactHref(e))?{target:`_blank`,rel:`noopener noreferrer`}:{}},contactText(e){if(e.label)return e.label;if(e.value)return e.value;let t=hu(e.type);if(t)return t;let n=_u(e.type);return n?this.$t(n):this.capitalize(e.type)},capitalize(e){return e?e.charAt(0).toUpperCase()+e.slice(1):``},onBuildOneClick(){this.$emit(`switch-tab`,{tab:hn,autoOpenCreateSubsite:!0})}}}),vh={class:`settings-list`},yh={class:`settings-item`},bh={class:`settings-label`},xh={class:`settings-title`},Sh={class:`settings-tip`},Ch={class:`settings-content`},wh={href:`https://github.com/AceDataCloud/Nexior`,target:`_blank`,rel:`noopener noreferrer`,class:`about-link`},Th={class:`settings-item`},Eh={class:`settings-label`},Dh={class:`settings-title`},Oh={class:`settings-tip`},kh={class:`settings-content`},Ah={href:`https://platform.acedata.cloud`,target:`_blank`,rel:`noopener noreferrer`,class:`about-link`},jh={class:`settings-item`},Mh={class:`settings-label`},Nh={class:`settings-title`},Ph={class:`settings-tip`},Fh={class:`settings-content`},Ih={key:1,class:`settings-item contacts-item`},Lh={class:`settings-label`},Rh={class:`settings-title`},zh={class:`settings-tip`},Bh={class:`settings-content contacts-content`},Vh=[`href`],Hh={key:1,class:`about-link contact-static`};function Uh(t,n,r,a,s,l){let f=T(`font-awesome-icon`),m=T(`globe-icon`),h=T(`launch-icon`),g=T(`el-button`),_=T(`el-image`);return L(),p(`div`,vh,[t.isFirstPartyOfficial?(L(),p(x,{key:0},[e(`section`,yh,[e(`div`,bh,[e(`p`,xh,c(t.$t(`common.settings.poweredBy`)),1),e(`p`,Sh,c(t.$t(`common.settings.poweredByTip`)),1)]),e(`div`,Ch,[e(`a`,wh,[u(f,{icon:t.faGithub,class:`icon`},null,8,[`icon`]),n[0]||=e(`span`,null,`Nexior`,-1)])])]),e(`section`,Th,[e(`div`,Eh,[e(`p`,Dh,c(t.$t(`common.settings.apiService`)),1),e(`p`,Oh,c(t.$t(`common.settings.apiServiceTip`)),1)]),e(`div`,kh,[e(`a`,Ah,[u(m,{class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),n[1]||=e(`span`,null,`Ace Data Cloud`,-1)])])]),e(`section`,jh,[e(`div`,Mh,[e(`p`,Nh,c(t.$t(`common.settings.buildYourOwn`)),1),e(`p`,Ph,c(t.$t(`common.settings.buildYourOwnTip`)),1)]),e(`div`,Fh,[u(g,{type:`primary`,onClick:t.onBuildOneClick},{default:M(()=>[u(h,{class:`mr-1`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.settings.buildNow`)),1)]),_:1},8,[`onClick`])])])],64)):d(``,!0),t.hasContacts?(L(),p(`section`,Ih,[e(`div`,Lh,[e(`p`,Rh,c(t.$t(`common.settings.contactSupport`)),1),e(`p`,zh,c(t.$t(`common.settings.contactSupportTip`)),1)]),e(`div`,Bh,[(L(!0),p(x,null,F(t.contacts,(n,r)=>(L(),p(`div`,{key:r,class:`contact-entry`},[t.contactHref(n)?(L(),p(`a`,i({key:0,href:t.contactHref(n)},{ref_for:!0},t.linkAttrs(n),{class:`about-link`}),[t.contactUsesFontAwesome(n.type)?(L(),A(f,{key:0,icon:t.contactIconFor(n.type),class:`icon`},null,8,[`icon`])):(L(),A(I(t.contactIconFor(n.type)),{key:1,class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,c(t.contactText(n)),1)],16,Vh)):(L(),p(`span`,Hh,[t.contactUsesFontAwesome(n.type)?(L(),A(f,{key:0,icon:t.contactIconFor(n.type),class:`icon`},null,8,[`icon`])):(L(),A(I(t.contactIconFor(n.type)),{key:1,class:`icon`,size:`1em`,"aria-hidden":`true`,focusable:`false`})),e(`span`,null,c(t.contactText(n)),1)])),n.qr?(L(),A(_,{key:2,src:n.qr,"preview-src-list":[n.qr],"preview-teleported":!0,fit:`contain`,class:`contact-qr`},null,8,[`src`,`preview-src-list`])):d(``,!0)]))),128))])])):d(``,!0)])}var Wh=z({name:`UserSetting`,components:{ElDialog:U,ElMenu:nt,ElMenuItem:rt,GeneralSetting:Ka,ByokSetting:go,MemorySetting:Ho,SiteSetting:Zd,SiteServicesSetting:Ff,SeoSetting:ap,DistributionSetting:Ep,FunctionSetting:Yp,SubsiteSetting:hm,CustomDomainSetting:Lm,AuthSetting:gh,AboutSetting:G(_h,[[`render`,Uh],[`__scopeId`,`data-v-ab745e5e`]]),LocalToolsSetting:_(()=>jn(()=>import(`./LocalTools-CpzJO__m.js`).then(e=>e.n),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35])))},props:{visible:{type:Boolean,default:!1},initialTab:{type:String,default:``}},emits:[`update:visible`],data(){return{SETTING_TAB_GENERAL:Rt,SETTING_TAB_API_KEY:Vt,SETTING_TAB_MEMORY:En,SETTING_TAB_SITE:xn,SETTING_TAB_SITE_SERVICES:wn,SETTING_TAB_SEO:`seo`,SETTING_TAB_DISTRIBUTION:rn,SETTING_TAB_FUNCTION:Kt,SETTING_TAB_AUTH:en,SETTING_TAB_SUBSITES:hn,SETTING_TAB_CUSTOM_DOMAIN:Qt,SETTING_TAB_ABOUT:Sn,SETTING_TAB_LOCAL_TOOLS:fn,activeTab:Rt,autoOpenCreateSubsite:!1,mobile:typeof window<`u`&&window.innerWidth<768}},computed:{navItems(){return[{key:Rt,label:this.$t(`common.settings.general`),icon:E(ua),visible:!0},{key:Vt,label:this.$t(`common.settings.apiKey`),icon:E(xt),visible:!0},{key:En,label:this.$t(`common.settings.memory`),icon:E(ut),visible:!0},{key:xn,label:this.$t(`common.settings.site`),icon:E(sa),visible:this.isSiteConfigVisible},{key:wn,label:this.$t(`common.settings.siteServices`),icon:E(jt),visible:this.isSiteConfigVisible},{key:`seo`,label:this.$t(`common.settings.seo`),icon:E(da),visible:this.isSiteConfigVisible},{key:rn,label:this.$t(`common.settings.distribution`),icon:E(_t),visible:this.isSiteConfigVisible},{key:Kt,label:this.$t(`common.settings.function`),icon:E(It),visible:this.isSiteConfigVisible},{key:en,label:this.$t(`common.settings.auth`),icon:E(lt),visible:this.isSiteConfigVisible},{key:hn,label:this.$t(`common.settings.subsites`),icon:E(la),visible:this.isSubsitesVisible},{key:Qt,label:this.$t(`common.settings.customDomain`),icon:E(vt),visible:this.isCustomDomainVisible},{key:fn,label:this.$t(`common.settings.localTools`),icon:E(St),visible:this.isDesktopApp},{key:Sn,label:this.$t(`common.settings.about`),icon:E(bt),visible:!0}]},visibleNavItems(){return this.navItems.filter(e=>e.visible)},currentTab(){return this.visibleNavItems.some(e=>e.key===this.activeTab)?this.activeTab:Rt},isSiteAdmin(){return!!this.$store?.state?.site?.admins?.includes(this.$store.getters.user?.id)},isMainOfficialHost(){return Er()},isWebSurface(){return ei()},isSiteConfigVisible(){return this.isWebSurface&&this.isSiteAdmin},isSubsitesVisible(){return this.isWebSurface&&this.isMainOfficialHost},isCustomDomainVisible(){return this.isWebSurface&&!this.isMainOfficialHost&&this.isSiteAdmin},isDesktopApp(){return!!Nn()},dialogWidth(){return this.mobile?`94vw`:this.currentTab===`apiKey`||this.currentTab===`siteServices`||this.currentTab===`subsites`?`min(900px, 94vw)`:`50%`}},watch:{visible(e){e&&(this.activeTab=this.initialTab||`general`,this.autoOpenCreateSubsite=!1)}},mounted(){window.addEventListener(`resize`,this.onResize)},beforeUnmount(){window.removeEventListener(`resize`,this.onResize)},methods:{onResize(){this.mobile=window.innerWidth<768},onClose(){this.$emit(`update:visible`,!1)},onSwitchTab(e){e?.tab&&(this.activeTab=e.tab,this.autoOpenCreateSubsite=e.tab===`subsites`&&!!e.autoOpenCreateSubsite)}}}),Gh={key:0},Kh={key:1},qh={key:2},Jh={key:3},Yh={key:4},Xh={key:5},Zh={key:6},Qh={key:7},$h={key:8},eg={key:9},tg={key:10},ng={key:11},rg={key:12};function ig(t,n,r,i,s,l){let f=T(`el-menu-item`),m=T(`el-menu`),h=T(`general-setting`),g=T(`byok-setting`),_=T(`memory-setting`),v=T(`site-setting`),y=T(`site-services-setting`),b=T(`seo-setting`),S=T(`distribution-setting`),C=T(`function-setting`),w=T(`auth-setting`),ee=T(`subsite-setting`),E=T(`custom-domain-setting`),D=T(`local-tools-setting`),O=T(`about-setting`),k=T(`el-dialog`);return L(),A(k,{class:a([`settings-dialog`,t.mobile?`is-mobile`:``]),"model-value":t.visible,width:t.dialogWidth,onClose:t.onClose},{default:M(()=>[e(`div`,{class:a([`settings`,t.mobile?`flex flex-col`:`flex h-[450px]`])},[e(`aside`,{class:a(t.mobile?`border-b w-full`:`h-full border-r`)},[u(m,{class:a([`border-r-0 settings-menu`,t.mobile?`is-mobile flex flex-row overflow-x-auto`:``]),mode:t.mobile?`horizontal`:`vertical`,"default-active":t.currentTab},{default:M(()=>[(L(!0),p(x,null,F(t.visibleNavItems,e=>(L(),A(f,{key:e.key,index:e.key,class:a([`items-center cursor-pointer`,t.mobile?`flex-shrink-0 px-3 py-2 text-sm`:`flex w-[180px] px-2 py-2`,t.currentTab===e.key?`active`:``]),onClick:n=>t.activeTab=e.key},{default:M(()=>[(L(),A(I(e.icon),{class:a(t.mobile?`mr-1.5`:`mr-2`),size:`1em`,"aria-hidden":`true`,focusable:`false`},null,8,[`class`])),o(` `+c(e.label),1)]),_:2},1032,[`index`,`class`,`onClick`]))),128))]),_:1},8,[`class`,`mode`,`default-active`])],2),e(`main`,{class:a([`flex-1 overflow-y-auto`,t.mobile?`p-4`:`p-6`])},[t.currentTab===t.SETTING_TAB_GENERAL?(L(),p(`div`,Gh,[u(h)])):t.currentTab===t.SETTING_TAB_API_KEY?(L(),p(`div`,Kh,[u(g)])):t.currentTab===t.SETTING_TAB_MEMORY?(L(),p(`div`,qh,[u(_)])):t.currentTab===t.SETTING_TAB_SITE&&t.isSiteConfigVisible?(L(),p(`div`,Jh,[u(v)])):t.currentTab===t.SETTING_TAB_SITE_SERVICES&&t.isSiteConfigVisible?(L(),p(`div`,Yh,[u(y)])):t.currentTab===t.SETTING_TAB_SEO&&t.isSiteConfigVisible?(L(),p(`div`,Xh,[u(b)])):t.currentTab===t.SETTING_TAB_DISTRIBUTION&&t.isSiteConfigVisible?(L(),p(`div`,Zh,[u(S)])):t.currentTab===t.SETTING_TAB_FUNCTION&&t.isSiteConfigVisible?(L(),p(`div`,Qh,[u(C)])):t.currentTab===t.SETTING_TAB_AUTH&&t.isSiteConfigVisible?(L(),p(`div`,$h,[u(w)])):t.currentTab===t.SETTING_TAB_SUBSITES&&t.isSubsitesVisible?(L(),p(`div`,eg,[u(ee,{"auto-open-create":t.autoOpenCreateSubsite},null,8,[`auto-open-create`])])):t.currentTab===t.SETTING_TAB_CUSTOM_DOMAIN&&t.isCustomDomainVisible?(L(),p(`div`,tg,[u(E)])):t.currentTab===t.SETTING_TAB_LOCAL_TOOLS&&t.isDesktopApp?(L(),p(`div`,ng,[u(D)])):t.currentTab===t.SETTING_TAB_ABOUT?(L(),p(`div`,rg,[u(O,{onSwitchTab:t.onSwitchTab},null,8,[`onSwitchTab`])])):d(``,!0)],2)],2)]),_:1},8,[`class`,`model-value`,`width`,`onClose`])}var ag=G(Wh,[[`render`,ig],[`__scopeId`,`data-v-51df28ae`]]),og=z({name:`DeleteAccountDialog`,components:{ElDialog:U,ElInput:Ln,ElButton:W,ElAlert:Ie},props:{visible:{type:Boolean,default:!1}},emits:[`update:visible`],data(){return{deleteConfirmText:``,deleting:!1}},computed:{user(){return this.$store.getters.user},deleteConfirmMatched(){let e=this.$store.getters.user?.username;return!!e&&this.deleteConfirmText.trim()===e}},methods:{async confirmDeleteAccount(){if(!(!this.deleteConfirmMatched||this.deleting)){this.deleting=!0;try{await Di.deleteMe(),this.deleting=!1,this.$emit(`update:visible`,!1),H.success(this.$t(`common.message.deleteAccountSuccess`).toString()),await this.$store.dispatch(`logout`),this.$router.push({name:Si})}catch{this.deleting=!1,H.error(this.$t(`common.message.deleteAccountFailed`).toString())}}},onClosed(){this.deleteConfirmText=``}}}),sg={class:`delete-consequences`},cg={class:`delete-type-prompt`},lg={class:`delete-username`};function ug(t,n,r,i,a,s){let l=T(`el-alert`),d=T(`el-input`),f=T(`el-button`),p=T(`el-dialog`);return L(),A(p,{"model-value":t.visible,title:t.$t(`common.nav.deleteAccount`),width:`90%`,"align-center":``,class:`delete-account-dialog`,"onUpdate:modelValue":n[2]||=e=>t.$emit(`update:visible`,e),onClosed:t.onClosed},{footer:M(()=>[u(f,{round:``,onClick:n[1]||=e=>t.$emit(`update:visible`,!1)},{default:M(()=>[o(c(t.$t(`common.button.cancel`)),1)]),_:1}),u(f,{type:`danger`,round:``,disabled:!t.deleteConfirmMatched,loading:t.deleting,onClick:t.confirmDeleteAccount},{default:M(()=>[o(c(t.$t(`common.button.deletePermanently`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])]),default:M(()=>[u(l,{title:t.$t(`common.message.deleteAccountWarning`),type:`error`,closable:!1,"show-icon":``,class:`mb-3`},null,8,[`title`]),e(`p`,sg,c(t.$t(`common.message.deleteAccountConsequences`)),1),e(`p`,cg,c(t.$t(`common.message.deleteAccountTypePrompt`)),1),e(`p`,lg,c(t.user.username),1),u(d,{modelValue:t.deleteConfirmText,"onUpdate:modelValue":n[0]||=e=>t.deleteConfirmText=e,placeholder:t.$t(`common.message.deleteAccountPlaceholder`),autocomplete:`off`},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`model-value`,`title`,`onClosed`])}var dg=z({name:`UserCenter`,components:{CreditsIcon:ht,GlobeIcon:vt,LogoutIcon:oa,MobileIcon:fa,SettingsIcon:ua,UserIcon:Ft,UserRemoveIcon:pa,UserAvatar:ya,UserSetting:ag,DeleteAccountDialog:G(og,[[`render`,ug],[`__scopeId`,`data-v-f6c5bef8`]]),ElDivider:Xe,ElDropdownMenu:Qe,ElDropdownItem:Ze,ElDropdown:$e},data(){return{showMenu:!1,showSetting:!1,showDeleteAccount:!1,settingTab:``}},computed:{user(){return this.$store.getters?.user},authenticated(){return this.$store.getters?.authenticated},isNative(){return si()},isMainOfficialHost(){return Er()},isIOS(){return _i()}},mounted(){document.addEventListener(`click`,this.closeMenu),window.addEventListener(`open-user-settings`,this.onOpenSettingsEvent),this.maybeOpenFromQuery()},unmounted(){document.removeEventListener(`click`,this.closeMenu),window.removeEventListener(`open-user-settings`,this.onOpenSettingsEvent)},methods:{toggleMenu(){this.showMenu=!this.showMenu},closeMenu(e){let t=e.target;this.$el.contains(t)||(this.showMenu=!1)},async onLogout(){await this.$store.dispatch(`logout`)},onLogin(){this.$store.dispatch(`login`,{redirect:this.$route.fullPath})},onDownload(){this.$router.push({name:pi})},onConsole(){this.$router.push({name:dr})},onDistribution(){this.$router.push({name:Or})},onDeleteAccount(){this.showDeleteAccount=!0},onSettings(){this.settingTab=``,this.showSetting=!0},onOpenSettingsEvent(e){this.settingTab=e?.detail?.tab??``,this.showSetting=!0},maybeOpenFromQuery(){let e=this.$route?.query??{},t=e.dialog,n=e.tab;if(!t&&window.location?.search){let e=new URLSearchParams(window.location.search);t=e.get(`dialog`)??void 0,n||=e.get(`tab`)??void 0}if((Array.isArray(t)?t[0]:t)!==`settings`)return;let r=Array.isArray(n)?n[0]:n;this.settingTab=typeof r==`string`?r:``,this.showSetting=!0}}}),fg={class:`center`},pg={key:0,class:`px-4 py-4 text-sm font-medium`};function mg(t,n,r,i,a,s){let l=T(`user-avatar`),f=T(`el-divider`),m=T(`user-icon`),h=T(`el-dropdown-item`),g=T(`mobile-icon`),_=T(`settings-icon`),v=T(`credits-icon`),y=T(`globe-icon`),b=T(`user-remove-icon`),S=T(`logout-icon`),C=T(`el-dropdown-menu`),w=T(`el-dropdown`),ee=T(`user-setting`),E=T(`delete-account-dialog`);return L(),p(x,null,[e(`div`,fg,[u(w,{trigger:`click`},{dropdown:M(()=>[t.user.email?(L(),p(`div`,pg,c(t.user?.email),1)):d(``,!0),t.user.email?(L(),A(f,{key:1,class:`mb-1 mt-1`})):d(``,!0),u(C,null,{default:M(()=>[t.authenticated?d(``,!0):(L(),A(h,{key:0,class:`py-2`,onClick:t.onLogin},{default:M(()=>[u(m,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.button.login`)),1)]),_:1},8,[`onClick`])),!t.isNative&&t.isMainOfficialHost?(L(),A(h,{key:1,class:`py-2`,onClick:t.onDownload},{default:M(()=>[u(g,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.mobileApp`)),1)]),_:1},8,[`onClick`])):d(``,!0),u(h,{class:`py-2`,onClick:t.onSettings},{default:M(()=>[u(_,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.setting`)),1)]),_:1},8,[`onClick`]),u(h,{class:`py-2`,onClick:t.onDistribution},{default:M(()=>[u(v,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.distribution`)),1)]),_:1},8,[`onClick`]),u(h,{class:`py-2`,onClick:t.onConsole},{default:M(()=>[u(y,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.console`)),1)]),_:1},8,[`onClick`]),t.isIOS?(L(),A(h,{key:2,class:`py-2`,onClick:t.onDeleteAccount},{default:M(()=>[u(b,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.deleteAccount`)),1)]),_:1},8,[`onClick`])):d(``,!0),t.authenticated?(L(),A(h,{key:3,class:`py-2`,onClick:t.onLogout},{default:M(()=>[u(S,{class:`mr-2`,size:`1em`,"aria-hidden":`true`,focusable:`false`}),o(` `+c(t.$t(`common.nav.logOut`)),1)]),_:1},8,[`onClick`])):d(``,!0)]),_:1})]),default:M(()=>[u(l,{class:`cursor-pointer`})]),_:1})]),u(ee,{visible:t.showSetting,"onUpdate:visible":n[0]||=e=>t.showSetting=e,"initial-tab":t.settingTab},null,8,[`visible`,`initial-tab`]),u(E,{visible:t.showDeleteAccount,"onUpdate:visible":n[1]||=e=>t.showDeleteAccount=e},null,8,[`visible`])],64)}var hg=G(dg,[[`render`,mg]]),gg={[Mi]:`chatgpt`,[ai]:`deepseek`,[Ur]:`grok`,[Rr]:`gemini`,[yr]:`claude`,[Ar]:`kimi`,[Gn]:`midjourney`,[yi]:`flux`,[Un]:`nanobanana`,[Yr]:`openaiimage`,[qn]:`seedream`,[Ni]:`suno`,[ar]:`producer`,[Qr]:`fish`,[ur]:`seedance`,[ci]:`grokvideo`,[sr]:`omni`,[Ti]:`luma`,[Dr]:`hailuo`,[gr]:`kling`,[xr]:`veo`,[vr]:`maestro`,[tr]:`poivelle`,[di]:`digitalhuman`,[er]:`sora`,[Gr]:`pixverse`,[Xn]:`wan`,[Zt]:`serp`,[br]:`webextrator`,[Sr]:`codingBridge`},_g=z({name:`Navigator`,components:{ElImage:Ei,ElPopover:at,Logo:Fi,ElTooltip:Me,UserCenter:hg},props:{direction:{type:String,default:`column`}},data(){return{operating:{dark:!1,locale:!1},activeIndex:this.$route.name,containerHeight:0,showOverflow:!1,resizeObserver:null,failedCapabilityIcons:{},isFullscreen:!1,offFullscreen:null}},computed:{links(){let e=[];return this.$store?.state?.site?.features?.chatgpt?.enabled&&e.push({route:{name:Mi},displayName:this.$t(`common.nav.chatgpt`),logo:tn,routes:[pr,Mi],category:`chat`}),this.$store?.state?.site?.features?.deepseek?.enabled&&e.push({route:{name:ai},displayName:this.$t(`common.nav.deepseek`),logo:an,routes:[hi,ai],category:`chat`}),this.$store?.state?.site?.features?.grok?.enabled&&e.push({route:{name:Ur},displayName:this.$t(`common.nav.grok`),logo:dn,routes:[ni,Ur],category:`chat`}),this.$store?.state?.site?.features?.gemini?.enabled&&e.push({route:{name:Rr},displayName:this.$t(`common.nav.gemini`),logo:qt,routes:[Ir,Rr],category:`chat`}),this.$store?.state?.site?.features?.claude?.enabled&&e.push({route:{name:yr},displayName:this.$t(`common.nav.claude`),logo:$t,routes:[Jn,yr],category:`chat`}),this.$store?.state?.site?.features?.kimi?.enabled&&e.push({route:{name:Ar},displayName:this.$t(`common.nav.kimi`),logo:Tn,routes:[ji,Ar],category:`chat`}),this.$store?.state?.site?.features?.midjourney?.enabled&&e.push({route:{name:Gn},displayName:this.$t(`common.nav.midjourney`),logo:Gt,routes:[Gn],category:`image`}),this.$store?.state?.site?.features?.flux?.enabled&&e.push({route:{name:yi},displayName:this.$t(`common.nav.flux`),logo:pn,routes:[yi],category:`image`}),this.$store?.state?.site?.features?.nanobanana?.enabled&&e.push({route:{name:Un},displayName:this.$t(`common.nav.nanobanana`),logo:nn,routes:[Un],category:`image`}),this.$store?.state?.site?.features?.openaiimage?.enabled&&e.push({route:{name:Yr},displayName:this.$t(`common.nav.openaiimage`),logo:Ut,routes:[Yr],category:`image`}),this.$store?.state?.site?.features?.seedream?.enabled&&e.push({route:{name:qn},displayName:this.$t(`common.nav.seedream`),logo:Xt,routes:[qn],category:`image`}),this.$store?.state?.site?.features?.suno?.enabled&&e.push({route:{name:Ni},displayName:this.$t(`common.nav.suno`),logo:sn,routes:[Ni,mr],category:`music`}),this.$store?.state?.site?.features?.producer?.enabled&&e.push({route:{name:ar},displayName:this.$t(`common.nav.producer`),logo:bn,routes:[ar],category:`music`}),this.$store?.state?.site?.features?.fish?.enabled&&e.push({route:{name:Qr},displayName:this.$t(`common.nav.fish`),logo:vn,routes:[Qr,Mr],category:`audio`}),this.$store?.state?.site?.features?.seedance?.enabled&&e.push({route:{name:ur},displayName:this.$t(`common.nav.seedance`),logo:yn,routes:[ur],category:`video`}),this.$store?.state?.site?.features?.grokvideo?.enabled&&e.push({route:{name:ci},displayName:this.$t(`common.nav.grokvideo`),logo:Jt,routes:[ci],category:`video`}),this.$store?.state?.site?.features?.omni?.enabled&&e.push({route:{name:sr},displayName:this.$t(`common.nav.omni`),logo:Wt,routes:[sr],category:`video`}),this.$store?.state?.site?.features?.luma?.enabled&&e.push({route:{name:Ti},displayName:this.$t(`common.nav.luma`),logo:Yt,routes:[Ti,Vn],category:`video`}),this.$store?.state?.site?.features?.hailuo?.enabled&&e.push({route:{name:Dr},displayName:this.$t(`common.nav.hailuo`),logo:Dn,routes:[Dr,Vr],category:`video`}),this.$store?.state?.site?.features?.kling?.enabled&&e.push({route:{name:gr},displayName:this.$t(`common.nav.kling`),logo:_n,routes:[gr,Oi],category:`video`}),this.$store?.state?.site?.features?.veo?.enabled&&e.push({route:{name:xr},displayName:this.$t(`common.nav.veo`),logo:un,routes:[xr,Rn],category:`video`}),this.$store?.state?.site?.features?.maestro?.enabled&&e.push({route:{name:vr},displayName:this.$t(`common.nav.maestro`),logo:Cn,routes:[vr],category:`video`}),this.$store?.state?.site?.features?.poivelle?.enabled&&e.push({route:{name:tr},displayName:this.$t(`poivelle.nav.name`),logo:gn,routes:[tr],category:`video`,capability:`poivelle`,defaultLogo:gn}),this.$store?.state?.site?.features?.digitalhuman?.enabled&&e.push({route:{name:di},displayName:this.$t(`common.nav.digitalhuman`),logo:Bt,routes:[di],category:`video`}),this.$store?.state?.site?.features?.sora?.enabled&&e.push({route:{name:er},displayName:this.$t(`common.nav.sora`),logo:mn,routes:[er,Qn],category:`video`}),this.$store?.state?.site?.features?.pixverse?.enabled&&e.push({route:{name:Gr},displayName:this.$t(`common.nav.pixverse`),logo:On,routes:[Gr,In],category:`video`}),this.$store?.state?.site?.features?.wan?.enabled&&e.push({route:{name:Xn},displayName:this.$t(`common.nav.wan`),logo:cn,routes:[Xn],category:`video`}),this.$store?.state?.site?.features?.serp?.enabled&&e.push({route:{name:Zt},displayName:this.$t(`common.nav.serp`),logo:zt,routes:[Zt],category:`search`}),this.$store?.state?.site?.features?.webextrator?.enabled&&e.push({route:{name:br},displayName:this.$t(`common.nav.webextrator`),logo:on,routes:[br],category:`data`}),this.$store?.state?.site?.features?.codingBridge?.enabled&&e.push({route:{name:Sr},displayName:this.$t(`common.nav.codingBridge`),logo:Ht,routes:[Sr],category:`data`}),e.map(e=>{let t=gg[e.route.name];if(!t||!e.logo)return e;let n=e.logo,r=ri(this.$store.state.site,t,e.displayName,n);return{...e,capability:t,defaultLogo:n,displayName:r.displayName,logo:this.failedCapabilityIcons[t]?n:r.iconUrl}})},authenticated(){return!!this.$store.state.token.access},maxVisibleItems(){if(this.direction===`row`)return this.links.length;let e=Math.floor((this.containerHeight+15)/50);return Math.max(e,3)},visibleLinks(){return this.links.length<=this.maxVisibleItems?this.links:this.links.slice(0,this.maxVisibleItems-1)},overflowLinks(){return this.links.length<=this.maxVisibleItems?[]:this.links.slice(this.maxVisibleItems-1)},overflowPreviewLinks(){return this.overflowLinks.slice(0,4)},isOverflowActive(){let e=this.$route.name;return this.overflowLinks.some(t=>t.routes.includes(e))},dockCollapsed(){return this.direction===`row`&&!!this.$store.state.setting?.dockCollapsed}},watch:{$route(){this.showOverflow=!1},dockCollapsed:{immediate:!0,handler(e){this.syncDockClass(e)}}},mounted(){if(this.$refs.linksContainer){let e=this.$refs.linksContainer;this.containerHeight=e.clientHeight,this.resizeObserver=new ResizeObserver(e=>{for(let t of e)this.containerHeight=t.contentRect.height}),this.resizeObserver.observe(e)}this.offFullscreen=Kr()?.onFullscreenChange(e=>{this.isFullscreen=e})??null},beforeUnmount(){this.resizeObserver&&=(this.resizeObserver.disconnect(),null),this.offFullscreen&&=(this.offFullscreen(),null)},methods:{syncDockClass(e){typeof document>`u`||document.documentElement.classList.toggle(`dock-collapsed`,e)},onToggleDock(){this.$store.commit(`setSetting`,{dockCollapsed:!this.$store.state.setting?.dockCollapsed})},onCapabilityIconError(e){e.capability&&e.defaultLogo&&e.logo!==e.defaultLogo&&(this.failedCapabilityIcons[e.capability]=!0)},isMacOS:Pr,onHome(){this.$router.push({name:Si})},onOverflowItemClick(e){this.showOverflow=!1,this.$router.push(e.route)}}}),vg=[`direction`],yg=[`aria-expanded`,`aria-label`,`title`],bg={key:1,class:`brand`},xg=[`inert`],Sg={class:`top`},Cg={ref:`linksContainer`,class:`links`},wg=[`title`],Tg={class:`folder-preview`},Eg={class:`overflow-menu`},Dg=[`onClick`],Og={class:`overflow-name`},kg={class:`bottom`};function Ag(t,r,i,o,s,l){let f=T(`logo`),m=T(`el-image`),h=T(`el-tooltip`),g=T(`el-popover`),_=T(`user-center`);return L(),p(`div`,{direction:t.direction,class:a([`navigator`,{collapsed:t.direction===`column`,"is-mac":t.isMacOS()&&!t.isFullscreen,"dock-collapsed":t.dockCollapsed}])},[t.direction===`row`?(L(),p(`button`,{key:0,type:`button`,class:`dock-handle`,"aria-expanded":!t.dockCollapsed,"aria-label":t.dockCollapsed?t.$t(`common.nav.expandDock`):t.$t(`common.nav.collapseDock`),title:t.dockCollapsed?t.$t(`common.nav.expandDock`):t.$t(`common.nav.collapseDock`),onClick:r[0]||=(...e)=>t.onToggleDock&&t.onToggleDock(...e)},[...r[2]||=[e(`span`,{class:`dock-handle-grip`},null,-1)]],8,yg)):d(``,!0),t.direction===`column`?(L(),p(`div`,bg,[u(f,{collapsed:``,onClick:n(t.onHome,[`stop`])},null,8,[`onClick`])])):d(``,!0),e(`div`,{class:`dock-body`,inert:t.dockCollapsed||void 0},[e(`div`,Sg,[e(`div`,Cg,[(L(!0),p(x,null,F(t.visibleLinks,(e,n)=>(L(),p(`div`,{key:n,class:a({link:!0,active:e.routes.includes(t.$route.name)})},[u(h,{effect:`dark`,content:e.displayName,placement:t.direction===`row`?`top`:`right`},{default:M(()=>[e.logo?(L(),A(m,{key:0,src:e.logo,class:`avatar`,onError:n=>t.onCapabilityIconError(e),onClick:n=>t.$router.push(e.route)},null,8,[`src`,`onError`,`onClick`])):d(``,!0)]),_:2},1032,[`content`,`placement`])],2))),128)),t.overflowLinks.length>0?(L(),p(`div`,{key:0,class:a({link:!0,active:t.isOverflowActive})},[u(g,{visible:t.showOverflow,"onUpdate:visible":r[1]||=e=>t.showOverflow=e,placement:t.direction===`row`?`top`:`right-start`,width:180,trigger:`click`,"show-arrow":!1,"popper-class":`navigator-overflow-popover`},{reference:M(()=>[e(`div`,{class:a([`more-button`,{active:t.isOverflowActive}]),title:t.$t(`common.nav.more`)},[e(`div`,Tg,[(L(!0),p(x,null,F(t.overflowPreviewLinks,(e,n)=>(L(),A(m,{key:n,src:e.logo,class:`folder-icon`,fit:`cover`,onError:n=>t.onCapabilityIconError(e)},null,8,[`src`,`onError`]))),128))])],10,wg)]),default:M(()=>[e(`div`,Eg,[(L(!0),p(x,null,F(t.overflowLinks,(n,r)=>(L(),p(`div`,{key:r,class:a({"overflow-item":!0,active:n.routes.includes(t.$route.name)}),onClick:e=>t.onOverflowItemClick(n)},[n.logo?(L(),A(m,{key:0,src:n.logo,class:`overflow-avatar`,fit:`cover`,onError:e=>t.onCapabilityIconError(n)},null,8,[`src`,`onError`])):d(``,!0),e(`span`,Og,c(n.displayName),1)],10,Dg))),128))])]),_:1},8,[`visible`,`placement`])],2)):d(``,!0)],512)]),e(`div`,kg,[u(_)])],8,xg)],10,vg)}var jg=G(_g,[[`render`,Ag],[`__scopeId`,`data-v-21953556`]]);export{jg as t};