@acedatacloud/nexior 3.97.0 → 3.98.0

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 (344) hide show
  1. package/dist/assets/{Auth-BbqFzLtX.js → Auth-BaHDvpeb.js} +1 -1
  2. package/dist/assets/{BotPlaceholder-CPhTFUhx.js → BotPlaceholder-DdsBkQKp.js} +1 -1
  3. package/dist/assets/{Callback-kPd719lv.js → Callback-DnjHdF8r.js} +1 -1
  4. package/dist/assets/{Console-DLUI3T6a.js → Console-DmTtHPe8.js} +1 -1
  5. package/dist/assets/{Consumption-B5beTHkW.js → Consumption-BSVFsTtH.js} +1 -1
  6. package/dist/assets/{Conversation-CKBSjYy1.js → Conversation-BvkhWF5C.js} +1 -1
  7. package/dist/assets/{CopyToClipboard-Dx-62vBK.js → CopyToClipboard-DVPG-ya4.js} +1 -1
  8. package/dist/assets/{Detail-DwK4XbCk.js → Detail-Di9rQGLh.js} +2 -2
  9. package/dist/assets/{EditArray-Dx-OYcbu.js → EditArray-CHr0q5JG.js} +1 -1
  10. package/dist/assets/{Extra-C6EnhUK5.js → Extra-areLEGDO.js} +1 -1
  11. package/dist/assets/{FilePreview-DXEawPEm.js → FilePreview-DmR5xicy.js} +1 -1
  12. package/dist/assets/{History-CZGwPbs5.js → History-CdcxU2Od.js} +1 -1
  13. package/dist/assets/{IconPark.vue_vue_type_script_setup_true_lang-BjYKIXBx.js → IconPark.vue_vue_type_script_setup_true_lang-C4bvA4FK.js} +1 -1
  14. package/dist/assets/{ImagePreview-BfCs8rwC.js → ImagePreview-B-iwDk2B.js} +1 -1
  15. package/dist/assets/{ImageWrapper-_8SBTlb9.js → ImageWrapper-DZRbS7sm.js} +1 -1
  16. package/dist/assets/{Index-CQonDouj.js → Index-2U1v0Drr.js} +1 -1
  17. package/dist/assets/{Index-CT-fds6J.js → Index-5E_kC3Cs.js} +1 -1
  18. package/dist/assets/{Index-DeNxAGIm.js → Index-7Ns_tHmy.js} +1 -1
  19. package/dist/assets/{Index-B_f_qJfG.js → Index-9BAKbjC-.js} +1 -1
  20. package/dist/assets/{Index-DAti7q3D.js → Index-B1atj0Gh.js} +1 -1
  21. package/dist/assets/{Index-BcozXO_X.js → Index-B2araAz7.js} +1 -1
  22. package/dist/assets/{Index-Dz9diIJY.js → Index-B_mWRXRh.js} +1 -1
  23. package/dist/assets/{Index-CBMp-GVw.js → Index-BbSVkJc7.js} +1 -1
  24. package/dist/assets/{Index-BaL5Mi3I.js → Index-BmProyy2.js} +1 -1
  25. package/dist/assets/{Index-tOavPJLk.js → Index-C5ceNP3K.js} +1 -1
  26. package/dist/assets/{Index-Dw3_91ZU.js → Index-C5xhaWu8.js} +1 -1
  27. package/dist/assets/{Index-CYHteUb1.js → Index-CB7Wl0wA.js} +1 -1
  28. package/dist/assets/{Index-C2efMtdm.js → Index-CFJt4GrV.js} +1 -1
  29. package/dist/assets/{Index-38kaZGCE.js → Index-CO_vdtIq.js} +1 -1
  30. package/dist/assets/{Index-DKMF7ZgW.js → Index-CmThG9hh.js} +1 -1
  31. package/dist/assets/{Index-B_QksJfV.js → Index-CzF9025M.js} +1 -1
  32. package/dist/assets/{Index-BrbQPbPN.js → Index-D0c0jXWx.js} +1 -1
  33. package/dist/assets/{Index-D8KUk974.js → Index-DKkvvo5t.js} +1 -1
  34. package/dist/assets/{Index-CN_AB31A.js → Index-DR8Bk-52.js} +1 -1
  35. package/dist/assets/{Index-BJX9cEO8.js → Index-DeHAgL0P.js} +1 -1
  36. package/dist/assets/{Index-BPb_6AFV.js → Index-DiaGS8ny.js} +1 -1
  37. package/dist/assets/{Index-D2N0wJTD.js → Index-gunBSh-K.js} +1 -1
  38. package/dist/assets/{Index-BhVBQ3w2.js → Index-tDnZkUHv.js} +1 -1
  39. package/dist/assets/{Index-P672NU94.js → Index-vW2aqD8t.js} +1 -1
  40. package/dist/assets/{Index-C-ci7hlZ.js → Index-wP_gJ_2j.js} +1 -1
  41. package/dist/assets/{Invitees-p1TtbR3Z.js → Invitees-CLh8Dxfn.js} +1 -1
  42. package/dist/assets/{List-B0pNxQk5.js → List-Bp73p9_u.js} +1 -1
  43. package/dist/assets/{List-C04AB-Ot.js → List-BqB7u5bI.js} +1 -1
  44. package/dist/assets/{List-SB15cGze.js → List-bSXh6N5D.js} +1 -1
  45. package/dist/assets/{Main-uvVCZ-jO.js → Main-Cjo6fHyO.js} +1 -1
  46. package/dist/assets/{Navigator-5djVcjsR.js → Navigator-CJM0LD8p.js} +1 -1
  47. package/dist/assets/{NoTasks-BWVLZqfq.js → NoTasks-DM9B-yMD.js} +1 -1
  48. package/dist/assets/{NotFound-Bx5-j0Oo.js → NotFound-BbSc3yS8.js} +1 -1
  49. package/dist/assets/{OAuthCallback-CvPzocj5.js → OAuthCallback-BjGk04qT.js} +1 -1
  50. package/dist/assets/{Pagination-4cjdhSy2.js → Pagination-Dm5IxHG0.js} +1 -1
  51. package/dist/assets/{ScrollList-BMhc2qpm.js → ScrollList-CRs_70Ba.js} +1 -1
  52. package/dist/assets/{Status-Iwrzbqdo.js → Status-B37gynDI.js} +1 -1
  53. package/dist/assets/{Subscribe-OETneOZs.js → Subscribe-CdxIrYUo.js} +1 -1
  54. package/dist/assets/{TransportWebHID-DqFFN499.js → TransportWebHID-CSmHAjdP.js} +1 -1
  55. package/dist/assets/{VideoPlayer-CGqT-FrS.js → VideoPlayer-DraD1Ikd.js} +1 -1
  56. package/dist/assets/{_Uint8Array-D2hcaA7t.js → _Uint8Array-BwqjhXg8.js} +1 -1
  57. package/dist/assets/{_baseClone-C5kjpouO.js → _baseClone-BkyYLNlg.js} +1 -1
  58. package/dist/assets/{_baseIteratee-DRs4HrNx.js → _baseIteratee-DyqTAslN.js} +1 -1
  59. package/dist/assets/{_initCloneObject-CkiCLeyz.js → _initCloneObject-DtbawC04.js} +1 -1
  60. package/dist/assets/{add-Cv_cpkwD.js → add-oSoKcSbq.js} +1 -1
  61. package/dist/assets/{all-wallets-Cd0dV_N4.js → all-wallets-B6cRR3DF.js} +1 -1
  62. package/dist/assets/{app-store-B0BzA97B.js → app-store-CxTpFVpC.js} +1 -1
  63. package/dist/assets/{apple-CXYJOUxT.js → apple-91dEEEpn.js} +1 -1
  64. package/dist/assets/{arrow-bottom-D6QZ0Gla.js → arrow-bottom-C6VtfbCZ.js} +1 -1
  65. package/dist/assets/{arrow-bottom-circle-B3vqVL5A.js → arrow-bottom-circle-BdwIOwea.js} +1 -1
  66. package/dist/assets/{arrow-left-Bt0G3Yjb.js → arrow-left-iLfxptPo.js} +1 -1
  67. package/dist/assets/{arrow-right-RB412ckT.js → arrow-right-CcHGMWjT.js} +1 -1
  68. package/dist/assets/{arrow-top-CpaAcW2f.js → arrow-top-CKt7ghdE.js} +1 -1
  69. package/dist/assets/{avatar-DQ4hUGxY.js → avatar-BubUD3kr.js} +1 -1
  70. package/dist/assets/{bank-DA4417lC.js → bank-DifwGiyj.js} +1 -1
  71. package/dist/assets/{basic-rUgVG1Sz.js → basic-BS3mGEpt.js} +1 -1
  72. package/dist/assets/{browser-BjQYXDLg.js → browser-Dq48ySmD.js} +1 -1
  73. package/dist/assets/byok-4hELbSBt.js +1 -0
  74. package/dist/assets/byok-BGI1zl-P.js +1 -0
  75. package/dist/assets/byok-BUdE8URu.js +1 -0
  76. package/dist/assets/byok-BXAdmgmu.js +1 -0
  77. package/dist/assets/byok-BZuYQzma.js +1 -0
  78. package/dist/assets/byok-CDeou2E_.js +1 -0
  79. package/dist/assets/byok-CFx1Uly7.js +1 -0
  80. package/dist/assets/byok-CG9ZJtLg.js +1 -0
  81. package/dist/assets/byok-CLbmsMJc.js +1 -0
  82. package/dist/assets/byok-DNa_b1P4.js +1 -0
  83. package/dist/assets/byok-DbkPPJqT.js +1 -0
  84. package/dist/assets/byok-DsiIIMKE.js +1 -0
  85. package/dist/assets/byok-DuRYhWII.js +1 -0
  86. package/dist/assets/byok-I56-HT87.js +1 -0
  87. package/dist/assets/byok-YaJRts4c.js +1 -0
  88. package/dist/assets/byok-gv9eCegk.js +1 -0
  89. package/dist/assets/byok-qPjieGxo.js +1 -0
  90. package/dist/assets/{byokCredential-DffPwwxW.js → byokCredential-BB9vkJPK.js} +1 -1
  91. package/dist/assets/{card-ClttMCnh.js → card-muM-F21F.js} +1 -1
  92. package/dist/assets/{castArray-CPkiDUbn.js → castArray-_sjP7zQ7.js} +1 -1
  93. package/dist/assets/{chat-BnKPgCKV.js → chat-DNq10AI1.js} +1 -1
  94. package/dist/assets/{checkmark-Cb1GkjGn.js → checkmark-BTZvVES_.js} +1 -1
  95. package/dist/assets/{checkmark-bold-BiKAUGy5.js → checkmark-bold-U2uLTIeg.js} +1 -1
  96. package/dist/assets/{chevron-bottom-D5dL22lj.js → chevron-bottom-DIjmU3la.js} +1 -1
  97. package/dist/assets/{chevron-left-C_xKl1UX.js → chevron-left-Zu2GA8Kg.js} +1 -1
  98. package/dist/assets/{chevron-right-DuAuph9b.js → chevron-right-Y9UOSQy5.js} +1 -1
  99. package/dist/assets/{chevron-top-DmFBlLVx.js → chevron-top-B0qIhRx8.js} +1 -1
  100. package/dist/assets/{chrome-store-BWGgGO6i.js → chrome-store-DuESWKf0.js} +1 -1
  101. package/dist/assets/{clock-5Ez1urOZ.js → clock-CzpQBhBA.js} +1 -1
  102. package/dist/assets/{close-C9lvgl19.js → close-Dz4OMOFW.js} +1 -1
  103. package/dist/assets/{coinPlaceholder-DrTtGY8e.js → coinPlaceholder-DmNSjM7Z.js} +1 -1
  104. package/dist/assets/common-B7vGoLS4.js +1 -0
  105. package/dist/assets/common-BC0k3NqI.js +1 -0
  106. package/dist/assets/common-BG1CcXFe.js +1 -0
  107. package/dist/assets/common-BSmIzVMM.js +1 -0
  108. package/dist/assets/common-Bp8qMNkk.js +1 -0
  109. package/dist/assets/common-BvztSN_m.js +1 -0
  110. package/dist/assets/common-C0MVp_Q0.js +1 -0
  111. package/dist/assets/common-CL0v3MmT.js +1 -0
  112. package/dist/assets/common-CSH-zxgl.js +1 -0
  113. package/dist/assets/common-CrMJ1k8K.js +1 -0
  114. package/dist/assets/common-DSc6Q_4M.js +1 -0
  115. package/dist/assets/common-DusEsSaK.js +1 -0
  116. package/dist/assets/common-MLRYkNXA.js +1 -0
  117. package/dist/assets/common-T4n4A3HP.js +1 -0
  118. package/dist/assets/common-kUvvknt_.js +1 -0
  119. package/dist/assets/common-rRbopA-u.js +1 -0
  120. package/dist/assets/common-yRaSE63I.js +1 -0
  121. package/dist/assets/{compass-qg7Vo0EV.js → compass-DnCGhh_T.js} +1 -1
  122. package/dist/assets/{copy-CFQkpqvV.js → copy-DSkBkP7k.js} +1 -1
  123. package/dist/assets/{cursor-Dpgty1-b.js → cursor-BlzSkzlM.js} +1 -1
  124. package/dist/assets/{cursor-transparent-C2z1Z8Am.js → cursor-transparent-Dd0wUX7B.js} +1 -1
  125. package/dist/assets/{debounce-CKyw8aIt.js → debounce-B_KruiGC.js} +1 -1
  126. package/dist/assets/{desktop-DNuzg8hU.js → desktop-Bx3dX6Bk.js} +1 -1
  127. package/dist/assets/{disconnect-Cucnlpjq.js → disconnect-BM54iB59.js} +1 -1
  128. package/dist/assets/{discord-j0J2wBGp.js → discord-uw6oEQcX.js} +1 -1
  129. package/dist/assets/{distribution-1xuWmWdo.js → distribution-lbd4_sh0.js} +1 -1
  130. package/dist/assets/{dropdown-Byxl_GJs.js → dropdown-DA0ZxN9H.js} +1 -1
  131. package/dist/assets/{etherscan-FED0VHBt.js → etherscan-D8CnfjCk.js} +1 -1
  132. package/dist/assets/{exclamation-triangle-BZalr9HS.js → exclamation-triangle-mk2mKRcR.js} +1 -1
  133. package/dist/assets/{extension-C6osma5W.js → extension-DK_p6AMh.js} +1 -1
  134. package/dist/assets/{external-link-cYmRqFOB.js → external-link-CG_hpGE1.js} +1 -1
  135. package/dist/assets/{facebook-Ph4ZtMwA.js → facebook-BWYStAUL.js} +1 -1
  136. package/dist/assets/{farcaster-ZT1XHqx6.js → farcaster-DUAYAdCa.js} +1 -1
  137. package/dist/assets/{filters-BnIemN6c.js → filters--gTu7_Ph.js} +1 -1
  138. package/dist/assets/{flux-Dkfo2FjH.js → flux-BTPMKlg2.js} +1 -1
  139. package/dist/assets/{github-DVXNbjnx.js → github-C7MLQ667.js} +1 -1
  140. package/dist/assets/{google-CN_6ud6T.js → google-jklIj6Oz.js} +1 -1
  141. package/dist/assets/{hailuo-bSvV6Nc2.js → hailuo-uVFBusfk.js} +1 -1
  142. package/dist/assets/{headshots-PI4z_lIG.js → headshots-Dgpv8suE.js} +1 -1
  143. package/dist/assets/{help-circle-BJJ7tOaM.js → help-circle-0Ms9xXty.js} +1 -1
  144. package/dist/assets/{id-DaDJFEIO.js → id-DfHmvg20.js} +1 -1
  145. package/dist/assets/{image-DreeJ5RT.js → image-fKhykQh4.js} +1 -1
  146. package/dist/assets/{index-69GNp982.js → index-4ecZekY7.js} +1 -1
  147. package/dist/assets/{index-CPjaHpqx.js → index-5Uvv2vdA.js} +1 -1
  148. package/dist/assets/{index-DlMnVzgO.js → index-6Xr06V6s.js} +1 -1
  149. package/dist/assets/{index-ne7duibE.js → index-9LUj7krl.js} +1 -1
  150. package/dist/assets/{index-CJONl3t3.js → index-B1c0tSQk.js} +1 -1
  151. package/dist/assets/{index-CcLeLCz_.js → index-B3uh9SBG.js} +4 -4
  152. package/dist/assets/{index-Cb3-nY6b.js → index-B6gXYEVX.js} +1 -1
  153. package/dist/assets/{index-DF57kLgF.js → index-BDi73AHo.js} +1 -1
  154. package/dist/assets/{index-DS0tjIEq.js → index-BEOD0h0l.js} +1 -1
  155. package/dist/assets/{index-BaFiL7S8.js → index-BFz6aMgg.js} +1 -1
  156. package/dist/assets/{index-BTkM2pft.js → index-BKpayLrg.js} +1 -1
  157. package/dist/assets/{index-BYYV_ZTQ.js → index-BPov0X0v.js} +1 -1
  158. package/dist/assets/{index-BvejC5Dn.js → index-BUsamA4-.js} +1 -1
  159. package/dist/assets/{index-q5gsAHya.js → index-BY8LFgNd.js} +1 -1
  160. package/dist/assets/{index-Dx7rdP6C.js → index-BZ067diU.js} +1 -1
  161. package/dist/assets/{index-D1ca77AN.js → index-BaKYaR0O.js} +1 -1
  162. package/dist/assets/{index-sOvTetUq.js → index-BixW7C84.js} +1 -1
  163. package/dist/assets/{index-Bk1_KQJc.js → index-BlCJ3LiZ.js} +1 -1
  164. package/dist/assets/{index-BH6seCdR.js → index-Bquz-ZT7.js} +1 -1
  165. package/dist/assets/{index-KybBI47k.js → index-Brsv4kOr.js} +1 -1
  166. package/dist/assets/{index-BxGUaspk.js → index-Bszz34Kt.js} +1 -1
  167. package/dist/assets/{index-BsM8dige.js → index-C1TJRse6.js} +3 -3
  168. package/dist/assets/{index-jmxlidwd.js → index-C2juzOgf.js} +1 -1
  169. package/dist/assets/{index-CHizgxWq.js → index-C9IS4cMf.js} +1 -1
  170. package/dist/assets/{index-B3geUtDw.js → index-CdGI8njR.js} +1 -1
  171. package/dist/assets/{index-CXYhDrWA.js → index-Cf36AFND.js} +1 -1
  172. package/dist/assets/{index-CvsGatLW.js → index-CjzAAOGe.js} +1 -1
  173. package/dist/assets/{index-DbidluNF.js → index-CtgkksDZ.js} +1 -1
  174. package/dist/assets/{index-_4fe3C_H.js → index-CzWkYArR.js} +1 -1
  175. package/dist/assets/{index-DLzT3hvJ.js → index-D6K5qdP4.js} +1 -1
  176. package/dist/assets/{index-CrU9Y2iq.js → index-D9YI6H_D.js} +1 -1
  177. package/dist/assets/{index-BpL32wdf.js → index-D9tbxCdF.js} +1 -1
  178. package/dist/assets/{index-COgclLPo.js → index-DCP17RXF.js} +1 -1
  179. package/dist/assets/{index-YOaYKfmW.js → index-DEIC76Wu.js} +1 -1
  180. package/dist/assets/{index-CruGqhvG.js → index-DFjF63BZ.js} +1 -1
  181. package/dist/assets/{index-BVDLO2NF.js → index-DIqo0phj.js} +1 -1
  182. package/dist/assets/{index-C3_BR8Du.js → index-DJfPwHi6.js} +1 -1
  183. package/dist/assets/{index-C_d4UAcW.js → index-DLkIS2eZ.js} +1 -1
  184. package/dist/assets/{index-BtF23Afa.js → index-DUpmug5B.js} +1 -1
  185. package/dist/assets/{index-DQlBqojO.js → index-DXFxpk5z.js} +1 -1
  186. package/dist/assets/{index-DtCboVpY.js → index-DXJZurRB.js} +1 -1
  187. package/dist/assets/{index-Bl7rdnNO.js → index-DZeBoHVX.js} +1 -1
  188. package/dist/assets/{index-B8krp8NB.js → index-D_FtMr1M.js} +1 -1
  189. package/dist/assets/{index-DsfXnE4t.js → index-DbJvU8kJ.js} +6 -6
  190. package/dist/assets/{index-2j0K9jvG.js → index-Db_N1JRN.js} +1 -1
  191. package/dist/assets/{index-Dal6eWNH.js → index-DczPMeVS.js} +1 -1
  192. package/dist/assets/{index-Bqokxo8B.js → index-DdSpg2zG.js} +1 -1
  193. package/dist/assets/{index-4NFFUijB.js → index-DgruOXvk.js} +1 -1
  194. package/dist/assets/{index-DHmHglE2.js → index-Dw0hXs4P.js} +1 -1
  195. package/dist/assets/{index-BrM6TDeR.js → index-DzSV2ElH.js} +1 -1
  196. package/dist/assets/{index-DzPENgfO.js → index-DzZF_9y4.js} +1 -1
  197. package/dist/assets/{index-HuVavZAf.js → index-Q0X1G1Xf.js} +1 -1
  198. package/dist/assets/{index-SWPpcpmG.js → index-TRoKLXib.js} +1 -1
  199. package/dist/assets/{index-DCfQlYwu.js → index-YsjWZMcA.js} +1 -1
  200. package/dist/assets/{index-DcHEstoF.js → index-avvQs7iV.js} +1 -1
  201. package/dist/assets/{index-LfelAXyt.js → index-hCWtqi31.js} +1 -1
  202. package/dist/assets/{index-7GJM0rUf.js → index-hsxK2zT7.js} +1 -1
  203. package/dist/assets/{index-pC2g6yAD.js → index-jrrNXUU1.js} +1 -1
  204. package/dist/assets/{index-DtxStG8X.js → index-p6fAfjcS.js} +1 -1
  205. package/dist/assets/{index-cMX6QLxI.js → index-sxh95WLC.js} +1 -1
  206. package/dist/assets/{index-ZHTn_Yq9.js → index-vRYu8KIC.js} +1 -1
  207. package/dist/assets/{index.browser.esm-hIlJlby7.js → index.browser.esm-DVxHZzcN.js} +1 -1
  208. package/dist/assets/{index.es-2QbhDzjR.js → index.es-C0e-bBsp.js} +1 -1
  209. package/dist/assets/{info-DarPYdTc.js → info-DwVQb1iL.js} +1 -1
  210. package/dist/assets/{info-circle-C4ZFGeER.js → info-circle-DFs0Lccg.js} +1 -1
  211. package/dist/assets/{isEqual-BIWsPnQ_.js → isEqual-CsYSsI7u.js} +1 -1
  212. package/dist/assets/{isPlainObject-Cf0k3CGb.js → isPlainObject-CRR9RtPP.js} +1 -1
  213. package/dist/assets/kling-A8yAm8Bq.js +1 -0
  214. package/dist/assets/kling-B7lq-z4o.js +1 -0
  215. package/dist/assets/kling-BTlfb1JX.js +1 -0
  216. package/dist/assets/kling-BWt_t64H.js +1 -0
  217. package/dist/assets/kling-BkrfP3lv.js +1 -0
  218. package/dist/assets/kling-BwvOA8kZ.js +1 -0
  219. package/dist/assets/kling-CBAtX4_c.js +1 -0
  220. package/dist/assets/kling-CP45qw2j.js +1 -0
  221. package/dist/assets/kling-CRYBUNtO.js +1 -0
  222. package/dist/assets/kling-CafWeDx7.js +1 -0
  223. package/dist/assets/kling-CpUzxH9W.js +1 -0
  224. package/dist/assets/kling-D01xPwF3.js +1 -0
  225. package/dist/assets/kling-D_IMioY-.js +1 -0
  226. package/dist/assets/kling-D_Rj1-kx.js +1 -0
  227. package/dist/assets/{kling-CPRYenDC.js → kling-Ddi7AAwa.js} +1 -1
  228. package/dist/assets/kling-DdjyEC8R.js +1 -0
  229. package/dist/assets/kling-DwX0viXR.js +1 -0
  230. package/dist/assets/kling-DxMZV8XD.js +1 -0
  231. package/dist/assets/{lightbulb-BJMjSk-5.js → lightbulb-BTXC1RhN.js} +1 -1
  232. package/dist/assets/{luma-BcF4QRaV.js → luma-VZPymM2-.js} +1 -1
  233. package/dist/assets/{mail-CE4TGwZh.js → mail-CHAAmdQd.js} +1 -1
  234. package/dist/assets/{midjourney-BdDHk4RG.js → midjourney-CchCYu-s.js} +1 -1
  235. package/dist/assets/{mobile-DwkOUmIY.js → mobile-TN5syrvf.js} +1 -1
  236. package/dist/assets/{more-K0ddH5ed.js → more-DXSSBdJx.js} +1 -1
  237. package/dist/assets/{nanobanana-CsGxt7eT.js → nanobanana-DmSxWZTR.js} +1 -1
  238. package/dist/assets/{network-placeholder-C_nmGwow.js → network-placeholder-7u7pFpxb.js} +1 -1
  239. package/dist/assets/{nftPlaceholder-QbysoOtD.js → nftPlaceholder-B_p1mBMb.js} +1 -1
  240. package/dist/assets/{off-rnB9Q5or.js → off-pQzidArJ.js} +1 -1
  241. package/dist/assets/{openaiimage-gX_8ETrX.js → openaiimage-DU64JLLK.js} +1 -1
  242. package/dist/assets/{order-eNTis83u.js → order-BboxJCTn.js} +1 -1
  243. package/dist/assets/{pika-C1Zi4Zln.js → pika-CI66bWUX.js} +1 -1
  244. package/dist/assets/{pixverse-BK1_LXAs.js → pixverse-C-2chbAp.js} +1 -1
  245. package/dist/assets/{play-store-ClIMcSm2.js → play-store-WMjp9OQk.js} +1 -1
  246. package/dist/assets/{plus-B3ynsltG.js → plus-D1nani4c.js} +1 -1
  247. package/dist/assets/{price-CS8jujkQ.js → price-DM5KD4tW.js} +1 -1
  248. package/dist/assets/{producer-Dn-Oru0N.js → producer-CNjtCvlA.js} +1 -1
  249. package/dist/assets/{qr-code-CSrufiPr.js → qr-code-DcixCMhL.js} +1 -1
  250. package/dist/assets/{qrart-KMocV7bf.js → qrart-DzjE4i9s.js} +1 -1
  251. package/dist/assets/{recycle-horizontal-Bl92L50Q.js → recycle-horizontal-DTAuvT3Q.js} +1 -1
  252. package/dist/assets/{refresh-DvHgeG60.js → refresh-BgBdZibx.js} +1 -1
  253. package/dist/assets/{reown-logo-CKr5GMtX.js → reown-logo-DwCQBKpU.js} +1 -1
  254. package/dist/assets/{search-OIVaC273.js → search-CWnaVPP4.js} +1 -1
  255. package/dist/assets/{secp256k1-BwIdqIKB.js → secp256k1-B_1xIMGP.js} +1 -1
  256. package/dist/assets/{secp256k1-ZYsA3gic.js → secp256k1-C8CjWX5B.js} +1 -1
  257. package/dist/assets/{seedance-K4WeHf5l.js → seedance-CKIuN8cP.js} +1 -1
  258. package/dist/assets/{seedream-C7dZC8Si.js → seedream-DD35iwNy.js} +1 -1
  259. package/dist/assets/{send-CBXZK4Xi.js → send-PdbBewCD.js} +1 -1
  260. package/dist/assets/{service-EGD7jav_.js → service-DUZ3xUWx.js} +1 -1
  261. package/dist/assets/{solana-wallets-CTM3UDaW.js → solana-wallets-sw023bvr.js} +2 -2
  262. package/dist/assets/{solana-wallets-vue-DL-Ol8LI.js → solana-wallets-vue-BrI6Wpoh.js} +1 -1
  263. package/dist/assets/{solanaEmbed.esm-BFXys2q7.js → solanaEmbed.esm-BPtIQ2Lw.js} +1 -1
  264. package/dist/assets/{sora-CT62wnXW.js → sora-CcS_rJuu.js} +1 -1
  265. package/dist/assets/{string_decoder-ArcW5xFk.js → string_decoder-C958HUQB.js} +1 -1
  266. package/dist/assets/{suno-DHVcJD1s.js → suno-qq8VaS05.js} +1 -1
  267. package/dist/assets/{swapHorizontal-BSzS2isE.js → swapHorizontal-BcSHuA3W.js} +1 -1
  268. package/dist/assets/{swapHorizontalBold-CFiBv3OO.js → swapHorizontalBold-YbUaBfqw.js} +1 -1
  269. package/dist/assets/{swapHorizontalMedium-AwKmPVc7.js → swapHorizontalMedium-BcFj-nTM.js} +1 -1
  270. package/dist/assets/{swapHorizontalRoundedBold-IU3qBFEJ.js → swapHorizontalRoundedBold-DgQPtOGk.js} +1 -1
  271. package/dist/assets/{swapVertical-CVBJxyeW.js → swapVertical-CIeijDno.js} +1 -1
  272. package/dist/assets/{telegram-DGl-M_Ij.js → telegram-Kfbx6ltk.js} +1 -1
  273. package/dist/assets/{three-dots-NwfIkKGu.js → three-dots-CohoSQNn.js} +1 -1
  274. package/dist/assets/{twitch-BGwtBzIR.js → twitch-BgopOEml.js} +1 -1
  275. package/dist/assets/{twitterIcon-oPPmqStp.js → twitterIcon-C9uxocfx.js} +1 -1
  276. package/dist/assets/{typescript-l_7qPiw8.js → typescript-_wE_XALW.js} +1 -1
  277. package/dist/assets/{use-form-item-B2PVrARv.js → use-form-item-CJ_W80ww.js} +1 -1
  278. package/dist/assets/validator-CsFWv4K_.js +1 -0
  279. package/dist/assets/{veo-q4WAPljg.js → veo-Cr3g6obK.js} +1 -1
  280. package/dist/assets/{verify-CNRgcLV9.js → verify-DfSFYHcF.js} +1 -1
  281. package/dist/assets/{verify-filled-CjyCa_nQ.js → verify-filled-CoiJunRm.js} +1 -1
  282. package/dist/assets/{w3m-modal-DLnG9__D.js → w3m-modal-CTvYiKCX.js} +1 -1
  283. package/dist/assets/{wallet-BOBLEOBh.js → wallet-CvqrfQGB.js} +1 -1
  284. package/dist/assets/{wallet-placeholder-DRkkrlLM.js → wallet-placeholder-CVeaZhci.js} +1 -1
  285. package/dist/assets/{walletconnect-DrfRvQu4.js → walletconnect-B_UyJJ2D.js} +1 -1
  286. package/dist/assets/{wan-BmE2K1-M.js → wan-DulmVags.js} +1 -1
  287. package/dist/assets/{warning-circle-DaMGAokc.js → warning-circle-Ba2J-OEC.js} +1 -1
  288. package/dist/assets/{web-mN7gVGzz.js → web-Bexb8rpG.js} +1 -1
  289. package/dist/assets/{web-CgqXm-L3.js → web-C7F8CAc7.js} +1 -1
  290. package/dist/assets/{x-CQGLnLIV.js → x-Eh8z-BNp.js} +1 -1
  291. package/dist/index.html +1 -1
  292. package/package.json +1 -1
  293. package/dist/assets/byok-BOV7pIIm.js +0 -1
  294. package/dist/assets/byok-BPUSYqoV.js +0 -1
  295. package/dist/assets/byok-BcJDGhmB.js +0 -1
  296. package/dist/assets/byok-BjN_SNWa.js +0 -1
  297. package/dist/assets/byok-Br97ucDR.js +0 -1
  298. package/dist/assets/byok-BzuPptjq.js +0 -1
  299. package/dist/assets/byok-C3__wQRA.js +0 -1
  300. package/dist/assets/byok-CIfBsxL2.js +0 -1
  301. package/dist/assets/byok-CcEVok3q.js +0 -1
  302. package/dist/assets/byok-Cs3n9Eij.js +0 -1
  303. package/dist/assets/byok-DZTDdrCh.js +0 -1
  304. package/dist/assets/byok-DaMsY4PY.js +0 -1
  305. package/dist/assets/byok-DhgcO_up.js +0 -1
  306. package/dist/assets/byok-Dmah3H6H.js +0 -1
  307. package/dist/assets/byok-Drwu1ftI.js +0 -1
  308. package/dist/assets/byok-SsfOGhNr.js +0 -1
  309. package/dist/assets/byok-rnr_J4Y1.js +0 -1
  310. package/dist/assets/common-5-TisaAy.js +0 -1
  311. package/dist/assets/common-B8nLKF52.js +0 -1
  312. package/dist/assets/common-BBeThY0n.js +0 -1
  313. package/dist/assets/common-BwGKX-bt.js +0 -1
  314. package/dist/assets/common-C8rejBbq.js +0 -1
  315. package/dist/assets/common-C95EFp0H.js +0 -1
  316. package/dist/assets/common-CWPAasGX.js +0 -1
  317. package/dist/assets/common-Cs3t9bXM.js +0 -1
  318. package/dist/assets/common-CsE5Hp29.js +0 -1
  319. package/dist/assets/common-D2N9NzIX.js +0 -1
  320. package/dist/assets/common-DLJ1gbwx.js +0 -1
  321. package/dist/assets/common-DXqQ-SQf.js +0 -1
  322. package/dist/assets/common-D_5n6EDp.js +0 -1
  323. package/dist/assets/common-DqBjV2U4.js +0 -1
  324. package/dist/assets/common-g46ow-e0.js +0 -1
  325. package/dist/assets/common-qDl3ASQO.js +0 -1
  326. package/dist/assets/common-xwxDzVLO.js +0 -1
  327. package/dist/assets/kling-B-UgDIIM.js +0 -1
  328. package/dist/assets/kling-B6b0DmUc.js +0 -1
  329. package/dist/assets/kling-BE_aXo1J.js +0 -1
  330. package/dist/assets/kling-BMWIhQuA.js +0 -1
  331. package/dist/assets/kling-BaAWVbDH.js +0 -1
  332. package/dist/assets/kling-BuHKehNx.js +0 -1
  333. package/dist/assets/kling-C65LvmjS.js +0 -1
  334. package/dist/assets/kling-CWyudQ3n.js +0 -1
  335. package/dist/assets/kling-CaMEurxg.js +0 -1
  336. package/dist/assets/kling-Cj_wOXCf.js +0 -1
  337. package/dist/assets/kling-D0OSJXMQ.js +0 -1
  338. package/dist/assets/kling-D6pfPTeB.js +0 -1
  339. package/dist/assets/kling-DDhQlsis.js +0 -1
  340. package/dist/assets/kling-DHI7cuFc.js +0 -1
  341. package/dist/assets/kling-DRUdzQlN.js +0 -1
  342. package/dist/assets/kling-HuUm_n8B.js +0 -1
  343. package/dist/assets/kling-N_yDawUo.js +0 -1
  344. package/dist/assets/validator-BIclKirR.js +0 -1
@@ -1 +1 @@
1
- import{F as I}from"./index.es-2QbhDzjR.js";import{E as L}from"./index-HuVavZAf.js";import{E as ae}from"./index-BaFiL7S8.js";import{d as k,H as c,E as s,z as K,C as n,y as f,D as o,q as i,F as a,O as E,N as T,x as V,Q as R,J as y,R as he,I as w,M as $e}from"./vendor-vue-DU0w5ewx.js";import{D as b,b0 as A,$ as ve,E as ke,ao as Z}from"./index-CcLeLCz_.js";import{b as be,c as x,d as B,e as z,f as ye,g as we,h as Ve}from"./kling-CtoPhhA9.js";import{E as P,a as G}from"./index-_4fe3C_H.js";import{I as S,S as Ce}from"./ScrollList-BMhc2qpm.js";import{a as q,E as re}from"./index-BTkM2pft.js";import{p as H}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O}from"./ImagePreview-BfCs8rwC.js";import{E as W}from"./index-BrM6TDeR.js";import{E as D}from"./index-CXYhDrWA.js";import{E as C}from"./index-DHmHglE2.js";import{C as ce}from"./Consumption-B5beTHkW.js";import{E as de}from"./index-BtF23Afa.js";import{E as J}from"./index-BVDLO2NF.js";import{a as pe}from"./price-CS8jujkQ.js";import{F as Se}from"./FilePreview-DXEawPEm.js";import{E as Ee,a as Te}from"./index-DbidluNF.js";import{E as Ie,a as Le}from"./index-jmxlidwd.js";import{b as ee}from"./errorCode-Cqj9Td_Z.js";import{k as te}from"./kling-CPRYenDC.js";import{C as Me}from"./CopyToClipboard-Dx-62vBK.js";import{V as Ue}from"./VideoPlayer-CGqT-FrS.js";import{E as Re}from"./index-DF57kLgF.js";import{E as Ae}from"./index-BH6seCdR.js";import{B as Pe}from"./BotPlaceholder-CPhTFUhx.js";import{N as Ge}from"./NoTasks-BWVLZqfq.js";import{l as Oe}from"./pagination-CcnL0MdN.js";import"./use-form-item-B2PVrARv.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-Bqokxo8B.js";import"./typescript-l_7qPiw8.js";import"./index-2j0K9jvG.js";import"./strings-DigWlKo9.js";import"./isEqual-BIWsPnQ_.js";import"./_Uint8Array-D2hcaA7t.js";import"./castArray-CPkiDUbn.js";import"./debounce-CKyw8aIt.js";import"./_baseIteratee-DRs4HrNx.js";import"./index-DQlBqojO.js";import"./index-Bz0iDXPF.js";import"./index-BpL32wdf.js";import"./_baseClone-C5kjpouO.js";import"./_initCloneObject-CkiCLeyz.js";import"./validator-BIclKirR.js";import"./index-DLzT3hvJ.js";import"./isPlainObject-Cf0k3CGb.js";import"./vue-plyr-BO2nlN4c.js";import"./index-cMX6QLxI.js";const De=k({name:"LayoutKling",components:{ElDrawer:ae,ElButton:L,FontAwesomeIcon:I},data(){return{drawer:!1}}}),je={class:"main flex flex-row flex-1 min-h-0"},Ke={class:"config w-[320px] flex-none h-full flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ze={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Ne(e,t,l,g,_,v){const d=o("font-awesome-icon"),p=o("el-button"),m=o("el-drawer");return i(),c("div",je,[s("div",Ke,[K(e.$slots,"config",{},void 0,!0)]),s("div",ze,[K(e.$slots,"result",{},void 0,!0)]),n(p,{circle:"",class:"menu",onClick:t[0]||(t[0]=r=>e.drawer=!0)},{default:f(()=>[n(d,{icon:"fa-solid fa-magic"})]),_:1}),n(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=r=>e.drawer=r),direction:"ltr","with-header":!1,size:"350px"},{default:f(()=>[K(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Fe=b(De,[["render",Ne],["__scopeId","data-v-8fa7523c"]]),Be=k({name:"ModelSelector",components:{ElSelect:G,ElOption:P},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"kling-v3",label:"v3"},{value:"kling-v3-omni",label:"v3-Omni"},{value:"kling-v2-6",label:"v2.6"},{value:"kling-v2-5-turbo",label:"v2.5-Turbo"},{value:"kling-v2-1-master",label:"v2.1-Master"},{value:"kling-v2-master",label:"v2-Master"},{value:"kling-v1-6",label:"v1.6"},{value:"kling-v1",label:"v1"},{value:"kling-video-o1",label:"Video-o1"}]}},computed:{value:{get(){return this.$store.state.kling?.config?.model},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling.config,model:e})}}},mounted(){this.value||(this.value=be)}}),qe={class:"field"},He={class:"title font-bold"};function We(e,t,l,g,_,v){const d=o("el-option"),p=o("el-select");return i(),c("div",qe,[s("h2",He,a(e.$t("pika.name.model")),1),n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:f(()=>[(i(!0),c(E,null,T(e.options,m=>(i(),V(d,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Je=b(Be,[["render",We],["__scopeId","data-v-a1b940c0"]]),Qe=k({name:"ModeSelector",components:{ElSelect:G,ElOption:P,InfoIcon:S},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],computed:{selectedModel(){return this.$store.state.kling?.config?.model||""},cameraControlSet(){return!!this.$store.state.kling?.config?.camera_control?.type},fourKReason(){return B.includes(this.selectedModel)?this.cameraControlSet?this.$t("kling.description.mode4kIncompatibleCamera"):"":this.$t("kling.description.mode4kRequiresV3")},options(){return[{value:"std",label:this.$t("kling.name.modeStd"),disabled:!1,disabledReason:""},{value:"pro",label:this.$t("kling.name.modePro"),disabled:!1,disabledReason:""},{value:"4k",label:this.$t("kling.name.mode4k"),disabled:!!this.fourKReason,disabledReason:this.fourKReason}]},value:{get(){return this.$store.state.kling?.config?.mode},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling.config,mode:e})}}},watch:{fourKReason(e){e&&this.value==="4k"&&(this.value=x)}},mounted(){this.value||(this.value=x)}}),Ye={class:"field"},Xe={class:"header"},Ze={class:"title font-bold"},xe={key:0,class:"opt-tip"};function et(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-option"),m=o("el-select");return i(),c("div",Ye,[s("div",Xe,[s("h2",Ze,a(e.$t("kling.name.mode")),1),n(d,{content:e.$t("kling.description.mode"),class:"info-icon"},null,8,["content"])]),n(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),class:"value",placeholder:e.$t("kling.placeholder.select"),clearable:!0},{default:f(()=>[(i(!0),c(E,null,T(e.options,r=>(i(),V(p,{key:r.value,label:r.label,value:r.value,disabled:r.disabled},{default:f(()=>[s("span",{class:R({"opt-disabled":r.disabled})},a(r.label),3),r.disabled&&r.disabledReason?(i(),c("span",xe,a(r.disabledReason),1)):y("",!0)]),_:2},1032,["label","value","disabled"]))),128))]),_:1},8,["modelValue","placeholder"])])}const tt=b(Qe,[["render",et],["__scopeId","data-v-6e5d6c31"]]),oe=[3,5,8,10,12,15],ne=[5,10],ot=k({name:"DurationSelector",components:{ElSlider:q,InfoIcon:S},props:{modelValue:{type:Number,default:void 0}},emits:["update:modelValue"],computed:{selectedModel(){return this.$store.state.kling?.config?.model||""},isV3Model(){return B.includes(this.selectedModel)},sliderMin(){return this.isV3Model?3:5},sliderMax(){return this.isV3Model?15:10},sliderStep(){return this.isV3Model?1:5},marks(){const e=this.isV3Model?oe:ne,t={};for(const l of e)t[l]=`${l}s`;return t},value(){return this.$store.state.kling?.config?.duration??z},sliderValue:{get(){const e=this.value;return e<this.sliderMin?this.sliderMin:e>this.sliderMax?this.sliderMax:e},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling.config,duration:e})}}},watch:{isV3Model(e){(this.isV3Model?oe:ne).includes(this.value)||(this.sliderValue=z)}},mounted(){this.$store.state.kling?.config?.duration||(this.sliderValue=z)}}),nt={class:"field"},st={class:"header"},it={class:"title font-bold"},lt={class:"value-display"};function at(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-slider");return i(),c("div",nt,[s("div",st,[s("h2",it,a(e.$t("kling.name.duration")),1),n(d,{content:e.$t("kling.description.duration"),class:"info-icon ml-1"},null,8,["content"]),s("span",lt,a(e.value)+"s",1)]),n(p,{modelValue:e.sliderValue,"onUpdate:modelValue":t[0]||(t[0]=m=>e.sliderValue=m),class:"slider",min:e.sliderMin,max:e.sliderMax,step:e.sliderStep,marks:e.marks,"show-tooltip":!1},null,8,["modelValue","min","max","step","marks"])])}const rt=b(ot,[["render",at],["__scopeId","data-v-51126e44"]]),ct=k({name:"RatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state?.kling?.config?.aspect_ratio},set(e){console.debug("set ratio",e),this.$store.commit("kling/setConfig",{...this.$store.state?.kling?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=ye)}}),dt={class:"text-sm font-bold mb-2 block"},pt={class:"items"},mt=["onClick"],ut={class:"name"};function gt(e,t,l,g,_,v){return i(),c("div",null,[s("span",dt,a(e.$t("kling.name.ratio")),1),s("div",pt,[(i(!0),c(E,null,T(e.options,(d,p)=>(i(),c("div",{key:p,class:R({active:e.active===p,item:!0}),onClick:m=>e.value=d.value},[s("div",{class:R(["preview",d.label])},[s("div",{class:"rect",style:he({width:d.width+"px",height:d.height+"px"})},null,4)],2),s("p",ut,a(d.label),1)],10,mt))),128))])])}const ft=b(ct,[["render",gt],["__scopeId","data-v-cdb14b2f"]]),_t=k({name:"StartImage",components:{ElUpload:D,ElButton:L,ElTooltip:W,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:O},mixins:[H],emits:["change"],data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},reachedLimit(){return(this.fileList?.length||0)>=1},value:{get(){return this.$store.state?.kling?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadReferencesExceed"))},onError(){C.error(this.$t("kling.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("kling/setConfig",{...this.$store.state?.kling?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),ht={class:"relative"},$t={class:"flex justify-between"},vt={class:"flex justify-start items-center"},kt={class:"text-sm font-bold"};function bt(e,t,l,g,_,v){const d=o("info-icon"),p=o("image-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-tooltip"),u=o("el-upload");return i(),c("div",ht,[s("div",$t,[s("div",vt,[s("span",kt,a(e.$t("kling.name.startImage")),1),n(d,{content:e.$t("kling.description.uploadStartImage")},null,8,["content"])])]),n(u,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,disabled:e.reachedLimit,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:h})=>[h.url&&h.percentage!==void 0?(i(),V(p,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:M=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n($,{content:e.$t("kling.message.uploadReferencesExceed"),disabled:!e.reachedLimit,placement:"top"},{default:f(()=>[s("span",null,[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload",disabled:e.reachedLimit},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadReferences")),1)]),_:1},8,["disabled"])])]),_:1},8,["content","disabled"])]),_:1},8,["file-list","disabled","action","on-exceed","on-error","on-success","headers"])])}const yt=b(_t,[["render",bt],["__scopeId","data-v-40832274"]]),wt=k({name:"EndImage",components:{ElUpload:D,ElButton:L,ElTooltip:W,ImagePreview:O,InfoIcon:S,FontAwesomeIcon:I},mixins:[H],data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},reachedLimit(){return(this.fileList?.length||0)>=1},value:{get(){return this.$store.state?.kling?.config?.end_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetEndImageUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadReferencesExceed"))},onError(){C.error(this.$t("kling.message.uploadReferencesError"))},onSetEndImageUrl(){const e=this.urls?.[0];this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),Vt={class:"relative"},Ct={class:"flex justify-between"},St={class:"flex justify-start items-center"},Et={class:"text-sm font-bold"};function Tt(e,t,l,g,_,v){const d=o("info-icon"),p=o("image-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-tooltip"),u=o("el-upload");return i(),c("div",Vt,[s("div",Ct,[s("div",St,[s("span",Et,a(e.$t("kling.name.endImage")),1),n(d,{content:e.$t("kling.description.uploadEndImage")},null,8,["content"])])]),n(u,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,disabled:e.reachedLimit,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:h})=>[h.url&&h.percentage!==void 0?(i(),V(p,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:M=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n($,{content:e.$t("kling.message.uploadReferencesExceed"),disabled:!e.reachedLimit,placement:"top"},{default:f(()=>[s("span",null,[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload",disabled:e.reachedLimit},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadReferences")),1)]),_:1},8,["disabled"])])]),_:1},8,["content","disabled"])]),_:1},8,["file-list","disabled","action","on-exceed","on-error","on-success","headers"])])}const It=b(wt,[["render",Tt],["__scopeId","data-v-55e1a777"]]),Lt=k({name:"CfgScaleSelector",components:{ElSlider:q,InfoIcon:S,ElInputNumber:re},computed:{value:{get(){return this.$store.state?.kling?.config?.cfg_scale},set(e){console.debug("set cfg_scale",e),this.$store.commit("kling/setConfig",{...this.$store.state?.kling?.config,cfg_scale:e})}}},mounted(){this.value||(this.value=we)}}),Mt={class:"flex justify-between"},Ut={class:"flex justify-start items-center"},Rt={class:"text-sm font-bold"},At={class:"flex justify-end items-center"},Pt={class:"w-full"};function Gt(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-input-number"),m=o("el-slider");return i(),c("div",null,[s("div",Mt,[s("div",Ut,[s("span",Rt,a(e.$t("kling.name.cfgScale")),1),n(d,{content:e.$t("kling.description.cfgScale")},null,8,["content"])]),s("div",At,[n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),"controls-position":"right"},null,8,["modelValue"])])]),s("div",Pt,[n(m,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=r=>e.value=r),min:0,max:1,step:.1},null,8,["modelValue"])])])}const Ot=b(Lt,[["render",Gt]]),Dt=k({name:"GenerateAudioSelector",components:{ElSwitch:de,InfoIcon:S},computed:{selectedModel(){return this.$store.state.kling?.config?.model||""},selectedMode(){return this.$store.state.kling?.config?.mode||""},supported(){return!!(B.includes(this.selectedModel)||this.selectedModel==="kling-v2-6"&&this.selectedMode==="pro")},tooltipContent(){return this.supported?this.$t("kling.description.generateAudio"):this.$t("kling.description.generateAudioUnsupported")},value:{get(){return this.supported?this.$store.state.kling?.config?.generate_audio??Ve:!1},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,generate_audio:e})}}},watch:{supported(e){!e&&this.$store.state.kling?.config?.generate_audio&&this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,generate_audio:!1})}}}),jt={class:"relative"},Kt={class:"flex justify-between items-center"},zt={class:"flex justify-start items-center"},Nt={class:"text-sm font-bold"};function Ft(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-switch");return i(),c("div",jt,[s("div",Kt,[s("div",zt,[s("span",Nt,a(e.$t("kling.name.generateAudio")),1),n(d,{content:e.tooltipContent},null,8,["content"])]),n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",disabled:!e.supported},null,8,["modelValue","disabled"])])])}const Bt=b(Dt,[["render",Ft]]),qt=["horizontal","vertical","pan","tilt","roll","zoom"],Ht=k({name:"CameraControlSelector",components:{ElSelect:G,ElOption:P,ElSlider:q,ElInputNumber:re,InfoIcon:S},data(){return{configKeys:qt}},computed:{typeOptions(){return[{value:"",label:this.$t("kling.name.cameraTypeNone")},{value:"simple",label:this.$t("kling.name.cameraTypeSimple")},{value:"down_back",label:this.$t("kling.name.cameraTypeDownBack")},{value:"forward_up",label:this.$t("kling.name.cameraTypeForwardUp")},{value:"left_turn_forward",label:this.$t("kling.name.cameraTypeLeftTurnForward")},{value:"right_turn_forward",label:this.$t("kling.name.cameraTypeRightTurnForward")}]},selectedMode(){return this.$store.state.kling?.config?.mode||""},disabled(){return this.selectedMode==="4k"},tooltipContent(){return this.disabled?this.$t("kling.description.cameraControlDisabled4k"):this.$t("kling.description.cameraControl")},selectedType(){return this.$store.state.kling?.config?.camera_control?.type},selectedTypeRaw:{get(){return this.selectedType??""},set(e){const t=this.$store.state.kling?.config||{};if(!e){const g={...t};delete g.camera_control,this.$store.commit("kling/setConfig",g);return}const l=e;this.$store.commit("kling/setConfig",{...t,camera_control:{type:l,config:l==="simple"?t.camera_control?.config||{}:void 0}})}},configValues(){return this.$store.state.kling?.config?.camera_control?.config||{}}},watch:{disabled(e){e&&this.selectedType!==void 0&&(this.selectedTypeRaw="")}},methods:{writeConfig(e,t){const l=this.$store.state.kling?.config||{},g=l.camera_control||{type:"simple"},_={...g.config||{}};t==null?delete _[e]:_[e]=t,this.$store.commit("kling/setConfig",{...l,camera_control:{...g,type:"simple",config:_}})},onSliderChange(e,t){this.writeConfig(e,t)},onNumberChange(e,t){this.writeConfig(e,t)}}}),Wt={class:"field"},Jt={class:"header"},Qt={class:"text-sm font-bold"},Yt={key:0,class:"config-grid"},Xt={class:"cfg-row-head"},Zt={class:"cfg-name"};function xt(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-option"),m=o("el-select"),r=o("el-input-number"),$=o("el-slider");return i(),c("div",Wt,[s("div",Jt,[s("span",Qt,a(e.$t("kling.name.cameraControl")),1),n(d,{content:e.tooltipContent},null,8,["content"])]),n(m,{modelValue:e.selectedTypeRaw,"onUpdate:modelValue":t[0]||(t[0]=u=>e.selectedTypeRaw=u),class:"value",placeholder:e.$t("kling.placeholder.cameraType"),clearable:!0,disabled:e.disabled},{default:f(()=>[(i(!0),c(E,null,T(e.typeOptions,u=>(i(),V(p,{key:u.value,label:u.label,value:u.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"]),e.selectedType==="simple"&&!e.disabled?(i(),c("div",Yt,[(i(!0),c(E,null,T(e.configKeys,u=>(i(),c("div",{key:u,class:"cfg-row"},[s("div",Xt,[s("span",Zt,a(e.$t(`kling.name.cc_${u}`)),1),n(r,{modelValue:e.configValues[u],"onUpdate:modelValue":h=>e.configValues[u]=h,min:-1,max:1,step:.1,precision:1,"controls-position":"right",size:"small",class:"cfg-num",onChange:h=>e.onNumberChange(u,h)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),n($,{"model-value":e.configValues[u]??0,min:-1,max:1,step:.1,onInput:h=>e.onSliderChange(u,h)},null,8,["model-value","onInput"])]))),128))])):y("",!0)])}const eo=b(Ht,[["render",xt],["__scopeId","data-v-fb7b34d0"]]),me=[{groupKey:"cameraMovements",chipKeys:["rotateAround","stationary","handheld","zoomOut","zoomIn","follow","panRight","tiltUp","tiltDown","orbit"]},{groupKey:"cameraSpeed",chipKeys:["speedSlow","speedMedium","speedFast"]},{groupKey:"shotType",chipKeys:["shotClose","shotMedium","shotLong","shotLowAngle","shotHighAngle","shotShallowDof","shotFront","shotProfile","shotCloseUp","shotDrone"]},{groupKey:"light",chipKeys:["lightSunlight","lightSoft","lightNeon","lightWarm","lightNature","lightCandle","lightCityNight"]},{groupKey:"frame",chipKeys:["frameRichDetails","frameSimpleBg"]},{groupKey:"atmosphere",chipKeys:["atmosphereMysterious","atmospherePeaceful","atmosphereHeartwarming","atmosphereVivid","atmosphereColorful"]}],N=", ";function to(e,t){const l=(e||"").trim();return l?l.includes(t)?l:`${l}${N}${t}`:t}function F(e,t){if(!e||!t)return e||"";const l=[`${t}${N}`,`${N}${t}`,t];let g=e;for(const _ of l)if(g.includes(_)){g=g.replace(_,"");break}return g.replace(/(?:,\s*)+$/,"").replace(/^(?:,\s*)+/,"")}const oo=k({name:"InspirationPills",components:{FontAwesomeIcon:I},computed:{prompt(){return this.$store.state.kling?.config?.prompt||""},allChipTexts(){return me.flatMap(e=>e.chipKeys.map(t=>this.$t(`kling.inspiration.chip.${t}`)))},selected(){const e=this.prompt;if(!e)return[];const t=[];for(const l of this.allChipTexts){const g=e.indexOf(l);g!==-1&&t.push({text:l,idx:g})}return t.sort((l,g)=>l.idx-g.idx).map(l=>l.text)}},methods:{onRemove(e){const t=F(this.prompt,e);this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,prompt:t})}}}),no={key:0,class:"pills",role:"list"},so={class:"pill-text"},io=["aria-label","onClick"];function lo(e,t,l,g,_,v){const d=o("font-awesome-icon");return e.selected.length>0?(i(),c("div",no,[(i(!0),c(E,null,T(e.selected,p=>(i(),c("div",{key:p,class:"pill",role:"listitem"},[s("span",so,a(p),1),s("button",{type:"button",class:"pill-remove","aria-label":e.$t("kling.inspiration.removeChip"),onClick:$e(m=>e.onRemove(p),["stop"])},[n(d,{icon:"fa-solid fa-xmark"})],8,io)]))),128))])):y("",!0)}const ao=b(oo,[["render",lo],["__scopeId","data-v-5fc4fa65"]]),ro="",co=k({name:"PromptInput",components:{ElInput:J,ElButton:L,FontAwesomeIcon:I,InfoIcon:S,InspirationPills:ao},emits:["open-inspiration"],computed:{prompt:{get(){return this.$store.state.kling?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ro)}}),po={class:"field"},mo={class:"box"},uo={class:"title font-bold"},go={class:"actions"};function fo(e,t,l,g,_,v){const d=o("font-awesome-icon"),p=o("el-button"),m=o("info-icon"),r=o("inspiration-pills"),$=o("el-input");return i(),c("div",po,[s("div",mo,[s("h2",uo,a(e.$t("kling.name.prompt")),1),s("div",go,[n(p,{text:"",size:"small",class:"inspiration-btn",onClick:t[0]||(t[0]=u=>e.$emit("open-inspiration"))},{default:f(()=>[n(d,{icon:"fa-regular fa-lightbulb",class:"mr-1"}),w(" "+a(e.$t("kling.inspiration.openButton")),1)]),_:1}),n(m,{content:e.$t("kling.description.prompt"),class:"info"},null,8,["content"])])]),n(r),n($,{modelValue:e.prompt,"onUpdate:modelValue":t[1]||(t[1]=u=>e.prompt=u),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("kling.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const _o=b(co,[["render",fo],["__scopeId","data-v-0a5c57b8"]]),ho="",$o=k({name:"NegativePromptInput",components:{ElInput:J,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.kling?.config?.negative_prompt},set(e){console.debug("set prompt",e),this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,negative_prompt:e})}}},mounted(){this.prompt||(this.prompt=ho)}}),vo={class:"field"},ko={class:"box"},bo={class:"title font-bold"};function yo(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-input");return i(),c("div",vo,[s("div",ko,[s("h2",bo,a(e.$t("kling.name.negativePrompt")),1),n(d,{content:e.$t("kling.description.negativePrompt"),class:"info"},null,8,["content"])]),n(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("kling.placeholder.negativePrompt")},null,8,["modelValue","placeholder"])])}const wo=b($o,[["render",yo],["__scopeId","data-v-de98cf01"]]),Vo=k({name:"InspirationDrawer",components:{ElDrawer:ae,ElButton:L,FontAwesomeIcon:I},props:{modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{groups:me,Close:ve}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}},drawerSize(){return window.innerWidth<768?"100%":"380px"},prompt(){return this.$store.state.kling?.config?.prompt||""},allChipTexts(){return this.groups.flatMap(e=>e.chipKeys.map(t=>this.$t(`kling.inspiration.chip.${t}`)))},selectedCount(){return this.allChipTexts.filter(e=>this.isSelected(e)).length}},methods:{chipText(e){return this.$t(`kling.inspiration.chip.${e}`)},isSelected(e){return e?this.prompt.includes(e):!1},setPrompt(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,prompt:e})},onToggle(e){e&&(this.isSelected(e)?this.setPrompt(F(this.prompt,e)):this.setPrompt(to(this.prompt,e)))},onClearSelected(){let e=this.prompt;for(const t of this.allChipTexts)for(;e.includes(t);)e=F(e,t);this.setPrompt(e)}}}),Co={class:"drawer-content"},So={class:"drawer-header"},Eo={class:"title-row"},To={class:"title"},Io={class:"hint"},Lo={key:0,class:"selected-bar"},Mo={class:"selected-text"},Uo={class:"groups"},Ro={class:"group-title"},Ao={class:"chip-grid"},Po=["onClick"];function Go(e,t,l,g,_,v){const d=o("font-awesome-icon"),p=o("el-button"),m=o("el-drawer");return i(),V(m,{modelValue:e.visible,"onUpdate:modelValue":t[1]||(t[1]=r=>e.visible=r),direction:"rtl","with-header":!1,size:e.drawerSize,"custom-class":"kling-inspiration-drawer","destroy-on-close":!1},{default:f(()=>[s("div",Co,[s("div",So,[s("div",Eo,[n(d,{icon:"fa-regular fa-lightbulb",class:"mr-2"}),s("span",To,a(e.$t("kling.inspiration.title")),1)]),n(p,{text:"",icon:e.Close,class:"close-btn",onClick:t[0]||(t[0]=r=>e.visible=!1)},null,8,["icon"])]),s("div",Io,a(e.$t("kling.inspiration.hint")),1),e.selectedCount>0?(i(),c("div",Lo,[s("span",Mo,a(e.$t("kling.inspiration.selectedSummary",{count:e.selectedCount})),1),n(p,{text:"",size:"small",class:"clear-btn",onClick:e.onClearSelected},{default:f(()=>[w(a(e.$t("kling.inspiration.clearSelected")),1)]),_:1},8,["onClick"])])):y("",!0),s("div",Uo,[(i(!0),c(E,null,T(e.groups,r=>(i(),c("div",{key:r.groupKey,class:"group"},[s("div",Ro,a(e.$t(`kling.inspiration.group.${r.groupKey}`)),1),s("div",Ao,[(i(!0),c(E,null,T(r.chipKeys,$=>(i(),c("button",{key:$,type:"button",class:R({chip:!0,active:e.isSelected(e.chipText($))}),onClick:u=>e.onToggle(e.chipText($))},a(e.chipText($)),11,Po))),128))])]))),128))])])]),_:1},8,["modelValue","size"])}const Oo=b(Vo,[["render",Go],["__scopeId","data-v-7d457a69"]]),Do={"kling-v3":"v3","kling-v3-omni":"v3-Omni","kling-v2-6":"v2.6","kling-v2-5-turbo":"v2.5-Turbo","kling-v2-1-master":"v2.1-Master","kling-v2-master":"v2-Master","kling-v1-6":"v1.6","kling-v1":"v1","kling-video-o1":"Video-o1"},jo={std:"720p",pro:"1080p","4k":"4K"},Ko=k({name:"SummaryChip",components:{FontAwesomeIcon:I},computed:{config(){return this.$store.state.kling?.config||{}},modelLabel(){const e=this.config?.model||"kling-v2-5-turbo";return Do[e]||e},durationLabel(){return`${this.config?.duration??5}s`},aspectRatio(){return this.config?.aspect_ratio||""},modeLabel(){const e=this.config?.mode||"std";return jo[e]||e},generateAudio(){return!!this.config?.generate_audio}}}),zo={class:"summary-chip"},No=["title"],Fo=["title"],Bo=["title"],qo=["title"],Ho=["title"];function Wo(e,t,l,g,_,v){const d=o("font-awesome-icon");return i(),c("div",zo,[s("span",{class:"part",title:e.$t("kling.name.model")},a(e.modelLabel),9,No),t[0]||(t[0]=s("span",{class:"dot"},"·",-1)),s("span",{class:"part",title:e.$t("kling.name.duration")},a(e.durationLabel),9,Fo),t[1]||(t[1]=s("span",{class:"dot"},"·",-1)),s("span",{class:"part",title:e.$t("kling.name.ratio")},a(e.aspectRatio||"16:9"),9,Bo),t[2]||(t[2]=s("span",{class:"dot"},"·",-1)),s("span",{class:"part",title:e.$t("kling.name.mode")},a(e.modeLabel),9,qo),e.generateAudio?(i(),c("span",{key:0,class:"audio",title:e.$t("kling.name.generateAudio")},[n(d,{icon:"fa-solid fa-headphones"})],8,Ho)):y("",!0)])}const Jo=b(Ko,[["render",Wo],["__scopeId","data-v-418a6733"]]),Qo=k({name:"ConfigPanel",components:{ElButton:L,Consumption:ce,FontAwesomeIcon:I,PromptInput:_o,NegativePromptInput:wo,ModelSelector:Je,ModeSelector:tt,DurationSelector:rt,RatioSelector:ft,StartImage:yt,CfgScaleSelector:Ot,GenerateAudioSelector:Bt,CameraControlSelector:eo,InspirationDrawer:Oo,SummaryChip:Jo,EndImage:It},emits:["generate"],data(){return{inspirationOpen:!1}},computed:{config(){return this.$store.state.kling?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.kling?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Yo={class:"flex flex-col h-full"},Xo={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,t,l,g,_,v){const d=o("prompt-input"),p=o("model-selector"),m=o("ratio-selector"),r=o("start-image"),$=o("end-image"),u=o("duration-selector"),h=o("mode-selector"),M=o("generate-audio-selector"),U=o("camera-control-selector"),j=o("cfg-scale-selector"),ue=o("negative-prompt-input"),ge=o("summary-chip"),fe=o("consumption"),Q=o("font-awesome-icon"),Y=o("el-button"),_e=o("inspiration-drawer");return i(),c("div",Yo,[s("div",Xo,[n(d,{class:"mb-4",onOpenInspiration:t[0]||(t[0]=X=>e.inspirationOpen=!0)}),n(p,{class:"mb-4"}),n(m,{class:"mb-4"}),n(r,{class:"mb-2"}),n($,{class:"mb-2"}),n(u,{class:"mb-4"}),n(h,{class:"mb-4"}),n(M,{class:"mb-4"}),n(U,{class:"mb-4"}),n(j,{class:"mb-4"}),n(ue,{class:"mb-4"})]),s("div",Zo,[n(ge),n(fe,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(i(),V(Y,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[n(Q,{icon:"fa-solid fa-magic",class:"mr-2"}),w(" "+a(e.$t("kling.button.extend")),1)]),_:1},8,["onClick"])):(i(),V(Y,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[n(Q,{icon:"fa-solid fa-magic",class:"mr-2"}),w(" "+a(e.$t("kling.button.generate")),1)]),_:1},8,["onClick"]))]),n(_e,{modelValue:e.inspirationOpen,"onUpdate:modelValue":t[1]||(t[1]=X=>e.inspirationOpen=X)},null,8,["modelValue"])])}const en=b(Qo,[["render",xo]]),tn=k({name:"MotionImage",components:{ElUpload:D,ElButton:L,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:O},mixins:[H],data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},mounted(){this.onSetImageUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadReferencesExceed"))},onError(){C.error(this.$t("kling.message.uploadReferencesError"))},onRemove(e){this.fileList.splice(this.fileList.indexOf(e),1),this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,image_url:void 0})},onSetImageUrl(){const e=this.urls?.[0];this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),on={class:"relative"},nn={class:"flex justify-between"},sn={class:"flex justify-start items-center"},ln={class:"text-sm font-bold"};function an(e,t,l,g,_,v){const d=o("info-icon"),p=o("image-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-upload");return i(),c("div",on,[s("div",nn,[s("div",sn,[s("span",ln,a(e.$t("kling.name.motionImage")),1),n(d,{content:e.$t("kling.description.motionImage")},null,8,["content"])])]),n($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=u=>e.fileList=u),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:u})=>[u.url&&u.percentage!==void 0?(i(),V(p,{key:0,url:u.url,name:u.name,percentage:u.percentage,onRemove:h=>e.onRemove(u)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const rn=b(tn,[["render",an],["__scopeId","data-v-37d42da7"]]),cn=k({name:"MotionVideo",components:{ElUpload:D,ElButton:L,InfoIcon:S,FilePreview:Se,FontAwesomeIcon:I},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},mounted(){this.onSetVideoUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadVideoExceed"))},onError(){C.error(this.$t("kling.message.uploadVideoError"))},onRemove(e){this.fileList.splice(this.fileList.indexOf(e),1),this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,video_url:void 0})},beforeUpload(e){const t=e.type==="video/mp4"||e.type==="video/quicktime",l=e.size/1024/1024<100;return t?l?!0:(C.error(this.$t("kling.message.uploadVideoSizeExceed")),!1):(C.error(this.$t("kling.message.uploadVideoTypeFailed")),!1)},onSetVideoUrl(){const e=this.urls?.[0];this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,video_url:e})},async onSuccess(){this.onSetVideoUrl()}}}),dn={class:"relative"},pn={class:"flex justify-between"},mn={class:"flex justify-start items-center"},un={class:"text-sm font-bold"};function gn(e,t,l,g,_,v){const d=o("info-icon"),p=o("file-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-upload");return i(),c("div",dn,[s("div",pn,[s("div",mn,[s("span",un,a(e.$t("kling.name.motionVideo")),1),n(d,{content:e.$t("kling.description.motionVideo")},null,8,["content"])])]),n($,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=u=>e.fileList=u),accept:".mp4,.mov",name:"file",class:"value","show-file-list":!0,limit:1,multiple:!1,action:e.uploadUrl,"before-upload":e.beforeUpload,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:u})=>[u.percentage!==void 0?(i(),V(p,{key:0,url:u.url||u.response?.file_url,name:u.name,percentage:u.percentage,onRemove:h=>e.onRemove(u)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadVideoUrl")),1)]),_:1})]),_:1},8,["file-list","action","before-upload","on-exceed","on-error","on-success","headers"])])}const fn=b(cn,[["render",gn],["__scopeId","data-v-5cf93212"]]),_n=k({name:"MotionPromptInput",components:{ElInput:J,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.kling?.motionConfig?.prompt||""},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,prompt:e})}}}}),hn={class:"field"},$n={class:"box"},vn={class:"title font-bold"};function kn(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-input");return i(),c("div",hn,[s("div",$n,[s("h2",vn,a(e.$t("kling.name.motionPrompt")),1),n(d,{content:e.$t("kling.description.motionPrompt"),class:"info"},null,8,["content"])]),n(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("kling.placeholder.motionPrompt")},null,8,["modelValue","placeholder"])])}const bn=b(_n,[["render",kn],["__scopeId","data-v-ca9fdbe5"]]),se="video",yn=k({name:"CharacterOrientationSelector",components:{ElRadioGroup:Te,ElRadioButton:Ee,InfoIcon:S},computed:{value:{get(){return this.$store.state.kling?.motionConfig?.character_orientation||se},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,character_orientation:e})}}},mounted(){this.$store.state.kling?.motionConfig?.character_orientation||(this.value=se)}}),wn={class:"field"},Vn={class:"header"},Cn={class:"text-sm font-bold"};function Sn(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-radio-button"),m=o("el-radio-group");return i(),c("div",wn,[s("div",Vn,[s("span",Cn,a(e.$t("kling.name.characterOrientation")),1),n(d,{content:e.$t("kling.description.characterOrientation")},null,8,["content"])]),n(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),size:"small",class:"value"},{default:f(()=>[n(p,{label:"image"},{default:f(()=>[w(a(e.$t("kling.name.orientationImage")),1)]),_:1}),n(p,{label:"video"},{default:f(()=>[w(a(e.$t("kling.name.orientationVideo")),1)]),_:1})]),_:1},8,["modelValue"])])}const En=b(yn,[["render",Sn],["__scopeId","data-v-7a91195b"]]),ie="std",Tn=k({name:"MotionModeSelector",components:{ElSelect:G,ElOption:P,InfoIcon:S},computed:{options(){return[{value:"std",label:this.$t("kling.name.modeStd")},{value:"pro",label:this.$t("kling.name.modePro")}]},value:{get(){return this.$store.state.kling?.motionConfig?.mode||ie},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,mode:e})}}},mounted(){this.$store.state.kling?.motionConfig?.mode||(this.value=ie)}}),In={class:"field"},Ln={class:"header"},Mn={class:"title font-bold"};function Un(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-option"),m=o("el-select");return i(),c("div",In,[s("div",Ln,[s("h2",Mn,a(e.$t("kling.name.mode")),1),n(d,{content:e.$t("kling.description.motionMode")},null,8,["content"])]),n(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),class:"value",placeholder:e.$t("kling.placeholder.select")},{default:f(()=>[(i(!0),c(E,null,T(e.options,r=>(i(),V(p,{key:r.value,label:r.label,value:r.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Rn=b(Tn,[["render",Un],["__scopeId","data-v-1295688c"]]),An=k({name:"KeepOriginalSoundSelector",components:{ElSwitch:de,InfoIcon:S},computed:{value:{get(){return(this.$store.state.kling?.motionConfig?.keep_original_sound??"yes")==="yes"},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,keep_original_sound:e?"yes":"no"})}}}}),Pn={class:"relative"},Gn={class:"flex justify-between items-center"},On={class:"flex justify-start items-center"},Dn={class:"text-sm font-bold"};function jn(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-switch");return i(),c("div",Pn,[s("div",Gn,[s("div",On,[s("span",Dn,a(e.$t("kling.name.keepOriginalSound")),1),n(d,{content:e.$t("kling.description.keepOriginalSound")},null,8,["content"])]),n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m)},null,8,["modelValue"])])])}const Kn=b(An,[["render",jn]]),zn=k({name:"MotionPanel",components:{ElButton:L,FontAwesomeIcon:I,Consumption:ce,MotionImage:rn,MotionVideo:fn,MotionPromptInput:bn,CharacterOrientationSelector:En,MotionModeSelector:Rn,KeepOriginalSoundSelector:Kn},emits:["generate"],computed:{motionConfig(){return this.$store.state.kling?.motionConfig},consumption(){return pe(this.motionConfig,this.service?.cost)},service(){return this.$store.state.kling?.service},canGenerate(){const e=this.motionConfig;return!!(e?.image_url&&e?.video_url)}},methods:{onGenerate(){this.$emit("generate")}}}),Nn={class:"flex flex-col h-full"},Fn={class:"flex-1 overflow-y-auto p-5"},Bn={class:"flex flex-col items-center justify-center px-5 pb-5"};function qn(e,t,l,g,_,v){const d=o("motion-image"),p=o("motion-video"),m=o("motion-prompt-input"),r=o("character-orientation-selector"),$=o("motion-mode-selector"),u=o("keep-original-sound-selector"),h=o("consumption"),M=o("font-awesome-icon"),U=o("el-button");return i(),c("div",Nn,[s("div",Fn,[n(d,{class:"mb-3"}),n(p,{class:"mb-3"}),n(m,{class:"mb-4"}),n(r,{class:"mb-4"}),n($,{class:"mb-4"}),n(u,{class:"mb-4"})]),s("div",Bn,[n(h,{value:e.consumption,service:e.service},null,8,["value","service"]),n(U,{type:"primary",class:"btn w-full",round:"",disabled:!e.canGenerate,onClick:e.onGenerate},{default:f(()=>[n(M,{icon:"fa-solid fa-magic",class:"mr-2"}),w(" "+a(e.$t("kling.button.generateMotion")),1)]),_:1},8,["disabled","onClick"])])])}const Hn=b(zn,[["render",qn]]),Wn=k({name:"KlingTabSwitcher",components:{ElTabs:Le,ElTabPane:Ie,ElTag:ke},props:{modelValue:{type:String,default:"videos"}},emits:["update:modelValue"],computed:{tabs(){return[{value:"videos",label:this.$t("kling.tab.videoGeneration")},{value:"motion",label:this.$t("kling.tab.motionControl")},{value:"avatar",label:this.$t("kling.tab.avatar"),disabled:!0,disabledReason:this.$t("kling.tab.avatarComingSoon"),badge:this.$t("kling.tab.comingSoon")}]}},methods:{onUpdate(e){e!=="avatar"&&this.$emit("update:modelValue",e)}}}),Jn=["title"],Qn={class:"text"};function Yn(e,t,l,g,_,v){const d=o("el-tag"),p=o("el-tab-pane"),m=o("el-tabs");return i(),V(m,{"model-value":e.modelValue,class:"kling-tabs",stretch:"","onUpdate:modelValue":e.onUpdate},{default:f(()=>[(i(!0),c(E,null,T(e.tabs,r=>(i(),V(p,{key:r.value,name:r.value,disabled:r.disabled},{label:f(()=>[s("span",{class:"tab-label",title:r.disabled?r.disabledReason:void 0},[s("span",Qn,a(r.label),1),r.badge?(i(),V(d,{key:0,size:"small",type:"warning",class:"badge"},{default:f(()=>[w(a(r.badge),1)]),_:2},1024)):y("",!0)],8,Jn)]),_:2},1032,["name","disabled"]))),128))]),_:1},8,["model-value","onUpdate:modelValue"])}const Xn=b(Wn,[["render",Yn],["__scopeId","data-v-c6b8d834"]]),Zn=k({name:"TaskPreview",components:{ElImage:Ae,CopyToClipboard:Me,FontAwesomeIcon:I,ElAlert:Re,VideoPlayer:Ue,ElTooltip:W,ElButton:L,ImagePreview:O},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.kling?.application},config(){return this.$store.state.kling?.config},referenceImages(){const e=[],t=this.modelValue?.request?.start_image_url,l=this.modelValue?.request?.end_image_url;return t&&e.push({url:t,name:"start-image"}),l&&e.push({url:l,name:"end-image"}),e}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),xn={class:"preview"},es={class:"left"},ts={class:"main"},os={class:"bot"},ns={class:"datetime"},ss={class:"info"},is={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ls={key:1,class:"prompt mt-2"},as={key:0},rs={key:1},cs={key:0,class:R({content:!0,failed:!0})},ds={key:0,class:"mb-4"},ps={key:1,class:R({operations:!0,"mt-2":!0})},ms={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},us={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},gs={key:1,class:R({content:!0})},fs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_s={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},hs={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},$s={key:2,class:R({content:!0})},vs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ks={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function bs(e,t,l,g,_,v){const d=o("el-image"),p=o("image-preview"),m=o("video-player"),r=o("el-button"),$=o("el-tooltip"),u=o("font-awesome-icon"),h=o("copy-to-clipboard"),M=o("el-alert");return i(),c("div",xn,[s("div",es,[n(d,{src:"https://cdn.acedata.cloud/qpbbbb.jpg",class:"avatar"})]),s("div",ts,[s("div",os,[w(a(e.$t("kling.name.klingBot"))+" ",1),s("span",ns,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),s("div",ss,[e.referenceImages.length>0?(i(),c("div",is,[(i(!0),c(E,null,T(e.referenceImages,(U,j)=>(i(),V(p,{key:j,url:U.url,name:U.name,closable:!1},null,8,["url","name"]))),128))])):y("",!0),e.modelValue?.request?.prompt?(i(),c("p",ls,[w(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?y("",!0):(i(),c("span",as," - ("+a(e.$t("kling.status.pending"))+") ",1)),e.modelValue?.response?.state==="submitted"||e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"||e.modelValue?.response?.state==="completed"?(i(),c("span",rs," - ("+a(e.$t("kling.status.processing"))+") ",1)):y("",!0)])):y("",!0)]),e.modelValue?.response?.success===!0?(i(),c("div",cs,[e.modelValue?.response.video_url?(i(),c("div",ds,[n(m,{src:e.modelValue?.response.video_url},null,8,["src"])])):y("",!0),e.modelValue?.response.success?(i(),c("div",ps,[n($,{class:"box-item",effect:"dark",content:e.$t("kling.message.downloadVideo"),placement:"top-start"},{default:f(()=>[e.modelValue?.response.video_url?(i(),V(r,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=U=>e.onDownload(U,e.modelValue?.response.video_url))},{default:f(()=>[w(a(e.$t("kling.button.download")),1)]),_:1})):y("",!0)]),_:1},8,["content"])])):y("",!0),n(M,{closable:!1,class:"mt-2 success"},{default:f(()=>[s("p",ms,[n(u,{icon:"fa-solid fa-hashtag",class:"mr-1"}),w(" "+a(e.$t("kling.name.model"))+": "+a(e.modelValue?.request?.model),1)]),s("p",us,[n(u,{icon:"fa-solid fa-magic",class:"mr-1"}),w(" "+a(e.$t("kling.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),n(h,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):y("",!0),e.modelValue?.response?.success===!1?(i(),c("div",gs,[n(M,{closable:!1,class:"failure"},{template:f(()=>[n(u,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),w(" "+a(e.$t("kling.name.failure")),1)]),default:f(()=>[s("p",fs,[n(u,{icon:"fa-solid fa-magic",class:"mr-1"}),w(" "+a(e.$t("kling.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),n(h,{content:e.modelValue?.id},null,8,["content"])]),s("p",_s,[n(u,{icon:"fa-solid fa-circle-info",class:"mr-1"}),w(" "+a(e.$t("kling.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),n(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(i(),c("p",hs,[n(u,{icon:"fa-solid fa-hashtag",class:"mr-1"}),w(" "+a(e.$t("kling.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),n(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):y("",!0)]),_:1})])):y("",!0),e.modelValue?.response?.success===void 0?(i(),c("div",$s,[n(M,{closable:!1,class:"info"},{template:f(()=>[n(u,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),w(" "+a(e.$t("kling.name.failure")),1)]),default:f(()=>[s("p",vs,[n(u,{icon:"fa-solid fa-magic",class:"mr-1"}),w(" "+a(e.$t("kling.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),n(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(i(),c("p",ks,[n(u,{icon:"fa-solid fa-hashtag",class:"mr-1"}),w(" "+a(e.$t("kling.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),n(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):y("",!0)]),_:1})])):y("",!0)])])}const ys=b(Zn,[["render",bs],["__scopeId","data-v-cddeff01"]]),ws=k({name:"RecentPanel",components:{TaskPreview:ys,NoTasks:Ge,BotPlaceholder:Pe,ScrollList:Ce},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.kling?.tasks,items:this.$store.state.kling?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Vs={key:0},Cs={key:2,class:"w-full h-full flex items-center justify-center"};function Ss(e,t,l,g,_,v){const d=o("bot-placeholder"),p=o("task-preview"),m=o("scroll-list"),r=o("no-tasks");return i(),c(E,null,[e.tasks?.items===void 0?(i(),c("div",Vs,[n(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(i(),V(m,{key:1,ref:"scrollList",class:"h-full w-full overflow-y-auto tasks",loading:e.loading,onReachTop:t[0]||(t[0]=$=>e.$emit("reach-top"))},{default:f(()=>[(i(!0),c(E,null,T(e.tasks?.items,$=>(i(),V(p,{key:$.id,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):y("",!0),e.tasks?.items?.length===0?(i(),c("div",Cs,[n(r)])):y("",!0)],64)}const Es=b(ws,[["render",Ss]]),le="https://webhook.acedata.cloud/kling",Ts=k({name:"KlingIndex",components:{ConfigPanel:en,MotionPanel:Hn,TabSwitcher:Xn,Layout:Fe,RecentPanel:Es},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.kling?.status?.getApplications===Z.Request},tasksLoading(){return this.$store.state.kling?.status?.getTasks===Z.Request||this.fetchingTasks},credential(){return this.$store.state.kling.credential},config(){return this.$store.state.kling.config},motionConfig(){return this.$store.state.kling.motionConfig},taskType(){return this.$store.state.kling.taskType||"videos"},tasks(){return this.$store.state.kling.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await Oe({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("kling/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("kling/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:l,createdAtMax:g}=e||{};console.debug("limit",t,"createdAtMin",l,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("kling/getTasks",{limit:t,createdAtMin:l,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const{camera_control:e,...t}=this.config||{},l={...t,callback_url:le};if(!l.video_id&&!t.video_url&&!l.start_image_url&&l.end_image_url){C.warning(this.$t("kling.message.endImageRequiresStart"));return}l.action||(l.video_id||t.video_url?l.action="extend":l.start_image_url?l.action="image2video":l.action="text2video"),l.action==="text2video"&&l.end_image_url&&delete l.end_image_url,e?.type&&(l.camera_control={type:e.type,...e.type==="simple"&&e.config?{config:Object.fromEntries(Object.entries(e.config).filter(([,_])=>_!=null))}:{}});const g=this.credential?.token;if(!g){console.error("no token specified");return}C.info(this.$t("kling.message.startingTask")),te.generate(l,{token:g}).then(()=>{C.success(this.$t("kling.message.startTaskSuccess"))}).catch(_=>{_?.response?.data?.error?.code===ee?C.error(this.$t("kling.message.usedUp")):C.error(this.$t("kling.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()},async onTabChange(e){e!==this.taskType&&(await this.$store.dispatch("kling/setTaskType",e),await this.onGetTasks(),await this.onScrollDown())},async onGenerateMotion(){const e=this.motionConfig||{};if(!e.image_url||!e.video_url){C.warning(this.$t("kling.message.motionMissingInputs"));return}const t={image_url:e.image_url,video_url:e.video_url,character_orientation:e.character_orientation||"video",mode:e.mode||"std",keep_original_sound:e.keep_original_sound??"yes",...e.prompt?{prompt:e.prompt}:{},callback_url:le},l=this.credential?.token;if(!l){console.error("no token specified");return}C.info(this.$t("kling.message.startingTask")),te.motion(t,{token:l}).then(()=>{C.success(this.$t("kling.message.startTaskSuccess"))}).catch(g=>{g?.response?.data?.error?.code===ee?C.error(this.$t("kling.message.usedUp")):C.error(this.$t("kling.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}}),Is={class:"flex flex-col h-full"},Ls={class:"flex-1 min-h-0"};function Ms(e,t,l,g,_,v){const d=o("tab-switcher"),p=o("config-panel"),m=o("motion-panel"),r=o("recent-panel"),$=o("layout");return i(),V($,null,{config:f(()=>[s("div",Is,[n(d,{"model-value":e.taskType,"onUpdate:modelValue":e.onTabChange},null,8,["model-value","onUpdate:modelValue"]),s("div",Ls,[e.taskType==="videos"?(i(),V(p,{key:0,onGenerate:e.onGenerate},null,8,["onGenerate"])):e.taskType==="motion"?(i(),V(m,{key:1,onGenerate:e.onGenerateMotion},null,8,["onGenerate"])):y("",!0)])])]),result:f(()=>[n(r,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ui=b(Ts,[["render",Ms]]);export{Ui as default};
1
+ import{F as I}from"./index.es-C0e-bBsp.js";import{E as L}from"./index-Q0X1G1Xf.js";import{E as ae}from"./index-BFz6aMgg.js";import{d as k,H as c,E as s,z as K,C as n,y as f,D as o,q as i,F as a,O as E,N as T,x as V,Q as R,J as y,R as he,I as w,M as $e}from"./vendor-vue-DU0w5ewx.js";import{D as b,b0 as A,$ as ve,E as ke,ao as Z}from"./index-B3uh9SBG.js";import{b as be,c as x,d as B,e as z,f as ye,g as we,h as Ve}from"./kling-CtoPhhA9.js";import{E as P,a as G}from"./index-CzWkYArR.js";import{I as S,S as Ce}from"./ScrollList-CRs_70Ba.js";import{a as q,E as re}from"./index-BKpayLrg.js";import{p as H}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O}from"./ImagePreview-B-iwDk2B.js";import{E as W}from"./index-DzSV2ElH.js";import{E as D}from"./index-Cf36AFND.js";import{E as C}from"./index-Dw0hXs4P.js";import{C as ce}from"./Consumption-BSVFsTtH.js";import{E as de}from"./index-DUpmug5B.js";import{E as J}from"./index-DIqo0phj.js";import{a as pe}from"./price-DM5KD4tW.js";import{F as Se}from"./FilePreview-DmR5xicy.js";import{E as Ee,a as Te}from"./index-CtgkksDZ.js";import{E as Ie,a as Le}from"./index-C2juzOgf.js";import{b as ee}from"./errorCode-Cqj9Td_Z.js";import{k as te}from"./kling-Ddi7AAwa.js";import{C as Me}from"./CopyToClipboard-DVPG-ya4.js";import{V as Ue}from"./VideoPlayer-DraD1Ikd.js";import{E as Re}from"./index-BDi73AHo.js";import{E as Ae}from"./index-Bquz-ZT7.js";import{B as Pe}from"./BotPlaceholder-DdsBkQKp.js";import{N as Ge}from"./NoTasks-DM9B-yMD.js";import{l as Oe}from"./pagination-CcnL0MdN.js";import"./use-form-item-CJ_W80ww.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-DdSpg2zG.js";import"./typescript-_wE_XALW.js";import"./index-Db_N1JRN.js";import"./strings-DigWlKo9.js";import"./isEqual-CsYSsI7u.js";import"./_Uint8Array-BwqjhXg8.js";import"./castArray-_sjP7zQ7.js";import"./debounce-B_KruiGC.js";import"./_baseIteratee-DyqTAslN.js";import"./index-DXFxpk5z.js";import"./index-Bz0iDXPF.js";import"./index-D9tbxCdF.js";import"./_baseClone-BkyYLNlg.js";import"./_initCloneObject-DtbawC04.js";import"./validator-CsFWv4K_.js";import"./index-D6K5qdP4.js";import"./isPlainObject-CRR9RtPP.js";import"./vue-plyr-BO2nlN4c.js";import"./index-sxh95WLC.js";const De=k({name:"LayoutKling",components:{ElDrawer:ae,ElButton:L,FontAwesomeIcon:I},data(){return{drawer:!1}}}),je={class:"main flex flex-row flex-1 min-h-0"},Ke={class:"config w-[320px] flex-none h-full flex flex-col bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ze={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function Ne(e,t,l,g,_,v){const d=o("font-awesome-icon"),p=o("el-button"),m=o("el-drawer");return i(),c("div",je,[s("div",Ke,[K(e.$slots,"config",{},void 0,!0)]),s("div",ze,[K(e.$slots,"result",{},void 0,!0)]),n(p,{circle:"",class:"menu",onClick:t[0]||(t[0]=r=>e.drawer=!0)},{default:f(()=>[n(d,{icon:"fa-solid fa-magic"})]),_:1}),n(m,{modelValue:e.drawer,"onUpdate:modelValue":t[1]||(t[1]=r=>e.drawer=r),direction:"ltr","with-header":!1,size:"350px"},{default:f(()=>[K(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const Fe=b(De,[["render",Ne],["__scopeId","data-v-8fa7523c"]]),Be=k({name:"ModelSelector",components:{ElSelect:G,ElOption:P},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],data(){return{options:[{value:"kling-v3",label:"v3"},{value:"kling-v3-omni",label:"v3-Omni"},{value:"kling-v2-6",label:"v2.6"},{value:"kling-v2-5-turbo",label:"v2.5-Turbo"},{value:"kling-v2-1-master",label:"v2.1-Master"},{value:"kling-v2-master",label:"v2-Master"},{value:"kling-v1-6",label:"v1.6"},{value:"kling-v1",label:"v1"},{value:"kling-video-o1",label:"Video-o1"}]}},computed:{value:{get(){return this.$store.state.kling?.config?.model},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling.config,model:e})}}},mounted(){this.value||(this.value=be)}}),qe={class:"field"},He={class:"title font-bold"};function We(e,t,l,g,_,v){const d=o("el-option"),p=o("el-select");return i(),c("div",qe,[s("h2",He,a(e.$t("pika.name.model")),1),n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",placeholder:e.$t("pika.placeholder.select")},{default:f(()=>[(i(!0),c(E,null,T(e.options,m=>(i(),V(d,{key:m.value,label:m.label,value:m.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Je=b(Be,[["render",We],["__scopeId","data-v-a1b940c0"]]),Qe=k({name:"ModeSelector",components:{ElSelect:G,ElOption:P,InfoIcon:S},props:{modelValue:{type:String,default:void 0}},emits:["update:modelValue"],computed:{selectedModel(){return this.$store.state.kling?.config?.model||""},cameraControlSet(){return!!this.$store.state.kling?.config?.camera_control?.type},fourKReason(){return B.includes(this.selectedModel)?this.cameraControlSet?this.$t("kling.description.mode4kIncompatibleCamera"):"":this.$t("kling.description.mode4kRequiresV3")},options(){return[{value:"std",label:this.$t("kling.name.modeStd"),disabled:!1,disabledReason:""},{value:"pro",label:this.$t("kling.name.modePro"),disabled:!1,disabledReason:""},{value:"4k",label:this.$t("kling.name.mode4k"),disabled:!!this.fourKReason,disabledReason:this.fourKReason}]},value:{get(){return this.$store.state.kling?.config?.mode},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling.config,mode:e})}}},watch:{fourKReason(e){e&&this.value==="4k"&&(this.value=x)}},mounted(){this.value||(this.value=x)}}),Ye={class:"field"},Xe={class:"header"},Ze={class:"title font-bold"},xe={key:0,class:"opt-tip"};function et(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-option"),m=o("el-select");return i(),c("div",Ye,[s("div",Xe,[s("h2",Ze,a(e.$t("kling.name.mode")),1),n(d,{content:e.$t("kling.description.mode"),class:"info-icon"},null,8,["content"])]),n(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),class:"value",placeholder:e.$t("kling.placeholder.select"),clearable:!0},{default:f(()=>[(i(!0),c(E,null,T(e.options,r=>(i(),V(p,{key:r.value,label:r.label,value:r.value,disabled:r.disabled},{default:f(()=>[s("span",{class:R({"opt-disabled":r.disabled})},a(r.label),3),r.disabled&&r.disabledReason?(i(),c("span",xe,a(r.disabledReason),1)):y("",!0)]),_:2},1032,["label","value","disabled"]))),128))]),_:1},8,["modelValue","placeholder"])])}const tt=b(Qe,[["render",et],["__scopeId","data-v-6e5d6c31"]]),oe=[3,5,8,10,12,15],ne=[5,10],ot=k({name:"DurationSelector",components:{ElSlider:q,InfoIcon:S},props:{modelValue:{type:Number,default:void 0}},emits:["update:modelValue"],computed:{selectedModel(){return this.$store.state.kling?.config?.model||""},isV3Model(){return B.includes(this.selectedModel)},sliderMin(){return this.isV3Model?3:5},sliderMax(){return this.isV3Model?15:10},sliderStep(){return this.isV3Model?1:5},marks(){const e=this.isV3Model?oe:ne,t={};for(const l of e)t[l]=`${l}s`;return t},value(){return this.$store.state.kling?.config?.duration??z},sliderValue:{get(){const e=this.value;return e<this.sliderMin?this.sliderMin:e>this.sliderMax?this.sliderMax:e},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling.config,duration:e})}}},watch:{isV3Model(e){(this.isV3Model?oe:ne).includes(this.value)||(this.sliderValue=z)}},mounted(){this.$store.state.kling?.config?.duration||(this.sliderValue=z)}}),nt={class:"field"},st={class:"header"},it={class:"title font-bold"},lt={class:"value-display"};function at(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-slider");return i(),c("div",nt,[s("div",st,[s("h2",it,a(e.$t("kling.name.duration")),1),n(d,{content:e.$t("kling.description.duration"),class:"info-icon ml-1"},null,8,["content"]),s("span",lt,a(e.value)+"s",1)]),n(p,{modelValue:e.sliderValue,"onUpdate:modelValue":t[0]||(t[0]=m=>e.sliderValue=m),class:"slider",min:e.sliderMin,max:e.sliderMax,step:e.sliderStep,marks:e.marks,"show-tooltip":!1},null,8,["modelValue","min","max","step","marks"])])}const rt=b(ot,[["render",at],["__scopeId","data-v-51126e44"]]),ct=k({name:"RatioSelector",data(){return{options:[{value:"1:1",label:"1:1",width:20,height:20},{value:"16:9",label:"16:9",width:25,height:13},{value:"9:16",label:"9:16",width:13,height:25}]}},computed:{active(){return this.options.findIndex(e=>e.value===this.value)||0},value:{get(){return this.$store.state?.kling?.config?.aspect_ratio},set(e){console.debug("set ratio",e),this.$store.commit("kling/setConfig",{...this.$store.state?.kling?.config,aspect_ratio:e})}}},mounted(){this.value||(this.value=ye)}}),dt={class:"text-sm font-bold mb-2 block"},pt={class:"items"},mt=["onClick"],ut={class:"name"};function gt(e,t,l,g,_,v){return i(),c("div",null,[s("span",dt,a(e.$t("kling.name.ratio")),1),s("div",pt,[(i(!0),c(E,null,T(e.options,(d,p)=>(i(),c("div",{key:p,class:R({active:e.active===p,item:!0}),onClick:m=>e.value=d.value},[s("div",{class:R(["preview",d.label])},[s("div",{class:"rect",style:he({width:d.width+"px",height:d.height+"px"})},null,4)],2),s("p",ut,a(d.label),1)],10,mt))),128))])])}const ft=b(ct,[["render",gt],["__scopeId","data-v-cdb14b2f"]]),_t=k({name:"StartImage",components:{ElUpload:D,ElButton:L,ElTooltip:W,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:O},mixins:[H],emits:["change"],data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},reachedLimit(){return(this.fileList?.length||0)>=1},value:{get(){return this.$store.state?.kling?.config?.start_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetStartImageUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadReferencesExceed"))},onError(){C.error(this.$t("kling.message.uploadReferencesError"))},onSetStartImageUrl(){const e=this.urls?.[0];this.$store.commit("kling/setConfig",{...this.$store.state?.kling?.config,start_image_url:e})},async onSuccess(){this.onSetStartImageUrl()}}}),ht={class:"relative"},$t={class:"flex justify-between"},vt={class:"flex justify-start items-center"},kt={class:"text-sm font-bold"};function bt(e,t,l,g,_,v){const d=o("info-icon"),p=o("image-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-tooltip"),u=o("el-upload");return i(),c("div",ht,[s("div",$t,[s("div",vt,[s("span",kt,a(e.$t("kling.name.startImage")),1),n(d,{content:e.$t("kling.description.uploadStartImage")},null,8,["content"])])]),n(u,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,disabled:e.reachedLimit,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:h})=>[h.url&&h.percentage!==void 0?(i(),V(p,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:M=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n($,{content:e.$t("kling.message.uploadReferencesExceed"),disabled:!e.reachedLimit,placement:"top"},{default:f(()=>[s("span",null,[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload",disabled:e.reachedLimit},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadReferences")),1)]),_:1},8,["disabled"])])]),_:1},8,["content","disabled"])]),_:1},8,["file-list","disabled","action","on-exceed","on-error","on-success","headers"])])}const yt=b(_t,[["render",bt],["__scopeId","data-v-40832274"]]),wt=k({name:"EndImage",components:{ElUpload:D,ElButton:L,ElTooltip:W,ImagePreview:O,InfoIcon:S,FontAwesomeIcon:I},mixins:[H],data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},reachedLimit(){return(this.fileList?.length||0)>=1},value:{get(){return this.$store.state?.kling?.config?.end_image_url},set(){}}},mounted(){this.value||(this.value=void 0),this.onSetEndImageUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadReferencesExceed"))},onError(){C.error(this.$t("kling.message.uploadReferencesError"))},onSetEndImageUrl(){const e=this.urls?.[0];this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,end_image_url:e})},async onSuccess(){this.onSetEndImageUrl()}}}),Vt={class:"relative"},Ct={class:"flex justify-between"},St={class:"flex justify-start items-center"},Et={class:"text-sm font-bold"};function Tt(e,t,l,g,_,v){const d=o("info-icon"),p=o("image-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-tooltip"),u=o("el-upload");return i(),c("div",Vt,[s("div",Ct,[s("div",St,[s("span",Et,a(e.$t("kling.name.endImage")),1),n(d,{content:e.$t("kling.description.uploadEndImage")},null,8,["content"])])]),n(u,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=h=>e.fileList=h),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,disabled:e.reachedLimit,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:h})=>[h.url&&h.percentage!==void 0?(i(),V(p,{key:0,url:h.url,name:h.name,percentage:h.percentage,onRemove:M=>e.fileList.splice(e.fileList.indexOf(h),1)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n($,{content:e.$t("kling.message.uploadReferencesExceed"),disabled:!e.reachedLimit,placement:"top"},{default:f(()=>[s("span",null,[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload",disabled:e.reachedLimit},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadReferences")),1)]),_:1},8,["disabled"])])]),_:1},8,["content","disabled"])]),_:1},8,["file-list","disabled","action","on-exceed","on-error","on-success","headers"])])}const It=b(wt,[["render",Tt],["__scopeId","data-v-55e1a777"]]),Lt=k({name:"CfgScaleSelector",components:{ElSlider:q,InfoIcon:S,ElInputNumber:re},computed:{value:{get(){return this.$store.state?.kling?.config?.cfg_scale},set(e){console.debug("set cfg_scale",e),this.$store.commit("kling/setConfig",{...this.$store.state?.kling?.config,cfg_scale:e})}}},mounted(){this.value||(this.value=we)}}),Mt={class:"flex justify-between"},Ut={class:"flex justify-start items-center"},Rt={class:"text-sm font-bold"},At={class:"flex justify-end items-center"},Pt={class:"w-full"};function Gt(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-input-number"),m=o("el-slider");return i(),c("div",null,[s("div",Mt,[s("div",Ut,[s("span",Rt,a(e.$t("kling.name.cfgScale")),1),n(d,{content:e.$t("kling.description.cfgScale")},null,8,["content"])]),s("div",At,[n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),"controls-position":"right"},null,8,["modelValue"])])]),s("div",Pt,[n(m,{modelValue:e.value,"onUpdate:modelValue":t[1]||(t[1]=r=>e.value=r),min:0,max:1,step:.1},null,8,["modelValue"])])])}const Ot=b(Lt,[["render",Gt]]),Dt=k({name:"GenerateAudioSelector",components:{ElSwitch:de,InfoIcon:S},computed:{selectedModel(){return this.$store.state.kling?.config?.model||""},selectedMode(){return this.$store.state.kling?.config?.mode||""},supported(){return!!(B.includes(this.selectedModel)||this.selectedModel==="kling-v2-6"&&this.selectedMode==="pro")},tooltipContent(){return this.supported?this.$t("kling.description.generateAudio"):this.$t("kling.description.generateAudioUnsupported")},value:{get(){return this.supported?this.$store.state.kling?.config?.generate_audio??Ve:!1},set(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,generate_audio:e})}}},watch:{supported(e){!e&&this.$store.state.kling?.config?.generate_audio&&this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,generate_audio:!1})}}}),jt={class:"relative"},Kt={class:"flex justify-between items-center"},zt={class:"flex justify-start items-center"},Nt={class:"text-sm font-bold"};function Ft(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-switch");return i(),c("div",jt,[s("div",Kt,[s("div",zt,[s("span",Nt,a(e.$t("kling.name.generateAudio")),1),n(d,{content:e.tooltipContent},null,8,["content"])]),n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m),class:"value",disabled:!e.supported},null,8,["modelValue","disabled"])])])}const Bt=b(Dt,[["render",Ft]]),qt=["horizontal","vertical","pan","tilt","roll","zoom"],Ht=k({name:"CameraControlSelector",components:{ElSelect:G,ElOption:P,ElSlider:q,ElInputNumber:re,InfoIcon:S},data(){return{configKeys:qt}},computed:{typeOptions(){return[{value:"",label:this.$t("kling.name.cameraTypeNone")},{value:"simple",label:this.$t("kling.name.cameraTypeSimple")},{value:"down_back",label:this.$t("kling.name.cameraTypeDownBack")},{value:"forward_up",label:this.$t("kling.name.cameraTypeForwardUp")},{value:"left_turn_forward",label:this.$t("kling.name.cameraTypeLeftTurnForward")},{value:"right_turn_forward",label:this.$t("kling.name.cameraTypeRightTurnForward")}]},selectedMode(){return this.$store.state.kling?.config?.mode||""},disabled(){return this.selectedMode==="4k"},tooltipContent(){return this.disabled?this.$t("kling.description.cameraControlDisabled4k"):this.$t("kling.description.cameraControl")},selectedType(){return this.$store.state.kling?.config?.camera_control?.type},selectedTypeRaw:{get(){return this.selectedType??""},set(e){const t=this.$store.state.kling?.config||{};if(!e){const g={...t};delete g.camera_control,this.$store.commit("kling/setConfig",g);return}const l=e;this.$store.commit("kling/setConfig",{...t,camera_control:{type:l,config:l==="simple"?t.camera_control?.config||{}:void 0}})}},configValues(){return this.$store.state.kling?.config?.camera_control?.config||{}}},watch:{disabled(e){e&&this.selectedType!==void 0&&(this.selectedTypeRaw="")}},methods:{writeConfig(e,t){const l=this.$store.state.kling?.config||{},g=l.camera_control||{type:"simple"},_={...g.config||{}};t==null?delete _[e]:_[e]=t,this.$store.commit("kling/setConfig",{...l,camera_control:{...g,type:"simple",config:_}})},onSliderChange(e,t){this.writeConfig(e,t)},onNumberChange(e,t){this.writeConfig(e,t)}}}),Wt={class:"field"},Jt={class:"header"},Qt={class:"text-sm font-bold"},Yt={key:0,class:"config-grid"},Xt={class:"cfg-row-head"},Zt={class:"cfg-name"};function xt(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-option"),m=o("el-select"),r=o("el-input-number"),$=o("el-slider");return i(),c("div",Wt,[s("div",Jt,[s("span",Qt,a(e.$t("kling.name.cameraControl")),1),n(d,{content:e.tooltipContent},null,8,["content"])]),n(m,{modelValue:e.selectedTypeRaw,"onUpdate:modelValue":t[0]||(t[0]=u=>e.selectedTypeRaw=u),class:"value",placeholder:e.$t("kling.placeholder.cameraType"),clearable:!0,disabled:e.disabled},{default:f(()=>[(i(!0),c(E,null,T(e.typeOptions,u=>(i(),V(p,{key:u.value,label:u.label,value:u.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"]),e.selectedType==="simple"&&!e.disabled?(i(),c("div",Yt,[(i(!0),c(E,null,T(e.configKeys,u=>(i(),c("div",{key:u,class:"cfg-row"},[s("div",Xt,[s("span",Zt,a(e.$t(`kling.name.cc_${u}`)),1),n(r,{modelValue:e.configValues[u],"onUpdate:modelValue":h=>e.configValues[u]=h,min:-1,max:1,step:.1,precision:1,"controls-position":"right",size:"small",class:"cfg-num",onChange:h=>e.onNumberChange(u,h)},null,8,["modelValue","onUpdate:modelValue","onChange"])]),n($,{"model-value":e.configValues[u]??0,min:-1,max:1,step:.1,onInput:h=>e.onSliderChange(u,h)},null,8,["model-value","onInput"])]))),128))])):y("",!0)])}const eo=b(Ht,[["render",xt],["__scopeId","data-v-fb7b34d0"]]),me=[{groupKey:"cameraMovements",chipKeys:["rotateAround","stationary","handheld","zoomOut","zoomIn","follow","panRight","tiltUp","tiltDown","orbit"]},{groupKey:"cameraSpeed",chipKeys:["speedSlow","speedMedium","speedFast"]},{groupKey:"shotType",chipKeys:["shotClose","shotMedium","shotLong","shotLowAngle","shotHighAngle","shotShallowDof","shotFront","shotProfile","shotCloseUp","shotDrone"]},{groupKey:"light",chipKeys:["lightSunlight","lightSoft","lightNeon","lightWarm","lightNature","lightCandle","lightCityNight"]},{groupKey:"frame",chipKeys:["frameRichDetails","frameSimpleBg"]},{groupKey:"atmosphere",chipKeys:["atmosphereMysterious","atmospherePeaceful","atmosphereHeartwarming","atmosphereVivid","atmosphereColorful"]}],N=", ";function to(e,t){const l=(e||"").trim();return l?l.includes(t)?l:`${l}${N}${t}`:t}function F(e,t){if(!e||!t)return e||"";const l=[`${t}${N}`,`${N}${t}`,t];let g=e;for(const _ of l)if(g.includes(_)){g=g.replace(_,"");break}return g.replace(/(?:,\s*)+$/,"").replace(/^(?:,\s*)+/,"")}const oo=k({name:"InspirationPills",components:{FontAwesomeIcon:I},computed:{prompt(){return this.$store.state.kling?.config?.prompt||""},allChipTexts(){return me.flatMap(e=>e.chipKeys.map(t=>this.$t(`kling.inspiration.chip.${t}`)))},selected(){const e=this.prompt;if(!e)return[];const t=[];for(const l of this.allChipTexts){const g=e.indexOf(l);g!==-1&&t.push({text:l,idx:g})}return t.sort((l,g)=>l.idx-g.idx).map(l=>l.text)}},methods:{onRemove(e){const t=F(this.prompt,e);this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,prompt:t})}}}),no={key:0,class:"pills",role:"list"},so={class:"pill-text"},io=["aria-label","onClick"];function lo(e,t,l,g,_,v){const d=o("font-awesome-icon");return e.selected.length>0?(i(),c("div",no,[(i(!0),c(E,null,T(e.selected,p=>(i(),c("div",{key:p,class:"pill",role:"listitem"},[s("span",so,a(p),1),s("button",{type:"button",class:"pill-remove","aria-label":e.$t("kling.inspiration.removeChip"),onClick:$e(m=>e.onRemove(p),["stop"])},[n(d,{icon:"fa-solid fa-xmark"})],8,io)]))),128))])):y("",!0)}const ao=b(oo,[["render",lo],["__scopeId","data-v-5fc4fa65"]]),ro="",co=k({name:"PromptInput",components:{ElInput:J,ElButton:L,FontAwesomeIcon:I,InfoIcon:S,InspirationPills:ao},emits:["open-inspiration"],computed:{prompt:{get(){return this.$store.state.kling?.config?.prompt},set(e){console.debug("set prompt",e),this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,prompt:e})}}},mounted(){this.prompt||(this.prompt=ro)}}),po={class:"field"},mo={class:"box"},uo={class:"title font-bold"},go={class:"actions"};function fo(e,t,l,g,_,v){const d=o("font-awesome-icon"),p=o("el-button"),m=o("info-icon"),r=o("inspiration-pills"),$=o("el-input");return i(),c("div",po,[s("div",mo,[s("h2",uo,a(e.$t("kling.name.prompt")),1),s("div",go,[n(p,{text:"",size:"small",class:"inspiration-btn",onClick:t[0]||(t[0]=u=>e.$emit("open-inspiration"))},{default:f(()=>[n(d,{icon:"fa-regular fa-lightbulb",class:"mr-1"}),w(" "+a(e.$t("kling.inspiration.openButton")),1)]),_:1}),n(m,{content:e.$t("kling.description.prompt"),class:"info"},null,8,["content"])])]),n(r),n($,{modelValue:e.prompt,"onUpdate:modelValue":t[1]||(t[1]=u=>e.prompt=u),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("kling.placeholder.prompt")},null,8,["modelValue","placeholder"])])}const _o=b(co,[["render",fo],["__scopeId","data-v-0a5c57b8"]]),ho="",$o=k({name:"NegativePromptInput",components:{ElInput:J,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.kling?.config?.negative_prompt},set(e){console.debug("set prompt",e),this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,negative_prompt:e})}}},mounted(){this.prompt||(this.prompt=ho)}}),vo={class:"field"},ko={class:"box"},bo={class:"title font-bold"};function yo(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-input");return i(),c("div",vo,[s("div",ko,[s("h2",bo,a(e.$t("kling.name.negativePrompt")),1),n(d,{content:e.$t("kling.description.negativePrompt"),class:"info"},null,8,["content"])]),n(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("kling.placeholder.negativePrompt")},null,8,["modelValue","placeholder"])])}const wo=b($o,[["render",yo],["__scopeId","data-v-de98cf01"]]),Vo=k({name:"InspirationDrawer",components:{ElDrawer:ae,ElButton:L,FontAwesomeIcon:I},props:{modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{groups:me,Close:ve}},computed:{visible:{get(){return this.modelValue},set(e){this.$emit("update:modelValue",e)}},drawerSize(){return window.innerWidth<768?"100%":"380px"},prompt(){return this.$store.state.kling?.config?.prompt||""},allChipTexts(){return this.groups.flatMap(e=>e.chipKeys.map(t=>this.$t(`kling.inspiration.chip.${t}`)))},selectedCount(){return this.allChipTexts.filter(e=>this.isSelected(e)).length}},methods:{chipText(e){return this.$t(`kling.inspiration.chip.${e}`)},isSelected(e){return e?this.prompt.includes(e):!1},setPrompt(e){this.$store.commit("kling/setConfig",{...this.$store.state.kling?.config,prompt:e})},onToggle(e){e&&(this.isSelected(e)?this.setPrompt(F(this.prompt,e)):this.setPrompt(to(this.prompt,e)))},onClearSelected(){let e=this.prompt;for(const t of this.allChipTexts)for(;e.includes(t);)e=F(e,t);this.setPrompt(e)}}}),Co={class:"drawer-content"},So={class:"drawer-header"},Eo={class:"title-row"},To={class:"title"},Io={class:"hint"},Lo={key:0,class:"selected-bar"},Mo={class:"selected-text"},Uo={class:"groups"},Ro={class:"group-title"},Ao={class:"chip-grid"},Po=["onClick"];function Go(e,t,l,g,_,v){const d=o("font-awesome-icon"),p=o("el-button"),m=o("el-drawer");return i(),V(m,{modelValue:e.visible,"onUpdate:modelValue":t[1]||(t[1]=r=>e.visible=r),direction:"rtl","with-header":!1,size:e.drawerSize,"custom-class":"kling-inspiration-drawer","destroy-on-close":!1},{default:f(()=>[s("div",Co,[s("div",So,[s("div",Eo,[n(d,{icon:"fa-regular fa-lightbulb",class:"mr-2"}),s("span",To,a(e.$t("kling.inspiration.title")),1)]),n(p,{text:"",icon:e.Close,class:"close-btn",onClick:t[0]||(t[0]=r=>e.visible=!1)},null,8,["icon"])]),s("div",Io,a(e.$t("kling.inspiration.hint")),1),e.selectedCount>0?(i(),c("div",Lo,[s("span",Mo,a(e.$t("kling.inspiration.selectedSummary",{count:e.selectedCount})),1),n(p,{text:"",size:"small",class:"clear-btn",onClick:e.onClearSelected},{default:f(()=>[w(a(e.$t("kling.inspiration.clearSelected")),1)]),_:1},8,["onClick"])])):y("",!0),s("div",Uo,[(i(!0),c(E,null,T(e.groups,r=>(i(),c("div",{key:r.groupKey,class:"group"},[s("div",Ro,a(e.$t(`kling.inspiration.group.${r.groupKey}`)),1),s("div",Ao,[(i(!0),c(E,null,T(r.chipKeys,$=>(i(),c("button",{key:$,type:"button",class:R({chip:!0,active:e.isSelected(e.chipText($))}),onClick:u=>e.onToggle(e.chipText($))},a(e.chipText($)),11,Po))),128))])]))),128))])])]),_:1},8,["modelValue","size"])}const Oo=b(Vo,[["render",Go],["__scopeId","data-v-7d457a69"]]),Do={"kling-v3":"v3","kling-v3-omni":"v3-Omni","kling-v2-6":"v2.6","kling-v2-5-turbo":"v2.5-Turbo","kling-v2-1-master":"v2.1-Master","kling-v2-master":"v2-Master","kling-v1-6":"v1.6","kling-v1":"v1","kling-video-o1":"Video-o1"},jo={std:"720p",pro:"1080p","4k":"4K"},Ko=k({name:"SummaryChip",components:{FontAwesomeIcon:I},computed:{config(){return this.$store.state.kling?.config||{}},modelLabel(){const e=this.config?.model||"kling-v2-5-turbo";return Do[e]||e},durationLabel(){return`${this.config?.duration??5}s`},aspectRatio(){return this.config?.aspect_ratio||""},modeLabel(){const e=this.config?.mode||"std";return jo[e]||e},generateAudio(){return!!this.config?.generate_audio}}}),zo={class:"summary-chip"},No=["title"],Fo=["title"],Bo=["title"],qo=["title"],Ho=["title"];function Wo(e,t,l,g,_,v){const d=o("font-awesome-icon");return i(),c("div",zo,[s("span",{class:"part",title:e.$t("kling.name.model")},a(e.modelLabel),9,No),t[0]||(t[0]=s("span",{class:"dot"},"·",-1)),s("span",{class:"part",title:e.$t("kling.name.duration")},a(e.durationLabel),9,Fo),t[1]||(t[1]=s("span",{class:"dot"},"·",-1)),s("span",{class:"part",title:e.$t("kling.name.ratio")},a(e.aspectRatio||"16:9"),9,Bo),t[2]||(t[2]=s("span",{class:"dot"},"·",-1)),s("span",{class:"part",title:e.$t("kling.name.mode")},a(e.modeLabel),9,qo),e.generateAudio?(i(),c("span",{key:0,class:"audio",title:e.$t("kling.name.generateAudio")},[n(d,{icon:"fa-solid fa-headphones"})],8,Ho)):y("",!0)])}const Jo=b(Ko,[["render",Wo],["__scopeId","data-v-418a6733"]]),Qo=k({name:"ConfigPanel",components:{ElButton:L,Consumption:ce,FontAwesomeIcon:I,PromptInput:_o,NegativePromptInput:wo,ModelSelector:Je,ModeSelector:tt,DurationSelector:rt,RatioSelector:ft,StartImage:yt,CfgScaleSelector:Ot,GenerateAudioSelector:Bt,CameraControlSelector:eo,InspirationDrawer:Oo,SummaryChip:Jo,EndImage:It},emits:["generate"],data(){return{inspirationOpen:!1}},computed:{config(){return this.$store.state.kling?.config},consumption(){return pe(this.config,this.service?.cost)},service(){return this.$store.state.kling?.service}},methods:{onGenerate(){this.$emit("generate")}}}),Yo={class:"flex flex-col h-full"},Xo={class:"flex-1 overflow-y-auto p-5"},Zo={class:"flex flex-col items-center justify-center px-5 pb-5"};function xo(e,t,l,g,_,v){const d=o("prompt-input"),p=o("model-selector"),m=o("ratio-selector"),r=o("start-image"),$=o("end-image"),u=o("duration-selector"),h=o("mode-selector"),M=o("generate-audio-selector"),U=o("camera-control-selector"),j=o("cfg-scale-selector"),ue=o("negative-prompt-input"),ge=o("summary-chip"),fe=o("consumption"),Q=o("font-awesome-icon"),Y=o("el-button"),_e=o("inspiration-drawer");return i(),c("div",Yo,[s("div",Xo,[n(d,{class:"mb-4",onOpenInspiration:t[0]||(t[0]=X=>e.inspirationOpen=!0)}),n(p,{class:"mb-4"}),n(m,{class:"mb-4"}),n(r,{class:"mb-2"}),n($,{class:"mb-2"}),n(u,{class:"mb-4"}),n(h,{class:"mb-4"}),n(M,{class:"mb-4"}),n(U,{class:"mb-4"}),n(j,{class:"mb-4"}),n(ue,{class:"mb-4"})]),s("div",Zo,[n(ge),n(fe,{value:e.consumption,service:e.service},null,8,["value","service"]),e.config?.video_url!==void 0||e.config?.custom?(i(),V(Y,{key:0,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[n(Q,{icon:"fa-solid fa-magic",class:"mr-2"}),w(" "+a(e.$t("kling.button.extend")),1)]),_:1},8,["onClick"])):(i(),V(Y,{key:1,type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:f(()=>[n(Q,{icon:"fa-solid fa-magic",class:"mr-2"}),w(" "+a(e.$t("kling.button.generate")),1)]),_:1},8,["onClick"]))]),n(_e,{modelValue:e.inspirationOpen,"onUpdate:modelValue":t[1]||(t[1]=X=>e.inspirationOpen=X)},null,8,["modelValue"])])}const en=b(Qo,[["render",xo]]),tn=k({name:"MotionImage",components:{ElUpload:D,ElButton:L,InfoIcon:S,FontAwesomeIcon:I,ImagePreview:O},mixins:[H],data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},mounted(){this.onSetImageUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadReferencesExceed"))},onError(){C.error(this.$t("kling.message.uploadReferencesError"))},onRemove(e){this.fileList.splice(this.fileList.indexOf(e),1),this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,image_url:void 0})},onSetImageUrl(){const e=this.urls?.[0];this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,image_url:e})},async onSuccess(){this.onSetImageUrl()}}}),on={class:"relative"},nn={class:"flex justify-between"},sn={class:"flex justify-start items-center"},ln={class:"text-sm font-bold"};function an(e,t,l,g,_,v){const d=o("info-icon"),p=o("image-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-upload");return i(),c("div",on,[s("div",nn,[s("div",sn,[s("span",ln,a(e.$t("kling.name.motionImage")),1),n(d,{content:e.$t("kling.description.motionImage")},null,8,["content"])])]),n($,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=u=>e.fileList=u),name:"file",accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",limit:1,class:"upload-wrapper",multiple:!1,action:e.uploadUrl,"list-type":"picture","on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:u})=>[u.url&&u.percentage!==void 0?(i(),V(p,{key:0,url:u.url,name:u.name,percentage:u.percentage,onRemove:h=>e.onRemove(u)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadReferences")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])])}const rn=b(tn,[["render",an],["__scopeId","data-v-37d42da7"]]),cn=k({name:"MotionVideo",components:{ElUpload:D,ElButton:L,InfoIcon:S,FilePreview:Se,FontAwesomeIcon:I},data(){return{fileList:[],uploadUrl:A()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)}},mounted(){this.onSetVideoUrl()},methods:{onExceed(){C.warning(this.$t("kling.message.uploadVideoExceed"))},onError(){C.error(this.$t("kling.message.uploadVideoError"))},onRemove(e){this.fileList.splice(this.fileList.indexOf(e),1),this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,video_url:void 0})},beforeUpload(e){const t=e.type==="video/mp4"||e.type==="video/quicktime",l=e.size/1024/1024<100;return t?l?!0:(C.error(this.$t("kling.message.uploadVideoSizeExceed")),!1):(C.error(this.$t("kling.message.uploadVideoTypeFailed")),!1)},onSetVideoUrl(){const e=this.urls?.[0];this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,video_url:e})},async onSuccess(){this.onSetVideoUrl()}}}),dn={class:"relative"},pn={class:"flex justify-between"},mn={class:"flex justify-start items-center"},un={class:"text-sm font-bold"};function gn(e,t,l,g,_,v){const d=o("info-icon"),p=o("file-preview"),m=o("font-awesome-icon"),r=o("el-button"),$=o("el-upload");return i(),c("div",dn,[s("div",pn,[s("div",mn,[s("span",un,a(e.$t("kling.name.motionVideo")),1),n(d,{content:e.$t("kling.description.motionVideo")},null,8,["content"])])]),n($,{"file-list":e.fileList,"onUpdate:fileList":t[0]||(t[0]=u=>e.fileList=u),accept:".mp4,.mov",name:"file",class:"value","show-file-list":!0,limit:1,multiple:!1,action:e.uploadUrl,"before-upload":e.beforeUpload,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:f(({file:u})=>[u.percentage!==void 0?(i(),V(p,{key:0,url:u.url||u.response?.file_url,name:u.name,percentage:u.percentage,onRemove:h=>e.onRemove(u)},null,8,["url","name","percentage","onRemove"])):y("",!0)]),default:f(()=>[n(r,{round:"",type:"primary",size:"small",class:"btn btn-upload"},{default:f(()=>[n(m,{icon:"fa-solid fa-upload",class:"icon mr-1"}),w(" "+a(e.$t("kling.button.uploadVideoUrl")),1)]),_:1})]),_:1},8,["file-list","action","before-upload","on-exceed","on-error","on-success","headers"])])}const fn=b(cn,[["render",gn],["__scopeId","data-v-5cf93212"]]),_n=k({name:"MotionPromptInput",components:{ElInput:J,InfoIcon:S},computed:{prompt:{get(){return this.$store.state.kling?.motionConfig?.prompt||""},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,prompt:e})}}}}),hn={class:"field"},$n={class:"box"},vn={class:"title font-bold"};function kn(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-input");return i(),c("div",hn,[s("div",$n,[s("h2",vn,a(e.$t("kling.name.motionPrompt")),1),n(d,{content:e.$t("kling.description.motionPrompt"),class:"info"},null,8,["content"])]),n(p,{modelValue:e.prompt,"onUpdate:modelValue":t[0]||(t[0]=m=>e.prompt=m),rows:3,type:"textarea",class:"prompt",placeholder:e.$t("kling.placeholder.motionPrompt")},null,8,["modelValue","placeholder"])])}const bn=b(_n,[["render",kn],["__scopeId","data-v-ca9fdbe5"]]),se="video",yn=k({name:"CharacterOrientationSelector",components:{ElRadioGroup:Te,ElRadioButton:Ee,InfoIcon:S},computed:{value:{get(){return this.$store.state.kling?.motionConfig?.character_orientation||se},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,character_orientation:e})}}},mounted(){this.$store.state.kling?.motionConfig?.character_orientation||(this.value=se)}}),wn={class:"field"},Vn={class:"header"},Cn={class:"text-sm font-bold"};function Sn(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-radio-button"),m=o("el-radio-group");return i(),c("div",wn,[s("div",Vn,[s("span",Cn,a(e.$t("kling.name.characterOrientation")),1),n(d,{content:e.$t("kling.description.characterOrientation")},null,8,["content"])]),n(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),size:"small",class:"value"},{default:f(()=>[n(p,{label:"image"},{default:f(()=>[w(a(e.$t("kling.name.orientationImage")),1)]),_:1}),n(p,{label:"video"},{default:f(()=>[w(a(e.$t("kling.name.orientationVideo")),1)]),_:1})]),_:1},8,["modelValue"])])}const En=b(yn,[["render",Sn],["__scopeId","data-v-7a91195b"]]),ie="std",Tn=k({name:"MotionModeSelector",components:{ElSelect:G,ElOption:P,InfoIcon:S},computed:{options(){return[{value:"std",label:this.$t("kling.name.modeStd")},{value:"pro",label:this.$t("kling.name.modePro")}]},value:{get(){return this.$store.state.kling?.motionConfig?.mode||ie},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,mode:e})}}},mounted(){this.$store.state.kling?.motionConfig?.mode||(this.value=ie)}}),In={class:"field"},Ln={class:"header"},Mn={class:"title font-bold"};function Un(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-option"),m=o("el-select");return i(),c("div",In,[s("div",Ln,[s("h2",Mn,a(e.$t("kling.name.mode")),1),n(d,{content:e.$t("kling.description.motionMode")},null,8,["content"])]),n(m,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=r=>e.value=r),class:"value",placeholder:e.$t("kling.placeholder.select")},{default:f(()=>[(i(!0),c(E,null,T(e.options,r=>(i(),V(p,{key:r.value,label:r.label,value:r.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])])}const Rn=b(Tn,[["render",Un],["__scopeId","data-v-1295688c"]]),An=k({name:"KeepOriginalSoundSelector",components:{ElSwitch:de,InfoIcon:S},computed:{value:{get(){return(this.$store.state.kling?.motionConfig?.keep_original_sound??"yes")==="yes"},set(e){this.$store.commit("kling/setMotionConfig",{...this.$store.state.kling?.motionConfig,keep_original_sound:e?"yes":"no"})}}}}),Pn={class:"relative"},Gn={class:"flex justify-between items-center"},On={class:"flex justify-start items-center"},Dn={class:"text-sm font-bold"};function jn(e,t,l,g,_,v){const d=o("info-icon"),p=o("el-switch");return i(),c("div",Pn,[s("div",Gn,[s("div",On,[s("span",Dn,a(e.$t("kling.name.keepOriginalSound")),1),n(d,{content:e.$t("kling.description.keepOriginalSound")},null,8,["content"])]),n(p,{modelValue:e.value,"onUpdate:modelValue":t[0]||(t[0]=m=>e.value=m)},null,8,["modelValue"])])])}const Kn=b(An,[["render",jn]]),zn=k({name:"MotionPanel",components:{ElButton:L,FontAwesomeIcon:I,Consumption:ce,MotionImage:rn,MotionVideo:fn,MotionPromptInput:bn,CharacterOrientationSelector:En,MotionModeSelector:Rn,KeepOriginalSoundSelector:Kn},emits:["generate"],computed:{motionConfig(){return this.$store.state.kling?.motionConfig},consumption(){return pe(this.motionConfig,this.service?.cost)},service(){return this.$store.state.kling?.service},canGenerate(){const e=this.motionConfig;return!!(e?.image_url&&e?.video_url)}},methods:{onGenerate(){this.$emit("generate")}}}),Nn={class:"flex flex-col h-full"},Fn={class:"flex-1 overflow-y-auto p-5"},Bn={class:"flex flex-col items-center justify-center px-5 pb-5"};function qn(e,t,l,g,_,v){const d=o("motion-image"),p=o("motion-video"),m=o("motion-prompt-input"),r=o("character-orientation-selector"),$=o("motion-mode-selector"),u=o("keep-original-sound-selector"),h=o("consumption"),M=o("font-awesome-icon"),U=o("el-button");return i(),c("div",Nn,[s("div",Fn,[n(d,{class:"mb-3"}),n(p,{class:"mb-3"}),n(m,{class:"mb-4"}),n(r,{class:"mb-4"}),n($,{class:"mb-4"}),n(u,{class:"mb-4"})]),s("div",Bn,[n(h,{value:e.consumption,service:e.service},null,8,["value","service"]),n(U,{type:"primary",class:"btn w-full",round:"",disabled:!e.canGenerate,onClick:e.onGenerate},{default:f(()=>[n(M,{icon:"fa-solid fa-magic",class:"mr-2"}),w(" "+a(e.$t("kling.button.generateMotion")),1)]),_:1},8,["disabled","onClick"])])])}const Hn=b(zn,[["render",qn]]),Wn=k({name:"KlingTabSwitcher",components:{ElTabs:Le,ElTabPane:Ie,ElTag:ke},props:{modelValue:{type:String,default:"videos"}},emits:["update:modelValue"],computed:{tabs(){return[{value:"videos",label:this.$t("kling.tab.videoGeneration")},{value:"motion",label:this.$t("kling.tab.motionControl")},{value:"avatar",label:this.$t("kling.tab.avatar"),disabled:!0,disabledReason:this.$t("kling.tab.avatarComingSoon"),badge:this.$t("kling.tab.comingSoon")}]}},methods:{onUpdate(e){e!=="avatar"&&this.$emit("update:modelValue",e)}}}),Jn=["title"],Qn={class:"text"};function Yn(e,t,l,g,_,v){const d=o("el-tag"),p=o("el-tab-pane"),m=o("el-tabs");return i(),V(m,{"model-value":e.modelValue,class:"kling-tabs",stretch:"","onUpdate:modelValue":e.onUpdate},{default:f(()=>[(i(!0),c(E,null,T(e.tabs,r=>(i(),V(p,{key:r.value,name:r.value,disabled:r.disabled},{label:f(()=>[s("span",{class:"tab-label",title:r.disabled?r.disabledReason:void 0},[s("span",Qn,a(r.label),1),r.badge?(i(),V(d,{key:0,size:"small",type:"warning",class:"badge"},{default:f(()=>[w(a(r.badge),1)]),_:2},1024)):y("",!0)],8,Jn)]),_:2},1032,["name","disabled"]))),128))]),_:1},8,["model-value","onUpdate:modelValue"])}const Xn=b(Wn,[["render",Yn],["__scopeId","data-v-c6b8d834"]]),Zn=k({name:"TaskPreview",components:{ElImage:Ae,CopyToClipboard:Me,FontAwesomeIcon:I,ElAlert:Re,VideoPlayer:Ue,ElTooltip:W,ElButton:L,ImagePreview:O},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.kling?.application},config(){return this.$store.state.kling?.config},referenceImages(){const e=[],t=this.modelValue?.request?.start_image_url,l=this.modelValue?.request?.end_image_url;return t&&e.push({url:t,name:"start-image"}),l&&e.push({url:l,name:"end-image"}),e}},methods:{onDownload(e,t){e.stopPropagation(),console.log("on download"),window.open(t,"_blank")},onOpenVideo(e){window.open(e,"_blank")}}}),xn={class:"preview"},es={class:"left"},ts={class:"main"},os={class:"bot"},ns={class:"datetime"},ss={class:"info"},is={key:0,class:"flex justify-start items-center gap-2 mt-2 w-full overflow-x-auto"},ls={key:1,class:"prompt mt-2"},as={key:0},rs={key:1},cs={key:0,class:R({content:!0,failed:!0})},ds={key:0,class:"mb-4"},ps={key:1,class:R({operations:!0,"mt-2":!0})},ms={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},us={class:"text-[var(--el-text-color-regular)] text-xs mb-0"},gs={key:1,class:R({content:!0})},fs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},_s={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},hs={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"},$s={key:2,class:R({content:!0})},vs={class:"text-[var(--el-text-color-regular)] text-xs mb-2"},ks={key:0,class:"text-[var(--el-text-color-regular)] text-xs mb-0"};function bs(e,t,l,g,_,v){const d=o("el-image"),p=o("image-preview"),m=o("video-player"),r=o("el-button"),$=o("el-tooltip"),u=o("font-awesome-icon"),h=o("copy-to-clipboard"),M=o("el-alert");return i(),c("div",xn,[s("div",es,[n(d,{src:"https://cdn.acedata.cloud/qpbbbb.jpg",class:"avatar"})]),s("div",ts,[s("div",os,[w(a(e.$t("kling.name.klingBot"))+" ",1),s("span",ns,a(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),s("div",ss,[e.referenceImages.length>0?(i(),c("div",is,[(i(!0),c(E,null,T(e.referenceImages,(U,j)=>(i(),V(p,{key:j,url:U.url,name:U.name,closable:!1},null,8,["url","name"]))),128))])):y("",!0),e.modelValue?.request?.prompt?(i(),c("p",ls,[w(a(e.modelValue?.request?.prompt)+" ",1),e.modelValue?.response?y("",!0):(i(),c("span",as," - ("+a(e.$t("kling.status.pending"))+") ",1)),e.modelValue?.response?.state==="submitted"||e.modelValue?.response?.state==="processing"||e.modelValue?.response?.state==="pending"||e.modelValue?.response?.state==="completed"?(i(),c("span",rs," - ("+a(e.$t("kling.status.processing"))+") ",1)):y("",!0)])):y("",!0)]),e.modelValue?.response?.success===!0?(i(),c("div",cs,[e.modelValue?.response.video_url?(i(),c("div",ds,[n(m,{src:e.modelValue?.response.video_url},null,8,["src"])])):y("",!0),e.modelValue?.response.success?(i(),c("div",ps,[n($,{class:"box-item",effect:"dark",content:e.$t("kling.message.downloadVideo"),placement:"top-start"},{default:f(()=>[e.modelValue?.response.video_url?(i(),V(r,{key:0,type:"info",size:"small",class:"btn-action",onClick:t[0]||(t[0]=U=>e.onDownload(U,e.modelValue?.response.video_url))},{default:f(()=>[w(a(e.$t("kling.button.download")),1)]),_:1})):y("",!0)]),_:1},8,["content"])])):y("",!0),n(M,{closable:!1,class:"mt-2 success"},{default:f(()=>[s("p",ms,[n(u,{icon:"fa-solid fa-hashtag",class:"mr-1"}),w(" "+a(e.$t("kling.name.model"))+": "+a(e.modelValue?.request?.model),1)]),s("p",us,[n(u,{icon:"fa-solid fa-magic",class:"mr-1"}),w(" "+a(e.$t("kling.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),n(h,{content:e.modelValue?.id},null,8,["content"])])]),_:1})])):y("",!0),e.modelValue?.response?.success===!1?(i(),c("div",gs,[n(M,{closable:!1,class:"failure"},{template:f(()=>[n(u,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),w(" "+a(e.$t("kling.name.failure")),1)]),default:f(()=>[s("p",fs,[n(u,{icon:"fa-solid fa-magic",class:"mr-1"}),w(" "+a(e.$t("kling.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),n(h,{content:e.modelValue?.id},null,8,["content"])]),s("p",_s,[n(u,{icon:"fa-solid fa-circle-info",class:"mr-1"}),w(" "+a(e.$t("kling.name.failureReason"))+": "+a(e.modelValue?.response?.error?.message)+" ",1),n(h,{content:e.modelValue?.response?.error?.message},null,8,["content"])]),e.modelValue?.response?.trace_id?(i(),c("p",hs,[n(u,{icon:"fa-solid fa-hashtag",class:"mr-1"}),w(" "+a(e.$t("kling.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),n(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):y("",!0)]),_:1})])):y("",!0),e.modelValue?.response?.success===void 0?(i(),c("div",$s,[n(M,{closable:!1,class:"info"},{template:f(()=>[n(u,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),w(" "+a(e.$t("kling.name.failure")),1)]),default:f(()=>[s("p",vs,[n(u,{icon:"fa-solid fa-magic",class:"mr-1"}),w(" "+a(e.$t("kling.name.taskId"))+": "+a(e.modelValue?.id)+" ",1),n(h,{content:e.modelValue?.id},null,8,["content"])]),e.modelValue?.response?.trace_id?(i(),c("p",ks,[n(u,{icon:"fa-solid fa-hashtag",class:"mr-1"}),w(" "+a(e.$t("kling.name.traceId"))+": "+a(e.modelValue?.response?.trace_id)+" ",1),n(h,{content:e.modelValue?.response?.trace_id},null,8,["content"])])):y("",!0)]),_:1})])):y("",!0)])])}const ys=b(Zn,[["render",bs],["__scopeId","data-v-cddeff01"]]),ws=k({name:"RecentPanel",components:{TaskPreview:ys,NoTasks:Ge,BotPlaceholder:Pe,ScrollList:Ce},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.kling?.tasks,items:this.$store.state.kling?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),Vs={key:0},Cs={key:2,class:"w-full h-full flex items-center justify-center"};function Ss(e,t,l,g,_,v){const d=o("bot-placeholder"),p=o("task-preview"),m=o("scroll-list"),r=o("no-tasks");return i(),c(E,null,[e.tasks?.items===void 0?(i(),c("div",Vs,[n(d)])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(i(),V(m,{key:1,ref:"scrollList",class:"h-full w-full overflow-y-auto tasks",loading:e.loading,onReachTop:t[0]||(t[0]=$=>e.$emit("reach-top"))},{default:f(()=>[(i(!0),c(E,null,T(e.tasks?.items,$=>(i(),V(p,{key:$.id,"model-value":$},null,8,["model-value"]))),128))]),_:1},8,["loading"])):y("",!0),e.tasks?.items?.length===0?(i(),c("div",Cs,[n(r)])):y("",!0)],64)}const Es=b(ws,[["render",Ss]]),le="https://webhook.acedata.cloud/kling",Ts=k({name:"KlingIndex",components:{ConfigPanel:en,MotionPanel:Hn,TabSwitcher:Xn,Layout:Fe,RecentPanel:Es},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.kling?.status?.getApplications===Z.Request},tasksLoading(){return this.$store.state.kling?.status?.getTasks===Z.Request||this.fetchingTasks},credential(){return this.$store.state.kling.credential},config(){return this.$store.state.kling.config},motionConfig(){return this.$store.state.kling.motionConfig},taskType(){return this.$store.state.kling.taskType||"videos"},tasks(){return this.$store.state.kling.tasks}},watch:{tasks:{handler(e,t){e?.items?.length>t?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await Oe({tasks:this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("kling/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("kling/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:t=5,createdAtMin:l,createdAtMax:g}=e||{};console.debug("limit",t,"createdAtMin",l,"createdAtMax",g),this.fetchingTasks=!0;try{await this.$store.dispatch("kling/getTasks",{limit:t,createdAtMin:l,createdAtMax:g})}finally{this.fetchingTasks=!1}},async onGenerate(){const{camera_control:e,...t}=this.config||{},l={...t,callback_url:le};if(!l.video_id&&!t.video_url&&!l.start_image_url&&l.end_image_url){C.warning(this.$t("kling.message.endImageRequiresStart"));return}l.action||(l.video_id||t.video_url?l.action="extend":l.start_image_url?l.action="image2video":l.action="text2video"),l.action==="text2video"&&l.end_image_url&&delete l.end_image_url,e?.type&&(l.camera_control={type:e.type,...e.type==="simple"&&e.config?{config:Object.fromEntries(Object.entries(e.config).filter(([,_])=>_!=null))}:{}});const g=this.credential?.token;if(!g){console.error("no token specified");return}C.info(this.$t("kling.message.startingTask")),te.generate(l,{token:g}).then(()=>{C.success(this.$t("kling.message.startTaskSuccess"))}).catch(_=>{_?.response?.data?.error?.code===ee?C.error(this.$t("kling.message.usedUp")):C.error(this.$t("kling.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()},async onTabChange(e){e!==this.taskType&&(await this.$store.dispatch("kling/setTaskType",e),await this.onGetTasks(),await this.onScrollDown())},async onGenerateMotion(){const e=this.motionConfig||{};if(!e.image_url||!e.video_url){C.warning(this.$t("kling.message.motionMissingInputs"));return}const t={image_url:e.image_url,video_url:e.video_url,character_orientation:e.character_orientation||"video",mode:e.mode||"std",keep_original_sound:e.keep_original_sound??"yes",...e.prompt?{prompt:e.prompt}:{},callback_url:le},l=this.credential?.token;if(!l){console.error("no token specified");return}C.info(this.$t("kling.message.startingTask")),te.motion(t,{token:l}).then(()=>{C.success(this.$t("kling.message.startTaskSuccess"))}).catch(g=>{g?.response?.data?.error?.code===ee?C.error(this.$t("kling.message.usedUp")):C.error(this.$t("kling.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})}}}),Is={class:"flex flex-col h-full"},Ls={class:"flex-1 min-h-0"};function Ms(e,t,l,g,_,v){const d=o("tab-switcher"),p=o("config-panel"),m=o("motion-panel"),r=o("recent-panel"),$=o("layout");return i(),V($,null,{config:f(()=>[s("div",Is,[n(d,{"model-value":e.taskType,"onUpdate:modelValue":e.onTabChange},null,8,["model-value","onUpdate:modelValue"]),s("div",Ls,[e.taskType==="videos"?(i(),V(p,{key:0,onGenerate:e.onGenerate},null,8,["onGenerate"])):e.taskType==="motion"?(i(),V(m,{key:1,onGenerate:e.onGenerateMotion},null,8,["onGenerate"])):y("",!0)])])]),result:f(()=>[n(r,{ref:"recentPanel",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const Ui=b(Ts,[["render",Ms]]);export{Ui as default};
@@ -1 +1 @@
1
- import{y as R,z as A,u as x,H as ee,ae as te,S as se,A as ie,k as V,E as oe,aZ as O,D as M,an as U,bL as ae}from"./index-CcLeLCz_.js";import{E as ne}from"./index-COgclLPo.js";import{E as Z}from"./index-BVDLO2NF.js";import{E as G,a as q}from"./index-Cb3-nY6b.js";import{d as C,q as c,H as g,E as s,u as r,z as L,C as n,R as le,Q as I,F as a,J as w,c as P,x as _,y as o,G as H,O as re,N as de,M as j,I as h,K as W,D as u,a7 as ue}from"./vendor-vue-DU0w5ewx.js";import{E as J}from"./index-HuVavZAf.js";import{E as K}from"./index-C3_BR8Du.js";import{E as p}from"./index-DHmHglE2.js";import{E as me,a as ce}from"./index-69GNp982.js";import{E as pe}from"./index-7GJM0rUf.js";import{E as fe,a as he}from"./index-CrU9Y2iq.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./typescript-l_7qPiw8.js";import"./index-2j0K9jvG.js";import"./index-DLzT3hvJ.js";import"./use-form-item-B2PVrARv.js";import"./castArray-CPkiDUbn.js";import"./_baseClone-C5kjpouO.js";import"./_Uint8Array-D2hcaA7t.js";import"./_initCloneObject-CkiCLeyz.js";import"./index-BuyEbX8F.js";import"./validator-BIclKirR.js";import"./index-Bqokxo8B.js";import"./index-BrM6TDeR.js";import"./isPlainObject-Cf0k3CGb.js";import"./_baseIteratee-DRs4HrNx.js";import"./isEqual-BIWsPnQ_.js";import"./debounce-CKyw8aIt.js";import"./index-YOaYKfmW.js";import"./index-DQlBqojO.js";const ge=C({name:"ImgEmpty"}),be=C({...ge,setup(e){const t=A("empty"),i=x();return(d,b)=>(c(),g("svg",{viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[s("defs",null,[s("linearGradient",{id:`linearGradient-1-${r(i)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,["stop-color"]),s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,["stop-color"])],8,["id"]),s("linearGradient",{id:`linearGradient-2-${r(i)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,["stop-color"]),s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,["stop-color"])],8,["id"]),s("rect",{id:`path-3-${r(i)}`,x:"0",y:"0",width:"17",height:"36"},null,8,["id"])]),s("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[s("g",{transform:"translate(-1268.000000, -535.000000)"},[s("g",{transform:"translate(1268.000000, 535.000000)"},[s("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${r(t).cssVarBlockName("fill-color-3")})`},null,8,["fill"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,["fill"]),s("g",{transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},[s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,["fill"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,["fill"]),s("rect",{fill:`url(#linearGradient-1-${r(i)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,["fill"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,["fill"])]),s("rect",{fill:`url(#linearGradient-2-${r(i)})`,x:"13",y:"45",width:"40",height:"36"},null,8,["fill"]),s("g",{transform:"translate(53.000000, 45.000000)"},[s("use",{fill:`var(${r(t).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${r(i)}`},null,8,["fill","xlink:href"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${r(i)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,["fill","mask"])]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,["fill"])])])])]))}});var ye=R(be,[["__file","img-empty.vue"]]);const $e=ee({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),_e=C({name:"ElEmpty"}),ke=C({..._e,props:$e,setup(e){const t=e,{t:i}=te(),d=A("empty"),b=P(()=>t.description||i("el.table.emptyText")),k=P(()=>({width:se(t.imageSize)}));return(f,y)=>(c(),g("div",{class:I(r(d).b())},[s("div",{class:I(r(d).e("image")),style:le(r(k))},[f.image?(c(),g("img",{key:0,src:f.image,ondragstart:"return false"},null,8,["src"])):L(f.$slots,"image",{key:1},()=>[n(ye)])],6),s("div",{class:I(r(d).e("description"))},[f.$slots.description?L(f.$slots,"description",{key:0}):(c(),g("p",{key:1},a(r(b)),1))],2),f.$slots.default?(c(),g("div",{key:0,class:I(r(d).e("bottom"))},[L(f.$slots,"default")],2)):w("v-if",!0)],2))}});var ve=R(ke,[["__file","empty.vue"]]);const Q=ie(ve);class we{key="site-domains";async getAll(t={}){return await V.get(`/${this.key}/`,{params:t})}async get(t){return await V.get(`/${this.key}/${t}`)}async create(t){return await V.post(`/${this.key}/`,t)}async verify(t){return await V.post(`/${this.key}/${t}/verify/`)}async delete(t){return await V.delete(`/${this.key}/${t}`)}}const E=new we,Ce=/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/,Ve=["acedata.cloud","surl.id","localhost"];function Ee(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(const d of Ve)if(t===d||t.endsWith("."+d))return{ok:!1,reason:"reserved"};const i=t.split(".");if(i.length<2)return{ok:!1,reason:"too_few_labels"};for(const d of i)if(!d||!Ce.test(d))return{ok:!1,reason:"bad_label"};return{ok:!0,value:t}}const De=C({name:"DomainsDialog",components:{ElDialog:O,ElButton:J,ElEmpty:Q,ElForm:q,ElFormItem:G,ElInput:Z,ElTag:oe,ElDivider:ne},props:{modelValue:{type:Boolean,required:!0},site:{type:Object,default:null}},emits:["update:modelValue"],data(){return{loading:!1,domains:[],bind:{hostname:""},binding:!1,busyId:null}},watch:{modelValue(e){e&&this.site?.id?this.fetchDomains():e||(this.domains=[],this.bind.hostname="",this.busyId=null)}},methods:{async fetchDomains(){if(this.site?.id){this.loading=!0;try{const{data:e}=await E.getAll({site:this.site.id});this.domains=e?.items||[]}catch(e){console.error("failed to load domains",e),p.error(this.$t("subsite.message.domainsLoadFailed"))}finally{this.loading=!1}}},async onBind(){if(!this.site?.id)return;const e=Ee(this.bind.hostname);if(!e.ok){p.warning(this.$t("subsite.message.hostnameInvalid"));return}this.binding=!0;try{const{data:t}=await E.create({site:this.site.id,hostname:e.value});p.success(this.$t("subsite.message.domainCreated")),this.domains=[t,...this.domains],this.bind.hostname=""}catch(t){const i=t?.response?.data?.hostname||t?.response?.data?.detail||t?.response?.data?.site||t?.message;p.error(typeof i=="string"?i:this.$t("subsite.message.domainCreateFailed"))}finally{this.binding=!1}},async onVerify(e){if(e.id){this.busyId=e.id;try{const{data:t}=await E.verify(e.id);this.replaceRow(t),t.status==="Active"?p.success(this.$t("subsite.message.domainActive")):t.status==="Failed"?p.error(t.status_reason||this.$t("subsite.message.domainFailed")):p.info(this.$t("subsite.message.domainProgressed"))}catch(t){const i=t?.response?.data?.verification||t?.response?.data?.edgeone||t?.response?.data?.detail||t?.message;p.error(typeof i=="string"?i:this.$t("subsite.message.domainVerifyFailed"))}finally{this.busyId=null}}},async onRefresh(e){if(e.id){this.busyId=e.id;try{const{data:t}=await E.get(e.id);this.replaceRow(t)}catch(t){console.error("refresh failed",t)}finally{this.busyId=null}}},async onDelete(e){if(!(!e.id||!e.hostname)){try{await K.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.busyId=e.id;try{await E.delete(e.id),this.domains=this.domains.filter(t=>t.id!==e.id)}catch(t){const i=t?.response?.data?.detail||t?.message;p.error(typeof i=="string"?i:this.$t("subsite.message.domainDeleteFailed"))}finally{this.busyId=null}}},replaceRow(e){const t=this.domains.findIndex(i=>i.id===e.id);t>=0?this.domains.splice(t,1,e):this.domains=[e,...this.domains]},canVerify(e){return e.status==="PendingDnsVerification"||e.status==="ProvisioningEo"||e.status==="ProvisioningCert"},verifyButtonLabel(e){return e==="PendingDnsVerification"?this.$t("subsite.button.verify"):this.$t("subsite.button.checkProgress")},statusLabel(e){if(!e)return"-";const t=`subsite.status.${e.charAt(0).toLowerCase()+e.slice(1)}`;return this.$t(t)},statusTagType(e){return e==="Active"?"success":e==="Failed"?"danger":e==="PendingDnsVerification"?"info":"warning"}}}),Se={class:"domains-body"},Be={class:"tip"},Ie={class:"domain-row-head"},Ne={class:"hostname"},ze={class:"row-actions"},Te={key:0,class:"status-reason error"},Le={key:1,class:"dns-instructions"},Fe={class:"instructions"},Ue={class:"dns-record"},Pe={class:"break"},Re={class:"bind-title"},Ae={class:"tip"};function Oe(e,t,i,d,b,k){const f=u("el-empty"),y=u("el-tag"),$=u("el-button"),N=u("el-divider"),v=u("el-input"),z=u("el-form-item"),T=u("el-form"),D=u("el-dialog"),S=W("loading");return c(),_(D,{"model-value":e.modelValue,title:e.$t("subsite.title.domains",{origin:e.site?.origin||""}),width:"640px",class:"domains-dialog","onUpdate:modelValue":t[3]||(t[3]=l=>e.$emit("update:modelValue",l))},{footer:o(()=>[s("span",null,[n($,{round:"",onClick:t[2]||(t[2]=l=>e.$emit("update:modelValue",!1))},{default:o(()=>[h(a(e.$t("common.button.close")),1)]),_:1}),n($,{round:"",type:"primary",loading:e.binding,disabled:!e.bind.hostname.trim(),onClick:e.onBind},{default:o(()=>[h(a(e.$t("subsite.button.bindDomain")),1)]),_:1},8,["loading","disabled","onClick"])])]),default:o(()=>[H((c(),g("div",Se,[s("p",Be,a(e.$t("subsite.message.domainsIntro")),1),!e.loading&&e.domains.length===0?(c(),_(f,{key:0,description:e.$t("subsite.message.domainsEmpty")},null,8,["description"])):w("",!0),(c(!0),g(re,null,de(e.domains,l=>(c(),g("div",{key:l.id,class:"domain-row"},[s("div",Ie,[s("strong",Ne,a(l.hostname),1),n(y,{type:e.statusTagType(l.status),size:"small",class:"status-tag"},{default:o(()=>[h(a(e.statusLabel(l.status)),1)]),_:2},1032,["type"]),s("span",ze,[e.canVerify(l)?(c(),_($,{key:0,size:"small",type:"primary",loading:e.busyId===l.id,link:"",onClick:B=>e.onVerify(l)},{default:o(()=>[h(a(e.verifyButtonLabel(l.status)),1)]),_:2},1032,["loading","onClick"])):w("",!0),l.status!=="Active"?(c(),_($,{key:1,size:"small",link:"",loading:e.busyId===l.id,onClick:B=>e.onRefresh(l)},{default:o(()=>[h(a(e.$t("subsite.button.refresh")),1)]),_:1},8,["loading","onClick"])):w("",!0),n($,{size:"small",link:"",type:"danger",loading:e.busyId===l.id,onClick:B=>e.onDelete(l)},{default:o(()=>[h(a(e.$t("common.button.delete")),1)]),_:1},8,["loading","onClick"])])]),l.status_reason?(c(),g("div",Te,a(l.status_reason),1)):w("",!0),l.dns_instructions?(c(),g("div",Le,[s("p",Fe,a(l.dns_instructions.instructions),1),s("table",Ue,[s("tr",null,[s("th",null,a(e.$t("subsite.field.recordType")),1),s("td",null,[s("code",null,a(l.dns_instructions.record_type),1)])]),s("tr",null,[s("th",null,a(e.$t("subsite.field.recordName")),1),s("td",null,[s("code",null,a(l.dns_instructions.record_name),1)])]),s("tr",null,[s("th",null,a(e.$t("subsite.field.recordValue")),1),s("td",null,[s("code",Pe,a(l.dns_instructions.record_value),1)])])])])):w("",!0)]))),128)),n(N),s("h4",Re,a(e.$t("subsite.title.bindDomain")),1),n(T,{model:e.bind,"label-width":"auto",class:"form",onSubmit:t[1]||(t[1]=j(()=>{},["prevent"]))},{default:o(()=>[n(z,{label:e.$t("subsite.field.hostname"),required:""},{default:o(()=>[n(v,{modelValue:e.bind.hostname,"onUpdate:modelValue":t[0]||(t[0]=l=>e.bind.hostname=l),placeholder:e.$t("subsite.placeholder.hostname"),maxlength:"253",autofocus:""},null,8,["modelValue","placeholder"]),s("span",Ae,a(e.$t("subsite.message.hostnameTip")),1)]),_:1},8,["label"])]),_:1},8,["model"])])),[[S,e.loading]])]),_:1},8,["model-value","title"])}const Me=M(De,[["render",Oe],["__scopeId","data-v-28d4f7c7"]]),Ze=/^(?!.*--)[a-z0-9][a-z0-9-]{1,30}[a-z0-9]$/,Ge=C({name:"SubsiteIndex",components:{ElRow:he,ElCol:fe,ElCard:pe,ElButton:J,ElTable:ce,ElTableColumn:me,ElEmpty:Q,ElDialog:O,ElForm:q,ElFormItem:G,ElInput:Z,DomainsDialog:Me},data(){return{Plus:ue(ae),loading:!1,items:[],creating:{visible:!1,submitting:!1,form:{slug:"",title:""}},domainsDialog:{visible:!1,site:null}}},computed:{parentSite(){return this.$store.state.site},user(){return this.$store.getters.user},subdomainZone(){const e=this.parentSite?.features?.subsite?.subdomain_zone;return e||(typeof window<"u"&&window.location?.host?window.location.host.split(":")[0]:this.parentSite?.origin||"")},maxSubsitesPerUser(){const 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}},mounted(){this.fetchSubsites()},methods:{async fetchSubsites(){const e=this.user?.id;if(!e){this.items=[];return}this.loading=!0;try{const{data:t}=await U.getAll({user_id:e}),i=t?.items||[],d=this.parentSite?.id;this.items=i.filter(b=>{if(b.id===d)return!1;const k=b.metadata||{};return d&&k.parent_site_id?k.parent_site_id===d:!!(b.origin&&this.subdomainZone&&b.origin.endsWith(`.${this.subdomainZone}`))})}catch(t){console.error("failed to load subsites",t),p.error(this.$t("subsite.message.loadFailed"))}finally{this.loading=!1}},onOpenCreate(){this.creating.form.slug="",this.creating.form.title="",this.creating.visible=!0},onCancelCreate(){this.creating.visible=!1},async onSubmitCreate(){const e=this.creating.form.slug.trim().toLowerCase();if(!Ze.test(e)){p.warning(this.$t("subsite.message.slugInvalid"));return}if(!this.subdomainZone){p.error(this.$t("subsite.message.zoneMissing"));return}const t=`${e}.${this.subdomainZone}`;this.creating.submitting=!0;try{const{data:i}=await U.create({origin:t,title:this.creating.form.title.trim()||void 0});p.success(this.$t("subsite.message.created")),this.creating.visible=!1,this.items=[i,...this.items],K.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(i){const d=i?.response?.data?.origin||i?.response?.data?.detail||i?.message;p.error(typeof d=="string"?d:this.$t("subsite.message.createFailed"))}finally{this.creating.submitting=!1}},onOpenSite(e){e.origin&&window.open(`https://${e.origin}/`,"_blank","noopener")},onManageSite(e){e.origin&&window.open(`https://${e.origin}/site`,"_blank","noopener")},onOpenDomains(e){this.domainsDialog.site=e,this.domainsDialog.visible=!0},rowUrl(e){return e.origin?`https://${e.origin}/`:"#"},formatDate(e){if(!e)return"-";try{return new Date(e).toLocaleString()}catch{return e}}}}),qe={class:"title"},He={class:"tip"},je=["href"],We={class:"tip"};function Je(e,t,i,d,b,k){const f=u("el-col"),y=u("el-button"),$=u("el-row"),N=u("el-empty"),v=u("el-table-column"),z=u("el-table"),T=u("el-card"),D=u("el-input"),S=u("el-form-item"),l=u("el-form"),B=u("el-dialog"),X=u("domains-dialog"),Y=W("loading");return c(),_($,{class:"panel"},{default:o(()=>[n(f,{span:24},{default:o(()=>[n($,{class:"header",justify:"space-between",align:"middle"},{default:o(()=>[n(f,{md:16,xs:24},{default:o(()=>[s("h2",qe,a(e.$t("subsite.title.index")),1),s("p",He,a(e.$t("subsite.message.indexTip")),1)]),_:1}),n(f,{md:8,xs:24,class:"header-actions"},{default:o(()=>[n(y,{type:"primary",round:"",icon:e.Plus,disabled:!e.canCreate,onClick:e.onOpenCreate},{default:o(()=>[h(a(e.$t("subsite.button.create")),1)]),_:1},8,["icon","disabled","onClick"])]),_:1})]),_:1}),H((c(),_(T,{shadow:"hover",class:"list-card"},{default:o(()=>[!e.loading&&e.items.length===0?(c(),_(N,{key:0,description:e.$t("subsite.message.empty")},null,8,["description"])):(c(),_(z,{key:1,data:e.items,stripe:""},{default:o(()=>[n(v,{label:e.$t("subsite.field.origin"),prop:"origin"},{default:o(({row:m})=>[s("a",{href:e.rowUrl(m),target:"_blank",rel:"noopener",class:"origin-link"},a(m.origin),9,je)]),_:1},8,["label"]),n(v,{label:e.$t("subsite.field.title"),prop:"title"},{default:o(({row:m})=>[s("span",null,a(m.title||"-"),1)]),_:1},8,["label"]),n(v,{label:e.$t("subsite.field.createdAt"),prop:"created_at",width:"180"},{default:o(({row:m})=>[s("span",null,a(e.formatDate(m.created_at)),1)]),_:1},8,["label"]),n(v,{label:e.$t("subsite.field.actions"),width:"260",fixed:"right"},{default:o(({row:m})=>[n(y,{size:"small",link:"",type:"primary",onClick:F=>e.onOpenSite(m)},{default:o(()=>[h(a(e.$t("subsite.button.open")),1)]),_:1},8,["onClick"]),n(y,{size:"small",link:"",type:"primary",onClick:F=>e.onManageSite(m)},{default:o(()=>[h(a(e.$t("subsite.button.manage")),1)]),_:1},8,["onClick"]),n(y,{size:"small",link:"",type:"primary",onClick:F=>e.onOpenDomains(m)},{default:o(()=>[h(a(e.$t("subsite.button.domains")),1)]),_:1},8,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1})),[[Y,e.loading]])]),_:1}),n(B,{modelValue:e.creating.visible,"onUpdate:modelValue":t[3]||(t[3]=m=>e.creating.visible=m),title:e.$t("subsite.title.create"),width:"480px",class:"create-dialog"},{footer:o(()=>[s("span",null,[n(y,{round:"",onClick:e.onCancelCreate},{default:o(()=>[h(a(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(y,{round:"",type:"primary",loading:e.creating.submitting,disabled:!e.creating.form.slug.trim(),onClick:e.onSubmitCreate},{default:o(()=>[h(a(e.$t("common.button.confirm")),1)]),_:1},8,["loading","disabled","onClick"])])]),default:o(()=>[n(l,{model:e.creating.form,"label-width":"auto",class:"form",onSubmit:t[2]||(t[2]=j(()=>{},["prevent"]))},{default:o(()=>[n(S,{label:e.$t("subsite.field.slug"),required:""},{default:o(()=>[n(D,{modelValue:e.creating.form.slug,"onUpdate:modelValue":t[0]||(t[0]=m=>e.creating.form.slug=m),placeholder:e.$t("subsite.placeholder.slug"),maxlength:"32","show-word-limit":"",autofocus:""},{append:o(()=>[h("."+a(e.subdomainZone),1)]),_:1},8,["modelValue","placeholder"]),s("span",We,a(e.$t("subsite.message.slugTip")),1)]),_:1},8,["label"]),n(S,{label:e.$t("subsite.field.title")},{default:o(()=>[n(D,{modelValue:e.creating.form.title,"onUpdate:modelValue":t[1]||(t[1]=m=>e.creating.form.title=m),placeholder:e.$t("subsite.placeholder.title"),maxlength:"80"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),n(X,{modelValue:e.domainsDialog.visible,"onUpdate:modelValue":t[4]||(t[4]=m=>e.domainsDialog.visible=m),site:e.domainsDialog.site},null,8,["modelValue","site"])]),_:1})}const Dt=M(Ge,[["render",Je],["__scopeId","data-v-b054ab8b"]]);export{Dt as default};
1
+ import{y as R,z as A,u as x,H as ee,ae as te,S as se,A as ie,k as V,E as oe,aZ as O,D as M,an as U,bL as ae}from"./index-B3uh9SBG.js";import{E as ne}from"./index-DCP17RXF.js";import{E as Z}from"./index-DIqo0phj.js";import{E as G,a as q}from"./index-B6gXYEVX.js";import{d as C,q as c,H as g,E as s,u as r,z as L,C as n,R as le,Q as I,F as a,J as w,c as P,x as _,y as o,G as H,O as re,N as de,M as j,I as h,K as W,D as u,a7 as ue}from"./vendor-vue-DU0w5ewx.js";import{E as J}from"./index-Q0X1G1Xf.js";import{E as K}from"./index-DJfPwHi6.js";import{E as p}from"./index-Dw0hXs4P.js";import{E as me,a as ce}from"./index-4ecZekY7.js";import{E as pe}from"./index-hsxK2zT7.js";import{E as fe,a as he}from"./index-D9YI6H_D.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./typescript-_wE_XALW.js";import"./index-Db_N1JRN.js";import"./index-D6K5qdP4.js";import"./use-form-item-CJ_W80ww.js";import"./castArray-_sjP7zQ7.js";import"./_baseClone-BkyYLNlg.js";import"./_Uint8Array-BwqjhXg8.js";import"./_initCloneObject-DtbawC04.js";import"./index-BuyEbX8F.js";import"./validator-CsFWv4K_.js";import"./index-DdSpg2zG.js";import"./index-DzSV2ElH.js";import"./isPlainObject-CRR9RtPP.js";import"./_baseIteratee-DyqTAslN.js";import"./isEqual-CsYSsI7u.js";import"./debounce-B_KruiGC.js";import"./index-DEIC76Wu.js";import"./index-DXFxpk5z.js";const ge=C({name:"ImgEmpty"}),be=C({...ge,setup(e){const t=A("empty"),i=x();return(d,b)=>(c(),g("svg",{viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},[s("defs",null,[s("linearGradient",{id:`linearGradient-1-${r(i)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,["stop-color"]),s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,["stop-color"])],8,["id"]),s("linearGradient",{id:`linearGradient-2-${r(i)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,["stop-color"]),s("stop",{"stop-color":`var(${r(t).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,["stop-color"])],8,["id"]),s("rect",{id:`path-3-${r(i)}`,x:"0",y:"0",width:"17",height:"36"},null,8,["id"])]),s("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[s("g",{transform:"translate(-1268.000000, -535.000000)"},[s("g",{transform:"translate(1268.000000, 535.000000)"},[s("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${r(t).cssVarBlockName("fill-color-3")})`},null,8,["fill"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,["fill"]),s("g",{transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},[s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,["fill"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,["fill"]),s("rect",{fill:`url(#linearGradient-1-${r(i)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,["fill"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,["fill"])]),s("rect",{fill:`url(#linearGradient-2-${r(i)})`,x:"13",y:"45",width:"40",height:"36"},null,8,["fill"]),s("g",{transform:"translate(53.000000, 45.000000)"},[s("use",{fill:`var(${r(t).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${r(i)}`},null,8,["fill","xlink:href"]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${r(i)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,["fill","mask"])]),s("polygon",{fill:`var(${r(t).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,["fill"])])])])]))}});var ye=R(be,[["__file","img-empty.vue"]]);const $e=ee({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),_e=C({name:"ElEmpty"}),ke=C({..._e,props:$e,setup(e){const t=e,{t:i}=te(),d=A("empty"),b=P(()=>t.description||i("el.table.emptyText")),k=P(()=>({width:se(t.imageSize)}));return(f,y)=>(c(),g("div",{class:I(r(d).b())},[s("div",{class:I(r(d).e("image")),style:le(r(k))},[f.image?(c(),g("img",{key:0,src:f.image,ondragstart:"return false"},null,8,["src"])):L(f.$slots,"image",{key:1},()=>[n(ye)])],6),s("div",{class:I(r(d).e("description"))},[f.$slots.description?L(f.$slots,"description",{key:0}):(c(),g("p",{key:1},a(r(b)),1))],2),f.$slots.default?(c(),g("div",{key:0,class:I(r(d).e("bottom"))},[L(f.$slots,"default")],2)):w("v-if",!0)],2))}});var ve=R(ke,[["__file","empty.vue"]]);const Q=ie(ve);class we{key="site-domains";async getAll(t={}){return await V.get(`/${this.key}/`,{params:t})}async get(t){return await V.get(`/${this.key}/${t}`)}async create(t){return await V.post(`/${this.key}/`,t)}async verify(t){return await V.post(`/${this.key}/${t}/verify/`)}async delete(t){return await V.delete(`/${this.key}/${t}`)}}const E=new we,Ce=/^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$/,Ve=["acedata.cloud","surl.id","localhost"];function Ee(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(const d of Ve)if(t===d||t.endsWith("."+d))return{ok:!1,reason:"reserved"};const i=t.split(".");if(i.length<2)return{ok:!1,reason:"too_few_labels"};for(const d of i)if(!d||!Ce.test(d))return{ok:!1,reason:"bad_label"};return{ok:!0,value:t}}const De=C({name:"DomainsDialog",components:{ElDialog:O,ElButton:J,ElEmpty:Q,ElForm:q,ElFormItem:G,ElInput:Z,ElTag:oe,ElDivider:ne},props:{modelValue:{type:Boolean,required:!0},site:{type:Object,default:null}},emits:["update:modelValue"],data(){return{loading:!1,domains:[],bind:{hostname:""},binding:!1,busyId:null}},watch:{modelValue(e){e&&this.site?.id?this.fetchDomains():e||(this.domains=[],this.bind.hostname="",this.busyId=null)}},methods:{async fetchDomains(){if(this.site?.id){this.loading=!0;try{const{data:e}=await E.getAll({site:this.site.id});this.domains=e?.items||[]}catch(e){console.error("failed to load domains",e),p.error(this.$t("subsite.message.domainsLoadFailed"))}finally{this.loading=!1}}},async onBind(){if(!this.site?.id)return;const e=Ee(this.bind.hostname);if(!e.ok){p.warning(this.$t("subsite.message.hostnameInvalid"));return}this.binding=!0;try{const{data:t}=await E.create({site:this.site.id,hostname:e.value});p.success(this.$t("subsite.message.domainCreated")),this.domains=[t,...this.domains],this.bind.hostname=""}catch(t){const i=t?.response?.data?.hostname||t?.response?.data?.detail||t?.response?.data?.site||t?.message;p.error(typeof i=="string"?i:this.$t("subsite.message.domainCreateFailed"))}finally{this.binding=!1}},async onVerify(e){if(e.id){this.busyId=e.id;try{const{data:t}=await E.verify(e.id);this.replaceRow(t),t.status==="Active"?p.success(this.$t("subsite.message.domainActive")):t.status==="Failed"?p.error(t.status_reason||this.$t("subsite.message.domainFailed")):p.info(this.$t("subsite.message.domainProgressed"))}catch(t){const i=t?.response?.data?.verification||t?.response?.data?.edgeone||t?.response?.data?.detail||t?.message;p.error(typeof i=="string"?i:this.$t("subsite.message.domainVerifyFailed"))}finally{this.busyId=null}}},async onRefresh(e){if(e.id){this.busyId=e.id;try{const{data:t}=await E.get(e.id);this.replaceRow(t)}catch(t){console.error("refresh failed",t)}finally{this.busyId=null}}},async onDelete(e){if(!(!e.id||!e.hostname)){try{await K.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.busyId=e.id;try{await E.delete(e.id),this.domains=this.domains.filter(t=>t.id!==e.id)}catch(t){const i=t?.response?.data?.detail||t?.message;p.error(typeof i=="string"?i:this.$t("subsite.message.domainDeleteFailed"))}finally{this.busyId=null}}},replaceRow(e){const t=this.domains.findIndex(i=>i.id===e.id);t>=0?this.domains.splice(t,1,e):this.domains=[e,...this.domains]},canVerify(e){return e.status==="PendingDnsVerification"||e.status==="ProvisioningEo"||e.status==="ProvisioningCert"},verifyButtonLabel(e){return e==="PendingDnsVerification"?this.$t("subsite.button.verify"):this.$t("subsite.button.checkProgress")},statusLabel(e){if(!e)return"-";const t=`subsite.status.${e.charAt(0).toLowerCase()+e.slice(1)}`;return this.$t(t)},statusTagType(e){return e==="Active"?"success":e==="Failed"?"danger":e==="PendingDnsVerification"?"info":"warning"}}}),Se={class:"domains-body"},Be={class:"tip"},Ie={class:"domain-row-head"},Ne={class:"hostname"},ze={class:"row-actions"},Te={key:0,class:"status-reason error"},Le={key:1,class:"dns-instructions"},Fe={class:"instructions"},Ue={class:"dns-record"},Pe={class:"break"},Re={class:"bind-title"},Ae={class:"tip"};function Oe(e,t,i,d,b,k){const f=u("el-empty"),y=u("el-tag"),$=u("el-button"),N=u("el-divider"),v=u("el-input"),z=u("el-form-item"),T=u("el-form"),D=u("el-dialog"),S=W("loading");return c(),_(D,{"model-value":e.modelValue,title:e.$t("subsite.title.domains",{origin:e.site?.origin||""}),width:"640px",class:"domains-dialog","onUpdate:modelValue":t[3]||(t[3]=l=>e.$emit("update:modelValue",l))},{footer:o(()=>[s("span",null,[n($,{round:"",onClick:t[2]||(t[2]=l=>e.$emit("update:modelValue",!1))},{default:o(()=>[h(a(e.$t("common.button.close")),1)]),_:1}),n($,{round:"",type:"primary",loading:e.binding,disabled:!e.bind.hostname.trim(),onClick:e.onBind},{default:o(()=>[h(a(e.$t("subsite.button.bindDomain")),1)]),_:1},8,["loading","disabled","onClick"])])]),default:o(()=>[H((c(),g("div",Se,[s("p",Be,a(e.$t("subsite.message.domainsIntro")),1),!e.loading&&e.domains.length===0?(c(),_(f,{key:0,description:e.$t("subsite.message.domainsEmpty")},null,8,["description"])):w("",!0),(c(!0),g(re,null,de(e.domains,l=>(c(),g("div",{key:l.id,class:"domain-row"},[s("div",Ie,[s("strong",Ne,a(l.hostname),1),n(y,{type:e.statusTagType(l.status),size:"small",class:"status-tag"},{default:o(()=>[h(a(e.statusLabel(l.status)),1)]),_:2},1032,["type"]),s("span",ze,[e.canVerify(l)?(c(),_($,{key:0,size:"small",type:"primary",loading:e.busyId===l.id,link:"",onClick:B=>e.onVerify(l)},{default:o(()=>[h(a(e.verifyButtonLabel(l.status)),1)]),_:2},1032,["loading","onClick"])):w("",!0),l.status!=="Active"?(c(),_($,{key:1,size:"small",link:"",loading:e.busyId===l.id,onClick:B=>e.onRefresh(l)},{default:o(()=>[h(a(e.$t("subsite.button.refresh")),1)]),_:1},8,["loading","onClick"])):w("",!0),n($,{size:"small",link:"",type:"danger",loading:e.busyId===l.id,onClick:B=>e.onDelete(l)},{default:o(()=>[h(a(e.$t("common.button.delete")),1)]),_:1},8,["loading","onClick"])])]),l.status_reason?(c(),g("div",Te,a(l.status_reason),1)):w("",!0),l.dns_instructions?(c(),g("div",Le,[s("p",Fe,a(l.dns_instructions.instructions),1),s("table",Ue,[s("tr",null,[s("th",null,a(e.$t("subsite.field.recordType")),1),s("td",null,[s("code",null,a(l.dns_instructions.record_type),1)])]),s("tr",null,[s("th",null,a(e.$t("subsite.field.recordName")),1),s("td",null,[s("code",null,a(l.dns_instructions.record_name),1)])]),s("tr",null,[s("th",null,a(e.$t("subsite.field.recordValue")),1),s("td",null,[s("code",Pe,a(l.dns_instructions.record_value),1)])])])])):w("",!0)]))),128)),n(N),s("h4",Re,a(e.$t("subsite.title.bindDomain")),1),n(T,{model:e.bind,"label-width":"auto",class:"form",onSubmit:t[1]||(t[1]=j(()=>{},["prevent"]))},{default:o(()=>[n(z,{label:e.$t("subsite.field.hostname"),required:""},{default:o(()=>[n(v,{modelValue:e.bind.hostname,"onUpdate:modelValue":t[0]||(t[0]=l=>e.bind.hostname=l),placeholder:e.$t("subsite.placeholder.hostname"),maxlength:"253",autofocus:""},null,8,["modelValue","placeholder"]),s("span",Ae,a(e.$t("subsite.message.hostnameTip")),1)]),_:1},8,["label"])]),_:1},8,["model"])])),[[S,e.loading]])]),_:1},8,["model-value","title"])}const Me=M(De,[["render",Oe],["__scopeId","data-v-28d4f7c7"]]),Ze=/^(?!.*--)[a-z0-9][a-z0-9-]{1,30}[a-z0-9]$/,Ge=C({name:"SubsiteIndex",components:{ElRow:he,ElCol:fe,ElCard:pe,ElButton:J,ElTable:ce,ElTableColumn:me,ElEmpty:Q,ElDialog:O,ElForm:q,ElFormItem:G,ElInput:Z,DomainsDialog:Me},data(){return{Plus:ue(ae),loading:!1,items:[],creating:{visible:!1,submitting:!1,form:{slug:"",title:""}},domainsDialog:{visible:!1,site:null}}},computed:{parentSite(){return this.$store.state.site},user(){return this.$store.getters.user},subdomainZone(){const e=this.parentSite?.features?.subsite?.subdomain_zone;return e||(typeof window<"u"&&window.location?.host?window.location.host.split(":")[0]:this.parentSite?.origin||"")},maxSubsitesPerUser(){const 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}},mounted(){this.fetchSubsites()},methods:{async fetchSubsites(){const e=this.user?.id;if(!e){this.items=[];return}this.loading=!0;try{const{data:t}=await U.getAll({user_id:e}),i=t?.items||[],d=this.parentSite?.id;this.items=i.filter(b=>{if(b.id===d)return!1;const k=b.metadata||{};return d&&k.parent_site_id?k.parent_site_id===d:!!(b.origin&&this.subdomainZone&&b.origin.endsWith(`.${this.subdomainZone}`))})}catch(t){console.error("failed to load subsites",t),p.error(this.$t("subsite.message.loadFailed"))}finally{this.loading=!1}},onOpenCreate(){this.creating.form.slug="",this.creating.form.title="",this.creating.visible=!0},onCancelCreate(){this.creating.visible=!1},async onSubmitCreate(){const e=this.creating.form.slug.trim().toLowerCase();if(!Ze.test(e)){p.warning(this.$t("subsite.message.slugInvalid"));return}if(!this.subdomainZone){p.error(this.$t("subsite.message.zoneMissing"));return}const t=`${e}.${this.subdomainZone}`;this.creating.submitting=!0;try{const{data:i}=await U.create({origin:t,title:this.creating.form.title.trim()||void 0});p.success(this.$t("subsite.message.created")),this.creating.visible=!1,this.items=[i,...this.items],K.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(i){const d=i?.response?.data?.origin||i?.response?.data?.detail||i?.message;p.error(typeof d=="string"?d:this.$t("subsite.message.createFailed"))}finally{this.creating.submitting=!1}},onOpenSite(e){e.origin&&window.open(`https://${e.origin}/`,"_blank","noopener")},onManageSite(e){e.origin&&window.open(`https://${e.origin}/site`,"_blank","noopener")},onOpenDomains(e){this.domainsDialog.site=e,this.domainsDialog.visible=!0},rowUrl(e){return e.origin?`https://${e.origin}/`:"#"},formatDate(e){if(!e)return"-";try{return new Date(e).toLocaleString()}catch{return e}}}}),qe={class:"title"},He={class:"tip"},je=["href"],We={class:"tip"};function Je(e,t,i,d,b,k){const f=u("el-col"),y=u("el-button"),$=u("el-row"),N=u("el-empty"),v=u("el-table-column"),z=u("el-table"),T=u("el-card"),D=u("el-input"),S=u("el-form-item"),l=u("el-form"),B=u("el-dialog"),X=u("domains-dialog"),Y=W("loading");return c(),_($,{class:"panel"},{default:o(()=>[n(f,{span:24},{default:o(()=>[n($,{class:"header",justify:"space-between",align:"middle"},{default:o(()=>[n(f,{md:16,xs:24},{default:o(()=>[s("h2",qe,a(e.$t("subsite.title.index")),1),s("p",He,a(e.$t("subsite.message.indexTip")),1)]),_:1}),n(f,{md:8,xs:24,class:"header-actions"},{default:o(()=>[n(y,{type:"primary",round:"",icon:e.Plus,disabled:!e.canCreate,onClick:e.onOpenCreate},{default:o(()=>[h(a(e.$t("subsite.button.create")),1)]),_:1},8,["icon","disabled","onClick"])]),_:1})]),_:1}),H((c(),_(T,{shadow:"hover",class:"list-card"},{default:o(()=>[!e.loading&&e.items.length===0?(c(),_(N,{key:0,description:e.$t("subsite.message.empty")},null,8,["description"])):(c(),_(z,{key:1,data:e.items,stripe:""},{default:o(()=>[n(v,{label:e.$t("subsite.field.origin"),prop:"origin"},{default:o(({row:m})=>[s("a",{href:e.rowUrl(m),target:"_blank",rel:"noopener",class:"origin-link"},a(m.origin),9,je)]),_:1},8,["label"]),n(v,{label:e.$t("subsite.field.title"),prop:"title"},{default:o(({row:m})=>[s("span",null,a(m.title||"-"),1)]),_:1},8,["label"]),n(v,{label:e.$t("subsite.field.createdAt"),prop:"created_at",width:"180"},{default:o(({row:m})=>[s("span",null,a(e.formatDate(m.created_at)),1)]),_:1},8,["label"]),n(v,{label:e.$t("subsite.field.actions"),width:"260",fixed:"right"},{default:o(({row:m})=>[n(y,{size:"small",link:"",type:"primary",onClick:F=>e.onOpenSite(m)},{default:o(()=>[h(a(e.$t("subsite.button.open")),1)]),_:1},8,["onClick"]),n(y,{size:"small",link:"",type:"primary",onClick:F=>e.onManageSite(m)},{default:o(()=>[h(a(e.$t("subsite.button.manage")),1)]),_:1},8,["onClick"]),n(y,{size:"small",link:"",type:"primary",onClick:F=>e.onOpenDomains(m)},{default:o(()=>[h(a(e.$t("subsite.button.domains")),1)]),_:1},8,["onClick"])]),_:1},8,["label"])]),_:1},8,["data"]))]),_:1})),[[Y,e.loading]])]),_:1}),n(B,{modelValue:e.creating.visible,"onUpdate:modelValue":t[3]||(t[3]=m=>e.creating.visible=m),title:e.$t("subsite.title.create"),width:"480px",class:"create-dialog"},{footer:o(()=>[s("span",null,[n(y,{round:"",onClick:e.onCancelCreate},{default:o(()=>[h(a(e.$t("common.button.cancel")),1)]),_:1},8,["onClick"]),n(y,{round:"",type:"primary",loading:e.creating.submitting,disabled:!e.creating.form.slug.trim(),onClick:e.onSubmitCreate},{default:o(()=>[h(a(e.$t("common.button.confirm")),1)]),_:1},8,["loading","disabled","onClick"])])]),default:o(()=>[n(l,{model:e.creating.form,"label-width":"auto",class:"form",onSubmit:t[2]||(t[2]=j(()=>{},["prevent"]))},{default:o(()=>[n(S,{label:e.$t("subsite.field.slug"),required:""},{default:o(()=>[n(D,{modelValue:e.creating.form.slug,"onUpdate:modelValue":t[0]||(t[0]=m=>e.creating.form.slug=m),placeholder:e.$t("subsite.placeholder.slug"),maxlength:"32","show-word-limit":"",autofocus:""},{append:o(()=>[h("."+a(e.subdomainZone),1)]),_:1},8,["modelValue","placeholder"]),s("span",We,a(e.$t("subsite.message.slugTip")),1)]),_:1},8,["label"]),n(S,{label:e.$t("subsite.field.title")},{default:o(()=>[n(D,{modelValue:e.creating.form.title,"onUpdate:modelValue":t[1]||(t[1]=m=>e.creating.form.title=m),placeholder:e.$t("subsite.placeholder.title"),maxlength:"80"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["modelValue","title"]),n(X,{modelValue:e.domainsDialog.visible,"onUpdate:modelValue":t[4]||(t[4]=m=>e.domainsDialog.visible=m),site:e.domainsDialog.site},null,8,["modelValue","site"])]),_:1})}const Dt=M(Ge,[["render",Je],["__scopeId","data-v-b054ab8b"]]);export{Dt as default};
@@ -1 +1 @@
1
- import{F as C}from"./index.es-2QbhDzjR.js";import{E as P}from"./index-HuVavZAf.js";import{E as G}from"./index-BaFiL7S8.js";import{d as v,H as l,E as r,z as A,C as t,y as d,D as a,q as o,F as i,I as _,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-DU0w5ewx.js";import{D as b,b0 as D,a6 as z,ao as V}from"./index-CcLeLCz_.js";import{p as M}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O,S as j}from"./ScrollList-BMhc2qpm.js";import{I as B}from"./ImagePreview-BfCs8rwC.js";import{E as q}from"./index-CXYhDrWA.js";import{E as w}from"./index-DHmHglE2.js";import{a as N,E as F}from"./index-DbidluNF.js";import{E as L}from"./index-BH6seCdR.js";import{E as H,a as J}from"./index-jmxlidwd.js";import{b as Q,a as K}from"./errorCode-Cqj9Td_Z.js";import{h as W}from"./headshots-PI4z_lIG.js";import{A as X}from"./Status-Iwrzbqdo.js";import{C as Y}from"./CopyToClipboard-Dx-62vBK.js";import{E as Z}from"./index-DF57kLgF.js";import{E as x,a as ee}from"./index-cMX6QLxI.js";import{l as te}from"./pagination-CcnL0MdN.js";import"./use-form-item-B2PVrARv.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-BrM6TDeR.js";import"./index-2j0K9jvG.js";import"./typescript-l_7qPiw8.js";import"./index-BpL32wdf.js";import"./_baseClone-C5kjpouO.js";import"./_Uint8Array-D2hcaA7t.js";import"./_initCloneObject-CkiCLeyz.js";import"./isEqual-BIWsPnQ_.js";import"./debounce-CKyw8aIt.js";import"./index-DLzT3hvJ.js";import"./strings-DigWlKo9.js";import"./isPlainObject-Cf0k3CGb.js";const se=v({name:"LayoutHeadshots",components:{ElDrawer:G,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),oe={class:"main flex flex-row flex-1"},ae={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ne={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ie(e,s,m,h,k,y){const p=a("font-awesome-icon"),u=a("el-button"),n=a("el-drawer");return o(),l("div",oe,[r("div",ae,[A(e.$slots,"config",{},void 0,!0)]),r("div",ne,[A(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:s[0]||(s[0]=c=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-gear"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const le=b(se,[["render",ie],["__scopeId","data-v-202b355b"]]),re=v({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:P,InfoIcon:O,ImagePreview:B,FontAwesomeIcon:C},mixins:[M],data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ce={class:"field"},de={class:"title font-bold"},pe={class:"upload-wrapper"};function me(e,s,m,h,k,y){const p=a("image-preview"),u=a("font-awesome-icon"),n=a("el-button"),c=a("el-upload"),f=a("info-icon");return o(),l("div",ce,[r("h2",de,i(e.$t("headshots.name.endImageUrls")),1),r("div",pe,[t(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=g=>e.fileList=g),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:g})=>[t(p,{url:g.url||g.response?.file_url,name:g.name,percentage:g.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(g),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[t(n,{size:"small",type:"primary",round:""},{default:d(()=>[t(u,{icon:"fa-solid fa-upload",class:"mr-1"}),_(" "+i(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),t(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const he=b(re,[["render",me],["__scopeId","data-v-ca56051e"]]),ue="fast",fe=v({name:"ModeSelector",components:{ElRadioButton:F,ElRadioGroup:N},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ue)}}),ge={class:"field"},_e={class:"title font-bold"};function $e(e,s,m,h,k,y){const p=a("el-radio-button"),u=a("el-radio-group");return o(),l("div",ge,[r("h2",_e,i(e.$t("headshots.name.mode")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,n=>(o(),E(p,{key:n.value,label:n.value},{default:d(()=>[_(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ve=b(fe,[["render",$e],["__scopeId","data-v-e7702494"]]),be=v({name:"StylizeSelector",components:{ElTabs:J,ElTabPane:H,ElImage:L},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ke={class:"field"},ye=["onClick"],we={class:"name"};function Ie(e,s,m,h,k,y){const p=a("el-image"),u=a("el-tab-pane"),n=a("el-tabs");return o(),l("div",ke,[t(n,{modelValue:e.tab,"onUpdate:modelValue":s[0]||(s[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(g,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===g.value}),onClick:$t=>e.onToggle(g.value)},[t(p,{src:g.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",we,i(g.label),1)],10,ye))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Te=b(be,[["render",Ie],["__scopeId","data-v-be4bd25d"]]),Ee=v({name:"PresetPanel",components:{ModeSelector:ve,ImageUrlsInput:he,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Te},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Se={class:"panel"},Ve={class:"config"},Ce={class:"actions"};function Ae(e,s,m,h,k,y){const p=a("elements-selector"),u=a("mode-selector"),n=a("image-urls-input"),c=a("font-awesome-icon"),f=a("el-button");return o(),l("div",Se,[r("div",Ve,[t(p,{class:"mb-4"}),t(u,{class:"mb-4"}),t(n,{class:"mb-4"}),r("div",Ce,[t(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(c,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+i(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Pe=b(Ee,[["render",Ae],["__scopeId","data-v-848739f6"]]),Re=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Le={class:"image-gallery"},Ge=["src"],Ue=["onClick"];function De(e,s,m,h,k,y){return o(),l("div",Le,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,Ge),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:n=>e.viewImage(p.image_url)},i(e.$t("headshots.button.viewImage")),9,Ue)):$("",!0)]))),128))])}const ze=b(Re,[["render",De],["__scopeId","data-v-42f0a7be"]]),Me=v({name:"TaskPreview",components:{ElImage:L,CopyToClipboard:Y,FontAwesomeIcon:C,ElAlert:Z,ImageGallery:ze},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,s){e.stopPropagation(),console.log("on download"),window.open(s,"_blank")},onReload(e){const s=e.target,m=new URL(s.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;s.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Oe={class:"preview"},je={class:"left"},Be={class:"main"},qe={class:"bot"},Ne={class:"datetime"},Fe={class:"info"},He={key:0,class:"prompt mt-2"},Je={key:0},Qe={key:1},Ke={key:0,class:S({content:!0,failed:!0})},We={class:"image-wrapper"},Xe={class:"description"},Ye={key:1,class:S({content:!0})},Ze={class:"description"},xe={class:"description"},et={class:"description"},tt={key:2,class:S({content:!0})},st={class:"description"},ot={key:3,class:S({content:!0})},at={class:"description"};function nt(e,s,m,h,k,y){const p=a("el-image"),u=a("image-gallery"),n=a("font-awesome-icon"),c=a("copy-to-clipboard"),f=a("el-alert");return o(),l("div",Oe,[r("div",je,[t(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Be,[r("div",qe,[_(i(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",Ne,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Fe,[e.modelValue?.request?.template?(o(),l("p",He,[_(i(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",Je," - ("+i(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Qe," - ("+i(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ke,[r("div",We,[t(u,{"model-value":e.modelValue},null,8,["model-value"])]),t(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Xe,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Ye,[t(f,{closable:!1,class:"failure"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",Ze,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",xe,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),r("p",et,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+i(e.$t("headshots.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",tt,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",st,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ot,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",at,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const it=b(Me,[["render",nt],["__scopeId","data-v-91e2f073"]]),lt=v({name:"RecentPanel",components:{TaskPreview:it,ElSkeleton:ee,ElSkeletonItem:x,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),rt={key:0,class:"tasks"},ct={class:"left"},dt={class:"main"},pt={key:1,class:"tasks"},mt={key:2,class:"description"};function ht(e,s,m,h,k,y){const p=a("el-skeleton-item"),u=a("el-skeleton"),n=a("task-preview"),c=a("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:s[0]||(s[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",rt,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",ct,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",dt,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"p",class:"title"}),t(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",pt,[(o(!0),l(I,null,T(e.tasks?.items,(f,g)=>(o(),E(n,{key:g,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",mt,i(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const ut=b(lt,[["render",ht],["__scopeId","data-v-ffd55c16"]]),ft="https://webhook.acedata.cloud/headshots",gt=v({name:"HeadshotsIndex",components:{ConfigPanel:Pe,Layout:le,ApplicationStatus:X,RecentPanel:ut},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){z.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",s,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:s,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:ft},s=this.credential?.token;if(!s){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),W.generate(e,{token:s}).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Q?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function _t(e,s,m,h,k,y){const p=a("config-panel"),u=a("application-status"),n=a("recent-panel"),c=a("layout");return o(),E(c,null,{config:d(()=>[t(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[t(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:s[0]||(s[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),t(n,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ss=b(gt,[["render",_t],["__scopeId","data-v-6cafffbd"]]);export{ss as default};
1
+ import{F as C}from"./index.es-C0e-bBsp.js";import{E as P}from"./index-Q0X1G1Xf.js";import{E as G}from"./index-BFz6aMgg.js";import{d as v,H as l,E as r,z as A,C as t,y as d,D as a,q as o,F as i,I as _,O as I,N as T,x as E,Q as S,c as U,J as $}from"./vendor-vue-DU0w5ewx.js";import{D as b,b0 as D,a6 as z,ao as V}from"./index-B3uh9SBG.js";import{p as M}from"./pasteUploadMixin-BurWbGNQ.js";import{I as O,S as j}from"./ScrollList-CRs_70Ba.js";import{I as B}from"./ImagePreview-B-iwDk2B.js";import{E as q}from"./index-Cf36AFND.js";import{E as w}from"./index-Dw0hXs4P.js";import{a as N,E as F}from"./index-CtgkksDZ.js";import{E as L}from"./index-Bquz-ZT7.js";import{E as H,a as J}from"./index-C2juzOgf.js";import{b as Q,a as K}from"./errorCode-Cqj9Td_Z.js";import{h as W}from"./headshots-Dgpv8suE.js";import{A as X}from"./Status-B37gynDI.js";import{C as Y}from"./CopyToClipboard-DVPG-ya4.js";import{E as Z}from"./index-BDi73AHo.js";import{E as x,a as ee}from"./index-sxh95WLC.js";import{l as te}from"./pagination-CcnL0MdN.js";import"./use-form-item-CJ_W80ww.js";import"./index-BuyEbX8F.js";import"./vendor-axios-B8_nURbH.js";import"./vendor-dayjs-Cvgzdobq.js";import"./vendor-vue-router-9TBHB1ku.js";import"./index-DzSV2ElH.js";import"./index-Db_N1JRN.js";import"./typescript-_wE_XALW.js";import"./index-D9tbxCdF.js";import"./_baseClone-BkyYLNlg.js";import"./_Uint8Array-BwqjhXg8.js";import"./_initCloneObject-DtbawC04.js";import"./isEqual-CsYSsI7u.js";import"./debounce-B_KruiGC.js";import"./index-D6K5qdP4.js";import"./strings-DigWlKo9.js";import"./isPlainObject-CRR9RtPP.js";const se=v({name:"LayoutHeadshots",components:{ElDrawer:G,ElButton:P,FontAwesomeIcon:C},data(){return{drawer:!1}}}),oe={class:"main flex flex-row flex-1"},ae={class:"config w-[320px] flex-none h-full overflow-y-auto bg-[var(--app-sidebar-bg)] border-r border-[var(--app-border-subtle)]"},ne={class:"result h-full p-6 flex-1 flex flex-col min-w-0 overflow-x-hidden bg-[var(--app-content-bg)]"};function ie(e,s,m,h,k,y){const p=a("font-awesome-icon"),u=a("el-button"),n=a("el-drawer");return o(),l("div",oe,[r("div",ae,[A(e.$slots,"config",{},void 0,!0)]),r("div",ne,[A(e.$slots,"result",{},void 0,!0)]),t(u,{circle:"",class:"menu",onClick:s[0]||(s[0]=c=>e.drawer=!0)},{default:d(()=>[t(p,{icon:"fa-solid fa-gear"})]),_:1}),t(n,{modelValue:e.drawer,"onUpdate:modelValue":s[1]||(s[1]=c=>e.drawer=c),"with-header":!1,size:"340px",class:"drawer"},{default:d(()=>[A(e.$slots,"config",{},void 0,!0)]),_:3},8,["modelValue"])])}const le=b(se,[["render",ie],["__scopeId","data-v-202b355b"]]),re=v({name:"ImageUrlsInput",components:{ElUpload:q,ElButton:P,InfoIcon:O,ImagePreview:B,FontAwesomeIcon:C},mixins:[M],data(){return{fileList:[],uploadUrl:D()+"/api/v1/files/"}},computed:{headers(){return{Authorization:`Bearer ${this.$store.state.token.access}`}},urls(){return this.fileList.map(e=>e?.response?.file_url)},value:{get(){return this.$store.state.headshots?.config?.image_urls},set(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})}}},mounted(){this.value||(this.value=void 0),this.onSetImageUrls()},methods:{onExceed(){w.warning(this.$t("headshots.message.uploadImageExceed"))},onError(){w.error(this.$t("headshots.message.uploadImageError"))},onSetImageUrls(){const e=this.urls;this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,image_urls:e})},async onSuccess(){this.onSetImageUrls()}}}),ce={class:"field"},de={class:"title font-bold"},pe={class:"upload-wrapper"};function me(e,s,m,h,k,y){const p=a("image-preview"),u=a("font-awesome-icon"),n=a("el-button"),c=a("el-upload"),f=a("info-icon");return o(),l("div",ce,[r("h2",de,i(e.$t("headshots.name.endImageUrls")),1),r("div",pe,[t(c,{ref:"uploader","file-list":e.fileList,"onUpdate:fileList":s[0]||(s[0]=g=>e.fileList=g),accept:".png,.jpg,.jpeg,.gif,.bmp,.webp",name:"file",class:"value upload-wrapper",limit:2,multiple:!0,"list-type":"picture",action:e.uploadUrl,"on-exceed":e.onExceed,"on-error":e.onError,"on-success":e.onSuccess,headers:e.headers},{file:d(({file:g})=>[t(p,{url:g.url||g.response?.file_url,name:g.name,percentage:g.percentage,onRemove:R=>e.fileList.splice(e.fileList.indexOf(g),1)},null,8,["url","name","percentage","onRemove"])]),default:d(()=>[t(n,{size:"small",type:"primary",round:""},{default:d(()=>[t(u,{icon:"fa-solid fa-upload",class:"mr-1"}),_(" "+i(e.$t("headshots.button.uploadImageUrls")),1)]),_:1})]),_:1},8,["file-list","action","on-exceed","on-error","on-success","headers"])]),t(f,{content:e.$t("headshots.description.endImageUrls"),class:"info"},null,8,["content"])])}const he=b(re,[["render",me],["__scopeId","data-v-ca56051e"]]),ue="fast",fe=v({name:"ModeSelector",components:{ElRadioButton:F,ElRadioGroup:N},data(){return{options:[{label:this.$t("headshots.button.fast"),value:"fast"},{label:this.$t("headshots.button.relax"),value:"relax"}]}},computed:{value:{get(){return this.$store.state.headshots.config?.mode},set(e){console.debug("set mode",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots.config,mode:e})}}},mounted(){this.value||(this.value=ue)}}),ge={class:"field"},_e={class:"title font-bold"};function $e(e,s,m,h,k,y){const p=a("el-radio-button"),u=a("el-radio-group");return o(),l("div",ge,[r("h2",_e,i(e.$t("headshots.name.mode")),1),t(u,{modelValue:e.value,"onUpdate:modelValue":s[0]||(s[0]=n=>e.value=n),class:"mode"},{default:d(()=>[(o(!0),l(I,null,T(e.options,n=>(o(),E(p,{key:n.value,label:n.value},{default:d(()=>[_(i(n.label),1)]),_:2},1032,["label"]))),128))]),_:1},8,["modelValue"])])}const ve=b(fe,[["render",$e],["__scopeId","data-v-e7702494"]]),be=v({name:"StylizeSelector",components:{ElTabs:J,ElTabPane:H,ElImage:L},data(){return{tab:"styles",value:"",elements:{styles:{displayName:this.$t("headshots.styleCategory.styles"),items:[{image:"https://static.aipedias.com/aicamera/common/20241008/20241008202314260779439.png",label:this.$t("headshots.styleTag.malePportrait"),value:"male_portrait"},{image:"https://static.aipedias.com/aicamera/common/20241008/202410082022241e9755548.png",label:this.$t("headshots.styleTag.malePportrait2"),value:"male_portrait2"},{image:"https://static.aipedias.com/aicamera/common/20241101/20241101170130d78f66521.png",label:this.$t("headshots.styleTag.kindergarten"),value:"kindergarten"},{image:"https://static.aipedias.com/aicamera/common/20240923/20240923123233accf60398.webp",label:this.$t("headshots.styleTag.logoTshirt"),value:"logo_tshirt"},{image:"https://static.aipedias.com/aicamera/common/20241025/202410252012329472d0656.jpg",label:this.$t("headshots.styleTag.wedding"),value:"wedding"},{image:"https://static.aipedias.com/aicamera/common/20240915/20240915145045254931400.webp",label:this.$t("headshots.styleTag.businessPphoto"),value:"business_photo"},{image:"https://static.aipedias.com/aicamera/common/20240810/20240810194526040341795.jpg",label:this.$t("headshots.styleTag.bobSuit"),value:"bob_suit"},{image:"https://static.aipedias.com/aicamera/common/20240717/20240717152654e0b348173.webp",label:this.$t("headshots.styleTag.femalePortrait"),value:"female_portrait"}]}}}},watch:{value(e){console.debug("set template",e),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:e})}},mounted(){this.value||(this.value=""),console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})},methods:{onToggle(e){this.value===e?this.value="":this.value=e,console.debug("set template",this.value),this.$store.commit("headshots/setConfig",{...this.$store.state.headshots?.config,template:this.value})}}}),ke={class:"field"},ye=["onClick"],we={class:"name"};function Ie(e,s,m,h,k,y){const p=a("el-image"),u=a("el-tab-pane"),n=a("el-tabs");return o(),l("div",ke,[t(n,{modelValue:e.tab,"onUpdate:modelValue":s[0]||(s[0]=c=>e.tab=c)},{default:d(()=>[(o(!0),l(I,null,T(e.elements,(c,f)=>(o(),E(u,{key:f,label:c.displayName,name:f,class:"pane"},{default:d(()=>[(o(!0),l(I,null,T(c.items,(g,R)=>(o(),l("div",{key:R,class:S({item:!0,active:e.value===g.value}),onClick:$t=>e.onToggle(g.value)},[t(p,{src:g.image,fit:"fill",class:"preview"},null,8,["src"]),r("span",we,i(g.label),1)],10,ye))),128))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])])}const Te=b(be,[["render",Ie],["__scopeId","data-v-be4bd25d"]]),Ee=v({name:"PresetPanel",components:{ModeSelector:ve,ImageUrlsInput:he,ElButton:P,FontAwesomeIcon:C,ElementsSelector:Te},emits:["generate"],computed:{config(){return this.$store.state.headshots?.config}},methods:{onGenerate(){this.$emit("generate")}}}),Se={class:"panel"},Ve={class:"config"},Ce={class:"actions"};function Ae(e,s,m,h,k,y){const p=a("elements-selector"),u=a("mode-selector"),n=a("image-urls-input"),c=a("font-awesome-icon"),f=a("el-button");return o(),l("div",Se,[r("div",Ve,[t(p,{class:"mb-4"}),t(u,{class:"mb-4"}),t(n,{class:"mb-4"}),r("div",Ce,[t(f,{type:"primary",class:"btn w-full",round:"",onClick:e.onGenerate},{default:d(()=>[t(c,{icon:"fa-solid fa-magic",class:"mr-2"}),_(" "+i(e.$t("headshots.button.generate")),1)]),_:1},8,["onClick"])])])])}const Pe=b(Ee,[["render",Ae],["__scopeId","data-v-848739f6"]]),Re=v({name:"ImageGallery",props:{modelValue:{type:Object,required:!0}},setup(e){return{images:U(()=>e.modelValue?.response?.data?.slice(0,2)||[]),viewImage:h=>{window.open(h,"_blank")}}}}),Le={class:"image-gallery"},Ge=["src"],Ue=["onClick"];function De(e,s,m,h,k,y){return o(),l("div",Le,[(o(!0),l(I,null,T(e.images,(p,u)=>(o(),l("div",{key:u,class:"image-container"},[r("img",{src:p.image_url,alt:"Image"},null,8,Ge),p.image_url?(o(),l("button",{key:0,class:"view-button",onClick:n=>e.viewImage(p.image_url)},i(e.$t("headshots.button.viewImage")),9,Ue)):$("",!0)]))),128))])}const ze=b(Re,[["render",De],["__scopeId","data-v-42f0a7be"]]),Me=v({name:"TaskPreview",components:{ElImage:L,CopyToClipboard:Y,FontAwesomeIcon:C,ElAlert:Z,ImageGallery:ze},props:{modelValue:{type:Object,required:!0}},data(){return{}},computed:{application(){return this.$store.state.headshots?.application},config(){return this.$store.state.headshots?.config}},methods:{onDownload(e,s){e.stopPropagation(),console.log("on download"),window.open(s,"_blank")},onReload(e){const s=e.target,m=new URL(s.src),h=m.searchParams.get("retry");if(!h)m.searchParams.set("retry","1");else if(parseInt(h)<2)m.searchParams.set("retry",(parseInt(h)+1).toString());else return;s.src=m.toString()},onOpenVideo(e){window.open(e,"_blank")}}}),Oe={class:"preview"},je={class:"left"},Be={class:"main"},qe={class:"bot"},Ne={class:"datetime"},Fe={class:"info"},He={key:0,class:"prompt mt-2"},Je={key:0},Qe={key:1},Ke={key:0,class:S({content:!0,failed:!0})},We={class:"image-wrapper"},Xe={class:"description"},Ye={key:1,class:S({content:!0})},Ze={class:"description"},xe={class:"description"},et={class:"description"},tt={key:2,class:S({content:!0})},st={class:"description"},ot={key:3,class:S({content:!0})},at={class:"description"};function nt(e,s,m,h,k,y){const p=a("el-image"),u=a("image-gallery"),n=a("font-awesome-icon"),c=a("copy-to-clipboard"),f=a("el-alert");return o(),l("div",Oe,[r("div",je,[t(p,{src:"https://cdn.acedata.cloud/isxyfw.png",class:"avatar"})]),r("div",Be,[r("div",qe,[_(i(e.$t("headshots.name.headshotsBot"))+" ",1),r("span",Ne,i(e.$dayjs.format(""+new Date(parseFloat((e.modelValue?.created_at||"").toString())*1e3))),1)]),r("div",Fe,[e.modelValue?.request?.template?(o(),l("p",He,[_(i(e.modelValue?.request?.template)+" ",1),e.modelValue?.response?$("",!0):(o(),l("span",Je," - ("+i(e.$t("headshots.status.pending"))+") ",1)),e.modelValue?.response?.status==="unknown"?(o(),l("span",Qe," - ("+i(e.$t("headshots.status.processing"))+") ",1)):$("",!0)])):$("",!0)]),e.modelValue?.response?.success===!0?(o(),l("div",Ke,[r("div",We,[t(u,{"model-value":e.modelValue},null,8,["model-value"])]),t(f,{closable:!1,class:"mt-2 success"},{default:d(()=>[r("p",Xe,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?.success===!1?(o(),l("div",Ye,[t(f,{closable:!1,class:"failure"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",Ze,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])]),r("p",xe,[t(n,{icon:"fa-solid fa-circle-info",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failureReason"))+": "+i(e.modelValue?.response?.error?.message)+" ",1),t(c,{content:e.modelValue?.response?.error?.message,class:"btn-copy"},null,8,["content"])]),r("p",et,[t(n,{icon:"fa-solid fa-hashtag",class:"mr-1"}),_(" "+i(e.$t("headshots.name.traceId"))+": "+i(e.modelValue?.response?.trace_id)+" ",1),t(c,{content:e.modelValue?.response?.trace_id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0),e.modelValue?.response?$("",!0):(o(),l("div",tt,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",st,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])),e.modelValue?.response?.status==="unknown"?(o(),l("div",ot,[t(f,{closable:!1,class:"info"},{template:d(()=>[t(n,{icon:"fa-solid fa-exclamation-triangle",class:"mr-1"}),_(" "+i(e.$t("headshots.name.failure")),1)]),default:d(()=>[r("p",at,[t(n,{icon:"fa-solid fa-magic",class:"mr-1"}),_(" "+i(e.$t("headshots.name.taskId"))+": "+i(e.modelValue?.id)+" ",1),t(c,{content:e.modelValue?.id,class:"btn-copy"},null,8,["content"])])]),_:1})])):$("",!0)])])}const it=b(Me,[["render",nt],["__scopeId","data-v-91e2f073"]]),lt=v({name:"RecentPanel",components:{TaskPreview:it,ElSkeleton:ee,ElSkeletonItem:x,ScrollList:j},props:{loading:{type:Boolean,default:!1}},emits:["reach-top"],data(){return{job:0}},computed:{tasks(){return{...this.$store.state.headshots?.tasks,items:this.$store.state.headshots?.tasks?.items?.slice()}}},methods:{getScrollElement(){return this.$refs.scrollList?.getScrollElement?.()}}}),rt={key:0,class:"tasks"},ct={class:"left"},dt={class:"main"},pt={key:1,class:"tasks"},mt={key:2,class:"description"};function ht(e,s,m,h,k,y){const p=a("el-skeleton-item"),u=a("el-skeleton"),n=a("task-preview"),c=a("scroll-list");return o(),E(c,{ref:"scrollList",class:"panel recent",loading:e.loading,onReachTop:s[0]||(s[0]=f=>e.$emit("reach-top"))},{default:d(()=>[e.tasks?.items===void 0?(o(),l("div",rt,[(o(),l(I,null,T(3,f=>r("div",{key:f,class:"task placeholder"},[r("div",ct,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"image",class:"avatar"})]),_:1})]),r("div",dt,[t(u,{animated:""},{template:d(()=>[t(p,{variant:"p",class:"title"}),t(p,{variant:"image",class:"icon"})]),_:1})])])),64))])):e.tasks?.items?.length&&e.tasks?.items?.length>0?(o(),l("div",pt,[(o(!0),l(I,null,T(e.tasks?.items,(f,g)=>(o(),E(n,{key:g,"model-value":f,class:"preview"},null,8,["model-value"]))),128))])):$("",!0),e.tasks?.items?.length===0?(o(),l("p",mt,i(e.$t("headshots.message.noTasks")),1)):$("",!0)]),_:1},8,["loading"])}const ut=b(lt,[["render",ht],["__scopeId","data-v-ffd55c16"]]),ft="https://webhook.acedata.cloud/headshots",gt=v({name:"HeadshotsIndex",components:{ConfigPanel:Pe,Layout:le,ApplicationStatus:X,RecentPanel:ut},inject:["initialized"],data(){return{task:void 0,job:0,loadingMore:!1,fetchingTasks:!1}},computed:{applicationsLoading(){return this.$store.state.headshots?.status?.getApplications===V.Request},tasksLoading(){return this.$store.state.headshots?.status?.getTasks===V.Request||this.fetchingTasks},service(){return this.$store.state.headshots.service},credential(){return this.$store.state.headshots.credential},config(){return this.$store.state.headshots.config},initializing(){return this.$store.state.headshots.status.getApplications===V.Request},needApply(){return this.$store.state.headshots.status.getApplications===V.Success&&!this.application},application(){return this.$store.state.headshots.application},applications(){return this.$store.state.headshots.applications},tasks(){return this.$store.state.headshots.tasks}},watch:{tasks:{handler(e,s){e?.items?.length>s?.items?.length&&console.debug("new tasks detected")},deep:!0},initialized:{async handler(e){e&&(console.debug("layout initialized"),await this.onGetTasks(),await this.onScrollDown(),this.job=window.setInterval(()=>{this.onGetTasks()},5e3))},immediate:!0}},async mounted(){await this.onGetService()},async unmounted(){window.clearInterval(this.job)},methods:{async onReachTop(){await te({tasks:this.tasks,getTasks:()=>this.tasks,loading:this.loadingMore,setLoading:e=>this.loadingMore=e,isBlocked:()=>this.tasksLoading||this.applicationsLoading,fetch:e=>this.onGetTasks({createdAtMax:e}),getScrollElement:()=>this.getTasksScrollElement()})},async onGetService(){console.debug("start onGetService"),await this.$store.dispatch("headshots/getService"),console.debug("end onGetService")},async onGetApplication(){console.debug("start onGetApplication"),await this.$store.dispatch("headshots/getApplications"),console.debug("end onGetApplication"),await this.onGetTasks()},onApply(){z.create({application:this.application}).then(({data:e})=>{this.application=e,w.success(this.$t("application.message.applySuccessfully"))}).catch(e=>{e?.response?.data?.code===K&&w.error(this.$t("application.message.alreadyApplied"))})},async onScrollDown(){await this.$nextTick();const e=this.getTasksScrollElement();e&&(e.scrollTop=e.scrollHeight)},async onGetTasks(e){if(this.applicationsLoading||this.fetchingTasks){console.debug("loading");return}console.debug("start onGetTasks",e);const{limit:s=5,createdAtMin:m,createdAtMax:h}=e||{};console.debug("limit",s,"createdAtMin",m,"createdAtMax",h),this.fetchingTasks=!0;try{await this.$store.dispatch("headshots/getTasks",{limit:s,createdAtMin:m,createdAtMax:h})}finally{this.fetchingTasks=!1}},async onGeneratePicture(){const e={...this.config,callback_url:ft},s=this.credential?.token;if(!s){console.error("no token specified");return}w.info(this.$t("headshots.message.startingTask")),W.generate(e,{token:s}).then(()=>{w.success(this.$t("headshots.message.startTaskSuccess")),this.$store.commit("headshots/setConfig",{config:void 0})}).catch(m=>{m?.response?.data?.error?.code===Q?w.error(this.$t("headshots.message.usedUp")):w.error(this.$t("headshots.message.startTaskFailed"))}).finally(async()=>{setTimeout(async()=>{await this.onGetTasks(),await this.onScrollDown()},1e3)})},getTasksScrollElement(){return this.$refs.recentPanel?.getScrollElement?.()}}});function _t(e,s,m,h,k,y){const p=a("config-panel"),u=a("application-status"),n=a("recent-panel"),c=a("layout");return o(),E(c,null,{config:d(()=>[t(p,{onGenerate:e.onGeneratePicture},null,8,["onGenerate"])]),result:d(()=>[t(u,{initializing:e.initializing,application:e.application,applications:e.applications,service:e.service,"need-apply":e.needApply,class:"mb-4",onRefresh:e.onGetApplication,onSelect:s[0]||(s[0]=f=>e.$store.dispatch("headshots/setApplication",f))},null,8,["initializing","application","applications","service","need-apply","onRefresh"]),t(n,{ref:"recentPanel",class:"panel recent",loading:e.loadingMore,onReachTop:e.onReachTop},null,8,["loading","onReachTop"])]),_:1})}const ss=b(gt,[["render",_t],["__scopeId","data-v-6cafffbd"]]);export{ss as default};