@yuuichi/tools-assets 1.0.0-ym.2 → 1.0.0-ym.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/dist/carbon/404/index.html +2 -2
  2. package/dist/carbon/_next/static/chunks/{webpack-c7eee30d6a530fba.js → webpack-8ea46b5df30fd15d.js} +1 -1
  3. package/dist/carbon/about/index.html +2 -2
  4. package/dist/carbon/account/index.html +2 -2
  5. package/dist/carbon/embed/index.html +2 -2
  6. package/dist/carbon/index.html +2 -2
  7. package/dist/carbon/snippets/index.html +2 -2
  8. package/dist/md/index.html +115 -115
  9. package/dist/md/static/js/{md-AIAssistantPanel-CF4e4Vu5.js → md-AIAssistantPanel-us_Xy1ve.js} +1 -1
  10. package/dist/md/static/js/{md-AIConfig-DO9zDt5U.js → md-AIConfig-DipZ3Ptv.js} +1 -1
  11. package/dist/md/static/js/{md-AIImageGeneratorPanel-CD1uJVoh.js → md-AIImageGeneratorPanel-HTas7vp1.js} +1 -1
  12. package/dist/md/static/js/{md-AccountDialog-B9bwHblP.js → md-AccountDialog-a2EBQZJc.js} +1 -1
  13. package/dist/md/static/js/{md-CssEditor-CscA_fkp.js → md-CssEditor-ozEJp5Sv.js} +1 -1
  14. package/dist/md/static/js/{md-CustomComponentDialog-B2dcYBPu.js → md-CustomComponentDialog-BOj-tPmA.js} +1 -1
  15. package/dist/md/static/js/{md-EditorStateDialog-DDwS_6Tq.js → md-EditorStateDialog-ZS8SQA6r.js} +1 -1
  16. package/dist/md/static/js/{md-EmojiManagerPanel-D1CqtlJh.js → md-EmojiManagerPanel-R60RFW3h.js} +1 -1
  17. package/dist/md/static/js/{md-FormulaEditorDialog-BMRetjWG.js → md-FormulaEditorDialog-B7o7_lfp.js} +1 -1
  18. package/dist/md/static/js/{md-ImportMarkdownDialog-DxL17zpq.js → md-ImportMarkdownDialog--aRmECdx.js} +1 -1
  19. package/dist/md/static/js/{md-KeyboardShortcutsDialog-uRCXJSjd.js → md-KeyboardShortcutsDialog-DdYNHCQo.js} +1 -1
  20. package/dist/md/static/js/{md-LocalImageUploadDialog-avfB7LHB.js → md-LocalImageUploadDialog-4NQNrFC3.js} +1 -1
  21. package/dist/md/static/js/{md-MarketplaceDialog-Bx7VHRvQ.js → md-MarketplaceDialog-D8PFljmc.js} +1 -1
  22. package/dist/md/static/js/{md-PdfExportDialog-CLmsnkhd.js → md-PdfExportDialog-DUqHUNlp.js} +1 -1
  23. package/dist/md/static/js/{md-PreferencesDialog-DN-JtCU5.js → md-PreferencesDialog-CPid6hAT.js} +1 -1
  24. package/dist/md/static/js/{md-RightSlider-CDcYf_n7.js → md-RightSlider-CPoHhCnv.js} +1 -1
  25. package/dist/md/static/js/{md-ShareDialog-DK8_fzlb.js → md-ShareDialog-gc_bjaew.js} +1 -1
  26. package/dist/md/static/js/{md-SidebarAIToolbar-CBndViyU.js → md-SidebarAIToolbar-DON40byZ.js} +2 -2
  27. package/dist/md/static/js/{md-SlashCommandMenu-CBAaWcc8.js → md-SlashCommandMenu-D8mkAGQg.js} +1 -1
  28. package/dist/md/static/js/{md-SyncDialog-C6UjzXRA.js → md-SyncDialog-BJzCbPhW.js} +1 -1
  29. package/dist/md/static/js/{md-TableEditDialog-DBWg4Ms5.js → md-TableEditDialog-dqSrhSK9.js} +1 -1
  30. package/dist/md/static/js/{md-TemplateDialog-CPjjDwhb.js → md-TemplateDialog-B7LQsEFN.js} +1 -1
  31. package/dist/md/static/js/{md-UploadImgDialog-BapxZ5ip.js → md-UploadImgDialog-DXVzf9bJ.js} +2 -2
  32. package/dist/md/static/js/{md-abnfDiagram-YUKMZFIV-CmpHTRa0.js → md-abnfDiagram-YUKMZFIV-yXC3j5Zj.js} +1 -1
  33. package/dist/md/static/js/{md-aiConfig-CMgvtyLF.js → md-aiConfig-BZ5KFSrp.js} +1 -1
  34. package/dist/md/static/js/{md-architecture-WOLXFQ4H-DQZEV3vU.js → md-architecture-WOLXFQ4H-BSy7SJLa.js} +1 -1
  35. package/dist/md/static/js/{md-architectureDiagram-47P4ROYG-PyGo0e45.js → md-architectureDiagram-47P4ROYG-W0axx-SA.js} +1 -1
  36. package/dist/md/static/js/{md-auth-B320eWZs.js → md-auth-Crd5XmCA.js} +2 -2
  37. package/dist/md/static/js/{md-blockDiagram-E7TT5TSB-uiHRgnyh.js → md-blockDiagram-E7TT5TSB-_95sCEdf.js} +1 -1
  38. package/dist/md/static/js/{md-c4Diagram-CRA5TL53-9HPFN7-t.js → md-c4Diagram-CRA5TL53-DDyVSp6K.js} +1 -1
  39. package/dist/md/static/js/md-channel-Doa9ociN.js +1 -0
  40. package/dist/md/static/js/{md-chunk-2BW5OAIV-D_IuJv-P.js → md-chunk-2BW5OAIV-DoE-Ktp5.js} +1 -1
  41. package/dist/md/static/js/{md-chunk-3YJQHVM4-CiXjgT0L.js → md-chunk-3YJQHVM4-CY2IEILW.js} +1 -1
  42. package/dist/md/static/js/{md-chunk-4EA7E6EY-aSJB1UxS.js → md-chunk-4EA7E6EY-DaeF17V5.js} +1 -1
  43. package/dist/md/static/js/{md-chunk-7TKQ45FW-C72c6C3B.js → md-chunk-7TKQ45FW-1WLoZi3m.js} +1 -1
  44. package/dist/md/static/js/{md-chunk-AW2ZBBNX-6YxV8_ON.js → md-chunk-AW2ZBBNX-CIwxELDI.js} +1 -1
  45. package/dist/md/static/js/{md-chunk-DBDB3WZW-HS7MXf4M.js → md-chunk-DBDB3WZW-CjZkueP3.js} +1 -1
  46. package/dist/md/static/js/{md-chunk-E2ZNV5FY-BWwTF2Pa.js → md-chunk-E2ZNV5FY-u5fqP9bt.js} +1 -1
  47. package/dist/md/static/js/{md-chunk-EU5HNXII-DywVMjVA.js → md-chunk-EU5HNXII-BRlS6DL3.js} +1 -1
  48. package/dist/md/static/js/{md-chunk-FVRAUYC3-YieLSFki.js → md-chunk-FVRAUYC3-yK7bFOSE.js} +1 -1
  49. package/dist/md/static/js/{md-chunk-HJ2JQQFS-DrdiUr0s.js → md-chunk-HJ2JQQFS-BJK-1AvL.js} +1 -1
  50. package/dist/md/static/js/{md-chunk-HTAEGDNF-B5mqTFVi.js → md-chunk-HTAEGDNF-BfoE9JrD.js} +1 -1
  51. package/dist/md/static/js/{md-chunk-KQW6MTUR-CAR3krhO.js → md-chunk-KQW6MTUR-DTVx9KwD.js} +1 -1
  52. package/dist/md/static/js/{md-chunk-NTY3LDVX-DSdR7sc4.js → md-chunk-NTY3LDVX-DvyItaaM.js} +1 -1
  53. package/dist/md/static/js/{md-chunk-VPRB5NB3-CLIIed9Z.js → md-chunk-VPRB5NB3-SvApKM-T.js} +1 -1
  54. package/dist/md/static/js/{md-chunk-XC4XBNZT-BK_ztb60.js → md-chunk-XC4XBNZT-7StNwYSC.js} +1 -1
  55. package/dist/md/static/js/{md-classDiagram-v2-K4WV4PDN-CCHSKnhN.js → md-classDiagram-v2-K4WV4PDN-2ZzeG7OD.js} +1 -1
  56. package/dist/md/static/js/{md-client-CGJU0lXF.js → md-client-Cc-kin1G.js} +1 -1
  57. package/dist/md/static/js/{md-clipboard-BYFl_-FZ.js → md-clipboard-2tuieAqv.js} +1 -1
  58. package/dist/md/static/js/{md-confirm-BihqdS5v.js → md-confirm-C91Js7gx.js} +1 -1
  59. package/dist/md/static/js/{md-cynefin-EF2NZ3EQ-Bkz4pbNE.js → md-cynefin-EF2NZ3EQ-CwlHy8Fe.js} +1 -1
  60. package/dist/md/static/js/{md-cynefinDiagram-3GCD6N5R-Ds9PXIId.js → md-cynefinDiagram-3GCD6N5R-B4P2YDd_.js} +1 -1
  61. package/dist/md/static/js/{md-dagre-W4DXFKR2-DkKVDIFC.js → md-dagre-W4DXFKR2-BljSgqMw.js} +1 -1
  62. package/dist/md/static/js/{md-default-content-Cpz5V9G-.js → md-default-content-BVHH_ma1.js} +1 -1
  63. package/dist/md/static/js/{md-diagram-2UJZ2QOL-qZHiizXP.js → md-diagram-2UJZ2QOL-BVNXWDuL.js} +1 -1
  64. package/dist/md/static/js/{md-diagram-OVF4WLC6-CN8lep7L.js → md-diagram-OVF4WLC6-CZGimtJG.js} +1 -1
  65. package/dist/md/static/js/{md-diagram-PFPMY2P6-BSwpiHtn.js → md-diagram-PFPMY2P6-BZLJdTj-.js} +1 -1
  66. package/dist/md/static/js/{md-diagram-UMYRVEAY-DY0LU3Hd.js → md-diagram-UMYRVEAY-Dv6fQtc7.js} +1 -1
  67. package/dist/md/static/js/{md-diagram-YEKJPTXX-QY8QLwTU.js → md-diagram-YEKJPTXX-BLihqTUb.js} +1 -1
  68. package/dist/md/static/js/{md-diagram-ZIFT7M5P-BRN2Im2O.js → md-diagram-ZIFT7M5P-0_ozbaKp.js} +1 -1
  69. package/dist/md/static/js/{md-dist-es-cVMEFCse.js → md-dist-es-BYqC6C7v.js} +2 -2
  70. package/dist/md/static/js/{md-ebnfDiagram-VR2GEFS7-DtH7XQzh.js → md-ebnfDiagram-VR2GEFS7-CiKyRSmW.js} +1 -1
  71. package/dist/md/static/js/{md-editor-CAilbZEo.js → md-editor-dmKdA3Kt.js} +2 -2
  72. package/dist/md/static/js/{md-elk-IJKZMXRS-DA-GN0L1.js → md-elk-IJKZMXRS-AigigZ8E.js} +1 -1
  73. package/dist/md/static/js/{md-emojiPack-iMjrppKC.js → md-emojiPack-CR0nAcjN.js} +1 -1
  74. package/dist/md/static/js/{md-erDiagram-O2IAPWRE-CPaqE6JI.js → md-erDiagram-O2IAPWRE-Dhq-wGvA.js} +1 -1
  75. package/dist/md/static/js/{md-eventmodeling-K75KTNOO-Bc6tu7KV.js → md-eventmodeling-K75KTNOO-CCDzv-4-.js} +1 -1
  76. package/dist/md/static/js/{md-export-BjrxWZ9r.js → md-export-5_bPVYOW.js} +1 -1
  77. package/dist/md/static/js/{md-extensions-Glu0Pgjx.js → md-extensions-e4cM3aYT.js} +3 -3
  78. package/dist/md/static/js/md-flowDiagram-OXPTDLAJ-C9WxiYA6.js +1 -0
  79. package/dist/md/static/js/{md-folder-source-panel-DFFe32GQ.js → md-folder-source-panel-Cjb2ipM8.js} +1 -1
  80. package/dist/md/static/js/{md-formatDoc-BNWCU6io.js → md-formatDoc-X7L5KPCC.js} +1 -1
  81. package/dist/md/static/js/{md-ganttDiagram-R7TSEDQI-BayINpXC.js → md-ganttDiagram-R7TSEDQI-Dnc8it4_.js} +1 -1
  82. package/dist/md/static/js/{md-gitGraph-VSP46ZUC-BUwLrmK3.js → md-gitGraph-VSP46ZUC-CJA3GO-s.js} +1 -1
  83. package/dist/md/static/js/{md-gitGraphDiagram-XJZIOB7I-B5H3jLer.js → md-gitGraphDiagram-XJZIOB7I-D25VoPkX.js} +1 -1
  84. package/dist/md/static/js/{md-index-C3THyG4M.js → md-index-DG9NYthW.js} +4 -4
  85. package/dist/md/static/js/{md-index.browser-SY9JAlDq.js → md-index.browser-K5L-ku5D.js} +1 -1
  86. package/dist/md/static/js/{md-info-OHQRW6UA-CNO4zTrQ.js → md-info-OHQRW6UA-DmrfouOF.js} +1 -1
  87. package/dist/md/static/js/{md-infoDiagram-5W2HQ5XZ-mYYrIV4u.js → md-infoDiagram-5W2HQ5XZ-DqsT3fxX.js} +1 -1
  88. package/dist/md/static/js/{md-ishikawaDiagram-K3B6WC7H-NabgEAym.js → md-ishikawaDiagram-K3B6WC7H-CGxmPyWC.js} +1 -1
  89. package/dist/md/static/js/{md-journeyDiagram-COXZFDF6-qclo2Jhn.js → md-journeyDiagram-COXZFDF6-CMFkEsZg.js} +1 -1
  90. package/dist/md/static/js/{md-kanban-definition-P3RFRI5V-CfwJaDLN.js → md-kanban-definition-P3RFRI5V-7yL2oXvW.js} +1 -1
  91. package/dist/md/static/js/{md-locale-BZywaihl.js → md-locale-CTEJ5qub.js} +1 -1
  92. package/dist/md/static/js/{md-markdown-CHof_I2H.js → md-markdown-CYQvdsGB.js} +1 -1
  93. package/dist/md/static/js/{md-marketplace-Ds3POzKO.js → md-marketplace-D7PO9b25.js} +1 -1
  94. package/dist/md/static/js/{md-mermaid-parser.core-hfCUgsuY.js → md-mermaid-parser.core-Dno_3OOY.js} +3 -3
  95. package/dist/md/static/js/{md-mermaid.core-qk0l9q9D.js → md-mermaid.core-DpNNEtvY.js} +4 -4
  96. package/dist/md/static/js/{md-mindmap-definition-LZFPQGKD-C1cMWO7B.js → md-mindmap-definition-LZFPQGKD-BHFXo7sy.js} +1 -1
  97. package/dist/md/static/js/{md-oauth-CXETOhnZ.js → md-oauth-BVOWaT0k.js} +1 -1
  98. package/dist/md/static/js/{md-packet-JDAUHWVQ-DrOa3aVS.js → md-packet-JDAUHWVQ-TLKrPuwE.js} +1 -1
  99. package/dist/md/static/js/{md-pegDiagram-BGZESJAR-DU_dIOZl.js → md-pegDiagram-BGZESJAR-BbsXU5tu.js} +1 -1
  100. package/dist/md/static/js/{md-pie-XZMESJXO-f8Y5JjcT.js → md-pie-XZMESJXO-DHTtiSGQ.js} +1 -1
  101. package/dist/md/static/js/{md-pieDiagram-CAPJLFHJ-mF6qIsfp.js → md-pieDiagram-CAPJLFHJ-IXxjP4RK.js} +1 -1
  102. package/dist/md/static/js/{md-post-CHezuK0L.js → md-post-CoWfijHq.js} +1 -1
  103. package/dist/md/static/js/{md-post-slider-Xq8kjXXi.js → md-post-slider-DvstwGhS.js} +2 -2
  104. package/dist/md/static/js/{md-preload-helper-2--UFWE9.js → md-preload-helper-BiJVKFcG.js} +1 -1
  105. package/dist/md/static/js/{md-provider-registry-MsrJ0aEj.js → md-provider-registry-Dgk4tOKV.js} +1 -1
  106. package/dist/md/static/js/{md-providers-D1N92-lC.js → md-providers-dij0qfCR.js} +2 -2
  107. package/dist/md/static/js/{md-quadrantDiagram-GDMTTRAM-DY68Gfb6.js → md-quadrantDiagram-GDMTTRAM-Q8AMIZ-i.js} +1 -1
  108. package/dist/md/static/js/{md-quickCommands-d-ysQNPU.js → md-quickCommands-Cz9hGooM.js} +1 -1
  109. package/dist/md/static/js/{md-radar-ABXABTNO-C9IJ98Xg.js → md-radar-ABXABTNO-Dor30ynt.js} +1 -1
  110. package/dist/md/static/js/{md-railroad-I3PHUGI6-DB6t5P7O.js → md-railroad-I3PHUGI6-faQMdBtg.js} +1 -1
  111. package/dist/md/static/js/{md-railroad-abnf-LNEFI6M7-DQRmhEC7.js → md-railroad-abnf-LNEFI6M7-ChLiahGu.js} +1 -1
  112. package/dist/md/static/js/{md-railroad-ebnf-DWYD2UWJ-Dp3zLEwp.js → md-railroad-ebnf-DWYD2UWJ-hekUkZSp.js} +1 -1
  113. package/dist/md/static/js/{md-railroad-peg-JR7BVNR7-D9gfVlNF.js → md-railroad-peg-JR7BVNR7-DGH-t6S1.js} +1 -1
  114. package/dist/md/static/js/{md-railroadDiagram-SM67HX2B-Cy5Q3yLw.js → md-railroadDiagram-SM67HX2B-B6IIKcWG.js} +1 -1
  115. package/dist/md/static/js/{md-renderer-4AQ1OZU1.js → md-renderer-BDWwj5ym.js} +1 -1
  116. package/dist/md/static/js/{md-requirementDiagram-X7JNWC4A-Ca1L-MSu.js → md-requirementDiagram-X7JNWC4A-DW2Fzihm.js} +1 -1
  117. package/dist/md/static/js/{md-sankeyDiagram-UM26HJRW-C4SRu7DB.js → md-sankeyDiagram-UM26HJRW-DesL71pJ.js} +1 -1
  118. package/dist/md/static/js/{md-sequenceDiagram-ZO4K6R2Y-DQDdiL2I.js → md-sequenceDiagram-ZO4K6R2Y-ZYvjWcSa.js} +1 -1
  119. package/dist/md/static/js/{md-slashCommands-BkcP4b0C.js → md-slashCommands-mCYC1eNJ.js} +1 -1
  120. package/dist/md/static/js/{md-stateDiagram-v2-TBUQTH76-DgWJk1nQ.js → md-stateDiagram-v2-TBUQTH76-DamwEyS8.js} +1 -1
  121. package/dist/md/static/js/{md-storage-TAchKcvc.js → md-storage-B8BAILFb.js} +1 -1
  122. package/dist/md/static/js/{md-swimlanes-N4OXWK64-CTC8HdWE.js → md-swimlanes-N4OXWK64-DAxBZzUz.js} +1 -1
  123. package/dist/md/static/js/md-swimlanesDiagram-K3J5GTZL-BBqgcN0k.js +8 -0
  124. package/dist/md/static/js/{md-sync-DzivBtxQ.js → md-sync-CImiJDX5.js} +1 -1
  125. package/dist/md/static/js/{md-template-TV8U1qS4.js → md-template-CTKtT0YR.js} +1 -1
  126. package/dist/md/static/js/{md-timeline-definition-YOQAKGHF-Bd9f4Y10.js → md-timeline-definition-YOQAKGHF-dpXFTtxZ.js} +1 -1
  127. package/dist/md/static/js/{md-translate-CzY24XmZ.js → md-translate-CRNthmbT.js} +1 -1
  128. package/dist/md/static/js/{md-treeView-D4JQ5SDB-D-XSvTMP.js → md-treeView-D4JQ5SDB-wjjnAXa7.js} +1 -1
  129. package/dist/md/static/js/{md-treemap-SAJKECNS-Bd_rK9Mh.js → md-treemap-SAJKECNS-C931z_qi.js} +1 -1
  130. package/dist/md/static/js/{md-ui-Dq6MTvr4.js → md-ui-BLkQlUQC.js} +3 -3
  131. package/dist/md/static/js/{md-useEditorRefresh-DQn4H1Wu.js → md-useEditorRefresh-OsQDX_Bw.js} +1 -1
  132. package/dist/md/static/js/{md-useImageUploader-CYOKxpNX.js → md-useImageUploader-hYnNnhzw.js} +2 -2
  133. package/dist/md/static/js/{md-useLocalizedAIServices-rhW4n8Ti.js → md-useLocalizedAIServices-DXRSjl-Y.js} +1 -1
  134. package/dist/md/static/js/{md-useLocalizedBuiltinComponents-DADyqpKR.js → md-useLocalizedBuiltinComponents-Cp5XbV-4.js} +1 -1
  135. package/dist/md/static/js/{md-useLocalizedStyleOptions-B5NSKADz.js → md-useLocalizedStyleOptions-CYLcejBo.js} +1 -1
  136. package/dist/md/static/js/{md-useSyncStatusMeta-ssY-63xV.js → md-useSyncStatusMeta-CxmKmXyx.js} +1 -1
  137. package/dist/md/static/js/{md-usecaseDiagram-VIAY4XPW-tkWd_m6m.js → md-usecaseDiagram-VIAY4XPW-DvzUpE5i.js} +1 -1
  138. package/dist/md/static/js/{md-validate-image-3dQVL-8x.js → md-validate-image-CpSP4ZvP.js} +1 -1
  139. package/dist/md/static/js/{md-vennDiagram-BLWOH2XV-B1h1KBPU.js → md-vennDiagram-BLWOH2XV-BWo51AJb.js} +1 -1
  140. package/dist/md/static/js/{md-wardley-7MLQ67FV-BMEyqZgl.js → md-wardley-7MLQ67FV-CBCq0Jcr.js} +1 -1
  141. package/dist/md/static/js/{md-wardleyDiagram-YMQ3BMBF-4KQgaOjT.js → md-wardleyDiagram-YMQ3BMBF-xnwXwEgC.js} +1 -1
  142. package/dist/md/static/js/{md-xychartDiagram-TAQBALBS-Cg-G6JP7.js → md-xychartDiagram-TAQBALBS-BCajYKY2.js} +1 -1
  143. package/dist/transform/404/index.html +1 -1
  144. package/dist/transform/404.html +1 -1
  145. package/dist/transform/_next/static/chunks/5f58523c0e7f8a1496e44fb3aa9708ae212b3a59.7eb188b53aa5e032ca26.js +1 -0
  146. package/dist/transform/_next/static/chunks/pages/css-to-js-5318424ca1c1f2a567b5.js +1 -0
  147. package/dist/transform/_next/static/chunks/pages/graphql-to-components-3ab2af869fbcfa184855.js +1 -0
  148. package/dist/transform/_next/static/chunks/pages/graphql-to-flow-5873d22614a64f662965.js +1 -0
  149. package/dist/transform/_next/static/chunks/pages/graphql-to-fragment-matcher-da076cda5c237a7f299b.js +1 -0
  150. package/dist/transform/_next/static/chunks/pages/graphql-to-introspection-json-3a503ed929ca8973d6f7.js +1 -0
  151. package/dist/transform/_next/static/chunks/pages/graphql-to-java-c23506b8cea6425018e6.js +1 -0
  152. package/dist/transform/_next/static/chunks/pages/graphql-to-resolvers-signature-ec4f7bcb373fc1bfdc64.js +1 -0
  153. package/dist/transform/_next/static/chunks/pages/graphql-to-schema-ast-f125f56fede43a181a8a.js +1 -0
  154. package/dist/transform/_next/static/chunks/pages/graphql-to-typescript-46631f6e2b2d74aee5b6.js +1 -0
  155. package/dist/transform/_next/static/chunks/pages/{graphql-to-typescript-mongodb-e325d75119d2e7677e6b.js → graphql-to-typescript-mongodb-a6762f012c231ad53d4d.js} +1 -1
  156. package/dist/transform/_next/static/chunks/pages/index-f20eddd83614aa6fbc1a.js +1 -0
  157. package/dist/transform/_next/static/chunks/pages/json-to-mobx-state-tree-ba0ed623cbfd12c4150d.js +1 -0
  158. package/dist/transform/_next/static/chunks/pages/json-to-proptypes-74207e5e0180d6373fd9.js +1 -0
  159. package/dist/transform/_next/static/chunks/pages/object-styles-to-template-literal-4632ad4472ee11ec823f.js +1 -0
  160. package/dist/transform/_next/static/chunks/pages/svg-to-react-native-71e7874e599dda8ae7a5.js +1 -0
  161. package/dist/transform/_next/static/{s2f5sIpNXm2PBoE7dI3W4 → doPGXkMTsHAerSZY0DvSi}/_buildManifest.js +1 -1
  162. package/dist/transform/cadence-to-go/index.html +1 -1
  163. package/dist/transform/css-to-js/index.html +1 -1
  164. package/dist/transform/css-to-tailwind/index.html +1 -1
  165. package/dist/transform/flow-to-javascript/index.html +1 -1
  166. package/dist/transform/flow-to-typescript/index.html +1 -1
  167. package/dist/transform/flow-to-typescript-declaration/index.html +1 -1
  168. package/dist/transform/graphql-to-components/index.html +1 -1
  169. package/dist/transform/graphql-to-flow/index.html +1 -1
  170. package/dist/transform/graphql-to-fragment-matcher/index.html +1 -1
  171. package/dist/transform/graphql-to-introspection-json/index.html +1 -1
  172. package/dist/transform/graphql-to-java/index.html +1 -1
  173. package/dist/transform/graphql-to-resolvers-signature/index.html +1 -1
  174. package/dist/transform/graphql-to-schema-ast/index.html +1 -1
  175. package/dist/transform/graphql-to-typescript/index.html +1 -1
  176. package/dist/transform/graphql-to-typescript-mongodb/index.html +1 -1
  177. package/dist/transform/html-to-jsx/index.html +1 -1
  178. package/dist/transform/html-to-pug/index.html +1 -1
  179. package/dist/transform/index.html +1 -1
  180. package/dist/transform/js-object-to-json/index.html +1 -1
  181. package/dist/transform/js-object-to-typescript/index.html +1 -1
  182. package/dist/transform/json-schema-to-openapi-schema/index.html +1 -1
  183. package/dist/transform/json-schema-to-protobuf/index.html +1 -1
  184. package/dist/transform/json-schema-to-typescript/index.html +1 -1
  185. package/dist/transform/json-schema-to-zod/index.html +1 -1
  186. package/dist/transform/json-to-big-query/index.html +1 -1
  187. package/dist/transform/json-to-flow/index.html +1 -1
  188. package/dist/transform/json-to-go/index.html +1 -1
  189. package/dist/transform/json-to-go-bson/index.html +1 -1
  190. package/dist/transform/json-to-graphql/index.html +1 -1
  191. package/dist/transform/json-to-io-ts/index.html +1 -1
  192. package/dist/transform/json-to-java/index.html +1 -1
  193. package/dist/transform/json-to-jsdoc/index.html +1 -1
  194. package/dist/transform/json-to-json-schema/index.html +1 -1
  195. package/dist/transform/json-to-kotlin/index.html +1 -1
  196. package/dist/transform/json-to-mobx-state-tree/index.html +1 -1
  197. package/dist/transform/json-to-mongoose/index.html +1 -1
  198. package/dist/transform/json-to-mysql/index.html +1 -1
  199. package/dist/transform/json-to-proptypes/index.html +1 -1
  200. package/dist/transform/json-to-rust-serde/index.html +1 -1
  201. package/dist/transform/json-to-sarcastic/index.html +1 -1
  202. package/dist/transform/json-to-scala-case-class/index.html +1 -1
  203. package/dist/transform/json-to-toml/index.html +1 -1
  204. package/dist/transform/json-to-typescript/index.html +1 -1
  205. package/dist/transform/json-to-yaml/index.html +1 -1
  206. package/dist/transform/json-to-zod/index.html +1 -1
  207. package/dist/transform/jsonld-to-compacted/index.html +1 -1
  208. package/dist/transform/jsonld-to-expanded/index.html +1 -1
  209. package/dist/transform/jsonld-to-flattened/index.html +1 -1
  210. package/dist/transform/jsonld-to-framed/index.html +1 -1
  211. package/dist/transform/jsonld-to-normalized/index.html +1 -1
  212. package/dist/transform/jsonld-to-nquads/index.html +1 -1
  213. package/dist/transform/markdown-to-html/index.html +1 -1
  214. package/dist/transform/object-styles-to-template-literal/index.html +1 -1
  215. package/dist/transform/svg-to-react-native/index.html +1 -1
  216. package/dist/transform/toml-to-json/index.html +1 -1
  217. package/dist/transform/toml-to-yaml/index.html +1 -1
  218. package/dist/transform/typescript-to-flow/index.html +1 -1
  219. package/dist/transform/typescript-to-javascript/index.html +1 -1
  220. package/dist/transform/typescript-to-json-schema/index.html +1 -1
  221. package/dist/transform/typescript-to-typescript-declaration/index.html +1 -1
  222. package/dist/transform/typescript-to-zod/index.html +1 -1
  223. package/dist/transform/xml-to-json/index.html +1 -1
  224. package/dist/transform/yaml-to-json/index.html +1 -1
  225. package/dist/transform/yaml-to-toml/index.html +1 -1
  226. package/package.json +1 -1
  227. package/dist/md/static/js/md-channel-Dx0LllE1.js +0 -1
  228. package/dist/md/static/js/md-flowDiagram-OXPTDLAJ-BJ9GLr8l.js +0 -1
  229. package/dist/md/static/js/md-swimlanesDiagram-K3J5GTZL-DxvPEfP2.js +0 -8
  230. package/dist/transform/_next/static/chunks/5f58523c0e7f8a1496e44fb3aa9708ae212b3a59.81877283f0ccf4cfa5ad.js +0 -1
  231. package/dist/transform/_next/static/chunks/pages/css-to-js-c151b6d517dfa79fec1c.js +0 -1
  232. package/dist/transform/_next/static/chunks/pages/graphql-to-components-870c7f6e926ea6492875.js +0 -1
  233. package/dist/transform/_next/static/chunks/pages/graphql-to-flow-30f6cd8de7e3479085b7.js +0 -1
  234. package/dist/transform/_next/static/chunks/pages/graphql-to-fragment-matcher-822fa095ae34dfa20d27.js +0 -1
  235. package/dist/transform/_next/static/chunks/pages/graphql-to-introspection-json-8702f04c773441e24332.js +0 -1
  236. package/dist/transform/_next/static/chunks/pages/graphql-to-java-c314a62d644b3b5c4b78.js +0 -1
  237. package/dist/transform/_next/static/chunks/pages/graphql-to-resolvers-signature-4564a0902441752a543f.js +0 -1
  238. package/dist/transform/_next/static/chunks/pages/graphql-to-schema-ast-17d93f460973a0435671.js +0 -1
  239. package/dist/transform/_next/static/chunks/pages/graphql-to-typescript-6599e329a8b3c7f28409.js +0 -1
  240. package/dist/transform/_next/static/chunks/pages/index-77392cac123afdb7d7ff.js +0 -1
  241. package/dist/transform/_next/static/chunks/pages/json-to-mobx-state-tree-faad7bbce0c5a4a90c69.js +0 -1
  242. package/dist/transform/_next/static/chunks/pages/json-to-proptypes-f5d98384dff3089f2f01.js +0 -1
  243. package/dist/transform/_next/static/chunks/pages/object-styles-to-template-literal-aaec7309c1a602288551.js +0 -1
  244. package/dist/transform/_next/static/chunks/pages/svg-to-react-native-034e52cf3747b84d4275.js +0 -1
  245. /package/dist/carbon/_next/static/{j89oBtYEmpICvj7fmBMRz → GxU1dxkdEhmjmJhptPJdL}/_buildManifest.js +0 -0
  246. /package/dist/carbon/_next/static/{j89oBtYEmpICvj7fmBMRz → GxU1dxkdEhmjmJhptPJdL}/_middlewareManifest.js +0 -0
  247. /package/dist/carbon/_next/static/{j89oBtYEmpICvj7fmBMRz → GxU1dxkdEhmjmJhptPJdL}/_ssgManifest.js +0 -0
  248. /package/dist/transform/_next/data/{s2f5sIpNXm2PBoE7dI3W4 → doPGXkMTsHAerSZY0DvSi}/css-to-tailwind.json +0 -0
  249. /package/dist/transform/_next/static/{s2f5sIpNXm2PBoE7dI3W4 → doPGXkMTsHAerSZY0DvSi}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- import{t as e}from"./md-ui-Dq6MTvr4.js";import{f as t,h as n}from"./md-storage-TAchKcvc.js";import{$ as r,C as i,Ct as a,E as o,Et as s,H as c,I as l,S as u,W as d,b as f,ct as p,f as m,m as h,nt as g,pt as _,q as v,r as y,w as b,x,xt as S,y as C,z as ee}from"./md-vendor_vue-BeOfKbk1.js";import{n as te}from"./md-vue-i18n-Cxvw1c3e.js";import{n as w}from"./md-lib-CvTniYNx.js";import{t as T}from"./md-createLucideIcon-BXdNAL-d.js";import{t as E}from"./md-check-lU7D5avq.js";import{t as D}from"./md-copy-FPkQvYMT.js";import{a as ne,i as re,r as ie}from"./md-useLocalizedAIServices-rhW4n8Ti.js";import{t as ae}from"./md-folder-open-BeUSQQdX.js";import{t as oe}from"./md-image-DZKTZmYn.js";import{n as se,t as ce}from"./md-refresh-ccw-B0suwZhW.js";import{n as le,t as ue}from"./md-AIConfig-DO9zDt5U.js";import{t as de}from"./md-plus-ByJ8LvCm.js";import{t as fe}from"./md-settings-BQ0oxr26.js";import{t as pe}from"./md-trash-_QL9lZ9Z.js";import{n as O}from"./md-button-BSiUqWkb.js";import{i as me,n as he,r as ge,t as _e}from"./md-DialogTitle-DckujrLp.js";import{t as ve}from"./md-DialogDescription-I_Nb5r3l.js";import{n as k,r as A,t as j}from"./md-PopoverTrigger-BkrNONB4.js";import{n as ye,r as be,t as xe}from"./md-DropdownMenuTrigger-Dc5A4zvK.js";import{t as Se}from"./md-DropdownMenuItem-BwyJT-E2.js";import{n as Ce}from"./md-editor-CAilbZEo.js";import{t as we}from"./md-aiConfig-CMgvtyLF.js";import{t as Te}from"./md-quickCommands-d-ysQNPU.js";import{t as Ee}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as M}from"./md-Textarea-D5oizzXs.js";import{t as N}from"./md-Input-CXcSl6a3.js";import{t as De}from"./md-clipboard-BYFl_-FZ.js";var Oe=T({name:`file-plus-corner`,size:24,node:[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]],aliases:[`file-plus-2`]}),ke=T({name:`send`,size:24,node:[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]}),P={class:`space-y-4 flex-1 overflow-y-auto pr-1`},F={class:`flex justify-end gap-2`},I={class:`flex items-center justify-between gap-2`},L={class:`flex min-w-0 items-center gap-2`},R={class:`break-all text-sm`},z={key:0,class:`bg-muted text-muted-foreground shrink-0 rounded px-1.5 py-0.5 text-[10px] leading-none`},B={key:0,class:`flex shrink-0 gap-1`},Ae={class:`flex flex-col gap-2`},V={class:`text-sm`},H={class:`flex justify-end gap-2`},U={key:0,class:`text-muted-foreground whitespace-pre-wrap break-all text-xs`},W={class:`space-y-2 mt-4 border rounded-md p-3`},je=o({__name:`QuickCommandManager`,props:{open:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=e,a=t,o=_(n.open),l=_(null);r(()=>n.open,e=>o.value=e),r(o,e=>{a(`update:open`,e),e||(l.value=null)});let p=Te(),{t:m}=te(),v=_(``),y=_(``);function ee(){v.value.trim()&&y.value.trim()&&(p.add(v.value.trim(),y.value.trim()),v.value=``,y.value=``)}let w=_(null),T=_(``),E=_(``);function D(e){e.builtin||(l.value=null,w.value=e.id,T.value=e.label,E.value=e.template)}function ne(){w.value=null}function re(){T.value.trim()&&E.value.trim()&&(p.update(w.value,T.value.trim(),E.value.trim()),w.value=null)}return(e,t)=>(c(),f(S(me),{open:o.value,"onUpdate:open":t[6]||=e=>o.value=e},{default:g(()=>[b(S(ge),{class:`max-h-[90vh] w-[92vw] flex flex-col sm:max-w-lg`},{default:g(()=>[b(S(he),null,{default:g(()=>[b(S(_e),null,{default:g(()=>[i(s(S(m)(`ai.quickCommand.title`)),1)]),_:1})]),_:1}),C(`div`,P,[(c(!0),u(h,null,d(S(p).commands,e=>(c(),u(`div`,{key:e.id,class:`flex flex-col gap-2 border rounded-md p-3`},[!e.builtin&&w.value===e.id?(c(),u(h,{key:0},[b(S(N),{modelValue:T.value,"onUpdate:modelValue":t[0]||=e=>T.value=e,placeholder:S(m)(`ai.quickCommand.namePlaceholder`)},null,8,[`modelValue`,`placeholder`]),b(S(M),{modelValue:E.value,"onUpdate:modelValue":t[1]||=e=>E.value=e,rows:`2`,placeholder:S(m)(`ai.quickCommand.templatePlaceholder`)},null,8,[`modelValue`,`placeholder`]),C(`div`,F,[b(S(O),{size:`xs`,onClick:re},{default:g(()=>[i(s(S(m)(`common.save`)),1)]),_:1}),b(S(O),{variant:`ghost`,size:`xs`,onClick:ne},{default:g(()=>[i(s(S(m)(`common.cancel`)),1)]),_:1})])],64)):(c(),u(h,{key:1},[C(`div`,I,[C(`div`,L,[C(`span`,R,s(e.label),1),e.builtin?(c(),u(`span`,z,s(S(m)(`ai.quickCommand.builtin`)),1)):x(``,!0)]),e.builtin?x(``,!0):(c(),u(`div`,B,[b(S(O),{variant:`ghost`,size:`xs`,onClick:t=>D(e)},{default:g(()=>[i(s(S(m)(`common.edit`)),1)]),_:1},8,[`onClick`]),b(S(A),{open:l.value===e.id,"onUpdate:open":t[3]||=e=>{e||(l.value=null)}},{default:g(()=>[b(S(j),{"as-child":``},{default:g(()=>[b(S(O),{variant:`outline`,size:`xs`,onClick:t=>l.value=e.id},{default:g(()=>[i(s(S(m)(`common.delete`)),1)]),_:1},8,[`onClick`])]),_:2},1024),b(S(k),{class:`w-auto p-3`},{default:g(()=>[C(`div`,Ae,[C(`p`,V,s(S(m)(`confirm.deleteItem`,{name:e.label})),1),C(`div`,H,[b(S(O),{size:`xs`,variant:`outline`,onClick:t[2]||=e=>l.value=null},{default:g(()=>[i(s(S(m)(`common.cancel`)),1)]),_:1}),b(S(O),{size:`xs`,onClick:t=>{S(p).remove(e.id),l.value=null}},{default:g(()=>[i(s(S(m)(`common.confirm`)),1)]),_:1},8,[`onClick`])])])]),_:2},1024)]),_:2},1032,[`open`])]))]),e.builtin?(c(),u(`p`,U,s(e.template),1)):x(``,!0)],64))]))),128))]),C(`div`,W,[b(S(N),{modelValue:v.value,"onUpdate:modelValue":t[4]||=e=>v.value=e,placeholder:S(m)(`ai.quickCommand.nameExamplePlaceholder`)},null,8,[`modelValue`,`placeholder`]),b(S(M),{modelValue:y.value,"onUpdate:modelValue":t[5]||=e=>y.value=e,rows:`2`,placeholder:S(m)(`ai.quickCommand.templateExamplePlaceholder`)},null,8,[`modelValue`,`placeholder`]),b(S(O),{class:`w-full`,onClick:ee},{default:g(()=>[i(s(S(m)(`common.add`)),1)]),_:1})])]),_:1})]),_:1},8,[`open`]))}}),Me={class:`space-x-1 flex items-center`},Ne={class:`flex-1 truncate`},Pe={key:0,class:`mb-3 flex flex-wrap gap-2 overflow-x-auto pb-1`},Fe={key:1,class:`text-muted-foreground flex items-center gap-2 border rounded-md border-dashed px-3 py-1 text-xs`},Ie={key:2,class:`custom-scroll space-y-3 chat-container mb-4 flex-1 overflow-y-auto pr-2`},Le={key:0,class:`text-muted-foreground mb-1 italic`},Re={class:`mt-1 flex gap-1`},ze={key:3,class:`relative mt-2`},Be={class:`bg-background border-border flex flex-col items-baseline gap-2 border rounded-xl px-3 py-2 pr-12 shadow-inner`},Ve={class:`text-xs`},He=1500,G=`ai_memory_context`,K=`ai_conversation_list`,q=Ee(o({__name:`AIAssistantPanel`,props:{open:{type:Boolean}},emits:[`update:open`],setup(o,{emit:T}){let k=o,A=T,j=Ce(),{editor:Ee}=y(j),{toggleAIImageDialog:N}=e(),P=_(k.open);r(()=>k.open,e=>P.value=e),r(P,e=>{A(`update:open`,e),e&&$(!0)});let F=_(``),I=_([]),L=_(null),R=_(!1),{loading:z,abort:B,fetchSSE:Ae}=ne(),V=_(null),H=_(null),U=_(!1),W=_(!1),q=_(null),J=_([]),Y=_([]),Ue=we(),{apiKey:We,endpoint:Ge,model:Ke,temperature:qe,maxToken:Je,type:Ye}=y(Ue),Xe=Te(),{t:X}=te(),Ze=_(null);function Qe(){let e=Ze.value?.$el;return e instanceof HTMLTextAreaElement?e:null}function $e(){Qe()?.focus()}function et(e){e.preventDefault(),l($e)}function tt(){return j.getSelection()}function nt(e){let t=tt();F.value=e.buildPrompt(t),L.value=null,l(()=>{let e=Qe();e?.focus(),e&&e.setSelectionRange(e.value.length,e.value.length)})}ee(async()=>{J.value=await t.getJSON(K,[]);let e=await t.getJSON(G,[]);Y.value=e.length>0?e.map(e=>({...e,id:e.id||n()})):Z(),await $(!0)});function Z(){return[{role:`assistant`,content:X(`ai.chat.greeting`),id:n()}]}function rt(){let e=Y.value.find(e=>e.role===`user`);if(!e)return X(`ai.chat.conversationTitle`,{date:new Date().toLocaleString()});let t=e.content.trim();return t.length>20&&(t=`${t.substring(0,20)}...`),t}async function Q(){if(!(Y.value.length<=1)){if(q.value){let e=J.value.find(e=>e.id===q.value);e&&(e.timestamp=Date.now(),await t.setJSON(K,J.value))}else{q.value=n();let e={id:q.value,name:rt(),timestamp:Date.now()};J.value.unshift(e),await t.setJSON(K,J.value)}await t.setJSON(`ai_conversation_${q.value}`,Y.value)}}async function it(){await Q(),q.value=null,Y.value=Z(),await t.setJSON(G,Y.value),await $(!0),w.success(X(`ai.chat.sessionCreated`))}async function at(e){await Q();let r=await t.getJSON(`ai_conversation_${e}`,[]);r.length>0&&(Y.value=r.map(e=>({...e,id:e.id||n()})),q.value=e,await t.setJSON(G,Y.value),await $(!0),w.success(X(`ai.chat.conversationLoaded`)))}async function ot(e){J.value=J.value.filter(t=>t.id!==e),await t.setJSON(K,J.value),await t.remove(`ai_conversation_${e}`),q.value===e&&(q.value=null,Y.value=Z(),await t.setJSON(G,Y.value)),w.success(X(`ai.chat.conversationDeleted`))}function st(){R.value=!1,$(!0)}function ct(){A(`update:open`,!1),setTimeout(()=>{N(!0)},100)}function lt(e){if(!(e.isComposing||e.keyCode===229)){if(e.key===`Enter`&&!e.shiftKey)e.preventDefault(),_t();else if(e.key===`ArrowUp`){if(e.preventDefault(),I.value.length===0)return;L.value===null?L.value=I.value.length-1:L.value>0&&L.value--,F.value=I.value[L.value]||``}else if(e.key===`ArrowDown`){if(e.preventDefault(),L.value===null)return;L.value<I.value.length-1?(L.value++,F.value=I.value[L.value]||``):(L.value=null,F.value=``)}}}async function ut(e,t){De(e),V.value=t,setTimeout(()=>V.value=null,He)}function dt(e,t){j.insertAtCursor(e),H.value=t,setTimeout(()=>H.value=null,He),w.success(X(`ai.chat.insertedToDoc`))}async function ft(){B(),q.value&&=(J.value=J.value.filter(e=>e.id!==q.value),await t.setJSON(K,J.value),await t.remove(`ai_conversation_${q.value}`),null),Y.value=Z(),await t.setJSON(G,Y.value),$(!0),w.success(X(`ai.chat.sessionCleared`))}function pt(){B();let e=Y.value[Y.value.length-1];e?.role===`assistant`&&(e.done=!0),$(!0)}async function $(e=!1){await l();let t=document.querySelector(`.chat-container`);if(t){let n=t.scrollTop+t.clientHeight>=t.scrollHeight-50;(e||n)&&(t.scrollTop=t.scrollHeight,await new Promise(e=>setTimeout(e,50)))}}function mt(){U.value=!U.value}async function ht(){if(z.value)return;let e=Y.value.length-1;if(e<0||Y.value[e].role!==`assistant`)return;Y.value.splice(e,1),z.value=!0,Y.value.push({role:`assistant`,content:``,reasoning:``,done:!1});let t=Y.value[Y.value.length-1];await $(!0),await gt(t)}async function gt(e){let n=Y.value.slice(-12).filter((e,t,n)=>!(t===n.length-1&&e.role===`assistant`&&!e.done)&&(t!==0||e.role!==`assistant`)),r;if(U.value){let e=[];for(let t=n.length-1;t>=0&&e.length<2;t--){let r=n[t];(e.length===0||r.role===`user`||r.role===`assistant`)&&e.unshift(r)}r=e}else r=n.slice(-10);let i=U.value?[{role:`system`,content:X(`ai.chat.systemQuote`,{content:Ee.value?.state.doc.toString()??``})}]:[],a=[{role:`system`,content:X(`ai.chat.systemPrompt`)},...i,...r],o={model:Ke.value,messages:a,temperature:qe.value,max_tokens:Je.value,stream:!0},s=ie(We.value,Ye.value),c=re(Ge.value,`chat`);try{await Ae(c,s,o,{onDelta(t){let n=Y.value[Y.value.length-1];n===e&&(n.content+=t,$())},onReasoningDelta(t){let n=Y.value[Y.value.length-1];n===e&&(n.reasoning=(n.reasoning||``)+t,$())},onDone(){let e=Y.value[Y.value.length-1];e.role===`assistant`&&(e.done=!0,$(!0))}})}catch(e){Y.value[Y.value.length-1].content=X(`ai.chat.requestFailed`,{message:e.message}),await $(!0)}finally{await t.setJSON(G,Y.value),await Q()}}async function _t(){if(!F.value.trim()||z.value)return;I.value.push(F.value.trim()),L.value=null,z.value=!0;let e=F.value.trim();Y.value.push({role:`user`,content:e}),F.value=``,Y.value.push({role:`assistant`,content:``,reasoning:``,done:!1});let t=Y.value[Y.value.length-1];await $(!0),await gt(t)}return(e,t)=>{let n=je,r=ue;return c(),f(S(me),{open:S(P),"onUpdate:open":t[6]||=e=>p(P)?P.value=e:null},{default:g(()=>[b(S(ge),{class:`bg-card text-card-foreground h-dvh max-h-dvh w-full flex flex-col rounded-none shadow-xl sm:max-h-[80vh] sm:max-w-2xl sm:rounded-xl`,onOpenAutoFocus:et},{default:g(()=>[b(S(he),{class:`space-y-1 flex flex-col items-start`},{default:g(()=>[C(`div`,Me,[b(S(_e),null,{default:g(()=>[i(s(S(X)(`ai.chat.title`)),1)]),_:1}),b(S(O),{title:S(R)?S(X)(`ai.chat.title`):S(X)(`ai.chat.configParams`),"aria-label":S(R)?S(X)(`ai.chat.title`):S(X)(`ai.chat.configParams`),variant:`ghost`,size:`icon`,onClick:t[0]||=e=>R.value=!S(R)},{default:g(()=>[S(R)?(c(),f(S(se),{key:0,class:`h-4 w-4`})):(c(),f(S(fe),{key:1,class:`h-4 w-4`}))]),_:1},8,[`title`,`aria-label`]),b(S(O),{title:S(X)(`ai.chat.imageGen`),"aria-label":S(X)(`ai.chat.imageGen`),variant:`ghost`,size:`icon`,onClick:t[1]||=e=>ct()},{default:g(()=>[b(S(oe),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),b(S(O),{title:S(X)(`ai.chat.newSession`),"aria-label":S(X)(`ai.chat.newSession`),variant:`ghost`,size:`icon`,onClick:it},{default:g(()=>[b(S(de),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),b(S(be),null,{default:g(()=>[b(S(xe),{"as-child":``},{default:g(()=>[b(S(O),{title:S(X)(`ai.chat.loadConversation`),"aria-label":S(X)(`ai.chat.loadConversation`),variant:`ghost`,size:`icon`},{default:g(()=>[b(S(ae),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`])]),_:1}),b(S(ye),{align:`end`,class:`max-h-64 overflow-y-auto w-64 z-[9999]`},{default:g(()=>[S(J).length===0?(c(),f(S(Se),{key:0,disabled:``,class:`text-muted-foreground text-sm`},{default:g(()=>[i(s(S(X)(`ai.chat.noSavedConversations`)),1)]),_:1})):x(``,!0),(c(!0),u(h,null,d(S(J),e=>(c(),f(S(Se),{key:e.id,class:`flex items-center justify-between gap-2 cursor-pointer`,onClick:t=>at(e.id)},{default:g(()=>[C(`span`,Ne,s(e.name),1),b(S(O),{variant:`ghost`,size:`icon`,class:`h-6 w-6 flex-shrink-0`,"aria-label":S(X)(`common.delete`),title:S(X)(`common.delete`),onClick:m(t=>ot(e.id),[`stop`])},{default:g(()=>[b(S(pe),{class:`h-3 w-3`})]),_:1},8,[`aria-label`,`title`,`onClick`])]),_:2},1032,[`onClick`]))),128))]),_:1})]),_:1}),b(S(O),{title:S(X)(`ai.chat.clearConversation`),"aria-label":S(X)(`ai.chat.clearConversation`),variant:`ghost`,size:`icon`,onClick:ft},{default:g(()=>[b(S(pe),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`])]),b(S(ve),{class:`text-muted-foreground text-sm`},{default:g(()=>[i(s(S(X)(`ai.chat.description`)),1)]),_:1})]),_:1}),S(R)?x(``,!0):(c(),u(`div`,Pe,[S(Xe).commands.length?(c(!0),u(h,{key:0},d(S(Xe).commands,e=>(c(),f(S(O),{key:e.id,variant:`secondary`,size:`sm`,class:`text-xs`,onClick:t=>nt(e)},{default:g(()=>[i(s(e.label),1)]),_:2},1032,[`onClick`]))),128)):(c(),u(`div`,Fe,s(S(X)(`ai.chat.noQuickCommands`)),1)),b(S(O),{variant:`ghost`,size:`sm`,title:S(X)(`ai.chat.manageCommands`),"aria-label":S(X)(`ai.chat.manageCommands`),onClick:t[2]||=e=>W.value=!0},{default:g(()=>[b(S(de),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),b(n,{open:S(W),"onUpdate:open":t[3]||=e=>p(W)?W.value=e:null},null,8,[`open`])])),S(R)?(c(),f(r,{key:1,class:`mb-4 w-full border rounded-md p-4`,onSaved:st})):x(``,!0),S(R)?x(``,!0):(c(),u(`div`,Ie,[(c(!0),u(h,null,d(S(Y),(e,t)=>(c(),u(`div`,{key:e.id||t,class:a([`flex flex-col`,e.role===`user`?`items-end`:`items-start`])},[C(`div`,{class:a([`ring-border/20 max-w-[75%] rounded-2xl px-4 py-2 text-sm leading-relaxed shadow-xs ring-1`,e.role===`user`?`bg-black text-white dark:bg-primary dark:text-primary-foreground`:`bg-gray-100 text-gray-800 dark:bg-muted/60 dark:text-muted-foreground`])},[e.reasoning?(c(),u(`div`,Le,s(e.reasoning),1)):x(``,!0),C(`div`,{class:a([`whitespace-pre-wrap`,e.content?``:`animate-pulse text-muted-foreground`])},s(e.content||(e.role===`assistant`&&!e.done?S(X)(`ai.chat.thinking`):``)),3)],2),C(`div`,Re,[t>0&&(e.role!==`assistant`||t!==S(Y).length-1||e.done)?(c(),f(S(O),{key:0,variant:`ghost`,size:`icon`,class:`h-5 w-5 p-1`,title:S(X)(`ai.chat.copyContent`),"aria-label":S(X)(`ai.chat.copyContent`),onClick:n=>ut(e.content,t)},{default:g(()=>[S(V)===t?(c(),f(S(E),{key:0,class:`h-3 w-3 text-green-600`})):(c(),f(S(D),{key:1,class:`text-muted-foreground h-3 w-3`}))]),_:2},1032,[`title`,`aria-label`,`onClick`])):x(``,!0),e.role===`assistant`&&(e.done||t<S(Y).length-1)&&t>0?(c(),f(S(O),{key:1,variant:`ghost`,size:`icon`,class:`h-5 w-5 p-1`,title:S(X)(`ai.chat.insertDoc`),"aria-label":S(X)(`ai.chat.insertDoc`),onClick:n=>dt(e.content,t)},{default:g(()=>[S(H)===t?(c(),f(S(E),{key:0,class:`h-3 w-3 text-green-600`})):(c(),f(S(Oe),{key:1,class:`text-muted-foreground h-3 w-3`}))]),_:2},1032,[`title`,`aria-label`,`onClick`])):x(``,!0),e.role===`assistant`&&e.done&&t===S(Y).length-1?(c(),f(S(O),{key:2,variant:`ghost`,size:`icon`,class:`h-5 w-5 p-1`,title:S(X)(`ai.chat.regenerate`),"aria-label":S(X)(`ai.chat.regenerate`),onClick:ht},{default:g(()=>[b(S(ce),{class:`text-muted-foreground h-3 w-3`})]),_:1},8,[`title`,`aria-label`])):x(``,!0)])],2))),128))])),S(R)?x(``,!0):(c(),u(`div`,ze,[C(`div`,Be,[b(S(M),{ref_key:`chatInputRef`,ref:Ze,modelValue:S(F),"onUpdate:modelValue":t[4]||=e=>p(F)?F.value=e:null,placeholder:S(X)(`ai.chat.inputPlaceholder`),rows:`2`,class:`custom-scroll min-h-16 w-full resize-none border-none bg-transparent p-0 focus-visible:outline-hidden focus:outline-hidden focus-visible:ring-0 focus:ring-0 focus-visible:ring-offset-0 focus:ring-offset-0 focus-visible:ring-transparent focus:ring-transparent`,onKeydown:lt},null,8,[`modelValue`,`placeholder`]),b(S(O),{size:`sm`,variant:`outline`,class:a([`h-8 flex items-center gap-1 rounded-md px-3 font-medium transition-colors duration-150`,[S(U)?`bg-primary text-white border-primary dark:bg-white dark:text-black dark:border-white`:`bg-background text-muted-foreground border-border hover:text-foreground hover:border-foreground dark:bg-muted dark:text-gray-400 dark:hover:text-white dark:hover:border-white/60`]]),"aria-label":S(X)(`ai.chat.quoteFullText`),onClick:mt},{default:g(()=>[(c(),f(v(S(U)?S(E):S(D)),{class:`h-4 w-4`})),C(`span`,Ve,s(S(X)(`ai.chat.quoteFullText`)),1)]),_:1},8,[`class`,`aria-label`]),b(S(O),{disabled:!S(F).trim()&&!S(z),size:`icon`,class:`absolute bottom-3 right-3 rounded-full disabled:opacity-40 bg-primary hover:bg-primary/90 text-primary-foreground`,"aria-label":S(z)?S(X)(`common.pause`):S(X)(`common.send`),onClick:t[5]||=e=>S(z)?pt():_t()},{default:g(()=>[S(z)?(c(),f(S(le),{key:0,class:`h-4 w-4`})):(c(),f(S(ke),{key:1,class:`h-4 w-4`}))]),_:1},8,[`disabled`,`aria-label`])])]))]),_:1})]),_:1},8,[`open`])}}}),[[`__scopeId`,`data-v-96c42179`]]);export{q as default};
1
+ import{t as e}from"./md-ui-BLkQlUQC.js";import{f as t,h as n}from"./md-storage-B8BAILFb.js";import{$ as r,C as i,Ct as a,E as o,Et as s,H as c,I as l,S as u,W as d,b as f,ct as p,f as m,m as h,nt as g,pt as _,q as v,r as y,w as b,x,xt as S,y as C,z as ee}from"./md-vendor_vue-BeOfKbk1.js";import{n as te}from"./md-vue-i18n-Cxvw1c3e.js";import{n as w}from"./md-lib-CvTniYNx.js";import{t as T}from"./md-createLucideIcon-BXdNAL-d.js";import{t as E}from"./md-check-lU7D5avq.js";import{t as D}from"./md-copy-FPkQvYMT.js";import{a as ne,i as re,r as ie}from"./md-useLocalizedAIServices-DXRSjl-Y.js";import{t as ae}from"./md-folder-open-BeUSQQdX.js";import{t as oe}from"./md-image-DZKTZmYn.js";import{n as se,t as ce}from"./md-refresh-ccw-B0suwZhW.js";import{n as le,t as ue}from"./md-AIConfig-DipZ3Ptv.js";import{t as de}from"./md-plus-ByJ8LvCm.js";import{t as fe}from"./md-settings-BQ0oxr26.js";import{t as pe}from"./md-trash-_QL9lZ9Z.js";import{n as O}from"./md-button-BSiUqWkb.js";import{i as me,n as he,r as ge,t as _e}from"./md-DialogTitle-DckujrLp.js";import{t as ve}from"./md-DialogDescription-I_Nb5r3l.js";import{n as k,r as A,t as j}from"./md-PopoverTrigger-BkrNONB4.js";import{n as ye,r as be,t as xe}from"./md-DropdownMenuTrigger-Dc5A4zvK.js";import{t as Se}from"./md-DropdownMenuItem-BwyJT-E2.js";import{n as Ce}from"./md-editor-dmKdA3Kt.js";import{t as we}from"./md-aiConfig-BZ5KFSrp.js";import{t as Te}from"./md-quickCommands-Cz9hGooM.js";import{t as Ee}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as M}from"./md-Textarea-D5oizzXs.js";import{t as N}from"./md-Input-CXcSl6a3.js";import{t as De}from"./md-clipboard-2tuieAqv.js";var Oe=T({name:`file-plus-corner`,size:24,node:[[`path`,{d:`M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35`,key:`17jvcc`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M14 19h6`,key:`bvotb8`}],[`path`,{d:`M17 16v6`,key:`18yu1i`}]],aliases:[`file-plus-2`]}),ke=T({name:`send`,size:24,node:[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]}),P={class:`space-y-4 flex-1 overflow-y-auto pr-1`},F={class:`flex justify-end gap-2`},I={class:`flex items-center justify-between gap-2`},L={class:`flex min-w-0 items-center gap-2`},R={class:`break-all text-sm`},z={key:0,class:`bg-muted text-muted-foreground shrink-0 rounded px-1.5 py-0.5 text-[10px] leading-none`},B={key:0,class:`flex shrink-0 gap-1`},Ae={class:`flex flex-col gap-2`},V={class:`text-sm`},H={class:`flex justify-end gap-2`},U={key:0,class:`text-muted-foreground whitespace-pre-wrap break-all text-xs`},W={class:`space-y-2 mt-4 border rounded-md p-3`},je=o({__name:`QuickCommandManager`,props:{open:{type:Boolean}},emits:[`update:open`],setup(e,{emit:t}){let n=e,a=t,o=_(n.open),l=_(null);r(()=>n.open,e=>o.value=e),r(o,e=>{a(`update:open`,e),e||(l.value=null)});let p=Te(),{t:m}=te(),v=_(``),y=_(``);function ee(){v.value.trim()&&y.value.trim()&&(p.add(v.value.trim(),y.value.trim()),v.value=``,y.value=``)}let w=_(null),T=_(``),E=_(``);function D(e){e.builtin||(l.value=null,w.value=e.id,T.value=e.label,E.value=e.template)}function ne(){w.value=null}function re(){T.value.trim()&&E.value.trim()&&(p.update(w.value,T.value.trim(),E.value.trim()),w.value=null)}return(e,t)=>(c(),f(S(me),{open:o.value,"onUpdate:open":t[6]||=e=>o.value=e},{default:g(()=>[b(S(ge),{class:`max-h-[90vh] w-[92vw] flex flex-col sm:max-w-lg`},{default:g(()=>[b(S(he),null,{default:g(()=>[b(S(_e),null,{default:g(()=>[i(s(S(m)(`ai.quickCommand.title`)),1)]),_:1})]),_:1}),C(`div`,P,[(c(!0),u(h,null,d(S(p).commands,e=>(c(),u(`div`,{key:e.id,class:`flex flex-col gap-2 border rounded-md p-3`},[!e.builtin&&w.value===e.id?(c(),u(h,{key:0},[b(S(N),{modelValue:T.value,"onUpdate:modelValue":t[0]||=e=>T.value=e,placeholder:S(m)(`ai.quickCommand.namePlaceholder`)},null,8,[`modelValue`,`placeholder`]),b(S(M),{modelValue:E.value,"onUpdate:modelValue":t[1]||=e=>E.value=e,rows:`2`,placeholder:S(m)(`ai.quickCommand.templatePlaceholder`)},null,8,[`modelValue`,`placeholder`]),C(`div`,F,[b(S(O),{size:`xs`,onClick:re},{default:g(()=>[i(s(S(m)(`common.save`)),1)]),_:1}),b(S(O),{variant:`ghost`,size:`xs`,onClick:ne},{default:g(()=>[i(s(S(m)(`common.cancel`)),1)]),_:1})])],64)):(c(),u(h,{key:1},[C(`div`,I,[C(`div`,L,[C(`span`,R,s(e.label),1),e.builtin?(c(),u(`span`,z,s(S(m)(`ai.quickCommand.builtin`)),1)):x(``,!0)]),e.builtin?x(``,!0):(c(),u(`div`,B,[b(S(O),{variant:`ghost`,size:`xs`,onClick:t=>D(e)},{default:g(()=>[i(s(S(m)(`common.edit`)),1)]),_:1},8,[`onClick`]),b(S(A),{open:l.value===e.id,"onUpdate:open":t[3]||=e=>{e||(l.value=null)}},{default:g(()=>[b(S(j),{"as-child":``},{default:g(()=>[b(S(O),{variant:`outline`,size:`xs`,onClick:t=>l.value=e.id},{default:g(()=>[i(s(S(m)(`common.delete`)),1)]),_:1},8,[`onClick`])]),_:2},1024),b(S(k),{class:`w-auto p-3`},{default:g(()=>[C(`div`,Ae,[C(`p`,V,s(S(m)(`confirm.deleteItem`,{name:e.label})),1),C(`div`,H,[b(S(O),{size:`xs`,variant:`outline`,onClick:t[2]||=e=>l.value=null},{default:g(()=>[i(s(S(m)(`common.cancel`)),1)]),_:1}),b(S(O),{size:`xs`,onClick:t=>{S(p).remove(e.id),l.value=null}},{default:g(()=>[i(s(S(m)(`common.confirm`)),1)]),_:1},8,[`onClick`])])])]),_:2},1024)]),_:2},1032,[`open`])]))]),e.builtin?(c(),u(`p`,U,s(e.template),1)):x(``,!0)],64))]))),128))]),C(`div`,W,[b(S(N),{modelValue:v.value,"onUpdate:modelValue":t[4]||=e=>v.value=e,placeholder:S(m)(`ai.quickCommand.nameExamplePlaceholder`)},null,8,[`modelValue`,`placeholder`]),b(S(M),{modelValue:y.value,"onUpdate:modelValue":t[5]||=e=>y.value=e,rows:`2`,placeholder:S(m)(`ai.quickCommand.templateExamplePlaceholder`)},null,8,[`modelValue`,`placeholder`]),b(S(O),{class:`w-full`,onClick:ee},{default:g(()=>[i(s(S(m)(`common.add`)),1)]),_:1})])]),_:1})]),_:1},8,[`open`]))}}),Me={class:`space-x-1 flex items-center`},Ne={class:`flex-1 truncate`},Pe={key:0,class:`mb-3 flex flex-wrap gap-2 overflow-x-auto pb-1`},Fe={key:1,class:`text-muted-foreground flex items-center gap-2 border rounded-md border-dashed px-3 py-1 text-xs`},Ie={key:2,class:`custom-scroll space-y-3 chat-container mb-4 flex-1 overflow-y-auto pr-2`},Le={key:0,class:`text-muted-foreground mb-1 italic`},Re={class:`mt-1 flex gap-1`},ze={key:3,class:`relative mt-2`},Be={class:`bg-background border-border flex flex-col items-baseline gap-2 border rounded-xl px-3 py-2 pr-12 shadow-inner`},Ve={class:`text-xs`},He=1500,G=`ai_memory_context`,K=`ai_conversation_list`,q=Ee(o({__name:`AIAssistantPanel`,props:{open:{type:Boolean}},emits:[`update:open`],setup(o,{emit:T}){let k=o,A=T,j=Ce(),{editor:Ee}=y(j),{toggleAIImageDialog:N}=e(),P=_(k.open);r(()=>k.open,e=>P.value=e),r(P,e=>{A(`update:open`,e),e&&$(!0)});let F=_(``),I=_([]),L=_(null),R=_(!1),{loading:z,abort:B,fetchSSE:Ae}=ne(),V=_(null),H=_(null),U=_(!1),W=_(!1),q=_(null),J=_([]),Y=_([]),Ue=we(),{apiKey:We,endpoint:Ge,model:Ke,temperature:qe,maxToken:Je,type:Ye}=y(Ue),Xe=Te(),{t:X}=te(),Ze=_(null);function Qe(){let e=Ze.value?.$el;return e instanceof HTMLTextAreaElement?e:null}function $e(){Qe()?.focus()}function et(e){e.preventDefault(),l($e)}function tt(){return j.getSelection()}function nt(e){let t=tt();F.value=e.buildPrompt(t),L.value=null,l(()=>{let e=Qe();e?.focus(),e&&e.setSelectionRange(e.value.length,e.value.length)})}ee(async()=>{J.value=await t.getJSON(K,[]);let e=await t.getJSON(G,[]);Y.value=e.length>0?e.map(e=>({...e,id:e.id||n()})):Z(),await $(!0)});function Z(){return[{role:`assistant`,content:X(`ai.chat.greeting`),id:n()}]}function rt(){let e=Y.value.find(e=>e.role===`user`);if(!e)return X(`ai.chat.conversationTitle`,{date:new Date().toLocaleString()});let t=e.content.trim();return t.length>20&&(t=`${t.substring(0,20)}...`),t}async function Q(){if(!(Y.value.length<=1)){if(q.value){let e=J.value.find(e=>e.id===q.value);e&&(e.timestamp=Date.now(),await t.setJSON(K,J.value))}else{q.value=n();let e={id:q.value,name:rt(),timestamp:Date.now()};J.value.unshift(e),await t.setJSON(K,J.value)}await t.setJSON(`ai_conversation_${q.value}`,Y.value)}}async function it(){await Q(),q.value=null,Y.value=Z(),await t.setJSON(G,Y.value),await $(!0),w.success(X(`ai.chat.sessionCreated`))}async function at(e){await Q();let r=await t.getJSON(`ai_conversation_${e}`,[]);r.length>0&&(Y.value=r.map(e=>({...e,id:e.id||n()})),q.value=e,await t.setJSON(G,Y.value),await $(!0),w.success(X(`ai.chat.conversationLoaded`)))}async function ot(e){J.value=J.value.filter(t=>t.id!==e),await t.setJSON(K,J.value),await t.remove(`ai_conversation_${e}`),q.value===e&&(q.value=null,Y.value=Z(),await t.setJSON(G,Y.value)),w.success(X(`ai.chat.conversationDeleted`))}function st(){R.value=!1,$(!0)}function ct(){A(`update:open`,!1),setTimeout(()=>{N(!0)},100)}function lt(e){if(!(e.isComposing||e.keyCode===229)){if(e.key===`Enter`&&!e.shiftKey)e.preventDefault(),_t();else if(e.key===`ArrowUp`){if(e.preventDefault(),I.value.length===0)return;L.value===null?L.value=I.value.length-1:L.value>0&&L.value--,F.value=I.value[L.value]||``}else if(e.key===`ArrowDown`){if(e.preventDefault(),L.value===null)return;L.value<I.value.length-1?(L.value++,F.value=I.value[L.value]||``):(L.value=null,F.value=``)}}}async function ut(e,t){De(e),V.value=t,setTimeout(()=>V.value=null,He)}function dt(e,t){j.insertAtCursor(e),H.value=t,setTimeout(()=>H.value=null,He),w.success(X(`ai.chat.insertedToDoc`))}async function ft(){B(),q.value&&=(J.value=J.value.filter(e=>e.id!==q.value),await t.setJSON(K,J.value),await t.remove(`ai_conversation_${q.value}`),null),Y.value=Z(),await t.setJSON(G,Y.value),$(!0),w.success(X(`ai.chat.sessionCleared`))}function pt(){B();let e=Y.value[Y.value.length-1];e?.role===`assistant`&&(e.done=!0),$(!0)}async function $(e=!1){await l();let t=document.querySelector(`.chat-container`);if(t){let n=t.scrollTop+t.clientHeight>=t.scrollHeight-50;(e||n)&&(t.scrollTop=t.scrollHeight,await new Promise(e=>setTimeout(e,50)))}}function mt(){U.value=!U.value}async function ht(){if(z.value)return;let e=Y.value.length-1;if(e<0||Y.value[e].role!==`assistant`)return;Y.value.splice(e,1),z.value=!0,Y.value.push({role:`assistant`,content:``,reasoning:``,done:!1});let t=Y.value[Y.value.length-1];await $(!0),await gt(t)}async function gt(e){let n=Y.value.slice(-12).filter((e,t,n)=>!(t===n.length-1&&e.role===`assistant`&&!e.done)&&(t!==0||e.role!==`assistant`)),r;if(U.value){let e=[];for(let t=n.length-1;t>=0&&e.length<2;t--){let r=n[t];(e.length===0||r.role===`user`||r.role===`assistant`)&&e.unshift(r)}r=e}else r=n.slice(-10);let i=U.value?[{role:`system`,content:X(`ai.chat.systemQuote`,{content:Ee.value?.state.doc.toString()??``})}]:[],a=[{role:`system`,content:X(`ai.chat.systemPrompt`)},...i,...r],o={model:Ke.value,messages:a,temperature:qe.value,max_tokens:Je.value,stream:!0},s=ie(We.value,Ye.value),c=re(Ge.value,`chat`);try{await Ae(c,s,o,{onDelta(t){let n=Y.value[Y.value.length-1];n===e&&(n.content+=t,$())},onReasoningDelta(t){let n=Y.value[Y.value.length-1];n===e&&(n.reasoning=(n.reasoning||``)+t,$())},onDone(){let e=Y.value[Y.value.length-1];e.role===`assistant`&&(e.done=!0,$(!0))}})}catch(e){Y.value[Y.value.length-1].content=X(`ai.chat.requestFailed`,{message:e.message}),await $(!0)}finally{await t.setJSON(G,Y.value),await Q()}}async function _t(){if(!F.value.trim()||z.value)return;I.value.push(F.value.trim()),L.value=null,z.value=!0;let e=F.value.trim();Y.value.push({role:`user`,content:e}),F.value=``,Y.value.push({role:`assistant`,content:``,reasoning:``,done:!1});let t=Y.value[Y.value.length-1];await $(!0),await gt(t)}return(e,t)=>{let n=je,r=ue;return c(),f(S(me),{open:S(P),"onUpdate:open":t[6]||=e=>p(P)?P.value=e:null},{default:g(()=>[b(S(ge),{class:`bg-card text-card-foreground h-dvh max-h-dvh w-full flex flex-col rounded-none shadow-xl sm:max-h-[80vh] sm:max-w-2xl sm:rounded-xl`,onOpenAutoFocus:et},{default:g(()=>[b(S(he),{class:`space-y-1 flex flex-col items-start`},{default:g(()=>[C(`div`,Me,[b(S(_e),null,{default:g(()=>[i(s(S(X)(`ai.chat.title`)),1)]),_:1}),b(S(O),{title:S(R)?S(X)(`ai.chat.title`):S(X)(`ai.chat.configParams`),"aria-label":S(R)?S(X)(`ai.chat.title`):S(X)(`ai.chat.configParams`),variant:`ghost`,size:`icon`,onClick:t[0]||=e=>R.value=!S(R)},{default:g(()=>[S(R)?(c(),f(S(se),{key:0,class:`h-4 w-4`})):(c(),f(S(fe),{key:1,class:`h-4 w-4`}))]),_:1},8,[`title`,`aria-label`]),b(S(O),{title:S(X)(`ai.chat.imageGen`),"aria-label":S(X)(`ai.chat.imageGen`),variant:`ghost`,size:`icon`,onClick:t[1]||=e=>ct()},{default:g(()=>[b(S(oe),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),b(S(O),{title:S(X)(`ai.chat.newSession`),"aria-label":S(X)(`ai.chat.newSession`),variant:`ghost`,size:`icon`,onClick:it},{default:g(()=>[b(S(de),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),b(S(be),null,{default:g(()=>[b(S(xe),{"as-child":``},{default:g(()=>[b(S(O),{title:S(X)(`ai.chat.loadConversation`),"aria-label":S(X)(`ai.chat.loadConversation`),variant:`ghost`,size:`icon`},{default:g(()=>[b(S(ae),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`])]),_:1}),b(S(ye),{align:`end`,class:`max-h-64 overflow-y-auto w-64 z-[9999]`},{default:g(()=>[S(J).length===0?(c(),f(S(Se),{key:0,disabled:``,class:`text-muted-foreground text-sm`},{default:g(()=>[i(s(S(X)(`ai.chat.noSavedConversations`)),1)]),_:1})):x(``,!0),(c(!0),u(h,null,d(S(J),e=>(c(),f(S(Se),{key:e.id,class:`flex items-center justify-between gap-2 cursor-pointer`,onClick:t=>at(e.id)},{default:g(()=>[C(`span`,Ne,s(e.name),1),b(S(O),{variant:`ghost`,size:`icon`,class:`h-6 w-6 flex-shrink-0`,"aria-label":S(X)(`common.delete`),title:S(X)(`common.delete`),onClick:m(t=>ot(e.id),[`stop`])},{default:g(()=>[b(S(pe),{class:`h-3 w-3`})]),_:1},8,[`aria-label`,`title`,`onClick`])]),_:2},1032,[`onClick`]))),128))]),_:1})]),_:1}),b(S(O),{title:S(X)(`ai.chat.clearConversation`),"aria-label":S(X)(`ai.chat.clearConversation`),variant:`ghost`,size:`icon`,onClick:ft},{default:g(()=>[b(S(pe),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`])]),b(S(ve),{class:`text-muted-foreground text-sm`},{default:g(()=>[i(s(S(X)(`ai.chat.description`)),1)]),_:1})]),_:1}),S(R)?x(``,!0):(c(),u(`div`,Pe,[S(Xe).commands.length?(c(!0),u(h,{key:0},d(S(Xe).commands,e=>(c(),f(S(O),{key:e.id,variant:`secondary`,size:`sm`,class:`text-xs`,onClick:t=>nt(e)},{default:g(()=>[i(s(e.label),1)]),_:2},1032,[`onClick`]))),128)):(c(),u(`div`,Fe,s(S(X)(`ai.chat.noQuickCommands`)),1)),b(S(O),{variant:`ghost`,size:`sm`,title:S(X)(`ai.chat.manageCommands`),"aria-label":S(X)(`ai.chat.manageCommands`),onClick:t[2]||=e=>W.value=!0},{default:g(()=>[b(S(de),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),b(n,{open:S(W),"onUpdate:open":t[3]||=e=>p(W)?W.value=e:null},null,8,[`open`])])),S(R)?(c(),f(r,{key:1,class:`mb-4 w-full border rounded-md p-4`,onSaved:st})):x(``,!0),S(R)?x(``,!0):(c(),u(`div`,Ie,[(c(!0),u(h,null,d(S(Y),(e,t)=>(c(),u(`div`,{key:e.id||t,class:a([`flex flex-col`,e.role===`user`?`items-end`:`items-start`])},[C(`div`,{class:a([`ring-border/20 max-w-[75%] rounded-2xl px-4 py-2 text-sm leading-relaxed shadow-xs ring-1`,e.role===`user`?`bg-black text-white dark:bg-primary dark:text-primary-foreground`:`bg-gray-100 text-gray-800 dark:bg-muted/60 dark:text-muted-foreground`])},[e.reasoning?(c(),u(`div`,Le,s(e.reasoning),1)):x(``,!0),C(`div`,{class:a([`whitespace-pre-wrap`,e.content?``:`animate-pulse text-muted-foreground`])},s(e.content||(e.role===`assistant`&&!e.done?S(X)(`ai.chat.thinking`):``)),3)],2),C(`div`,Re,[t>0&&(e.role!==`assistant`||t!==S(Y).length-1||e.done)?(c(),f(S(O),{key:0,variant:`ghost`,size:`icon`,class:`h-5 w-5 p-1`,title:S(X)(`ai.chat.copyContent`),"aria-label":S(X)(`ai.chat.copyContent`),onClick:n=>ut(e.content,t)},{default:g(()=>[S(V)===t?(c(),f(S(E),{key:0,class:`h-3 w-3 text-green-600`})):(c(),f(S(D),{key:1,class:`text-muted-foreground h-3 w-3`}))]),_:2},1032,[`title`,`aria-label`,`onClick`])):x(``,!0),e.role===`assistant`&&(e.done||t<S(Y).length-1)&&t>0?(c(),f(S(O),{key:1,variant:`ghost`,size:`icon`,class:`h-5 w-5 p-1`,title:S(X)(`ai.chat.insertDoc`),"aria-label":S(X)(`ai.chat.insertDoc`),onClick:n=>dt(e.content,t)},{default:g(()=>[S(H)===t?(c(),f(S(E),{key:0,class:`h-3 w-3 text-green-600`})):(c(),f(S(Oe),{key:1,class:`text-muted-foreground h-3 w-3`}))]),_:2},1032,[`title`,`aria-label`,`onClick`])):x(``,!0),e.role===`assistant`&&e.done&&t===S(Y).length-1?(c(),f(S(O),{key:2,variant:`ghost`,size:`icon`,class:`h-5 w-5 p-1`,title:S(X)(`ai.chat.regenerate`),"aria-label":S(X)(`ai.chat.regenerate`),onClick:ht},{default:g(()=>[b(S(ce),{class:`text-muted-foreground h-3 w-3`})]),_:1},8,[`title`,`aria-label`])):x(``,!0)])],2))),128))])),S(R)?x(``,!0):(c(),u(`div`,ze,[C(`div`,Be,[b(S(M),{ref_key:`chatInputRef`,ref:Ze,modelValue:S(F),"onUpdate:modelValue":t[4]||=e=>p(F)?F.value=e:null,placeholder:S(X)(`ai.chat.inputPlaceholder`),rows:`2`,class:`custom-scroll min-h-16 w-full resize-none border-none bg-transparent p-0 focus-visible:outline-hidden focus:outline-hidden focus-visible:ring-0 focus:ring-0 focus-visible:ring-offset-0 focus:ring-offset-0 focus-visible:ring-transparent focus:ring-transparent`,onKeydown:lt},null,8,[`modelValue`,`placeholder`]),b(S(O),{size:`sm`,variant:`outline`,class:a([`h-8 flex items-center gap-1 rounded-md px-3 font-medium transition-colors duration-150`,[S(U)?`bg-primary text-white border-primary dark:bg-white dark:text-black dark:border-white`:`bg-background text-muted-foreground border-border hover:text-foreground hover:border-foreground dark:bg-muted dark:text-gray-400 dark:hover:text-white dark:hover:border-white/60`]]),"aria-label":S(X)(`ai.chat.quoteFullText`),onClick:mt},{default:g(()=>[(c(),f(v(S(U)?S(E):S(D)),{class:`h-4 w-4`})),C(`span`,Ve,s(S(X)(`ai.chat.quoteFullText`)),1)]),_:1},8,[`class`,`aria-label`]),b(S(O),{disabled:!S(F).trim()&&!S(z),size:`icon`,class:`absolute bottom-3 right-3 rounded-full disabled:opacity-40 bg-primary hover:bg-primary/90 text-primary-foreground`,"aria-label":S(z)?S(X)(`common.pause`):S(X)(`common.send`),onClick:t[5]||=e=>S(z)?pt():_t()},{default:g(()=>[S(z)?(c(),f(S(le),{key:0,class:`h-4 w-4`})):(c(),f(S(ke),{key:1,class:`h-4 w-4`}))]),_:1},8,[`disabled`,`aria-label`])])]))]),_:1})]),_:1},8,[`open`])}}}),[[`__scopeId`,`data-v-96c42179`]]);export{q as default};
@@ -1 +1 @@
1
- import{a as e}from"./md-ai-service-options-BnJLTh-y.js";import{$ as t,C as n,E as r,Et as i,H as a,S as o,W as s,b as c,ct as l,m as u,nt as d,pt as f,r as p,v as m,w as h,x as g,xt as _,y as v}from"./md-vendor_vue-BeOfKbk1.js";import{n as y}from"./md-vue-i18n-Cxvw1c3e.js";import{t as b}from"./md-createLucideIcon-BXdNAL-d.js";import{a as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./md-useLocalizedAIServices-rhW4n8Ti.js";import{t as O}from"./md-info-DloVl59m.js";import{n as k}from"./md-button-BSiUqWkb.js";import{i as ee,n as te,r as ne,t as re}from"./md-TooltipTrigger-Bddfw7hJ.js";import{t as ie}from"./md-Label-BEXxOepa.js";import{a as ae,i as oe,n as se,r as ce,t as A}from"./md-SelectContent-BTj2mBZa.js";import{t as j}from"./md-aiConfig-CMgvtyLF.js";import{t as M}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as N}from"./md-Input-CXcSl6a3.js";var P=b({name:`pause`,size:24,node:[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]}),F={class:`custom-scroll space-y-4 max-h-[calc(100dvh-10rem)] overflow-y-auto text-xs sm:max-h-none sm:text-sm`},I={class:`font-medium`},L={key:0},R={key:1},z={class:`mt-2 flex flex-col gap-2 sm:flex-row`},B={key:2,class:`mt-1 text-xs text-gray-500`},V=M(r({__name:`AIConfig`,emits:[`saved`],setup(r,{emit:b}){let M=b,P=j(),{type:V,endpoint:H,model:U,apiKey:W,temperature:G,maxToken:K}=p(P),{t:q}=y(),{loading:J,fetchJSON:le}=x(),Y=f(``),{discoveredModels:ue,discovering:de,canDiscover:fe,discover:X,resetDiscovered:pe}=C({endpoint:H,apiKey:W,serviceType:V,kind:`chat`}),Z=D(),Q=m(()=>Z.value.serviceOptions.find(e=>e.value===V.value)||Z.value.serviceOptions[0]);t(V,()=>{Y.value=``}),t(U,()=>{Y.value=``});function $(e=!0){e&&(Y.value=q(`ai.config.saved`),M(`saved`))}function me(){pe(),P.reset(),Y.value=q(`ai.config.cleared`)}async function he(){Y.value=``,J.value=!0;let e=T(W.value,V.value);try{let t=S(H.value,`chat`),n={model:U.value,messages:[{role:`user`,content:`ping`}],temperature:0,max_tokens:1,stream:!1},r=await le(t,e,n);if(r.ok)Y.value=q(`ai.config.testSuccess`),$(!1);else{try{let{error:e}=JSON.parse(r.errorText);if(r.status===404&&(e?.code===`ModelNotOpen`||/not activated|未开通/i.test(e?.message))){Y.value=q(`ai.config.modelNotActivated`,{model:U.value}),$(!1);return}}catch{}Y.value=q(`ai.config.testFailed`,{status:r.status,statusText:r.statusText,errorText:r.errorText})}}catch(e){Y.value=q(`ai.config.testFailedMessage`,{message:e.message})}finally{J.value=!1}}async function ge(){Y.value=``;let e=await X();e&&(Y.value=e)}return(t,r)=>{let f=ie,p=se,m=ce,y=oe,b=A,x=ae,S=N,C=re,T=ne,D=ee,j=te,M=k;return a(),o(`div`,F,[v(`div`,I,i(_(q)(`ai.config.title`)),1),v(`div`,null,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.serviceType`)),1)]),_:1}),h(x,{modelValue:_(V),"onUpdate:modelValue":r[0]||=e=>l(V)?V.value=e:null},{default:d(()=>[h(m,{class:`w-full`},{default:d(()=>[h(p,null,{default:d(()=>[n(i(_(Q).label),1)]),_:1})]),_:1}),h(b,null,{default:d(()=>[(a(!0),o(u,null,s(_(Z).serviceOptions,e=>(a(),c(y,{key:e.value,value:e.value},{default:d(()=>[n(i(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),_(V)===_(e)?g(``,!0):(a(),o(`div`,L,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.apiEndpoint`)),1)]),_:1}),h(S,{modelValue:_(H),"onUpdate:modelValue":r[1]||=e=>l(H)?H.value=e:null,placeholder:_(q)(`ai.config.apiEndpointPlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])])),_(V)===_(e)?g(``,!0):(a(),o(`div`,R,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.apiKey`)),1)]),_:1}),h(_(w),{modelValue:_(W),"onUpdate:modelValue":r[2]||=e=>l(W)?W.value=e:null,placeholder:_(q)(`ai.config.apiKeyPlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])])),v(`div`,null,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.modelName`)),1)]),_:1}),h(E,{modelValue:_(U),"onUpdate:modelValue":r[3]||=e=>l(U)?U.value=e:null,"preset-models":_(Q).models,"discovered-models":_(ue),placeholder:_(q)(`ai.config.modelPlaceholder`),"select-placeholder":_(q)(`ai.config.selectModel`),"discover-label":_(q)(`ai.config.discoverModels`),"discovering-label":_(q)(`ai.config.discoveringModels`),"need-config-label":_(q)(`ai.config.discoverModelsNeedConfig`),discovering:_(de),"can-discover":_(fe),"show-discover":_(V)!==_(e),onDiscover:ge},null,8,[`modelValue`,`preset-models`,`discovered-models`,`placeholder`,`select-placeholder`,`discover-label`,`discovering-label`,`need-config-label`,`discovering`,`can-discover`,`show-discover`])]),v(`div`,null,[h(f,{class:`mb-1 flex items-center gap-1 text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.temperature`))+` `,1),h(j,null,{default:d(()=>[h(D,null,{default:d(()=>[h(C,{"as-child":``},{default:d(()=>[h(_(O),{class:`text-gray-500`,size:16})]),_:1}),h(T,{side:`top`,class:`z-[250]`},{default:d(()=>[v(`div`,null,i(_(q)(`ai.config.temperatureHint`)),1)]),_:1})]),_:1})]),_:1})]),_:1}),h(S,{modelValue:_(G),"onUpdate:modelValue":r[4]||=e=>l(G)?G.value=e:null,modelModifiers:{number:!0},type:`number`,step:`0.1`,min:`0`,max:`2`,placeholder:_(q)(`ai.config.temperaturePlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])]),v(`div`,null,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.maxTokens`)),1)]),_:1}),h(S,{modelValue:_(K),"onUpdate:modelValue":r[5]||=e=>l(K)?K.value=e:null,modelModifiers:{number:!0},type:`number`,min:`1`,max:`32768`,placeholder:_(q)(`ai.config.maxTokensPlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])]),v(`div`,z,[h(M,{size:`sm`,onClick:$},{default:d(()=>[n(i(_(q)(`common.save`)),1)]),_:1}),h(M,{size:`sm`,variant:`ghost`,onClick:me},{default:d(()=>[n(i(_(q)(`common.clear`)),1)]),_:1}),h(M,{size:`sm`,variant:`outline`,disabled:_(J),onClick:he},{default:d(()=>[n(i(_(J)?_(q)(`common.testing`):_(q)(`common.testConnection`)),1)]),_:1},8,[`disabled`])]),_(Y)?(a(),o(`div`,B,i(_(Y)),1)):g(``,!0)])}}}),[[`__scopeId`,`data-v-bac80ef7`]]);export{P as n,V as t};
1
+ import{a as e}from"./md-ai-service-options-BnJLTh-y.js";import{$ as t,C as n,E as r,Et as i,H as a,S as o,W as s,b as c,ct as l,m as u,nt as d,pt as f,r as p,v as m,w as h,x as g,xt as _,y as v}from"./md-vendor_vue-BeOfKbk1.js";import{n as y}from"./md-vue-i18n-Cxvw1c3e.js";import{t as b}from"./md-createLucideIcon-BXdNAL-d.js";import{a as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./md-useLocalizedAIServices-DXRSjl-Y.js";import{t as O}from"./md-info-DloVl59m.js";import{n as k}from"./md-button-BSiUqWkb.js";import{i as ee,n as te,r as ne,t as re}from"./md-TooltipTrigger-Bddfw7hJ.js";import{t as ie}from"./md-Label-BEXxOepa.js";import{a as ae,i as oe,n as se,r as ce,t as A}from"./md-SelectContent-BTj2mBZa.js";import{t as j}from"./md-aiConfig-BZ5KFSrp.js";import{t as M}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as N}from"./md-Input-CXcSl6a3.js";var P=b({name:`pause`,size:24,node:[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]}),F={class:`custom-scroll space-y-4 max-h-[calc(100dvh-10rem)] overflow-y-auto text-xs sm:max-h-none sm:text-sm`},I={class:`font-medium`},L={key:0},R={key:1},z={class:`mt-2 flex flex-col gap-2 sm:flex-row`},B={key:2,class:`mt-1 text-xs text-gray-500`},V=M(r({__name:`AIConfig`,emits:[`saved`],setup(r,{emit:b}){let M=b,P=j(),{type:V,endpoint:H,model:U,apiKey:W,temperature:G,maxToken:K}=p(P),{t:q}=y(),{loading:J,fetchJSON:le}=x(),Y=f(``),{discoveredModels:ue,discovering:de,canDiscover:fe,discover:X,resetDiscovered:pe}=C({endpoint:H,apiKey:W,serviceType:V,kind:`chat`}),Z=D(),Q=m(()=>Z.value.serviceOptions.find(e=>e.value===V.value)||Z.value.serviceOptions[0]);t(V,()=>{Y.value=``}),t(U,()=>{Y.value=``});function $(e=!0){e&&(Y.value=q(`ai.config.saved`),M(`saved`))}function me(){pe(),P.reset(),Y.value=q(`ai.config.cleared`)}async function he(){Y.value=``,J.value=!0;let e=T(W.value,V.value);try{let t=S(H.value,`chat`),n={model:U.value,messages:[{role:`user`,content:`ping`}],temperature:0,max_tokens:1,stream:!1},r=await le(t,e,n);if(r.ok)Y.value=q(`ai.config.testSuccess`),$(!1);else{try{let{error:e}=JSON.parse(r.errorText);if(r.status===404&&(e?.code===`ModelNotOpen`||/not activated|未开通/i.test(e?.message))){Y.value=q(`ai.config.modelNotActivated`,{model:U.value}),$(!1);return}}catch{}Y.value=q(`ai.config.testFailed`,{status:r.status,statusText:r.statusText,errorText:r.errorText})}}catch(e){Y.value=q(`ai.config.testFailedMessage`,{message:e.message})}finally{J.value=!1}}async function ge(){Y.value=``;let e=await X();e&&(Y.value=e)}return(t,r)=>{let f=ie,p=se,m=ce,y=oe,b=A,x=ae,S=N,C=re,T=ne,D=ee,j=te,M=k;return a(),o(`div`,F,[v(`div`,I,i(_(q)(`ai.config.title`)),1),v(`div`,null,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.serviceType`)),1)]),_:1}),h(x,{modelValue:_(V),"onUpdate:modelValue":r[0]||=e=>l(V)?V.value=e:null},{default:d(()=>[h(m,{class:`w-full`},{default:d(()=>[h(p,null,{default:d(()=>[n(i(_(Q).label),1)]),_:1})]),_:1}),h(b,null,{default:d(()=>[(a(!0),o(u,null,s(_(Z).serviceOptions,e=>(a(),c(y,{key:e.value,value:e.value},{default:d(()=>[n(i(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),_(V)===_(e)?g(``,!0):(a(),o(`div`,L,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.apiEndpoint`)),1)]),_:1}),h(S,{modelValue:_(H),"onUpdate:modelValue":r[1]||=e=>l(H)?H.value=e:null,placeholder:_(q)(`ai.config.apiEndpointPlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])])),_(V)===_(e)?g(``,!0):(a(),o(`div`,R,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.apiKey`)),1)]),_:1}),h(_(w),{modelValue:_(W),"onUpdate:modelValue":r[2]||=e=>l(W)?W.value=e:null,placeholder:_(q)(`ai.config.apiKeyPlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])])),v(`div`,null,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.modelName`)),1)]),_:1}),h(E,{modelValue:_(U),"onUpdate:modelValue":r[3]||=e=>l(U)?U.value=e:null,"preset-models":_(Q).models,"discovered-models":_(ue),placeholder:_(q)(`ai.config.modelPlaceholder`),"select-placeholder":_(q)(`ai.config.selectModel`),"discover-label":_(q)(`ai.config.discoverModels`),"discovering-label":_(q)(`ai.config.discoveringModels`),"need-config-label":_(q)(`ai.config.discoverModelsNeedConfig`),discovering:_(de),"can-discover":_(fe),"show-discover":_(V)!==_(e),onDiscover:ge},null,8,[`modelValue`,`preset-models`,`discovered-models`,`placeholder`,`select-placeholder`,`discover-label`,`discovering-label`,`need-config-label`,`discovering`,`can-discover`,`show-discover`])]),v(`div`,null,[h(f,{class:`mb-1 flex items-center gap-1 text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.temperature`))+` `,1),h(j,null,{default:d(()=>[h(D,null,{default:d(()=>[h(C,{"as-child":``},{default:d(()=>[h(_(O),{class:`text-gray-500`,size:16})]),_:1}),h(T,{side:`top`,class:`z-[250]`},{default:d(()=>[v(`div`,null,i(_(q)(`ai.config.temperatureHint`)),1)]),_:1})]),_:1})]),_:1})]),_:1}),h(S,{modelValue:_(G),"onUpdate:modelValue":r[4]||=e=>l(G)?G.value=e:null,modelModifiers:{number:!0},type:`number`,step:`0.1`,min:`0`,max:`2`,placeholder:_(q)(`ai.config.temperaturePlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])]),v(`div`,null,[h(f,{class:`mb-1 block text-sm font-medium`},{default:d(()=>[n(i(_(q)(`ai.config.maxTokens`)),1)]),_:1}),h(S,{modelValue:_(K),"onUpdate:modelValue":r[5]||=e=>l(K)?K.value=e:null,modelModifiers:{number:!0},type:`number`,min:`1`,max:`32768`,placeholder:_(q)(`ai.config.maxTokensPlaceholder`),class:`focus:border-gray-400 focus:ring-1 focus:ring-gray-300`},null,8,[`modelValue`,`placeholder`])]),v(`div`,z,[h(M,{size:`sm`,onClick:$},{default:d(()=>[n(i(_(q)(`common.save`)),1)]),_:1}),h(M,{size:`sm`,variant:`ghost`,onClick:me},{default:d(()=>[n(i(_(q)(`common.clear`)),1)]),_:1}),h(M,{size:`sm`,variant:`outline`,disabled:_(J),onClick:he},{default:d(()=>[n(i(_(J)?_(q)(`common.testing`):_(q)(`common.testConnection`)),1)]),_:1},8,[`disabled`])]),_(Y)?(a(),o(`div`,B,i(_(Y)),1)):g(``,!0)])}}}),[[`__scopeId`,`data-v-bac80ef7`]]);export{P as n,V as t};
@@ -1 +1 @@
1
- import{t as e}from"./md-ui-Dq6MTvr4.js";import{a as t,r as n,t as r}from"./md-ai-service-options-BnJLTh-y.js";import{f as i}from"./md-storage-TAchKcvc.js";import"./md-configs-l_iJ-wjP.js";import{$ as a,C as o,Ct as s,E as c,Et as l,H as u,I as d,R as f,S as p,W as m,b as h,ct as g,d as _,f as v,h as y,l as b,m as x,n as S,nt as C,pt as w,r as T,rt as E,v as D,w as O,x as k,xt as A,y as j,z as M}from"./md-vendor_vue-BeOfKbk1.js";import{n as ee}from"./md-vue-i18n-Cxvw1c3e.js";import{n as N}from"./md-lib-CvTniYNx.js";import{t as P}from"./md-copy-FPkQvYMT.js";import{t as te}from"./md-download-PHSmBRjD.js";import{a as F,i as ne,n as I,o as L,r as re,s as R,t as z}from"./md-useLocalizedAIServices-rhW4n8Ti.js";import{t as B}from"./md-image-DZKTZmYn.js";import{t as V}from"./md-info-DloVl59m.js";import{t as ie}from"./md-loader-circle-CMCAxmDe.js";import{n as ae,t as oe}from"./md-refresh-ccw-B0suwZhW.js";import{t as H}from"./md-settings-BQ0oxr26.js";import{t as U}from"./md-trash-_QL9lZ9Z.js";import{o as se}from"./md-utils-CfHWyiHX.js";import{n as W}from"./md-button-BSiUqWkb.js";import{a as ce,i as le,n as ue,r as de,t as fe}from"./md-DialogTitle-DckujrLp.js";import{t as pe}from"./md-DialogDescription-I_Nb5r3l.js";import{t as G}from"./md-Label-BEXxOepa.js";import{a as K,i as q,n as J,r as Y,t as X}from"./md-SelectContent-BTj2mBZa.js";import{n as me}from"./md-editor-CAilbZEo.js";import{t as he}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as ge}from"./md-Textarea-D5oizzXs.js";import{t as _e}from"./md-clipboard-BYFl_-FZ.js";var ve=S(`AIImageConfig`,()=>{let e=i.reactive(`openai_image_type`,t),o=i.reactive(`openai_image_size`,`1024x1024`),s=i.reactive(`openai_image_quality`,`standard`),c=i.reactive(`openai_image_style`,`natural`),l=w(``);Promise.resolve().then(async()=>{let t=e.value;if(t===`custom`){let n=await i.get(`openai_image_endpoint_${t}`);e.value===t&&(l.value=n||``)}else{let n=r.find(e=>e.value===t)??r[0];e.value===t&&(l.value=n.endpoint)}});let u=w(``),d=w(n);return Promise.resolve().then(async()=>{let t=e.value,r=await i.get(`openai_image_key_${t}`);e.value===t&&(d.value=r||n)}),a(e,async e=>{let t=r.find(t=>t.value===e)??r[0];if(e===`custom`){let t=await i.get(`openai_image_endpoint_${e}`);l.value=t||``}else l.value=t.endpoint;let a=await i.get(`openai_image_model_${e}`)||``;u.value=a||t.models[0]||``,await i.set(`openai_image_model_${e}`,u.value);let o=await i.get(`openai_image_key_${e}`);d.value=o||n},{immediate:!0}),a(u,async t=>{await i.set(`openai_image_model_${e.value}`,t)}),a(d,async n=>{e.value!==t&&await i.set(`openai_image_key_${e.value}`,n)}),a(l,async t=>{e.value===`custom`&&await i.set(`openai_image_endpoint_${e.value}`,t)}),{type:e,endpoint:l,model:u,size:o,quality:s,style:c,apiKey:d,reset:async()=>{e.value=t,o.value=`1024x1024`,s.value=`standard`,c.value=`natural`,await Promise.all(r.map(async({value:e})=>{await i.remove(`openai_image_key_${e}`),await i.remove(`openai_image_model_${e}`),await i.remove(`openai_image_endpoint_${e}`)}))}}}),ye={class:`space-y-4 max-w-full`},be={class:`font-medium`},xe=[`placeholder`,`readonly`],Se={key:0},Ce={key:1},Z={key:2},we={key:3,class:`flex items-start gap-2 p-3 bg-blue-50 dark:bg-blue-950/30 rounded-md text-sm`},Te={class:`text-blue-700 dark:text-blue-300`},Ee={class:`font-medium`},De={key:4,class:`flex items-start gap-2 p-3 bg-orange-50 dark:bg-orange-950/30 rounded-md text-sm`},Oe={class:`text-orange-700 dark:text-orange-300`},ke={class:`font-medium`},Ae={class:`mt-1 text-xs`},je={class:`flex flex-wrap gap-2`},Me={key:5,class:`mt-1 text-xs text-gray-500`},Ne=c({__name:`AIImageConfig`,emits:[`saved`],setup(e,{emit:n}){let r=n,i=ve(),{type:s,endpoint:c,model:d,apiKey:f,size:_,quality:v,style:y}=T(i),{t:S}=ee(),{loading:M,fetchJSON:N}=F(),P=w(``),{discoveredModels:te,discovering:B,canDiscover:ie,discover:ae,resetDiscovered:oe}=I({endpoint:c,apiKey:f,serviceType:s,kind:`image`}),H=z(),U=D(()=>H.value.imageServiceOptions.find(e=>e.value===s.value)||H.value.imageServiceOptions[0]);a(s,()=>{P.value=``}),a(d,()=>{P.value=``}),a(c,()=>{P.value=``});function se(){if(!c.value.trim()||!d.value.trim())P.value=S(`ai.imageConfig.incompleteConfig`);else if(s.value!==t&&!f.value.trim())P.value=S(`ai.imageConfig.apiKeyRequired`);else{try{new URL(c.value)}catch{P.value=S(`ai.imageConfig.invalidEndpoint`);return}P.value=S(`ai.imageConfig.saved`),r(`saved`)}}function ce(){oe(),i.reset(),P.value=S(`ai.imageConfig.cleared`)}async function le(){P.value=``,M.value=!0;let e=re(f.value,s.value);try{let t=ne(c.value,`image`),n={model:d.value,prompt:`test connection`,size:_.value,quality:v.value,style:y.value,n:1},r=await N(t,e,n);r.ok?P.value=S(`ai.imageConfig.connectionSuccess`):P.value=S(`ai.imageConfig.connectionFailed`,{message:`${r.status} ${r.errorText}`})}catch(e){P.value=S(`ai.imageConfig.connectionFailed`,{message:e.message})}finally{M.value=!1}}async function ue(){P.value=``;let e=await ae();e&&(P.value=e)}let de=D(()=>[{label:S(`ai.imageConfig.sizeSquare`),value:`1024x1024`},{label:S(`ai.imageConfig.sizeLandscape`),value:`1792x1024`},{label:S(`ai.imageConfig.sizePortrait`),value:`1024x1792`}]),fe=D(()=>[{label:S(`ai.imageConfig.qualityStandard`),value:`standard`},{label:S(`ai.imageConfig.qualityHd`),value:`hd`}]),pe=D(()=>[{label:S(`ai.imageConfig.styleNatural`),value:`natural`},{label:S(`ai.imageConfig.styleVivid`),value:`vivid`}]);return(e,n)=>(u(),p(`div`,ye,[j(`div`,be,l(A(S)(`ai.imageConfig.title`)),1),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.provider`)),1)]),_:1}),O(A(K),{modelValue:A(s),"onUpdate:modelValue":n[0]||=e=>g(s)?s.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(U).label),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(H).imageServiceOptions,e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.apiEndpoint`)),1)]),_:1}),E(j(`input`,{"onUpdate:modelValue":n[1]||=e=>g(c)?c.value=e:null,type:`url`,class:`w-full mt-1 rounded-md border bg-background p-2 transition-colors focus:border-primary focus:ring-2 focus:ring-primary`,placeholder:A(S)(`ai.imageConfig.apiEndpointPlaceholder`),readonly:A(s)!==`custom`},null,8,xe),[[b,A(c)]])]),A(s)==="default"?k(``,!0):(u(),p(`div`,Se,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.apiKey`)),1)]),_:1}),O(A(L),{modelValue:A(f),"onUpdate:modelValue":n[2]||=e=>g(f)?f.value=e:null,class:`w-full mt-1 focus:ring-2 focus:ring-primary focus:border-primary transition-colors`,placeholder:A(S)(`ai.imageConfig.apiKeyPlaceholder`)},null,8,[`modelValue`,`placeholder`])])),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.model`)),1)]),_:1}),O(R,{modelValue:A(d),"onUpdate:modelValue":n[3]||=e=>g(d)?d.value=e:null,"preset-models":A(U).models,"discovered-models":A(te),placeholder:A(S)(`ai.imageConfig.modelPlaceholder`),"select-placeholder":A(S)(`ai.imageConfig.selectModel`),"discover-label":A(S)(`ai.imageConfig.discoverModels`),"discovering-label":A(S)(`ai.imageConfig.discoveringModels`),"need-config-label":A(S)(`ai.imageConfig.discoverModelsNeedConfig`),discovering:A(B),"can-discover":A(ie),"show-discover":A(s)!==A(t),onDiscover:ue},null,8,[`modelValue`,`preset-models`,`discovered-models`,`placeholder`,`select-placeholder`,`discover-label`,`discovering-label`,`need-config-label`,`discovering`,`can-discover`,`show-discover`])]),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.imageSize`)),1)]),_:1}),O(A(K),{modelValue:A(_),"onUpdate:modelValue":n[4]||=e=>g(_)?_.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(de).find(e=>e.value===A(_))?.label||A(_)),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(de),e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),A(d).includes(`dall-e`)?(u(),p(`div`,Ce,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.imageQuality`)),1)]),_:1}),O(A(K),{modelValue:A(v),"onUpdate:modelValue":n[5]||=e=>g(v)?v.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(fe).find(e=>e.value===A(v))?.label||A(v)),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(fe),e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])])):k(``,!0),A(d).includes(`dall-e`)?(u(),p(`div`,Z,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.imageStyle`)),1)]),_:1}),O(A(K),{modelValue:A(y),"onUpdate:modelValue":n[6]||=e=>g(y)?y.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(pe).find(e=>e.value===A(y))?.label||A(y)),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(pe),e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])])):k(``,!0),A(s)==="default"?(u(),p(`div`,we,[O(A(V),{class:`h-4 w-4 text-blue-500 mt-0.5 flex-shrink-0`}),j(`div`,Te,[j(`p`,Ee,l(A(S)(`ai.imageConfig.defaultServiceTitle`)),1),j(`p`,null,l(A(S)(`ai.imageConfig.defaultServiceDesc`)),1)])])):A(s)===`custom`?(u(),p(`div`,De,[O(A(V),{class:`h-4 w-4 text-orange-500 mt-0.5 flex-shrink-0`}),j(`div`,Oe,[j(`p`,ke,l(A(S)(`ai.imageConfig.customServiceTitle`)),1),j(`p`,null,l(A(S)(`ai.imageConfig.customServiceDesc`)),1),j(`p`,Ae,l(A(S)(`ai.imageConfig.endpointExample`)),1)])])):k(``,!0),j(`div`,je,[O(A(W),{type:`button`,class:`flex-1 min-w-[100px]`,onClick:se},{default:C(()=>[o(l(A(S)(`ai.imageConfig.saveConfig`)),1)]),_:1}),O(A(W),{variant:`outline`,type:`button`,class:`flex-1 min-w-[80px]`,onClick:ce},{default:C(()=>[o(l(A(S)(`common.clear`)),1)]),_:1}),O(A(W),{size:`sm`,variant:`outline`,class:`flex-1 min-w-[100px]`,disabled:A(M),onClick:le},{default:C(()=>[o(l(A(M)?A(S)(`common.testing`):A(S)(`common.testConnection`)),1)]),_:1},8,[`disabled`])]),A(P)?(u(),p(`div`,Me,l(A(P)),1)):k(``,!0)]))}}),Pe={class:`space-x-1 flex items-center`},Fe={key:0,class:`mb-4 w-full border rounded-md p-4 max-h-[60vh] overflow-y-auto flex-shrink-0`},Ie={key:1,class:`flex flex-col space-y-4 flex-shrink-0`},Le={class:`flex items-center justify-center bg-gray-50 dark:bg-gray-800 rounded-lg min-h-[250px] sm:min-h-[300px]`},Re={key:0,class:`flex flex-col items-center gap-4`},ze={class:`text-sm text-muted-foreground`},Be={key:1,class:`w-full flex flex-col space-y-3`},Ve={key:0,class:`flex items-center justify-between p-2 bg-muted/20 rounded`},He={class:`text-sm text-muted-foreground`},Ue={class:`flex items-center justify-center p-2 sm:p-4`},We=[`aria-label`],Ge=[`src`],Ke={class:`absolute inset-0 bg-black/0 group-hover:bg-black/10 rounded-lg flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none`},qe={class:`bg-black/70 text-white px-3 py-1 rounded-md text-sm`},Je={class:`px-2 sm:px-4 py-2 bg-muted/10 rounded space-y-1`},Ye={class:`text-xs text-muted-foreground text-center`},Xe={class:`text-xs text-muted-foreground break-words text-center`},Ze={class:`font-medium`},Qe={class:`ml-1`},$e={class:`text-xs text-muted-foreground text-center`},et={class:`font-medium`},tt={class:`font-medium`},nt={class:`flex flex-wrap justify-center gap-2 p-2 sm:p-4 bg-muted/20 border-t border-border rounded-b-lg`},rt={key:2,class:`relative flex-shrink-0 mt-auto`},it={class:`bg-background border-border flex flex-col items-baseline gap-2 border rounded-xl px-3 py-2 pr-12 shadow-inner`},at=[`aria-label`,`onKeydown`],ot=[`src`,`alt`],st=36e5,ct=he(c({__name:`AIImageGeneratorPanel`,props:{open:{type:Boolean}},emits:[`update:open`],setup(t,{emit:n}){let r=t,c=n,{t:m}=ee(),g=me(),{editor:b}=T(g),{toggleAIDialog:S}=e(),E=w(r.open);a(()=>r.open,e=>{E.value=e,e&&Z()}),a(E,e=>c(`update:open`,e));let D=w(!1),F=w(!1),I=w(``),L=w([]),R=w([]),z=w([]),V=w(null),G=w(0),K=w(Date.now()),q=null,J=ve(),{apiKey:Y,endpoint:X,model:he,type:ye,size:be,quality:xe,style:Se}=T(J);function Ce(e){return Date.now()-e>st}async function Z(){let e=await i.getJSON(`ai_generated_images`,[]),t=await i.getJSON(`ai_image_timestamps`,[]);if(e.length===0)return;let n=await i.getJSON(`ai_image_prompts`,[]);if(t.length===0){L.value=[],R.value=[],z.value=[],await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`);return}let r=[];t.forEach((e,t)=>{Ce(e)||r.push(t)});let a=r.map(t=>e[t]).filter(Boolean),o=r.map(e=>n[e]||``).filter((e,t)=>a[t]),s=r.map(e=>t[e]).filter(Boolean);L.value=a,R.value=o,z.value=s,a.length<e.length&&(a.length>0?(await i.setJSON(`ai_generated_images`,a),await i.setJSON(`ai_image_prompts`,o),await i.setJSON(`ai_image_timestamps`,s)):(await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`)))}M(async()=>{await Z();let e=L.value.length,t=R.value.length,n=z.value.length;e<Math.max(e,t,n)?(L.value=[],R.value=[],z.value=[],await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`)):(t<e&&(R.value=[...R.value,...Array.from({length:e-t}).fill(``)]),n<e&&(z.value=[...z.value,...Array.from({length:e-n},()=>Date.now())]));let r=0;q=setInterval(()=>{K.value=Date.now(),r++,r%30==0&&L.value.length>0&&Z()},1e3)}),f(()=>{q!==null&&(clearInterval(q),q=null)});function we(){D.value=!1}function Te(){c(`update:open`,!1),setTimeout(()=>{S(!0)},100)}function Ee(e){e.isComposing||e.keyCode===229||e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),Oe())}async function De(e,t=!1){if(!e.trim()||F.value)return;F.value=!0,V.value=new AbortController;let n=re(Y.value,ye.value);try{let r=ne(X.value,`image`),a={model:he.value,prompt:e.trim(),size:be.value,n:1};he.value.includes(`dall-e`)&&(a.quality=xe.value,a.style=Se.value);let o=await window.fetch(r,{method:`POST`,headers:n,body:JSON.stringify(a),signal:V.value.signal});if(!o.ok){let e=await o.text();throw Error(`${o.status}: ${e}`)}let s=await o.json();if(s.data&&s.data.length>0){let n=s.data[0].url||s.data[0].b64_json;if(n){let r=n.startsWith(`data:`)||n.startsWith(`http`)?n:`data:image/png;base64,${n}`,a=Date.now();L.value.unshift(r),R.value.unshift(e.trim()),z.value.unshift(a),G.value=0,L.value.length>20&&(L.value=L.value.slice(0,20),R.value=R.value.slice(0,20),z.value=z.value.slice(0,20)),await i.setJSON(`ai_generated_images`,L.value),await i.setJSON(`ai_image_prompts`,R.value),await i.setJSON(`ai_image_timestamps`,z.value),t&&(I.value=``)}}else throw Error(m(`ai.image.noValidData`))}catch(e){e.name!==`AbortError`&&N.error(m(`ai.image.generateFailed`,{message:e.message}))}finally{F.value=!1,V.value=null}}async function Oe(){I.value.trim()&&!F.value&&await De(I.value,!0)}function ke(){V.value&&=(V.value.abort(),null),F.value=!1}async function Ae(){L.value=[],R.value=[],z.value=[],G.value=0,await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`)}async function je(e,t){try{let n=await fetch(e);if(!n.ok)throw Error(`Failed to download image: ${n.status}`);let r=await n.blob(),i=window.URL.createObjectURL(r),a=document.createElement(`a`);a.href=i;let o=R.value[t]||``,s=o?o.substring(0,20).replace(/[^\w\s-]/g,``).replace(/\s+/g,`-`):`no-prompt`;a.download=`ai-image-${t+1}-${s}.png`,document.body.appendChild(a),a.click(),document.body.removeChild(a),window.URL.revokeObjectURL(i),N.success(m(`ai.image.downloadStarted`))}catch{N.error(m(`ai.image.downloadFailed`))}}async function Me(e){try{await _e(e),N.success(m(`common.copiedToClipboard`))}catch{N.error(m(`ai.image.copyFailed`))}}function ct(){let e=R.value[G.value];e&&lt(e)}async function lt(e){await De(e)}function ut(){G.value>0&&G.value--}function dt(){G.value<L.value.length-1&&G.value++}function ft(e){if(b.value)try{let t=R.value[G.value]||``,n=`![${t.trim()?t.trim().substring(0,30).replace(/\n/g,` `):m(`ai.image.aiGeneratedAlt`)}](${e})`,r=b.value.state.selection.main.head;b.value.dispatch({changes:{from:r,insert:n},selection:{anchor:r+n.length}}),b.value.focus(),N.success(m(`ai.image.insertedToEditor`)),E.value=!1}catch{N.error(m(`ai.image.insertFailed`))}}let Q=w(``),pt=w(null);a(Q,async e=>{e&&(ce(),await d(),pt.value?.focus())});function mt(e){e&&(Q.value=e)}function $(){Q.value=``}function ht(e){if(!z.value[e])return m(`common.unknown`);let t=z.value[e],n=st-(K.value-t);if(n<=0)return m(`ai.image.expired`);let r=Math.floor(n/6e4),i=Math.floor(n%6e4/1e3);return r>0?m(`ai.image.timeRemaining`,{minutes:r,seconds:i}):m(`ai.image.secondsRemaining`,{seconds:i})}function gt(e){if(!z.value[e])return`text-muted-foreground`;let t=z.value[e],n=st-(K.value-t);return n<=0?`text-red-500 font-medium`:n<6e5?`text-orange-500 font-medium`:n<18e5?`text-yellow-600`:`text-green-600`}return(e,t)=>(u(),p(x,null,[O(A(le),{open:E.value,"onUpdate:open":t[10]||=e=>E.value=e},{default:C(()=>[O(A(de),{class:`bg-card text-card-foreground flex flex-col w-[95vw] max-h-[90vh] sm:max-h-[85vh] sm:max-w-4xl overflow-y-auto`},{default:C(()=>[O(A(ue),{class:`space-y-1 flex flex-col items-start`},{default:C(()=>[j(`div`,Pe,[O(A(fe),null,{default:C(()=>[o(l(A(m)(`ai.image.title`)),1)]),_:1}),O(A(W),{title:D.value?A(m)(`ai.image.title`):A(m)(`ai.image.configParams`),"aria-label":D.value?A(m)(`ai.image.title`):A(m)(`ai.image.configParams`),variant:`ghost`,size:`icon`,onClick:t[0]||=e=>D.value=!D.value},{default:C(()=>[D.value?(u(),h(A(B),{key:0,class:`h-4 w-4`})):(u(),h(A(H),{key:1,class:`h-4 w-4`}))]),_:1},8,[`title`,`aria-label`]),O(A(W),{title:A(m)(`ai.image.chat`),"aria-label":A(m)(`ai.image.chat`),variant:`ghost`,size:`icon`,onClick:t[1]||=e=>Te()},{default:C(()=>[O(A(ae),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),O(A(W),{title:A(m)(`ai.image.clearImages`),"aria-label":A(m)(`ai.image.clearImages`),variant:`ghost`,size:`icon`,onClick:Ae},{default:C(()=>[O(A(U),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`])]),O(A(pe),{class:`text-muted-foreground text-sm`},{default:C(()=>[o(l(A(m)(`ai.image.description`)),1)]),_:1})]),_:1}),D.value?(u(),p(`div`,Fe,[O(Ne,{onSaved:we})])):k(``,!0),!D.value&&(F.value||L.value.length>0)?(u(),p(`div`,Ie,[j(`div`,Le,[F.value?(u(),p(`div`,Re,[O(A(ie),{class:`h-8 w-8 animate-spin text-primary`}),j(`p`,ze,l(A(m)(`ai.image.generating`)),1),O(A(W),{variant:`outline`,size:`sm`,onClick:ke},{default:C(()=>[o(l(A(m)(`ai.image.cancelGeneration`)),1)]),_:1})])):L.value.length>0?(u(),p(`div`,Be,[L.value.length>1?(u(),p(`div`,Ve,[O(A(W),{variant:`outline`,size:`sm`,disabled:G.value<=0,onClick:ut},{default:C(()=>[o(l(A(m)(`ai.image.previous`)),1)]),_:1},8,[`disabled`]),j(`span`,He,l(G.value+1)+` / `+l(L.value.length),1),O(A(W),{variant:`outline`,size:`sm`,disabled:G.value>=L.value.length-1,onClick:dt},{default:C(()=>[o(l(A(m)(`ai.image.next`)),1)]),_:1},8,[`disabled`])])):k(``,!0),j(`div`,Ue,[j(`div`,{role:`button`,tabindex:`0`,class:`relative group cursor-pointer max-w-lg inline-flex justify-center`,"aria-label":A(m)(`ai.image.clickToViewLarge`),onClick:t[2]||=e=>mt(L.value[G.value]),onKeydown:[t[3]||=_(v(e=>mt(L.value[G.value]),[`prevent`]),[`enter`]),t[4]||=_(v(e=>mt(L.value[G.value]),[`prevent`]),[`space`])]},[j(`img`,{src:L.value[G.value],alt:``,"aria-hidden":`true`,class:`max-w-full h-[300px] object-contain rounded-lg shadow-lg border border-border transition-transform hover:scale-105`},null,8,Ge),j(`div`,Ke,[j(`div`,qe,l(A(m)(`ai.image.clickToViewLarge`)),1)])],40,We)]),j(`div`,Je,[j(`p`,Ye,l(A(m)(`ai.image.size`))+`: `+l(A(be)),1),j(`div`,Xe,[j(`span`,Ze,l(A(m)(`ai.image.prompt`))+`:`,1),j(`span`,Qe,l(R.value[G.value]||A(m)(`ai.image.noPrompt`)),1)]),j(`div`,$e,[j(`span`,et,l(A(m)(`ai.image.remainingValidity`))+`:`,1),j(`span`,{class:s([`ml-1`,gt(G.value)])},l(ht(G.value)),3),j(`span`,tt,l(A(m)(`ai.image.downloadReminder`)),1)])]),j(`div`,nt,[O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:t[5]||=e=>ft(L.value[G.value])},{default:C(()=>[O(A(B),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`common.insert`)),1)]),_:1}),O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:t[6]||=e=>je(L.value[G.value],G.value)},{default:C(()=>[O(A(te),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`common.download`)),1)]),_:1}),O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:t[7]||=e=>Me(L.value[G.value])},{default:C(()=>[O(A(P),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`common.copy`)),1)]),_:1}),O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:ct},{default:C(()=>[O(A(oe),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`ai.image.regenerate`)),1)]),_:1})])])):k(``,!0)])])):k(``,!0),D.value?k(``,!0):(u(),p(`div`,rt,[j(`div`,it,[O(A(ge),{modelValue:I.value,"onUpdate:modelValue":t[8]||=e=>I.value=e,placeholder:A(m)(`ai.image.inputPlaceholder`),rows:`2`,class:`custom-scroll min-h-16 w-full resize-none border-none bg-transparent p-0 focus-visible:outline-hidden focus:outline-hidden focus-visible:ring-0 focus:ring-0 focus-visible:ring-offset-0 focus:ring-offset-0 focus-visible:ring-transparent focus:ring-transparent`,onKeydown:Ee},null,8,[`modelValue`,`placeholder`]),O(A(W),{disabled:!I.value.trim()&&!F.value,size:`icon`,class:`absolute bottom-3 right-3 rounded-full disabled:opacity-40 bg-primary hover:bg-primary/90 text-primary-foreground`,"aria-label":F.value?A(m)(`common.cancel`):A(m)(`ai.image.generate`),onClick:t[9]||=e=>F.value?ke():Oe()},{default:C(()=>[F.value?(u(),h(A(ie),{key:0,class:`h-4 w-4 animate-spin`})):(u(),h(A(B),{key:1,class:`h-4 w-4`}))]),_:1},8,[`disabled`,`aria-label`])])]))]),_:1})]),_:1},8,[`open`]),(u(),h(y,{to:`body`},[Q.value?(u(),p(`div`,{key:0,ref_key:`previewOverlayRef`,ref:pt,tabindex:`-1`,role:`dialog`,"aria-modal":`true`,"aria-label":A(m)(`ai.image.preview`),class:`fixed inset-0 z-[1000] bg-black/90 flex items-center justify-center`,onClick:[v($,[`self`]),t[11]||=v(()=>{},[`stop`])],onPointerdown:t[12]||=v(()=>{},[`stop`]),onKeydown:_(v($,[`stop`]),[`escape`])},[O(A(W),{variant:`ghost`,size:`icon`,"aria-label":A(m)(`ai.image.closePreview`),title:A(m)(`ai.image.closePreview`),class:`absolute top-4 right-4 text-white hover:bg-white/20 z-10`,onClick:v($,[`stop`])},{default:C(()=>[O(A(se),{class:`h-6 w-6`})]),_:1},8,[`aria-label`,`title`]),j(`img`,{src:Q.value,alt:A(m)(`ai.image.previewLarge`),class:`max-w-[95vw] max-h-[95vh] object-contain`,onClick:v($,[`stop`])},null,8,ot)],40,at)):k(``,!0)]))],64))}}),[[`__scopeId`,`data-v-27fb3ae1`]]);export{ct as default};
1
+ import{t as e}from"./md-ui-BLkQlUQC.js";import{a as t,r as n,t as r}from"./md-ai-service-options-BnJLTh-y.js";import{f as i}from"./md-storage-B8BAILFb.js";import"./md-configs-l_iJ-wjP.js";import{$ as a,C as o,Ct as s,E as c,Et as l,H as u,I as d,R as f,S as p,W as m,b as h,ct as g,d as _,f as v,h as y,l as b,m as x,n as S,nt as C,pt as w,r as T,rt as E,v as D,w as O,x as k,xt as A,y as j,z as M}from"./md-vendor_vue-BeOfKbk1.js";import{n as ee}from"./md-vue-i18n-Cxvw1c3e.js";import{n as N}from"./md-lib-CvTniYNx.js";import{t as P}from"./md-copy-FPkQvYMT.js";import{t as te}from"./md-download-PHSmBRjD.js";import{a as F,i as ne,n as I,o as L,r as re,s as R,t as z}from"./md-useLocalizedAIServices-DXRSjl-Y.js";import{t as B}from"./md-image-DZKTZmYn.js";import{t as V}from"./md-info-DloVl59m.js";import{t as ie}from"./md-loader-circle-CMCAxmDe.js";import{n as ae,t as oe}from"./md-refresh-ccw-B0suwZhW.js";import{t as H}from"./md-settings-BQ0oxr26.js";import{t as U}from"./md-trash-_QL9lZ9Z.js";import{o as se}from"./md-utils-CfHWyiHX.js";import{n as W}from"./md-button-BSiUqWkb.js";import{a as ce,i as le,n as ue,r as de,t as fe}from"./md-DialogTitle-DckujrLp.js";import{t as pe}from"./md-DialogDescription-I_Nb5r3l.js";import{t as G}from"./md-Label-BEXxOepa.js";import{a as K,i as q,n as J,r as Y,t as X}from"./md-SelectContent-BTj2mBZa.js";import{n as me}from"./md-editor-dmKdA3Kt.js";import{t as he}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as ge}from"./md-Textarea-D5oizzXs.js";import{t as _e}from"./md-clipboard-2tuieAqv.js";var ve=S(`AIImageConfig`,()=>{let e=i.reactive(`openai_image_type`,t),o=i.reactive(`openai_image_size`,`1024x1024`),s=i.reactive(`openai_image_quality`,`standard`),c=i.reactive(`openai_image_style`,`natural`),l=w(``);Promise.resolve().then(async()=>{let t=e.value;if(t===`custom`){let n=await i.get(`openai_image_endpoint_${t}`);e.value===t&&(l.value=n||``)}else{let n=r.find(e=>e.value===t)??r[0];e.value===t&&(l.value=n.endpoint)}});let u=w(``),d=w(n);return Promise.resolve().then(async()=>{let t=e.value,r=await i.get(`openai_image_key_${t}`);e.value===t&&(d.value=r||n)}),a(e,async e=>{let t=r.find(t=>t.value===e)??r[0];if(e===`custom`){let t=await i.get(`openai_image_endpoint_${e}`);l.value=t||``}else l.value=t.endpoint;let a=await i.get(`openai_image_model_${e}`)||``;u.value=a||t.models[0]||``,await i.set(`openai_image_model_${e}`,u.value);let o=await i.get(`openai_image_key_${e}`);d.value=o||n},{immediate:!0}),a(u,async t=>{await i.set(`openai_image_model_${e.value}`,t)}),a(d,async n=>{e.value!==t&&await i.set(`openai_image_key_${e.value}`,n)}),a(l,async t=>{e.value===`custom`&&await i.set(`openai_image_endpoint_${e.value}`,t)}),{type:e,endpoint:l,model:u,size:o,quality:s,style:c,apiKey:d,reset:async()=>{e.value=t,o.value=`1024x1024`,s.value=`standard`,c.value=`natural`,await Promise.all(r.map(async({value:e})=>{await i.remove(`openai_image_key_${e}`),await i.remove(`openai_image_model_${e}`),await i.remove(`openai_image_endpoint_${e}`)}))}}}),ye={class:`space-y-4 max-w-full`},be={class:`font-medium`},xe=[`placeholder`,`readonly`],Se={key:0},Ce={key:1},Z={key:2},we={key:3,class:`flex items-start gap-2 p-3 bg-blue-50 dark:bg-blue-950/30 rounded-md text-sm`},Te={class:`text-blue-700 dark:text-blue-300`},Ee={class:`font-medium`},De={key:4,class:`flex items-start gap-2 p-3 bg-orange-50 dark:bg-orange-950/30 rounded-md text-sm`},Oe={class:`text-orange-700 dark:text-orange-300`},ke={class:`font-medium`},Ae={class:`mt-1 text-xs`},je={class:`flex flex-wrap gap-2`},Me={key:5,class:`mt-1 text-xs text-gray-500`},Ne=c({__name:`AIImageConfig`,emits:[`saved`],setup(e,{emit:n}){let r=n,i=ve(),{type:s,endpoint:c,model:d,apiKey:f,size:_,quality:v,style:y}=T(i),{t:S}=ee(),{loading:M,fetchJSON:N}=F(),P=w(``),{discoveredModels:te,discovering:B,canDiscover:ie,discover:ae,resetDiscovered:oe}=I({endpoint:c,apiKey:f,serviceType:s,kind:`image`}),H=z(),U=D(()=>H.value.imageServiceOptions.find(e=>e.value===s.value)||H.value.imageServiceOptions[0]);a(s,()=>{P.value=``}),a(d,()=>{P.value=``}),a(c,()=>{P.value=``});function se(){if(!c.value.trim()||!d.value.trim())P.value=S(`ai.imageConfig.incompleteConfig`);else if(s.value!==t&&!f.value.trim())P.value=S(`ai.imageConfig.apiKeyRequired`);else{try{new URL(c.value)}catch{P.value=S(`ai.imageConfig.invalidEndpoint`);return}P.value=S(`ai.imageConfig.saved`),r(`saved`)}}function ce(){oe(),i.reset(),P.value=S(`ai.imageConfig.cleared`)}async function le(){P.value=``,M.value=!0;let e=re(f.value,s.value);try{let t=ne(c.value,`image`),n={model:d.value,prompt:`test connection`,size:_.value,quality:v.value,style:y.value,n:1},r=await N(t,e,n);r.ok?P.value=S(`ai.imageConfig.connectionSuccess`):P.value=S(`ai.imageConfig.connectionFailed`,{message:`${r.status} ${r.errorText}`})}catch(e){P.value=S(`ai.imageConfig.connectionFailed`,{message:e.message})}finally{M.value=!1}}async function ue(){P.value=``;let e=await ae();e&&(P.value=e)}let de=D(()=>[{label:S(`ai.imageConfig.sizeSquare`),value:`1024x1024`},{label:S(`ai.imageConfig.sizeLandscape`),value:`1792x1024`},{label:S(`ai.imageConfig.sizePortrait`),value:`1024x1792`}]),fe=D(()=>[{label:S(`ai.imageConfig.qualityStandard`),value:`standard`},{label:S(`ai.imageConfig.qualityHd`),value:`hd`}]),pe=D(()=>[{label:S(`ai.imageConfig.styleNatural`),value:`natural`},{label:S(`ai.imageConfig.styleVivid`),value:`vivid`}]);return(e,n)=>(u(),p(`div`,ye,[j(`div`,be,l(A(S)(`ai.imageConfig.title`)),1),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.provider`)),1)]),_:1}),O(A(K),{modelValue:A(s),"onUpdate:modelValue":n[0]||=e=>g(s)?s.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(U).label),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(H).imageServiceOptions,e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.apiEndpoint`)),1)]),_:1}),E(j(`input`,{"onUpdate:modelValue":n[1]||=e=>g(c)?c.value=e:null,type:`url`,class:`w-full mt-1 rounded-md border bg-background p-2 transition-colors focus:border-primary focus:ring-2 focus:ring-primary`,placeholder:A(S)(`ai.imageConfig.apiEndpointPlaceholder`),readonly:A(s)!==`custom`},null,8,xe),[[b,A(c)]])]),A(s)==="default"?k(``,!0):(u(),p(`div`,Se,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.apiKey`)),1)]),_:1}),O(A(L),{modelValue:A(f),"onUpdate:modelValue":n[2]||=e=>g(f)?f.value=e:null,class:`w-full mt-1 focus:ring-2 focus:ring-primary focus:border-primary transition-colors`,placeholder:A(S)(`ai.imageConfig.apiKeyPlaceholder`)},null,8,[`modelValue`,`placeholder`])])),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.model`)),1)]),_:1}),O(R,{modelValue:A(d),"onUpdate:modelValue":n[3]||=e=>g(d)?d.value=e:null,"preset-models":A(U).models,"discovered-models":A(te),placeholder:A(S)(`ai.imageConfig.modelPlaceholder`),"select-placeholder":A(S)(`ai.imageConfig.selectModel`),"discover-label":A(S)(`ai.imageConfig.discoverModels`),"discovering-label":A(S)(`ai.imageConfig.discoveringModels`),"need-config-label":A(S)(`ai.imageConfig.discoverModelsNeedConfig`),discovering:A(B),"can-discover":A(ie),"show-discover":A(s)!==A(t),onDiscover:ue},null,8,[`modelValue`,`preset-models`,`discovered-models`,`placeholder`,`select-placeholder`,`discover-label`,`discovering-label`,`need-config-label`,`discovering`,`can-discover`,`show-discover`])]),j(`div`,null,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.imageSize`)),1)]),_:1}),O(A(K),{modelValue:A(_),"onUpdate:modelValue":n[4]||=e=>g(_)?_.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(de).find(e=>e.value===A(_))?.label||A(_)),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(de),e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])]),A(d).includes(`dall-e`)?(u(),p(`div`,Ce,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.imageQuality`)),1)]),_:1}),O(A(K),{modelValue:A(v),"onUpdate:modelValue":n[5]||=e=>g(v)?v.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(fe).find(e=>e.value===A(v))?.label||A(v)),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(fe),e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])])):k(``,!0),A(d).includes(`dall-e`)?(u(),p(`div`,Z,[O(A(G),{class:`mb-1 block text-sm font-medium`},{default:C(()=>[o(l(A(S)(`ai.imageConfig.imageStyle`)),1)]),_:1}),O(A(K),{modelValue:A(y),"onUpdate:modelValue":n[6]||=e=>g(y)?y.value=e:null},{default:C(()=>[O(A(Y),{class:`w-full`},{default:C(()=>[O(A(J),null,{default:C(()=>[o(l(A(pe).find(e=>e.value===A(y))?.label||A(y)),1)]),_:1})]),_:1}),O(A(X),null,{default:C(()=>[(u(!0),p(x,null,m(A(pe),e=>(u(),h(A(q),{key:e.value,value:e.value},{default:C(()=>[o(l(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`])])):k(``,!0),A(s)==="default"?(u(),p(`div`,we,[O(A(V),{class:`h-4 w-4 text-blue-500 mt-0.5 flex-shrink-0`}),j(`div`,Te,[j(`p`,Ee,l(A(S)(`ai.imageConfig.defaultServiceTitle`)),1),j(`p`,null,l(A(S)(`ai.imageConfig.defaultServiceDesc`)),1)])])):A(s)===`custom`?(u(),p(`div`,De,[O(A(V),{class:`h-4 w-4 text-orange-500 mt-0.5 flex-shrink-0`}),j(`div`,Oe,[j(`p`,ke,l(A(S)(`ai.imageConfig.customServiceTitle`)),1),j(`p`,null,l(A(S)(`ai.imageConfig.customServiceDesc`)),1),j(`p`,Ae,l(A(S)(`ai.imageConfig.endpointExample`)),1)])])):k(``,!0),j(`div`,je,[O(A(W),{type:`button`,class:`flex-1 min-w-[100px]`,onClick:se},{default:C(()=>[o(l(A(S)(`ai.imageConfig.saveConfig`)),1)]),_:1}),O(A(W),{variant:`outline`,type:`button`,class:`flex-1 min-w-[80px]`,onClick:ce},{default:C(()=>[o(l(A(S)(`common.clear`)),1)]),_:1}),O(A(W),{size:`sm`,variant:`outline`,class:`flex-1 min-w-[100px]`,disabled:A(M),onClick:le},{default:C(()=>[o(l(A(M)?A(S)(`common.testing`):A(S)(`common.testConnection`)),1)]),_:1},8,[`disabled`])]),A(P)?(u(),p(`div`,Me,l(A(P)),1)):k(``,!0)]))}}),Pe={class:`space-x-1 flex items-center`},Fe={key:0,class:`mb-4 w-full border rounded-md p-4 max-h-[60vh] overflow-y-auto flex-shrink-0`},Ie={key:1,class:`flex flex-col space-y-4 flex-shrink-0`},Le={class:`flex items-center justify-center bg-gray-50 dark:bg-gray-800 rounded-lg min-h-[250px] sm:min-h-[300px]`},Re={key:0,class:`flex flex-col items-center gap-4`},ze={class:`text-sm text-muted-foreground`},Be={key:1,class:`w-full flex flex-col space-y-3`},Ve={key:0,class:`flex items-center justify-between p-2 bg-muted/20 rounded`},He={class:`text-sm text-muted-foreground`},Ue={class:`flex items-center justify-center p-2 sm:p-4`},We=[`aria-label`],Ge=[`src`],Ke={class:`absolute inset-0 bg-black/0 group-hover:bg-black/10 rounded-lg flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none`},qe={class:`bg-black/70 text-white px-3 py-1 rounded-md text-sm`},Je={class:`px-2 sm:px-4 py-2 bg-muted/10 rounded space-y-1`},Ye={class:`text-xs text-muted-foreground text-center`},Xe={class:`text-xs text-muted-foreground break-words text-center`},Ze={class:`font-medium`},Qe={class:`ml-1`},$e={class:`text-xs text-muted-foreground text-center`},et={class:`font-medium`},tt={class:`font-medium`},nt={class:`flex flex-wrap justify-center gap-2 p-2 sm:p-4 bg-muted/20 border-t border-border rounded-b-lg`},rt={key:2,class:`relative flex-shrink-0 mt-auto`},it={class:`bg-background border-border flex flex-col items-baseline gap-2 border rounded-xl px-3 py-2 pr-12 shadow-inner`},at=[`aria-label`,`onKeydown`],ot=[`src`,`alt`],st=36e5,ct=he(c({__name:`AIImageGeneratorPanel`,props:{open:{type:Boolean}},emits:[`update:open`],setup(t,{emit:n}){let r=t,c=n,{t:m}=ee(),g=me(),{editor:b}=T(g),{toggleAIDialog:S}=e(),E=w(r.open);a(()=>r.open,e=>{E.value=e,e&&Z()}),a(E,e=>c(`update:open`,e));let D=w(!1),F=w(!1),I=w(``),L=w([]),R=w([]),z=w([]),V=w(null),G=w(0),K=w(Date.now()),q=null,J=ve(),{apiKey:Y,endpoint:X,model:he,type:ye,size:be,quality:xe,style:Se}=T(J);function Ce(e){return Date.now()-e>st}async function Z(){let e=await i.getJSON(`ai_generated_images`,[]),t=await i.getJSON(`ai_image_timestamps`,[]);if(e.length===0)return;let n=await i.getJSON(`ai_image_prompts`,[]);if(t.length===0){L.value=[],R.value=[],z.value=[],await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`);return}let r=[];t.forEach((e,t)=>{Ce(e)||r.push(t)});let a=r.map(t=>e[t]).filter(Boolean),o=r.map(e=>n[e]||``).filter((e,t)=>a[t]),s=r.map(e=>t[e]).filter(Boolean);L.value=a,R.value=o,z.value=s,a.length<e.length&&(a.length>0?(await i.setJSON(`ai_generated_images`,a),await i.setJSON(`ai_image_prompts`,o),await i.setJSON(`ai_image_timestamps`,s)):(await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`)))}M(async()=>{await Z();let e=L.value.length,t=R.value.length,n=z.value.length;e<Math.max(e,t,n)?(L.value=[],R.value=[],z.value=[],await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`)):(t<e&&(R.value=[...R.value,...Array.from({length:e-t}).fill(``)]),n<e&&(z.value=[...z.value,...Array.from({length:e-n},()=>Date.now())]));let r=0;q=setInterval(()=>{K.value=Date.now(),r++,r%30==0&&L.value.length>0&&Z()},1e3)}),f(()=>{q!==null&&(clearInterval(q),q=null)});function we(){D.value=!1}function Te(){c(`update:open`,!1),setTimeout(()=>{S(!0)},100)}function Ee(e){e.isComposing||e.keyCode===229||e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),Oe())}async function De(e,t=!1){if(!e.trim()||F.value)return;F.value=!0,V.value=new AbortController;let n=re(Y.value,ye.value);try{let r=ne(X.value,`image`),a={model:he.value,prompt:e.trim(),size:be.value,n:1};he.value.includes(`dall-e`)&&(a.quality=xe.value,a.style=Se.value);let o=await window.fetch(r,{method:`POST`,headers:n,body:JSON.stringify(a),signal:V.value.signal});if(!o.ok){let e=await o.text();throw Error(`${o.status}: ${e}`)}let s=await o.json();if(s.data&&s.data.length>0){let n=s.data[0].url||s.data[0].b64_json;if(n){let r=n.startsWith(`data:`)||n.startsWith(`http`)?n:`data:image/png;base64,${n}`,a=Date.now();L.value.unshift(r),R.value.unshift(e.trim()),z.value.unshift(a),G.value=0,L.value.length>20&&(L.value=L.value.slice(0,20),R.value=R.value.slice(0,20),z.value=z.value.slice(0,20)),await i.setJSON(`ai_generated_images`,L.value),await i.setJSON(`ai_image_prompts`,R.value),await i.setJSON(`ai_image_timestamps`,z.value),t&&(I.value=``)}}else throw Error(m(`ai.image.noValidData`))}catch(e){e.name!==`AbortError`&&N.error(m(`ai.image.generateFailed`,{message:e.message}))}finally{F.value=!1,V.value=null}}async function Oe(){I.value.trim()&&!F.value&&await De(I.value,!0)}function ke(){V.value&&=(V.value.abort(),null),F.value=!1}async function Ae(){L.value=[],R.value=[],z.value=[],G.value=0,await i.remove(`ai_generated_images`),await i.remove(`ai_image_prompts`),await i.remove(`ai_image_timestamps`)}async function je(e,t){try{let n=await fetch(e);if(!n.ok)throw Error(`Failed to download image: ${n.status}`);let r=await n.blob(),i=window.URL.createObjectURL(r),a=document.createElement(`a`);a.href=i;let o=R.value[t]||``,s=o?o.substring(0,20).replace(/[^\w\s-]/g,``).replace(/\s+/g,`-`):`no-prompt`;a.download=`ai-image-${t+1}-${s}.png`,document.body.appendChild(a),a.click(),document.body.removeChild(a),window.URL.revokeObjectURL(i),N.success(m(`ai.image.downloadStarted`))}catch{N.error(m(`ai.image.downloadFailed`))}}async function Me(e){try{await _e(e),N.success(m(`common.copiedToClipboard`))}catch{N.error(m(`ai.image.copyFailed`))}}function ct(){let e=R.value[G.value];e&&lt(e)}async function lt(e){await De(e)}function ut(){G.value>0&&G.value--}function dt(){G.value<L.value.length-1&&G.value++}function ft(e){if(b.value)try{let t=R.value[G.value]||``,n=`![${t.trim()?t.trim().substring(0,30).replace(/\n/g,` `):m(`ai.image.aiGeneratedAlt`)}](${e})`,r=b.value.state.selection.main.head;b.value.dispatch({changes:{from:r,insert:n},selection:{anchor:r+n.length}}),b.value.focus(),N.success(m(`ai.image.insertedToEditor`)),E.value=!1}catch{N.error(m(`ai.image.insertFailed`))}}let Q=w(``),pt=w(null);a(Q,async e=>{e&&(ce(),await d(),pt.value?.focus())});function mt(e){e&&(Q.value=e)}function $(){Q.value=``}function ht(e){if(!z.value[e])return m(`common.unknown`);let t=z.value[e],n=st-(K.value-t);if(n<=0)return m(`ai.image.expired`);let r=Math.floor(n/6e4),i=Math.floor(n%6e4/1e3);return r>0?m(`ai.image.timeRemaining`,{minutes:r,seconds:i}):m(`ai.image.secondsRemaining`,{seconds:i})}function gt(e){if(!z.value[e])return`text-muted-foreground`;let t=z.value[e],n=st-(K.value-t);return n<=0?`text-red-500 font-medium`:n<6e5?`text-orange-500 font-medium`:n<18e5?`text-yellow-600`:`text-green-600`}return(e,t)=>(u(),p(x,null,[O(A(le),{open:E.value,"onUpdate:open":t[10]||=e=>E.value=e},{default:C(()=>[O(A(de),{class:`bg-card text-card-foreground flex flex-col w-[95vw] max-h-[90vh] sm:max-h-[85vh] sm:max-w-4xl overflow-y-auto`},{default:C(()=>[O(A(ue),{class:`space-y-1 flex flex-col items-start`},{default:C(()=>[j(`div`,Pe,[O(A(fe),null,{default:C(()=>[o(l(A(m)(`ai.image.title`)),1)]),_:1}),O(A(W),{title:D.value?A(m)(`ai.image.title`):A(m)(`ai.image.configParams`),"aria-label":D.value?A(m)(`ai.image.title`):A(m)(`ai.image.configParams`),variant:`ghost`,size:`icon`,onClick:t[0]||=e=>D.value=!D.value},{default:C(()=>[D.value?(u(),h(A(B),{key:0,class:`h-4 w-4`})):(u(),h(A(H),{key:1,class:`h-4 w-4`}))]),_:1},8,[`title`,`aria-label`]),O(A(W),{title:A(m)(`ai.image.chat`),"aria-label":A(m)(`ai.image.chat`),variant:`ghost`,size:`icon`,onClick:t[1]||=e=>Te()},{default:C(()=>[O(A(ae),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`]),O(A(W),{title:A(m)(`ai.image.clearImages`),"aria-label":A(m)(`ai.image.clearImages`),variant:`ghost`,size:`icon`,onClick:Ae},{default:C(()=>[O(A(U),{class:`h-4 w-4`})]),_:1},8,[`title`,`aria-label`])]),O(A(pe),{class:`text-muted-foreground text-sm`},{default:C(()=>[o(l(A(m)(`ai.image.description`)),1)]),_:1})]),_:1}),D.value?(u(),p(`div`,Fe,[O(Ne,{onSaved:we})])):k(``,!0),!D.value&&(F.value||L.value.length>0)?(u(),p(`div`,Ie,[j(`div`,Le,[F.value?(u(),p(`div`,Re,[O(A(ie),{class:`h-8 w-8 animate-spin text-primary`}),j(`p`,ze,l(A(m)(`ai.image.generating`)),1),O(A(W),{variant:`outline`,size:`sm`,onClick:ke},{default:C(()=>[o(l(A(m)(`ai.image.cancelGeneration`)),1)]),_:1})])):L.value.length>0?(u(),p(`div`,Be,[L.value.length>1?(u(),p(`div`,Ve,[O(A(W),{variant:`outline`,size:`sm`,disabled:G.value<=0,onClick:ut},{default:C(()=>[o(l(A(m)(`ai.image.previous`)),1)]),_:1},8,[`disabled`]),j(`span`,He,l(G.value+1)+` / `+l(L.value.length),1),O(A(W),{variant:`outline`,size:`sm`,disabled:G.value>=L.value.length-1,onClick:dt},{default:C(()=>[o(l(A(m)(`ai.image.next`)),1)]),_:1},8,[`disabled`])])):k(``,!0),j(`div`,Ue,[j(`div`,{role:`button`,tabindex:`0`,class:`relative group cursor-pointer max-w-lg inline-flex justify-center`,"aria-label":A(m)(`ai.image.clickToViewLarge`),onClick:t[2]||=e=>mt(L.value[G.value]),onKeydown:[t[3]||=_(v(e=>mt(L.value[G.value]),[`prevent`]),[`enter`]),t[4]||=_(v(e=>mt(L.value[G.value]),[`prevent`]),[`space`])]},[j(`img`,{src:L.value[G.value],alt:``,"aria-hidden":`true`,class:`max-w-full h-[300px] object-contain rounded-lg shadow-lg border border-border transition-transform hover:scale-105`},null,8,Ge),j(`div`,Ke,[j(`div`,qe,l(A(m)(`ai.image.clickToViewLarge`)),1)])],40,We)]),j(`div`,Je,[j(`p`,Ye,l(A(m)(`ai.image.size`))+`: `+l(A(be)),1),j(`div`,Xe,[j(`span`,Ze,l(A(m)(`ai.image.prompt`))+`:`,1),j(`span`,Qe,l(R.value[G.value]||A(m)(`ai.image.noPrompt`)),1)]),j(`div`,$e,[j(`span`,et,l(A(m)(`ai.image.remainingValidity`))+`:`,1),j(`span`,{class:s([`ml-1`,gt(G.value)])},l(ht(G.value)),3),j(`span`,tt,l(A(m)(`ai.image.downloadReminder`)),1)])]),j(`div`,nt,[O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:t[5]||=e=>ft(L.value[G.value])},{default:C(()=>[O(A(B),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`common.insert`)),1)]),_:1}),O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:t[6]||=e=>je(L.value[G.value],G.value)},{default:C(()=>[O(A(te),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`common.download`)),1)]),_:1}),O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:t[7]||=e=>Me(L.value[G.value])},{default:C(()=>[O(A(P),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`common.copy`)),1)]),_:1}),O(A(W),{variant:`outline`,size:`sm`,class:`flex-shrink-0 bg-background text-xs sm:text-sm`,onClick:ct},{default:C(()=>[O(A(oe),{class:`h-3 w-3 sm:h-4 sm:w-4 mr-1 sm:mr-2`}),o(` `+l(A(m)(`ai.image.regenerate`)),1)]),_:1})])])):k(``,!0)])])):k(``,!0),D.value?k(``,!0):(u(),p(`div`,rt,[j(`div`,it,[O(A(ge),{modelValue:I.value,"onUpdate:modelValue":t[8]||=e=>I.value=e,placeholder:A(m)(`ai.image.inputPlaceholder`),rows:`2`,class:`custom-scroll min-h-16 w-full resize-none border-none bg-transparent p-0 focus-visible:outline-hidden focus:outline-hidden focus-visible:ring-0 focus:ring-0 focus-visible:ring-offset-0 focus:ring-offset-0 focus-visible:ring-transparent focus:ring-transparent`,onKeydown:Ee},null,8,[`modelValue`,`placeholder`]),O(A(W),{disabled:!I.value.trim()&&!F.value,size:`icon`,class:`absolute bottom-3 right-3 rounded-full disabled:opacity-40 bg-primary hover:bg-primary/90 text-primary-foreground`,"aria-label":F.value?A(m)(`common.cancel`):A(m)(`ai.image.generate`),onClick:t[9]||=e=>F.value?ke():Oe()},{default:C(()=>[F.value?(u(),h(A(ie),{key:0,class:`h-4 w-4 animate-spin`})):(u(),h(A(B),{key:1,class:`h-4 w-4`}))]),_:1},8,[`disabled`,`aria-label`])])]))]),_:1})]),_:1},8,[`open`]),(u(),h(y,{to:`body`},[Q.value?(u(),p(`div`,{key:0,ref_key:`previewOverlayRef`,ref:pt,tabindex:`-1`,role:`dialog`,"aria-modal":`true`,"aria-label":A(m)(`ai.image.preview`),class:`fixed inset-0 z-[1000] bg-black/90 flex items-center justify-center`,onClick:[v($,[`self`]),t[11]||=v(()=>{},[`stop`])],onPointerdown:t[12]||=v(()=>{},[`stop`]),onKeydown:_(v($,[`stop`]),[`escape`])},[O(A(W),{variant:`ghost`,size:`icon`,"aria-label":A(m)(`ai.image.closePreview`),title:A(m)(`ai.image.closePreview`),class:`absolute top-4 right-4 text-white hover:bg-white/20 z-10`,onClick:v($,[`stop`])},{default:C(()=>[O(A(se),{class:`h-6 w-6`})]),_:1},8,[`aria-label`,`title`]),j(`img`,{src:Q.value,alt:A(m)(`ai.image.previewLarge`),class:`max-w-[95vw] max-h-[95vh] object-contain`,onClick:v($,[`stop`])},null,8,ot)],40,at)):k(``,!0)]))],64))}}),[[`__scopeId`,`data-v-27fb3ae1`]]);export{ct as default};
@@ -1 +1 @@
1
- import{t as e}from"./md-ui-Dq6MTvr4.js";import{C as t,Ct as n,E as r,Et as i,H as a,S as o,b as s,nt as c,pt as l,r as ee,v as u,w as d,x as f,xt as p,y as m}from"./md-vendor_vue-BeOfKbk1.js";import{n as te}from"./md-vue-i18n-Cxvw1c3e.js";import{t as h}from"./md-createLucideIcon-BXdNAL-d.js";import{n as g,t as _}from"./md-sync-DzivBtxQ.js";import{t as v}from"./md-loader-circle-CMCAxmDe.js";import{a as ne,i as re,r as y}from"./md-client-CGJU0lXF.js";import{t as b}from"./md-user-CXP966A6.js";import{t as x}from"./md-utils-CfHWyiHX.js";import{n as S}from"./md-button-BSiUqWkb.js";import{r as C,t as w}from"./md-auth-B320eWZs.js";import{t as T}from"./md-PanelDialog-DMTByC9s.js";import{n as E,t as D}from"./md-PanelCard-pxkjIdKD.js";var O=h({name:`crown`,size:24,node:[[`path`,{d:`M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z`,key:`1vdc57`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]}),k=h({name:`log-out`,size:24,node:[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]}),A=h({name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]}),j=r({__name:`GitHubIcon`,props:{class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e;return(e,r)=>(a(),o(`svg`,{class:n(p(x)(`shrink-0`,t.class)),viewBox:`0 0 98 96`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...r[0]||=[m(`path`,{d:`M41.4395 69.3848C28.8066 67.8535 19.9062 58.7617 19.9062 46.9902C19.9062 42.2051 21.6289 37.0371 24.5 33.5918C23.2559 30.4336 23.4473 23.7344 24.8828 20.959C28.7109 20.4805 33.8789 22.4902 36.9414 25.2656C40.5781 24.1172 44.4062 23.543 49.0957 23.543C53.7852 23.543 57.6133 24.1172 61.0586 25.1699C64.0254 22.4902 69.2891 20.4805 73.1172 20.959C74.457 23.543 74.6484 30.2422 73.4043 33.4961C76.4668 37.1328 78.0937 42.0137 78.0937 46.9902C78.0937 58.7617 69.1934 67.6621 56.3691 69.2891C59.623 71.3945 61.8242 75.9883 61.8242 81.252L61.8242 91.2051C61.8242 94.0762 64.2168 95.7031 67.0879 94.5547C84.4102 87.9512 98 70.6289 98 49.1914C98 22.1074 75.9883 6.69539e-07 48.9043 4.309e-07C21.8203 1.92261e-07 -1.9479e-07 22.1074 -4.3343e-07 49.1914C-6.20631e-07 70.4375 13.4941 88.0469 31.6777 94.6504C34.2617 95.6074 36.75 93.8848 36.75 91.3008L36.75 83.6445C35.4102 84.2188 33.6875 84.6016 32.1562 84.6016C25.8398 84.6016 22.1074 81.1563 19.4277 74.7441C18.375 72.1602 17.2266 70.6289 15.0254 70.3418C13.877 70.2461 13.4941 69.7676 13.4941 69.1934C13.4941 68.0449 15.4082 67.1836 17.3223 67.1836C20.0977 67.1836 22.4902 68.9063 24.9785 72.4473C26.8926 75.2227 28.9023 76.4668 31.2949 76.4668C33.6875 76.4668 35.2187 75.6055 37.4199 73.4043C39.0469 71.7773 40.291 70.3418 41.4395 69.3848Z`,fill:`currentColor`},null,-1)]],2))}}),M={key:2,class:`space-y-4 px-4 py-4 sm:px-6`},N=[`src`,`alt`],P={key:1,class:`flex size-12 shrink-0 items-center justify-center rounded-full bg-muted ring-2 ring-background sm:size-11`},F={class:`min-w-0 flex-1 text-left`},I={class:`flex flex-wrap items-center gap-x-2 gap-y-1`},L={class:`truncate text-sm font-medium`},R={key:0,class:`inline-flex shrink-0 items-center gap-1 rounded-full bg-primary px-2 py-0.5 text-[11px] font-medium text-primary-foreground`},z={key:1,class:`inline-flex shrink-0 rounded-full bg-muted px-2 py-0.5 text-[11px] font-medium uppercase text-muted-foreground`},B={class:`truncate text-xs text-muted-foreground`},V={key:0,class:`grid gap-2 sm:grid-cols-2`},H=r({__name:`AccountDialog`,props:{open:{type:Boolean}},emits:[`update:open`],setup(n,{emit:r}){let h=n,x=r,{t:H}=te(),U=w(),W=_(),G=e(),{user:K,isConfigured:q,isLoggedIn:J}=ee(U),Y=u(()=>y(K.value)),X=C(),Z=re(),Q=u({get:()=>h.open,set:e=>x(`update:open`,e)}),ie=u(()=>{if(!J.value&&q.value)return H(`account.loginHint`)}),$=l(!1);async function ae(){if(!$.value){$.value=!0;try{await U.login()}finally{$.value=!1}}}function oe(){U.logout(),W.reset()}function se(){Q.value=!1,G.toggleShowSyncDialog(!0)}function ce(){Q.value=!1,G.openShareDialog()}return(e,n)=>(a(),s(T,{open:Q.value,"onUpdate:open":n[0]||=e=>Q.value=e,title:p(H)(`account.title`),description:ie.value,icon:p(b)},{default:c(()=>[p(q)?p(J)?(a(),o(`div`,M,[d(D,{align:`center`},{leading:c(()=>[p(K)?.avatar?(a(),o(`img`,{key:0,src:p(K).avatar,alt:p(K)?.login,class:`size-12 shrink-0 rounded-full ring-2 ring-background sm:size-11`},null,8,N)):(a(),o(`div`,P,[d(p(b),{class:`size-5 text-muted-foreground`})]))]),default:c(()=>[m(`div`,F,[m(`div`,I,[m(`span`,L,i(p(K)?.name||p(K)?.login),1),Y.value?(a(),o(`span`,R,[d(p(O),{class:`size-3`}),n[2]||=t(` Pro `,-1)])):(a(),o(`span`,z,` Free `))]),m(`p`,B,` @`+i(p(K)?.login),1)])]),_:1}),p(X)||p(Z)?(a(),o(`div`,V,[p(X)?(a(),s(p(S),{key:0,variant:`outline`,class:`h-10 justify-start gap-2`,onClick:se},{default:c(()=>[d(p(g),{class:`size-4 shrink-0`}),t(` `+i(p(H)(`account.cloudSync`)),1)]),_:1})):f(``,!0),p(Z)?(a(),s(p(S),{key:1,variant:`outline`,class:`h-10 justify-start gap-2`,onClick:ce},{default:c(()=>[d(p(ne),{class:`size-4 shrink-0`}),t(` `+i(p(H)(`account.sharePreview`)),1)]),_:1})):f(``,!0)])):f(``,!0),d(p(S),{variant:`outline`,class:`h-10 w-full gap-2 text-destructive hover:bg-destructive/10 hover:text-destructive`,onClick:oe},{default:c(()=>[d(p(k),{class:`size-4`}),t(` `+i(p(H)(`common.logout`)),1)]),_:1})])):(a(),s(E,{key:1,icon:p(b),title:p(H)(`account.loginTitle`),"action-label":$.value?p(H)(`account.loggingIn`):p(H)(`account.githubLogin`),"action-icon":$.value?p(v):j,"action-disabled":$.value,onAction:ae},null,8,[`icon`,`title`,`action-label`,`action-icon`,`action-disabled`])):(a(),s(E,{key:0,icon:p(A),title:p(H)(`account.notConfiguredTitle`),description:p(H)(`account.notConfiguredDescription`),compact:``},{default:c(()=>[...n[1]||=[m(`code`,{class:`rounded-md border bg-muted/40 px-2 py-1 text-[11px] text-muted-foreground`},` VITE_MD_API_URL `,-1)]]),_:1},8,[`icon`,`title`,`description`]))]),_:1},8,[`open`,`title`,`description`,`icon`]))}});export{H as default};
1
+ import{t as e}from"./md-ui-BLkQlUQC.js";import{C as t,Ct as n,E as r,Et as i,H as a,S as o,b as s,nt as c,pt as l,r as ee,v as u,w as d,x as f,xt as p,y as m}from"./md-vendor_vue-BeOfKbk1.js";import{n as te}from"./md-vue-i18n-Cxvw1c3e.js";import{t as h}from"./md-createLucideIcon-BXdNAL-d.js";import{n as g,t as _}from"./md-sync-CImiJDX5.js";import{t as v}from"./md-loader-circle-CMCAxmDe.js";import{a as ne,i as re,r as y}from"./md-client-Cc-kin1G.js";import{t as b}from"./md-user-CXP966A6.js";import{t as x}from"./md-utils-CfHWyiHX.js";import{n as S}from"./md-button-BSiUqWkb.js";import{r as C,t as w}from"./md-auth-Crd5XmCA.js";import{t as T}from"./md-PanelDialog-DMTByC9s.js";import{n as E,t as D}from"./md-PanelCard-pxkjIdKD.js";var O=h({name:`crown`,size:24,node:[[`path`,{d:`M11.562 3.266a.5.5 0 0 1 .876 0L15.39 8.87a1 1 0 0 0 1.516.294L21.183 5.5a.5.5 0 0 1 .798.519l-2.834 10.246a1 1 0 0 1-.956.734H5.81a1 1 0 0 1-.957-.734L2.02 6.02a.5.5 0 0 1 .798-.519l4.276 3.664a1 1 0 0 0 1.516-.294z`,key:`1vdc57`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]}),k=h({name:`log-out`,size:24,node:[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]}),A=h({name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]}),j=r({__name:`GitHubIcon`,props:{class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e;return(e,r)=>(a(),o(`svg`,{class:n(p(x)(`shrink-0`,t.class)),viewBox:`0 0 98 96`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`},[...r[0]||=[m(`path`,{d:`M41.4395 69.3848C28.8066 67.8535 19.9062 58.7617 19.9062 46.9902C19.9062 42.2051 21.6289 37.0371 24.5 33.5918C23.2559 30.4336 23.4473 23.7344 24.8828 20.959C28.7109 20.4805 33.8789 22.4902 36.9414 25.2656C40.5781 24.1172 44.4062 23.543 49.0957 23.543C53.7852 23.543 57.6133 24.1172 61.0586 25.1699C64.0254 22.4902 69.2891 20.4805 73.1172 20.959C74.457 23.543 74.6484 30.2422 73.4043 33.4961C76.4668 37.1328 78.0937 42.0137 78.0937 46.9902C78.0937 58.7617 69.1934 67.6621 56.3691 69.2891C59.623 71.3945 61.8242 75.9883 61.8242 81.252L61.8242 91.2051C61.8242 94.0762 64.2168 95.7031 67.0879 94.5547C84.4102 87.9512 98 70.6289 98 49.1914C98 22.1074 75.9883 6.69539e-07 48.9043 4.309e-07C21.8203 1.92261e-07 -1.9479e-07 22.1074 -4.3343e-07 49.1914C-6.20631e-07 70.4375 13.4941 88.0469 31.6777 94.6504C34.2617 95.6074 36.75 93.8848 36.75 91.3008L36.75 83.6445C35.4102 84.2188 33.6875 84.6016 32.1562 84.6016C25.8398 84.6016 22.1074 81.1563 19.4277 74.7441C18.375 72.1602 17.2266 70.6289 15.0254 70.3418C13.877 70.2461 13.4941 69.7676 13.4941 69.1934C13.4941 68.0449 15.4082 67.1836 17.3223 67.1836C20.0977 67.1836 22.4902 68.9063 24.9785 72.4473C26.8926 75.2227 28.9023 76.4668 31.2949 76.4668C33.6875 76.4668 35.2187 75.6055 37.4199 73.4043C39.0469 71.7773 40.291 70.3418 41.4395 69.3848Z`,fill:`currentColor`},null,-1)]],2))}}),M={key:2,class:`space-y-4 px-4 py-4 sm:px-6`},N=[`src`,`alt`],P={key:1,class:`flex size-12 shrink-0 items-center justify-center rounded-full bg-muted ring-2 ring-background sm:size-11`},F={class:`min-w-0 flex-1 text-left`},I={class:`flex flex-wrap items-center gap-x-2 gap-y-1`},L={class:`truncate text-sm font-medium`},R={key:0,class:`inline-flex shrink-0 items-center gap-1 rounded-full bg-primary px-2 py-0.5 text-[11px] font-medium text-primary-foreground`},z={key:1,class:`inline-flex shrink-0 rounded-full bg-muted px-2 py-0.5 text-[11px] font-medium uppercase text-muted-foreground`},B={class:`truncate text-xs text-muted-foreground`},V={key:0,class:`grid gap-2 sm:grid-cols-2`},H=r({__name:`AccountDialog`,props:{open:{type:Boolean}},emits:[`update:open`],setup(n,{emit:r}){let h=n,x=r,{t:H}=te(),U=w(),W=_(),G=e(),{user:K,isConfigured:q,isLoggedIn:J}=ee(U),Y=u(()=>y(K.value)),X=C(),Z=re(),Q=u({get:()=>h.open,set:e=>x(`update:open`,e)}),ie=u(()=>{if(!J.value&&q.value)return H(`account.loginHint`)}),$=l(!1);async function ae(){if(!$.value){$.value=!0;try{await U.login()}finally{$.value=!1}}}function oe(){U.logout(),W.reset()}function se(){Q.value=!1,G.toggleShowSyncDialog(!0)}function ce(){Q.value=!1,G.openShareDialog()}return(e,n)=>(a(),s(T,{open:Q.value,"onUpdate:open":n[0]||=e=>Q.value=e,title:p(H)(`account.title`),description:ie.value,icon:p(b)},{default:c(()=>[p(q)?p(J)?(a(),o(`div`,M,[d(D,{align:`center`},{leading:c(()=>[p(K)?.avatar?(a(),o(`img`,{key:0,src:p(K).avatar,alt:p(K)?.login,class:`size-12 shrink-0 rounded-full ring-2 ring-background sm:size-11`},null,8,N)):(a(),o(`div`,P,[d(p(b),{class:`size-5 text-muted-foreground`})]))]),default:c(()=>[m(`div`,F,[m(`div`,I,[m(`span`,L,i(p(K)?.name||p(K)?.login),1),Y.value?(a(),o(`span`,R,[d(p(O),{class:`size-3`}),n[2]||=t(` Pro `,-1)])):(a(),o(`span`,z,` Free `))]),m(`p`,B,` @`+i(p(K)?.login),1)])]),_:1}),p(X)||p(Z)?(a(),o(`div`,V,[p(X)?(a(),s(p(S),{key:0,variant:`outline`,class:`h-10 justify-start gap-2`,onClick:se},{default:c(()=>[d(p(g),{class:`size-4 shrink-0`}),t(` `+i(p(H)(`account.cloudSync`)),1)]),_:1})):f(``,!0),p(Z)?(a(),s(p(S),{key:1,variant:`outline`,class:`h-10 justify-start gap-2`,onClick:ce},{default:c(()=>[d(p(ne),{class:`size-4 shrink-0`}),t(` `+i(p(H)(`account.sharePreview`)),1)]),_:1})):f(``,!0)])):f(``,!0),d(p(S),{variant:`outline`,class:`h-10 w-full gap-2 text-destructive hover:bg-destructive/10 hover:text-destructive`,onClick:oe},{default:c(()=>[d(p(k),{class:`size-4`}),t(` `+i(p(H)(`common.logout`)),1)]),_:1})])):(a(),s(E,{key:1,icon:p(b),title:p(H)(`account.loginTitle`),"action-label":$.value?p(H)(`account.loggingIn`):p(H)(`account.githubLogin`),"action-icon":$.value?p(v):j,"action-disabled":$.value,onAction:ae},null,8,[`icon`,`title`,`action-label`,`action-icon`,`action-disabled`])):(a(),s(E,{key:0,icon:p(A),title:p(H)(`account.notConfiguredTitle`),description:p(H)(`account.notConfiguredDescription`),compact:``},{default:c(()=>[...n[1]||=[m(`code`,{class:`rounded-md border bg-muted/40 px-2 py-1 text-[11px] text-muted-foreground`},` VITE_MD_API_URL `,-1)]]),_:1},8,[`icon`,`title`,`description`]))]),_:1},8,[`open`,`title`,`description`,`icon`]))}});export{H as default};
@@ -1,2 +1,2 @@
1
- import{$ as e,M as t,N as n,Q as r,Z as i,_ as a,g as o,h as s,q as c,t as ee}from"./md-ui-Dq6MTvr4.js";import{$ as l,B as te,C as u,Ct as ne,E as d,Et as f,H as p,I as m,S as h,Tt as re,W as ie,a as ae,b as g,ct as _,d as v,f as y,h as oe,l as se,m as ce,nt as b,pt as x,r as S,rt as le,u as ue,v as C,w,x as T,xt as E,y as D,z as O}from"./md-vendor_vue-BeOfKbk1.js";import{n as k}from"./md-vue-i18n-Cxvw1c3e.js";import{c as de,n as A}from"./md-translate-CzY24XmZ.js";import{n as j}from"./md-lib-CvTniYNx.js";import{t as fe}from"./md-check-lU7D5avq.js";import{t as pe}from"./md-circle-question-mark-D7cciLOv.js";import{t as M}from"./md-download-PHSmBRjD.js";import{n as me,r as he}from"./md-MenuSeparator-Bee7ZeuH.js";import{t as ge}from"./md-eye-D87jI9hW.js";import{t as _e}from"./md-plus-ByJ8LvCm.js";import{n as ve,t as ye}from"./md-DropdownMenuSeparator-CNXCC7_M.js";import{o as N}from"./md-utils-CfHWyiHX.js";import{n as be}from"./md-button-BSiUqWkb.js";import{i as xe,n as Se,r as Ce,t as we}from"./md-DialogTitle-DckujrLp.js";import{t as Te}from"./md-DialogDescription-I_Nb5r3l.js";import{n as Ee,r as De,t as Oe}from"./md-DropdownMenuTrigger-Dc5A4zvK.js";import{t as ke}from"./md-DropdownMenuItem-BwyJT-E2.js";import{a as Ae,i as je,n as Me,r as Ne,t as Pe}from"./md-SelectContent-BTj2mBZa.js";import{n as Fe}from"./md-marketplace-Ds3POzKO.js";import{t as Ie}from"./md-confirm-BihqdS5v.js";import{t as Le}from"./md-highlight-CQhsZQAL.js";import{n as Re}from"./md-editor-CAilbZEo.js";import{t as ze}from"./md-DialogFooter-CBAeLIxQ.js";import{t as P}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as Be}from"./md-Input-CXcSl6a3.js";import{t as Ve}from"./md-clipboard-BYFl_-FZ.js";import{n as F}from"./md-useLocalizedStyleOptions-B5NSKADz.js";function He(t,n,r,i){let a=e(r),o=[`/**`,` * MD 主题导出`,` * 导出时间: ${new Date().toLocaleString()}`,` * 说明: 该文件包含完整的主题样式,可直接使用`,` */`,``,a,``,n,``,t].filter(Boolean).join(`
1
+ import{$ as e,M as t,N as n,Q as r,Z as i,_ as a,g as o,h as s,q as c,t as ee}from"./md-ui-BLkQlUQC.js";import{$ as l,B as te,C as u,Ct as ne,E as d,Et as f,H as p,I as m,S as h,Tt as re,W as ie,a as ae,b as g,ct as _,d as v,f as y,h as oe,l as se,m as ce,nt as b,pt as x,r as S,rt as le,u as ue,v as C,w,x as T,xt as E,y as D,z as O}from"./md-vendor_vue-BeOfKbk1.js";import{n as k}from"./md-vue-i18n-Cxvw1c3e.js";import{c as de,n as A}from"./md-translate-CRNthmbT.js";import{n as j}from"./md-lib-CvTniYNx.js";import{t as fe}from"./md-check-lU7D5avq.js";import{t as pe}from"./md-circle-question-mark-D7cciLOv.js";import{t as M}from"./md-download-PHSmBRjD.js";import{n as me,r as he}from"./md-MenuSeparator-Bee7ZeuH.js";import{t as ge}from"./md-eye-D87jI9hW.js";import{t as _e}from"./md-plus-ByJ8LvCm.js";import{n as ve,t as ye}from"./md-DropdownMenuSeparator-CNXCC7_M.js";import{o as N}from"./md-utils-CfHWyiHX.js";import{n as be}from"./md-button-BSiUqWkb.js";import{i as xe,n as Se,r as Ce,t as we}from"./md-DialogTitle-DckujrLp.js";import{t as Te}from"./md-DialogDescription-I_Nb5r3l.js";import{n as Ee,r as De,t as Oe}from"./md-DropdownMenuTrigger-Dc5A4zvK.js";import{t as ke}from"./md-DropdownMenuItem-BwyJT-E2.js";import{a as Ae,i as je,n as Me,r as Ne,t as Pe}from"./md-SelectContent-BTj2mBZa.js";import{n as Fe}from"./md-marketplace-D7PO9b25.js";import{t as Ie}from"./md-confirm-C91Js7gx.js";import{t as Le}from"./md-highlight-CQhsZQAL.js";import{n as Re}from"./md-editor-dmKdA3Kt.js";import{t as ze}from"./md-DialogFooter-CBAeLIxQ.js";import{t as P}from"./md-_plugin-vue_export-helper-BDNMzG2s.js";import{t as Be}from"./md-Input-CXcSl6a3.js";import{t as Ve}from"./md-clipboard-2tuieAqv.js";import{n as F}from"./md-useLocalizedStyleOptions-CYLcejBo.js";function He(t,n,r,i){let a=e(r),o=[`/**`,` * MD 主题导出`,` * 导出时间: ${new Date().toLocaleString()}`,` * 说明: 该文件包含完整的主题样式,可直接使用`,` */`,``,a,``,n,``,t].filter(Boolean).join(`
2
2
  `);return c(o,`${i}.css`,`text/css`),o}var Ue={class:`flex items-center h-9 px-2 shrink-0 border-b border-border`},We={class:`flex-1 flex items-center gap-0 overflow-x-auto custom-scrollbar min-w-0 h-full`,role:`tablist`},Ge=[`aria-selected`,`tabindex`,`onClick`,`onKeydown`,`onDblclick`,`onContextmenu`],Ke={key:2,class:`truncate max-w-[100px]`},qe={key:3,class:`absolute bottom-0 left-2 right-2 h-[2px] rounded-full bg-primary`},Je=[`aria-label`,`title`],Ye={class:`flex items-center shrink-0`},Xe=[`title`,`aria-label`],Ze=[`title`,`aria-label`],Qe=[`title`,`aria-label`],$e=[`lang`],et=[`placeholder`],tt={key:0,class:`shrink-0 border-t border-border bg-background px-3 pt-2 pb-3 space-y-2`},nt={class:`flex items-center justify-between text-xs`},rt={class:`text-muted-foreground`},it={class:`text-foreground font-semibold`},at={class:`flex items-center gap-2 text-muted-foreground`},ot={class:`flex`},st=[`title`,`aria-label`,`disabled`],ct=[`title`,`aria-label`,`disabled`],lt={class:`space-y-4`},ut={class:`space-y-2`},dt={class:`text-sm font-medium`},ft={class:`space-y-2`},pt={class:`text-sm font-medium`},mt={class:`text-xs text-muted-foreground`},ht={class:`space-y-3 text-sm text-muted-foreground leading-relaxed`},gt={class:`space-y-4 flex-1 min-h-0 flex flex-col`},_t={class:`space-y-2`},vt={class:`text-sm font-medium`},yt={class:`flex-1 min-h-0 border rounded-lg overflow-auto`},bt={class:`h-full overflow-auto bg-muted text-sm`},xt=[`innerHTML`],I=P(d({__name:`CssEditor`,setup(e){let{t:c}=k(),d=Ie(),P=a(),I=ee(),St=s(),Ct=Re(),L=o(),{isMobile:R}=S(I),{cssContentConfig:z,isSelectMode:B,selectedIds:V}=S(P),wt=x(!1);l(()=>I.isShowCssEditor,()=>{R.value&&(wt.value=!0)}),l(()=>R.value,()=>{wt.value=!1});let H=x(!1),U=x(``),W=x(null),G=x(``),Tt=null;function Et(e){Tt=e}function Dt(e){W.value=e.id,G.value=e.title,m(()=>{Tt?.select()})}function Ot(){let e=W.value;if(!e)return;let t=G.value.trim();if(!t){j.error(c(`cssEditor.schemeNameRequired`)),W.value=null;return}let n=z.value.tabs.find(t=>t.id===e);n&&t!==n.title&&(n.title=t,n.name=t,n.updateDatetime=new Date,j.success(c(`post.editSuccess`))),W.value=null}function kt(){W.value=null}async function At(){await m();let e=document.querySelector(`.cssEditor-wrapper .css-tab-active`);e&&e.scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})}function jt(e){U.value=e,H.value=!0}function Mt(){U.value.trim()?(P.renameTab(U.value),H.value=!1,j.success(c(`post.editSuccess`))):j.error(c(`cssEditor.editNameFailed`))}let K=x(!1),q=x(!1),J=x(``),Y=x(`blank`);async function Nt(){if(!J.value.trim()){j.error(c(`cssEditor.createNameFailed`));return}let e=``;e=Y.value===`blank`?t(A()):r[Y.value];let n=J.value;P.addCssContentTab(n,e),K.value=!1,j.success(c(`cssEditor.createSuccess`)),Y.value=`blank`,At()}function Pt(e){d.confirm({title:c(`confirm.tip`),description:c(`cssEditor.deleteSchemeConfirm`),onConfirm:()=>{let t=z.value.tabs;if(t.length===1){j.warning(c(`cssEditor.keepOneScheme`));return}let n=z.value.active;n===e&&t.forEach((r,i)=>{if(r.id===e){let e=t[i+1]||t[i-1];e&&(n=e.id)}}),P.tabChanged(n),z.value.tabs=t.filter(t=>t.id!==e),j.success(c(`common.deleteSuccess`))}})}function Ft(){J.value=c(`cssEditor.schemeDefaultName`,{index:z.value.tabs.length+1}),Y.value=`blank`,K.value=!0}let X=x(!1),Z=x(`default`),It=C(()=>Le.highlight(r[Z.value],{language:`css`}).value),Q=x(null),Lt=x(!1),Rt=x({x:0,y:0});function zt(e,t){e.preventDefault(),e.stopPropagation(),Q.value=t,Rt.value={x:e.clientX,y:e.clientY},Lt.value=!0}function $(){Lt.value=!1,Q.value=null}function Bt(){let e=z.value.tabs.find(e=>e.id===Q.value);e&&jt(e.name),$()}function Vt(){Q.value&&P.exportSingleTab(Q.value),$()}function Ht(){Q.value&&Pt(Q.value),$()}function Ut(){Q.value&&(P.toggleSelectMode(),P.toggleSelectTab(Q.value)),$()}let Wt=C(()=>z.value.tabs.length>0&&V.value.length===z.value.tabs.length);function Gt(){let e=V.value.length,t=e===1?c(`confirm.deleteItem`,{name:z.value.tabs.find(e=>e.id===V.value[0])?.title??``}):c(`confirm.deleteCssScheme`,{count:e});d.confirm({title:c(`confirm.tip`),description:t,confirmText:c(`post.confirmDelete`),destructive:!0,onConfirm:()=>{P.batchDeleteTabs()}})}function Kt(e){B.value?P.toggleSelectTab(e):Zt(e)}function qt(){P.toggleSelectMode()}function Jt(){Z.value=`default`,X.value=!0}async function Yt(){let e=r[Z.value];await Ve(e),j.success(c(`common.copiedToClipboard`))}function Xt(){X.value=!1,Y.value=Z.value,J.value=c(`cssEditor.basedOnTheme`,{theme:F(c,Z.value)}),K.value=!0}function Zt(e){P.tabChanged(e),At()}O(()=>{let e=()=>{L.applyCurrentTheme(),L.updateCodeTheme();let e=Ct.getContent();St.render(e)};P.setOnTabChangedCallback(e),P.initCssEditor(e),At(),document.addEventListener(`click`,$)}),te(()=>{document.removeEventListener(`click`,$)});function Qt(){let e=z.value.tabs.find(e=>e.id===z.value.active);if(!e){j.error(c(`cssEditor.schemeNotFound`));return}let t=e.title||e.name,a=r.default;if(L.theme==="default")a=r.default;else if(i(L.theme))a=`${r.default}\n\n${r[L.theme]}`;else if(n(L.theme)){let e=Fe().getInstalledThemeCss(L.theme);e&&(a=`${r.default}\n\n${e}`)}He(e.content,a,{primaryColor:L.primaryColor,fontFamily:L.fontFamily,fontSize:L.fontSize,lineHeight:L.lineHeight,blockSpacing:L.blockSpacing,linkColor:L.linkColor,blockquoteBackground:L.blockquoteBackground},t)}return(e,t)=>{let n=Oe,r=ke,i=ye,a=Ee,o=De,s=we,ee=Te,l=Se,te=Be,d=Me,m=Ne,x=je,S=Pe,C=Ae,O=be,k=ze,A=Ce,j=xe;return p(),h(ce,null,[E(R)&&E(I).isShowCssEditor?(p(),h(`div`,{key:0,class:`fixed inset-0 bg-black/50 z-40`,onClick:t[0]||=e=>E(I).isShowCssEditor=!1})):T(``,!0),le(D(`div`,{class:ne([`cssEditor-wrapper h-full flex flex-col overflow-y-auto`,{"fixed top-0 right-0 w-full h-full z-100 bg-background border-l shadow-lg mobile-css-editor":E(R),animate:E(R)&&E(wt)}]),style:re(E(R)?{transform:E(I).isShowCssEditor?`translateX(0)`:`translateX(100%)`}:void 0)},[D(`div`,Ue,[D(`div`,We,[(p(!0),h(ce,null,ie(E(z).tabs,e=>(p(),h(`div`,{key:e.id,class:`group/tab relative flex items-center shrink-0 h-full`},[D(`div`,{role:`tab`,"aria-selected":E(z).active===e.id&&!E(B),tabindex:E(W)===e.id?-1:0,class:ne([`relative flex items-center gap-1.5 h-full px-3 text-xs transition-colors duration-150`,[E(z).active===e.id&&!E(B)?`css-tab-active text-foreground font-medium`:`text-muted-foreground hover:text-foreground`,E(B)&&E(V).includes(e.id)?`bg-accent text-accent-foreground`:``]]),onClick:t=>Kt(e.id),onKeydown:[v(y(t=>Kt(e.id),[`prevent`]),[`enter`]),v(y(t=>Kt(e.id),[`prevent`]),[`space`])],onDblclick:y(t=>Dt(e),[`stop`]),onContextmenu:t=>zt(t,e.id)},[E(B)?(p(),h(`span`,{key:0,class:ne([`inline-flex items-center justify-center size-4 rounded border transition-colors mr-1`,E(V).includes(e.id)?`bg-primary border-primary text-primary-foreground`:`border-border`])},[E(V).includes(e.id)?(p(),g(E(fe),{key:0,class:`size-3`})):T(``,!0)],2)):T(``,!0),E(W)===e.id?le((p(),h(`input`,{key:1,ref_for:!0,ref:Et,"onUpdate:modelValue":t[1]||=e=>_(G)?G.value=e:null,class:`w-[80px] bg-transparent outline-none border-b border-primary text-xs`,onClick:t[2]||=y(()=>{},[`stop`]),onKeyup:[v(Ot,[`enter`]),v(kt,[`escape`])],onBlur:Ot},null,544)),[[se,E(G)]]):(p(),h(`span`,Ke,f(e.title),1)),E(z).active===e.id&&!E(B)?(p(),h(`span`,qe)):T(``,!0)],42,Ge),E(z).active===e.id&&!E(B)?(p(),g(o,{key:0},{default:b(()=>[w(n,{"as-child":``},{default:b(()=>[D(`button`,{type:`button`,class:`-ml-2 mr-1 inline-flex items-center justify-center size-4 rounded text-muted-foreground/60 hover:text-foreground hover:bg-black/5 dark:hover:bg-white/10 transition-colors duration-100 cursor-pointer`,"aria-label":E(c)(`common.moreActions`),title:E(c)(`common.moreActions`),onClick:t[3]||=y(()=>{},[`stop`])},[w(E(he),{class:`size-3`})],8,Je)]),_:1}),w(a,{align:`start`,class:`w-32`},{default:b(()=>[w(r,{onClick:y(t=>jt(e.name),[`stop`])},{default:b(()=>[w(E(me),{class:`mr-2 size-4`}),u(` `+f(E(c)(`common.rename`)),1)]),_:1},8,[`onClick`]),w(r,{onClick:y(t=>E(P).exportSingleTab(e.id),[`stop`])},{default:b(()=>[w(E(M),{class:`mr-2 size-4`}),u(` `+f(E(c)(`common.export`)),1)]),_:1},8,[`onClick`]),w(i),E(z).tabs.length>1?(p(),g(r,{key:0,class:`text-destructive focus:text-destructive`,onClick:y(t=>Pt(e.id),[`stop`])},{default:b(()=>[w(E(N),{class:`mr-2 size-4`}),u(` `+f(E(c)(`common.delete`)),1)]),_:1},8,[`onClick`])):T(``,!0),w(r,{onClick:y(t=>{E(P).toggleSelectMode(),E(P).toggleSelectTab(e.id)},[`stop`])},{default:b(()=>[w(E(ve),{class:`mr-2 size-4`}),u(` `+f(E(c)(`cssEditor.multiSelect`)),1)]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1024)):T(``,!0)]))),128))]),D(`div`,Ye,[D(`button`,{type:`button`,class:`inline-flex items-center justify-center size-7 rounded-md text-muted-foreground hover:text-foreground hover:bg-accent transition-colors duration-150`,title:E(c)(`cssEditor.newTitle`),"aria-label":E(c)(`cssEditor.newTitle`),onClick:Ft},[w(E(_e),{class:`size-3.5`})],8,Xe),w(o,null,{default:b(()=>[w(n,{"as-child":``},{default:b(()=>[D(`button`,{type:`button`,class:`inline-flex items-center justify-center size-7 rounded-md text-muted-foreground hover:text-foreground hover:bg-accent transition-colors duration-150`,title:E(c)(`common.more`),"aria-label":E(c)(`common.more`)},[w(E(he),{class:`size-3.5`})],8,Ze)]),_:1}),w(a,{align:`end`,class:`w-48`},{default:b(()=>[w(r,{onClick:Jt},{default:b(()=>[w(E(ge),{class:`mr-2 size-4`}),u(` `+f(E(c)(`cssEditor.viewBuiltinTitle`)),1)]),_:1}),w(r,{onClick:Qt},{default:b(()=>[w(E(M),{class:`mr-2 size-4`}),u(` `+f(E(c)(`common.export`)),1)]),_:1}),w(i),w(r,{onClick:t[4]||=e=>q.value=!0},{default:b(()=>[w(E(pe),{class:`mr-2 size-4`}),u(` `+f(E(c)(`cssEditor.tipsTitle`)),1)]),_:1})]),_:1})]),_:1}),D(`button`,{type:`button`,class:`inline-flex items-center justify-center size-7 rounded-md text-muted-foreground hover:text-foreground hover:bg-accent transition-colors duration-150`,title:E(c)(`common.close`),"aria-label":E(c)(`common.close`),onClick:t[5]||=e=>E(I).isShowCssEditor=!1},[w(E(N),{class:`size-3.5`})],8,Qe)])]),D(`div`,{class:`flex-1 min-h-0`,lang:E(de)},[D(`textarea`,{id:`cssEditor`,type:`textarea`,placeholder:E(c)(`cssEditor.cssPlaceholder`)},null,8,et)],8,$e),w(ae,{name:`slide-up`},{default:b(()=>[E(B)?(p(),h(`div`,tt,[D(`div`,nt,[D(`span`,rt,[u(f(E(c)(`common.selected`))+` `,1),D(`strong`,it,f(E(V).length),1),u(` `+f(E(c)(`cssEditor.selectedUnit`)),1)]),D(`div`,at,[D(`button`,{class:`hover:text-foreground transition-colors`,onClick:t[6]||=e=>E(Wt)?E(P).clearSelection():E(P).selectAllTabs()},f(E(Wt)?E(c)(`common.deselectAll`):E(c)(`common.selectAll`)),1),t[23]||=D(`span`,{class:`opacity-30`},`·`,-1),D(`button`,{class:`hover:text-foreground transition-colors`,onClick:qt},f(E(c)(`common.done`)),1)])]),D(`div`,ot,[D(`button`,{type:`button`,class:`flex flex-1 items-center justify-center rounded-md py-2 text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:pointer-events-none disabled:opacity-35`,title:E(c)(`common.export`),"aria-label":E(c)(`common.export`),disabled:!E(V).length,onClick:t[7]||=(...e)=>E(P).batchExportTabs&&E(P).batchExportTabs(...e)},[w(E(M),{class:`size-4`})],8,st),t[24]||=D(`div`,{class:`mx-1 self-center h-5 w-px bg-border/60 shrink-0`},null,-1),D(`button`,{type:`button`,class:`flex flex-1 items-center justify-center rounded-md py-2 text-destructive/60 transition-colors hover:bg-destructive/8 hover:text-destructive disabled:pointer-events-none disabled:opacity-35`,title:E(V).length>=E(z).tabs.length?E(c)(`cssEditor.deleteSchemeMinOne`):E(c)(`common.delete`),"aria-label":E(V).length>=E(z).tabs.length?E(c)(`cssEditor.deleteSchemeMinOne`):E(c)(`common.delete`),disabled:!E(V).length||E(V).length>=E(z).tabs.length,onClick:t[8]||=e=>Gt()},[w(E(N),{class:`size-4`})],8,ct)])])):T(``,!0)]),_:1}),(p(),g(oe,{to:`body`},[E(Lt)?(p(),h(`div`,{key:0,class:`fixed z-50 min-w-[120px] rounded-md border border-border bg-background p-1 shadow-md animate-in fade-in-0 zoom-in-95`,style:re({left:`${E(Rt).x}px`,top:`${E(Rt).y}px`}),onClick:t[9]||=y(()=>{},[`stop`])},[D(`button`,{class:`flex w-full items-center rounded-sm px-2 py-1.5 text-xs text-foreground hover:bg-accent transition-colors`,onClick:Bt},[w(E(me),{class:`mr-2 size-3.5`}),u(` `+f(E(c)(`common.rename`)),1)]),D(`button`,{class:`flex w-full items-center rounded-sm px-2 py-1.5 text-xs text-foreground hover:bg-accent transition-colors`,onClick:Vt},[w(E(M),{class:`mr-2 size-3.5`}),u(` `+f(E(c)(`common.export`)),1)]),t[25]||=D(`div`,{class:`my-1 h-px bg-border`},null,-1),E(z).tabs.length>1?(p(),h(`button`,{key:0,class:`flex w-full items-center rounded-sm px-2 py-1.5 text-xs text-destructive hover:bg-destructive/8 transition-colors`,onClick:Ht},[w(E(N),{class:`mr-2 size-3.5`}),u(` `+f(E(c)(`common.delete`)),1)])):T(``,!0),D(`button`,{class:`flex w-full items-center rounded-sm px-2 py-1.5 text-xs text-foreground hover:bg-accent transition-colors`,onClick:Ut},[w(E(ve),{class:`mr-2 size-3.5`}),u(` `+f(E(c)(`cssEditor.multiSelect`)),1)])],4)):T(``,!0)])),w(j,{open:E(K),"onUpdate:open":t[14]||=e=>_(K)?K.value=e:null},{default:b(()=>[w(A,{class:`sm:max-w-[425px]`},{default:b(()=>[w(l,null,{default:b(()=>[w(s,null,{default:b(()=>[u(f(E(c)(`cssEditor.newTitle`)),1)]),_:1}),w(ee,null,{default:b(()=>[u(f(E(c)(`cssEditor.newDescription`)),1)]),_:1})]),_:1}),D(`div`,lt,[D(`div`,ut,[D(`label`,dt,f(E(c)(`cssEditor.schemeName`)),1),w(te,{modelValue:E(J),"onUpdate:modelValue":t[10]||=e=>_(J)?J.value=e:null,placeholder:E(c)(`cssEditor.schemeNamePlaceholder`),onKeyup:v(Nt,[`enter`])},null,8,[`modelValue`,`placeholder`])]),D(`div`,ft,[D(`label`,pt,f(E(c)(`cssEditor.initialTemplate`)),1),w(C,{modelValue:E(Y),"onUpdate:modelValue":t[11]||=e=>_(Y)?Y.value=e:null},{default:b(()=>[w(m,null,{default:b(()=>[w(d,{placeholder:E(c)(`cssEditor.selectTemplate`)},null,8,[`placeholder`])]),_:1}),w(S,null,{default:b(()=>[w(x,{value:`blank`},{default:b(()=>[u(f(E(c)(`cssEditor.blankScheme`)),1)]),_:1}),w(x,{value:`default`},{default:b(()=>[u(f(E(c)(`cssEditor.basedClassic`)),1)]),_:1}),w(x,{value:`grace`},{default:b(()=>[u(f(E(c)(`cssEditor.basedGrace`)),1)]),_:1}),w(x,{value:`simple`},{default:b(()=>[u(f(E(c)(`cssEditor.basedSimple`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`]),D(`p`,mt,f(E(c)(`cssEditor.templateHint`)),1)])]),w(k,null,{default:b(()=>[w(O,{variant:`outline`,onClick:t[12]||=e=>K.value=!1},{default:b(()=>[u(f(E(c)(`common.cancel`)),1)]),_:1}),w(O,{onClick:t[13]||=e=>Nt()},{default:b(()=>[u(f(E(c)(`common.create`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),w(j,{open:E(H),"onUpdate:open":t[17]||=e=>_(H)?H.value=e:null},{default:b(()=>[w(A,{class:`sm:max-w-[425px]`},{default:b(()=>[w(l,null,{default:b(()=>[w(s,null,{default:b(()=>[u(f(E(c)(`cssEditor.editSchemeTitle`)),1)]),_:1}),w(ee,null,{default:b(()=>[u(f(E(c)(`cssEditor.editSchemeDescription`)),1)]),_:1})]),_:1}),w(te,{modelValue:E(U),"onUpdate:modelValue":t[15]||=e=>_(U)?U.value=e:null,onKeyup:v(Mt,[`enter`])},null,8,[`modelValue`]),w(k,null,{default:b(()=>[w(O,{variant:`outline`,onClick:t[16]||=e=>H.value=!1},{default:b(()=>[u(f(E(c)(`common.cancel`)),1)]),_:1}),w(O,{onClick:Mt},{default:b(()=>[u(f(E(c)(`common.save`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),w(j,{open:E(q),"onUpdate:open":t[19]||=e=>_(q)?q.value=e:null},{default:b(()=>[w(A,{class:`sm:max-w-[425px]`},{default:b(()=>[w(l,null,{default:b(()=>[w(s,null,{default:b(()=>[u(f(E(c)(`cssEditor.tipsTitle`)),1)]),_:1})]),_:1}),D(`div`,ht,[D(`p`,null,f(E(c)(`cssEditor.editorHint`)),1)]),w(k,null,{default:b(()=>[w(O,{onClick:t[18]||=e=>q.value=!1},{default:b(()=>[u(f(E(c)(`common.close`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])],6),[[ue,!E(R)||E(I).isShowCssEditor]]),w(j,{open:E(X),"onUpdate:open":t[22]||=e=>_(X)?X.value=e:null},{default:b(()=>[w(A,{class:`sm:max-w-4xl max-h-[90vh] flex flex-col`},{default:b(()=>[w(l,null,{default:b(()=>[w(s,null,{default:b(()=>[u(f(E(c)(`cssEditor.viewBuiltinTitle`)),1)]),_:1}),w(ee,null,{default:b(()=>[u(f(E(c)(`cssEditor.viewBuiltinDescription`)),1)]),_:1})]),_:1}),D(`div`,gt,[D(`div`,_t,[D(`label`,vt,f(E(c)(`cssEditor.selectTheme`)),1),w(C,{modelValue:E(Z),"onUpdate:modelValue":t[20]||=e=>_(Z)?Z.value=e:null},{default:b(()=>[w(m,{class:`w-full mt-2 sm:w-[200px] focus-visible:ring-0 focus-visible:ring-offset-0`},{default:b(()=>[w(d,{placeholder:E(c)(`cssEditor.selectThemePlaceholder`)},null,8,[`placeholder`])]),_:1}),w(S,null,{default:b(()=>[w(x,{value:`default`},{default:b(()=>[u(f(E(F)(E(c),`default`)),1)]),_:1}),w(x,{value:`grace`},{default:b(()=>[u(f(E(F)(E(c),`grace`)),1)]),_:1}),w(x,{value:`simple`},{default:b(()=>[u(f(E(F)(E(c),`simple`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),D(`div`,yt,[D(`pre`,bt,[D(`code`,{class:`hljs`,innerHTML:E(It)},null,8,xt)])])]),w(k,{class:`flex-col sm:flex-row gap-2`},{default:b(()=>[w(O,{variant:`outline`,onClick:t[21]||=e=>X.value=!1},{default:b(()=>[u(f(E(c)(`common.close`)),1)]),_:1}),w(O,{variant:`outline`,onClick:Yt},{default:b(()=>[u(f(E(c)(`cssEditor.copyAll`)),1)]),_:1}),w(O,{variant:`outline`,onClick:Xt},{default:b(()=>[u(f(E(c)(`cssEditor.createFromTheme`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])],64)}}}),[[`__scopeId`,`data-v-6b8d8542`]]);export{I as default};
@@ -1,4 +1,4 @@
1
- import{F as e,L as t,R as n,t as r,z as i}from"./md-ui-Dq6MTvr4.js";import{f as a,h as o,m as s}from"./md-storage-TAchKcvc.js";import{$ as c,C as l,Ct as u,E as d,Et as f,F as p,H as m,I as h,S as g,W as _,a as v,b as y,ct as b,dt as x,f as S,m as C,n as w,nt as T,pt as E,rt as D,s as O,v as k,w as A,x as j,xt as M,y as N}from"./md-vendor_vue-BeOfKbk1.js";import{n as P}from"./md-vue-i18n-Cxvw1c3e.js";import{r as F}from"./md-translate-CzY24XmZ.js";import{n as I}from"./md-lib-CvTniYNx.js";import{t as L}from"./md-createLucideIcon-BXdNAL-d.js";import{t as R}from"./md-blocks-Db875tl4.js";import{t as ee}from"./md-check-lU7D5avq.js";import{t as te}from"./md-chevron-down-BMHj5Qr0.js";import{t as ne}from"./md-copy-FPkQvYMT.js";import{t as re}from"./md-download-PHSmBRjD.js";import{t as ie}from"./md-pencil-D9P1pJGi.js";import{t as ae}from"./md-plus-ByJ8LvCm.js";import{t as oe}from"./md-trash-_QL9lZ9Z.js";import{t as se}from"./md-upload-D-o2qobN.js";import{n as ce}from"./md-button-BSiUqWkb.js";import{i as le,n as ue,r as de,t as fe}from"./md-TooltipTrigger-Bddfw7hJ.js";import{i as pe,n as me,r as he,t as ge}from"./md-DialogTitle-DckujrLp.js";import{t as _e}from"./md-DialogDescription-I_Nb5r3l.js";import{t as z}from"./md-Label-BEXxOepa.js";import{n as B,t as V}from"./md-RadioGroupItem-U5iwXTfz.js";import{a as ve,i as ye,n as be,r as xe,t as Se}from"./md-SelectContent-BTj2mBZa.js";import{i as Ce,n as we,r as Te,t as Ee}from"./md-TabsTrigger-D71LxSp0.js";import{t as De}from"./md-confirm-BihqdS5v.js";import{P as H,_ as Oe,k as U,y as ke}from"./md-extensions-Glu0Pgjx.js";import{n as Ae}from"./md-editor-CAilbZEo.js";import{t as je}from"./md-DialogFooter-CBAeLIxQ.js";import{t as W}from"./md-Textarea-D5oizzXs.js";import{t as G}from"./md-Input-CXcSl6a3.js";import{n as Me}from"./md-useLocalizedBuiltinComponents-DADyqpKR.js";import{c as Ne,f as K,i as q,l as J,n as Y,o as X,r as Pe,s as Fe,t as Ie,u as Z}from"./md-form-schema-BGKIw1Ts.js";var Le=L({name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]}),Re=L({name:`rss`,size:24,node:[[`path`,{d:`M4 11a9 9 0 0 1 9 9`,key:`pv89mb`}],[`path`,{d:`M4 4a16 16 0 0 1 16 16`,key:`k0647b`}],[`circle`,{cx:`5`,cy:`19`,r:`1`,key:`bfqh0e`}]]}),Q=L({name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]}),ze=w(`mpAccounts`,()=>{let e=a.reactive(s(`mp-accounts`),[]),t=a.reactive(s(`mp-current-account-id`),``),n=k(()=>e.value.find(e=>e.id===t.value)??e.value[0]??null);function r(n){let r={id:o(),mpId:n?.mpId??``,name:n?.name??F(`store.mpAccount.newAccount`),logo:n?.logo??``,desc:n?.desc??``,serviceType:n?.serviceType??`1`,verify:n?.verify??`0`};return e.value.push(r),t.value=r.id,r}function i(t,n){let r=e.value.findIndex(e=>e.id===t);r!==-1&&(e.value[r]={...e.value[r],...n})}function c(n){let r=e.value.findIndex(e=>e.id===n);r!==-1&&(e.value.splice(r,1),t.value===n&&(t.value=e.value[0]?.id??``))}function l(e){t.value=e}return{accounts:e,currentAccountId:t,currentAccount:n,addAccount:r,updateAccount:i,deleteAccount:c,setCurrentAccount:l}}),$={class:`flex-1 overflow-y-auto p-1 [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden flex flex-col`},Be={href:`https://github.com/doocs/md/blob/main/docs/mp-card.md`,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-muted-foreground hover:text-primary underline-offset-2 hover:underline`},Ve={class:`inline-flex items-center space-x-2`},He={class:`inline-flex items-center space-x-2`},Ue={class:`inline-flex items-center space-x-2`},We={class:`inline-flex items-center space-x-2`},Ge={class:`inline-flex items-center space-x-2`},Ke=d({__name:`MpAccountConfigDialog`,props:{open:{type:Boolean},accountId:{}},emits:[`update:open`,`saved`],setup(e,{emit:t}){let n=e,r=t,{t:i}=P(),a=ze(),o=k(()=>n.accountId!==null),s=k(()=>n.accountId?a.accounts.find(e=>e.id===n.accountId)??null:null),c=k(()=>`${n.accountId??`new`}-${n.open}`),u=k(()=>{let e=s.value;return e?{mpId:e.mpId,name:e.name,logo:e.logo,desc:e.desc,serviceType:e.serviceType,verify:e.verify}:{mpId:``,name:``,logo:``,desc:``,serviceType:`1`,verify:`0`}}),d=k(()=>X({mpId:Y(i(`mpAccount.errors.mpIdRequired`)),name:Y(i(`mpAccount.errors.nameRequired`)),logo:Fe().refine(e=>{let t=e.trim();return t===``||Ne().safeParse(t).success},i(`mpAccount.errors.logoInvalid`)).optional(),desc:Ie(),serviceType:q([`1`,`2`]),verify:q([`0`,`1`,`2`])})),h=k(()=>Pe(d.value));function g(e){let t=d.value.safeParse(e);if(!t.success)return;let{mpId:o,name:s,logo:c,desc:l,serviceType:u,verify:f}=t.data;n.accountId?(a.updateAccount(n.accountId,{mpId:o,name:s,logo:c,desc:l,serviceType:u,verify:f}),I.success(i(`mpAccount.updated`,{name:s}))):(a.addAccount({mpId:o,name:s,logo:c,desc:l,serviceType:u,verify:f}),I.success(i(`mpAccount.added`,{name:s}))),r(`saved`),r(`update:open`,!1)}return(t,n)=>{let a=ge,s=me,d=G,_=K,v=W,b=V,x=z,S=B,C=ce,w=je,E=he,D=pe;return m(),y(D,{open:e.open,"onUpdate:open":n[1]||=e=>r(`update:open`,e)},{default:T(()=>[A(E,{class:`!w-[750px] !max-w-[95vw] max-h-[85vh] flex flex-col overflow-hidden`},{default:T(()=>[A(s,null,{default:T(()=>[A(a,null,{default:T(()=>[l(f(M(o)?M(i)(`mpAccount.editTitle`):M(i)(`mpAccount.addTitle`)),1)]),_:1})]),_:1}),(m(),y(M(Z),{key:M(c),"validation-schema":M(h),"initial-values":M(u),class:`flex flex-col flex-1 overflow-hidden`,onSubmit:g},{default:T(()=>[N(`div`,$,[A(M(J),{name:`mpId`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.idLabel`),required:``,error:t,width:110},{hint:T(()=>[N(`a`,Be,f(M(i)(`mpAccount.idHelp`)),1)]),default:T(()=>[A(d,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},placeholder:M(i)(`mpAccount.idPlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`name`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.nameLabel`),required:``,error:t,width:110},{default:T(()=>[A(d,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},placeholder:M(i)(`mpAccount.namePlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`logo`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.logoLabel`),error:t,width:110},{default:T(()=>[A(d,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},placeholder:M(i)(`mpAccount.logoPlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`desc`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.descLabel`),error:t,width:110},{default:T(()=>[A(v,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},rows:`3`,class:`resize-none`,placeholder:M(i)(`mpAccount.descPlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`serviceType`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.typeLabel`),required:``,error:t,width:110},{default:T(()=>[A(S,p({class:`flex gap-5`},e,{"default-value":e.value}),{default:T(()=>[N(`div`,Ve,[A(b,{id:`mp-cfg-type-1`,value:`1`}),A(x,{for:`mp-cfg-type-1`},{default:T(()=>[l(f(M(i)(`mpAccount.typeOfficial`)),1)]),_:1})]),N(`div`,He,[A(b,{id:`mp-cfg-type-2`,value:`2`}),A(x,{for:`mp-cfg-type-2`},{default:T(()=>[l(f(M(i)(`mpAccount.typeService`)),1)]),_:1})])]),_:1},16,[`default-value`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`verify`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.verifyLabel`),required:``,error:t,width:110},{default:T(()=>[A(S,p({class:`flex gap-5`},e,{"default-value":e.value}),{default:T(()=>[N(`div`,Ue,[A(b,{id:`mp-cfg-verify-0`,value:`0`}),A(x,{for:`mp-cfg-verify-0`},{default:T(()=>[l(f(M(i)(`mpAccount.verifyNone`)),1)]),_:1})]),N(`div`,We,[A(b,{id:`mp-cfg-verify-1`,value:`1`}),A(x,{for:`mp-cfg-verify-1`},{default:T(()=>[l(f(M(i)(`mpAccount.verifyPersonal`)),1)]),_:1})]),N(`div`,Ge,[A(b,{id:`mp-cfg-verify-2`,value:`2`}),A(x,{for:`mp-cfg-verify-2`},{default:T(()=>[l(f(M(i)(`mpAccount.verifyEnterprise`)),1)]),_:1})])]),_:1},16,[`default-value`])]),_:2},1032,[`label`,`error`])]),_:1})]),A(w,{class:`p-1`},{default:T(()=>[A(C,{variant:`outline`,type:`button`,onClick:n[0]||=e=>r(`update:open`,!1)},{default:T(()=>[l(f(M(i)(`common.cancel`)),1)]),_:1}),A(C,{type:`submit`},{default:T(()=>[l(f(M(i)(`common.save`)),1)]),_:1})]),_:1})]),_:1},8,[`validation-schema`,`initial-values`]))]),_:1})]),_:1},8,[`open`])}}}),qe={class:`space-y-3`},Je={key:0,class:`space-y-2`},Ye={class:`text-xs font-medium text-muted-foreground`},Xe={class:`space-y-2`},Ze={key:0,class:`text-red-500 ml-0.5`},Qe={class:`space-y-1 min-w-0`},$e={key:2,class:`text-[10px] text-muted-foreground leading-snug`},et={key:1},tt={class:`text-xs text-muted-foreground italic`},nt={class:`text-xs font-medium text-muted-foreground mb-1.5`},rt=[`innerHTML`],it={class:`text-xs font-medium text-muted-foreground mb-1.5`},at={class:`text-xs font-mono bg-muted rounded-lg px-3 py-2.5 overflow-x-auto text-foreground/80 leading-relaxed`},ot=d({__name:`ComponentPropFill`,props:{def:{}},emits:[`update:values`],setup(e,{emit:r}){let i=e,a=r,{t:o,locale:s}=P(),u=x({}),d=!1;function p(){d=!0;let e=n(i.def);for(let e of Object.keys(u))delete u[e];Object.assign(u,e),a(`update:values`,{...u}),d=!1}c(()=>[i.def.id,i.def.example,s.value],()=>{p()},{immediate:!0}),c(u,()=>{d||a(`update:values`,{...u})},{deep:!0});let h=k(()=>{try{let e=ke(i.def,{...u}),t=U(e);if(t)return t}catch{}return`<span style="color:#aaa;font-size:12px;">${o(`component.noContent`)}</span>`}),v=k(()=>t(i.def,{...u}));return(t,n)=>{let r=z,i=be,a=xe,s=ye,c=Se,d=ve,p=G;return m(),g(`div`,qe,[e.def.props.length>0?(m(),g(`div`,Je,[N(`p`,Ye,f(M(o)(`component.fillProps`)),1),N(`div`,Xe,[(m(!0),g(C,null,_(e.def.props,t=>(m(),g(`div`,{key:t.name,class:`grid grid-cols-1 sm:grid-cols-[7rem_1fr] gap-1.5 sm:gap-3 items-start sm:items-center`},[A(r,{for:`fill-${e.def.id}-${t.name}`,class:`text-xs font-mono text-primary pt-0 sm:pt-2`},{default:T(()=>[l(f(t.name)+` `,1),t.required?(m(),g(`span`,Ze,`*`)):j(``,!0)]),_:2},1032,[`for`]),N(`div`,Qe,[t.type===`boolean`?(m(),y(d,{key:0,"model-value":M(u)[t.name]||`true`,"onUpdate:modelValue":e=>{M(u)[t.name]=String(e)}},{default:T(()=>[A(a,{id:`fill-${e.def.id}-${t.name}`,class:`h-8 text-xs`},{default:T(()=>[A(i)]),_:1},8,[`id`]),A(c,null,{default:T(()=>[A(s,{value:`true`},{default:T(()=>[...n[0]||=[l(` true `,-1)]]),_:1}),A(s,{value:`false`},{default:T(()=>[...n[1]||=[l(` false `,-1)]]),_:1})]),_:1})]),_:2},1032,[`model-value`,`onUpdate:modelValue`])):(m(),y(p,{key:1,id:`fill-${e.def.id}-${t.name}`,modelValue:M(u)[t.name],"onUpdate:modelValue":e=>M(u)[t.name]=e,class:`h-8 text-xs font-mono`,placeholder:t.description||t.default||t.name},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`placeholder`])),t.description?(m(),g(`p`,$e,f(t.description),1)):j(``,!0)])]))),128))])])):(m(),g(`div`,et,[N(`p`,tt,f(M(o)(`component.noPropsDefined`)),1)])),N(`div`,null,[N(`p`,nt,f(M(o)(`common.preview`)),1),N(`div`,{class:`rounded-lg border bg-background px-3 py-2.5 text-sm leading-relaxed overflow-auto max-h-48`,innerHTML:M(h)},null,8,rt)]),N(`div`,null,[N(`p`,it,f(M(o)(`component.example`)),1),N(`pre`,at,[N(`code`,null,f(M(v)),1)])])])}}}),st={class:`space-y-5 p-4 sm:p-5 border rounded-xl bg-muted/30`},ct={class:`text-sm font-semibold`},lt={class:`space-y-1.5`},ut={class:`text-muted-foreground text-xs font-normal ml-1`},dt={key:0,class:`text-sm text-red-500`},ft={class:`space-y-1.5`},pt={class:`space-y-2`},mt={class:`flex items-center justify-between`},ht={class:`hidden sm:grid grid-cols-13 gap-2 px-1`},gt={class:`col-span-3 text-xs text-muted-foreground`},_t={class:`col-span-2 text-xs text-muted-foreground`},vt={class:`col-span-4 text-xs text-muted-foreground`},yt={class:`col-span-3 text-xs text-muted-foreground`},bt={class:`space-y-2`},xt={class:`w-full sm:col-span-3 flex gap-1 items-center`},St={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},Ct={class:`w-full sm:col-span-2 flex gap-1 items-center`},wt={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},Tt={class:`w-full sm:col-span-4 flex gap-1 items-center`},Et={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},Dt={class:`w-full sm:col-span-3 flex gap-1 items-center`},Ot={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},kt={class:`flex items-center gap-2 sm:col-span-1 sm:justify-center`},At=[`title`],jt=[`onUpdate:modelValue`],Mt={key:1,class:`rounded-lg border border-dashed bg-muted/20 px-3 py-4 text-xs text-muted-foreground`},Nt={class:`text-xs text-muted-foreground`},Pt={class:`space-y-1.5`},Ft={key:0,class:`text-sm text-red-500`},It={class:`text-xs text-muted-foreground space-y-0.5`},Lt={key:0,class:`space-y-1.5`},Rt={class:`flex items-center justify-between`},zt=[`innerHTML`],Bt={class:`flex gap-2 justify-end`},Vt=`<section style="text-align:center;">
1
+ import{F as e,L as t,R as n,t as r,z as i}from"./md-ui-BLkQlUQC.js";import{f as a,h as o,m as s}from"./md-storage-B8BAILFb.js";import{$ as c,C as l,Ct as u,E as d,Et as f,F as p,H as m,I as h,S as g,W as _,a as v,b as y,ct as b,dt as x,f as S,m as C,n as w,nt as T,pt as E,rt as D,s as O,v as k,w as A,x as j,xt as M,y as N}from"./md-vendor_vue-BeOfKbk1.js";import{n as P}from"./md-vue-i18n-Cxvw1c3e.js";import{r as F}from"./md-translate-CRNthmbT.js";import{n as I}from"./md-lib-CvTniYNx.js";import{t as L}from"./md-createLucideIcon-BXdNAL-d.js";import{t as R}from"./md-blocks-Db875tl4.js";import{t as ee}from"./md-check-lU7D5avq.js";import{t as te}from"./md-chevron-down-BMHj5Qr0.js";import{t as ne}from"./md-copy-FPkQvYMT.js";import{t as re}from"./md-download-PHSmBRjD.js";import{t as ie}from"./md-pencil-D9P1pJGi.js";import{t as ae}from"./md-plus-ByJ8LvCm.js";import{t as oe}from"./md-trash-_QL9lZ9Z.js";import{t as se}from"./md-upload-D-o2qobN.js";import{n as ce}from"./md-button-BSiUqWkb.js";import{i as le,n as ue,r as de,t as fe}from"./md-TooltipTrigger-Bddfw7hJ.js";import{i as pe,n as me,r as he,t as ge}from"./md-DialogTitle-DckujrLp.js";import{t as _e}from"./md-DialogDescription-I_Nb5r3l.js";import{t as z}from"./md-Label-BEXxOepa.js";import{n as B,t as V}from"./md-RadioGroupItem-U5iwXTfz.js";import{a as ve,i as ye,n as be,r as xe,t as Se}from"./md-SelectContent-BTj2mBZa.js";import{i as Ce,n as we,r as Te,t as Ee}from"./md-TabsTrigger-D71LxSp0.js";import{t as De}from"./md-confirm-C91Js7gx.js";import{P as H,_ as Oe,k as U,y as ke}from"./md-extensions-e4cM3aYT.js";import{n as Ae}from"./md-editor-dmKdA3Kt.js";import{t as je}from"./md-DialogFooter-CBAeLIxQ.js";import{t as W}from"./md-Textarea-D5oizzXs.js";import{t as G}from"./md-Input-CXcSl6a3.js";import{n as Me}from"./md-useLocalizedBuiltinComponents-Cp5XbV-4.js";import{c as Ne,f as K,i as q,l as J,n as Y,o as X,r as Pe,s as Fe,t as Ie,u as Z}from"./md-form-schema-BGKIw1Ts.js";var Le=L({name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]}),Re=L({name:`rss`,size:24,node:[[`path`,{d:`M4 11a9 9 0 0 1 9 9`,key:`pv89mb`}],[`path`,{d:`M4 4a16 16 0 0 1 16 16`,key:`k0647b`}],[`circle`,{cx:`5`,cy:`19`,r:`1`,key:`bfqh0e`}]]}),Q=L({name:`zap`,size:24,node:[[`path`,{d:`M15.914 4a1.5 1.5 0 00-2.474-1.561l-9 9A1.5 1.5 0 005.5 14h4.002a.5.5 0 01.471.666L8.086 20a1.5 1.5 0 002.475 1.56l9-9A1.5 1.5 0 0018.5 10h-3.997a.5.5 0 01-.472-.667z`,key:`1v7up4`}]]}),ze=w(`mpAccounts`,()=>{let e=a.reactive(s(`mp-accounts`),[]),t=a.reactive(s(`mp-current-account-id`),``),n=k(()=>e.value.find(e=>e.id===t.value)??e.value[0]??null);function r(n){let r={id:o(),mpId:n?.mpId??``,name:n?.name??F(`store.mpAccount.newAccount`),logo:n?.logo??``,desc:n?.desc??``,serviceType:n?.serviceType??`1`,verify:n?.verify??`0`};return e.value.push(r),t.value=r.id,r}function i(t,n){let r=e.value.findIndex(e=>e.id===t);r!==-1&&(e.value[r]={...e.value[r],...n})}function c(n){let r=e.value.findIndex(e=>e.id===n);r!==-1&&(e.value.splice(r,1),t.value===n&&(t.value=e.value[0]?.id??``))}function l(e){t.value=e}return{accounts:e,currentAccountId:t,currentAccount:n,addAccount:r,updateAccount:i,deleteAccount:c,setCurrentAccount:l}}),$={class:`flex-1 overflow-y-auto p-1 [scrollbar-width:none] [-ms-overflow-style:none] [&::-webkit-scrollbar]:hidden flex flex-col`},Be={href:`https://github.com/doocs/md/blob/main/docs/mp-card.md`,target:`_blank`,rel:`noopener noreferrer`,class:`text-xs text-muted-foreground hover:text-primary underline-offset-2 hover:underline`},Ve={class:`inline-flex items-center space-x-2`},He={class:`inline-flex items-center space-x-2`},Ue={class:`inline-flex items-center space-x-2`},We={class:`inline-flex items-center space-x-2`},Ge={class:`inline-flex items-center space-x-2`},Ke=d({__name:`MpAccountConfigDialog`,props:{open:{type:Boolean},accountId:{}},emits:[`update:open`,`saved`],setup(e,{emit:t}){let n=e,r=t,{t:i}=P(),a=ze(),o=k(()=>n.accountId!==null),s=k(()=>n.accountId?a.accounts.find(e=>e.id===n.accountId)??null:null),c=k(()=>`${n.accountId??`new`}-${n.open}`),u=k(()=>{let e=s.value;return e?{mpId:e.mpId,name:e.name,logo:e.logo,desc:e.desc,serviceType:e.serviceType,verify:e.verify}:{mpId:``,name:``,logo:``,desc:``,serviceType:`1`,verify:`0`}}),d=k(()=>X({mpId:Y(i(`mpAccount.errors.mpIdRequired`)),name:Y(i(`mpAccount.errors.nameRequired`)),logo:Fe().refine(e=>{let t=e.trim();return t===``||Ne().safeParse(t).success},i(`mpAccount.errors.logoInvalid`)).optional(),desc:Ie(),serviceType:q([`1`,`2`]),verify:q([`0`,`1`,`2`])})),h=k(()=>Pe(d.value));function g(e){let t=d.value.safeParse(e);if(!t.success)return;let{mpId:o,name:s,logo:c,desc:l,serviceType:u,verify:f}=t.data;n.accountId?(a.updateAccount(n.accountId,{mpId:o,name:s,logo:c,desc:l,serviceType:u,verify:f}),I.success(i(`mpAccount.updated`,{name:s}))):(a.addAccount({mpId:o,name:s,logo:c,desc:l,serviceType:u,verify:f}),I.success(i(`mpAccount.added`,{name:s}))),r(`saved`),r(`update:open`,!1)}return(t,n)=>{let a=ge,s=me,d=G,_=K,v=W,b=V,x=z,S=B,C=ce,w=je,E=he,D=pe;return m(),y(D,{open:e.open,"onUpdate:open":n[1]||=e=>r(`update:open`,e)},{default:T(()=>[A(E,{class:`!w-[750px] !max-w-[95vw] max-h-[85vh] flex flex-col overflow-hidden`},{default:T(()=>[A(s,null,{default:T(()=>[A(a,null,{default:T(()=>[l(f(M(o)?M(i)(`mpAccount.editTitle`):M(i)(`mpAccount.addTitle`)),1)]),_:1})]),_:1}),(m(),y(M(Z),{key:M(c),"validation-schema":M(h),"initial-values":M(u),class:`flex flex-col flex-1 overflow-hidden`,onSubmit:g},{default:T(()=>[N(`div`,$,[A(M(J),{name:`mpId`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.idLabel`),required:``,error:t,width:110},{hint:T(()=>[N(`a`,Be,f(M(i)(`mpAccount.idHelp`)),1)]),default:T(()=>[A(d,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},placeholder:M(i)(`mpAccount.idPlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`name`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.nameLabel`),required:``,error:t,width:110},{default:T(()=>[A(d,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},placeholder:M(i)(`mpAccount.namePlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`logo`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.logoLabel`),error:t,width:110},{default:T(()=>[A(d,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},placeholder:M(i)(`mpAccount.logoPlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`desc`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.descLabel`),error:t,width:110},{default:T(()=>[A(v,p(e,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,modelModifiers:{trim:!0},rows:`3`,class:`resize-none`,placeholder:M(i)(`mpAccount.descPlaceholder`)}),null,16,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`serviceType`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.typeLabel`),required:``,error:t,width:110},{default:T(()=>[A(S,p({class:`flex gap-5`},e,{"default-value":e.value}),{default:T(()=>[N(`div`,Ve,[A(b,{id:`mp-cfg-type-1`,value:`1`}),A(x,{for:`mp-cfg-type-1`},{default:T(()=>[l(f(M(i)(`mpAccount.typeOfficial`)),1)]),_:1})]),N(`div`,He,[A(b,{id:`mp-cfg-type-2`,value:`2`}),A(x,{for:`mp-cfg-type-2`},{default:T(()=>[l(f(M(i)(`mpAccount.typeService`)),1)]),_:1})])]),_:1},16,[`default-value`])]),_:2},1032,[`label`,`error`])]),_:1}),A(M(J),{name:`verify`},{default:T(({field:e,errorMessage:t})=>[A(_,{label:M(i)(`mpAccount.verifyLabel`),required:``,error:t,width:110},{default:T(()=>[A(S,p({class:`flex gap-5`},e,{"default-value":e.value}),{default:T(()=>[N(`div`,Ue,[A(b,{id:`mp-cfg-verify-0`,value:`0`}),A(x,{for:`mp-cfg-verify-0`},{default:T(()=>[l(f(M(i)(`mpAccount.verifyNone`)),1)]),_:1})]),N(`div`,We,[A(b,{id:`mp-cfg-verify-1`,value:`1`}),A(x,{for:`mp-cfg-verify-1`},{default:T(()=>[l(f(M(i)(`mpAccount.verifyPersonal`)),1)]),_:1})]),N(`div`,Ge,[A(b,{id:`mp-cfg-verify-2`,value:`2`}),A(x,{for:`mp-cfg-verify-2`},{default:T(()=>[l(f(M(i)(`mpAccount.verifyEnterprise`)),1)]),_:1})])]),_:1},16,[`default-value`])]),_:2},1032,[`label`,`error`])]),_:1})]),A(w,{class:`p-1`},{default:T(()=>[A(C,{variant:`outline`,type:`button`,onClick:n[0]||=e=>r(`update:open`,!1)},{default:T(()=>[l(f(M(i)(`common.cancel`)),1)]),_:1}),A(C,{type:`submit`},{default:T(()=>[l(f(M(i)(`common.save`)),1)]),_:1})]),_:1})]),_:1},8,[`validation-schema`,`initial-values`]))]),_:1})]),_:1},8,[`open`])}}}),qe={class:`space-y-3`},Je={key:0,class:`space-y-2`},Ye={class:`text-xs font-medium text-muted-foreground`},Xe={class:`space-y-2`},Ze={key:0,class:`text-red-500 ml-0.5`},Qe={class:`space-y-1 min-w-0`},$e={key:2,class:`text-[10px] text-muted-foreground leading-snug`},et={key:1},tt={class:`text-xs text-muted-foreground italic`},nt={class:`text-xs font-medium text-muted-foreground mb-1.5`},rt=[`innerHTML`],it={class:`text-xs font-medium text-muted-foreground mb-1.5`},at={class:`text-xs font-mono bg-muted rounded-lg px-3 py-2.5 overflow-x-auto text-foreground/80 leading-relaxed`},ot=d({__name:`ComponentPropFill`,props:{def:{}},emits:[`update:values`],setup(e,{emit:r}){let i=e,a=r,{t:o,locale:s}=P(),u=x({}),d=!1;function p(){d=!0;let e=n(i.def);for(let e of Object.keys(u))delete u[e];Object.assign(u,e),a(`update:values`,{...u}),d=!1}c(()=>[i.def.id,i.def.example,s.value],()=>{p()},{immediate:!0}),c(u,()=>{d||a(`update:values`,{...u})},{deep:!0});let h=k(()=>{try{let e=ke(i.def,{...u}),t=U(e);if(t)return t}catch{}return`<span style="color:#aaa;font-size:12px;">${o(`component.noContent`)}</span>`}),v=k(()=>t(i.def,{...u}));return(t,n)=>{let r=z,i=be,a=xe,s=ye,c=Se,d=ve,p=G;return m(),g(`div`,qe,[e.def.props.length>0?(m(),g(`div`,Je,[N(`p`,Ye,f(M(o)(`component.fillProps`)),1),N(`div`,Xe,[(m(!0),g(C,null,_(e.def.props,t=>(m(),g(`div`,{key:t.name,class:`grid grid-cols-1 sm:grid-cols-[7rem_1fr] gap-1.5 sm:gap-3 items-start sm:items-center`},[A(r,{for:`fill-${e.def.id}-${t.name}`,class:`text-xs font-mono text-primary pt-0 sm:pt-2`},{default:T(()=>[l(f(t.name)+` `,1),t.required?(m(),g(`span`,Ze,`*`)):j(``,!0)]),_:2},1032,[`for`]),N(`div`,Qe,[t.type===`boolean`?(m(),y(d,{key:0,"model-value":M(u)[t.name]||`true`,"onUpdate:modelValue":e=>{M(u)[t.name]=String(e)}},{default:T(()=>[A(a,{id:`fill-${e.def.id}-${t.name}`,class:`h-8 text-xs`},{default:T(()=>[A(i)]),_:1},8,[`id`]),A(c,null,{default:T(()=>[A(s,{value:`true`},{default:T(()=>[...n[0]||=[l(` true `,-1)]]),_:1}),A(s,{value:`false`},{default:T(()=>[...n[1]||=[l(` false `,-1)]]),_:1})]),_:1})]),_:2},1032,[`model-value`,`onUpdate:modelValue`])):(m(),y(p,{key:1,id:`fill-${e.def.id}-${t.name}`,modelValue:M(u)[t.name],"onUpdate:modelValue":e=>M(u)[t.name]=e,class:`h-8 text-xs font-mono`,placeholder:t.description||t.default||t.name},null,8,[`id`,`modelValue`,`onUpdate:modelValue`,`placeholder`])),t.description?(m(),g(`p`,$e,f(t.description),1)):j(``,!0)])]))),128))])])):(m(),g(`div`,et,[N(`p`,tt,f(M(o)(`component.noPropsDefined`)),1)])),N(`div`,null,[N(`p`,nt,f(M(o)(`common.preview`)),1),N(`div`,{class:`rounded-lg border bg-background px-3 py-2.5 text-sm leading-relaxed overflow-auto max-h-48`,innerHTML:M(h)},null,8,rt)]),N(`div`,null,[N(`p`,it,f(M(o)(`component.example`)),1),N(`pre`,at,[N(`code`,null,f(M(v)),1)])])])}}}),st={class:`space-y-5 p-4 sm:p-5 border rounded-xl bg-muted/30`},ct={class:`text-sm font-semibold`},lt={class:`space-y-1.5`},ut={class:`text-muted-foreground text-xs font-normal ml-1`},dt={key:0,class:`text-sm text-red-500`},ft={class:`space-y-1.5`},pt={class:`space-y-2`},mt={class:`flex items-center justify-between`},ht={class:`hidden sm:grid grid-cols-13 gap-2 px-1`},gt={class:`col-span-3 text-xs text-muted-foreground`},_t={class:`col-span-2 text-xs text-muted-foreground`},vt={class:`col-span-4 text-xs text-muted-foreground`},yt={class:`col-span-3 text-xs text-muted-foreground`},bt={class:`space-y-2`},xt={class:`w-full sm:col-span-3 flex gap-1 items-center`},St={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},Ct={class:`w-full sm:col-span-2 flex gap-1 items-center`},wt={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},Tt={class:`w-full sm:col-span-4 flex gap-1 items-center`},Et={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},Dt={class:`w-full sm:col-span-3 flex gap-1 items-center`},Ot={class:`text-xs text-muted-foreground sm:hidden w-12 shrink-0`},kt={class:`flex items-center gap-2 sm:col-span-1 sm:justify-center`},At=[`title`],jt=[`onUpdate:modelValue`],Mt={key:1,class:`rounded-lg border border-dashed bg-muted/20 px-3 py-4 text-xs text-muted-foreground`},Nt={class:`text-xs text-muted-foreground`},Pt={class:`space-y-1.5`},Ft={key:0,class:`text-sm text-red-500`},It={class:`text-xs text-muted-foreground space-y-0.5`},Lt={key:0,class:`space-y-1.5`},Rt={class:`flex items-center justify-between`},zt=[`innerHTML`],Bt={class:`flex gap-2 justify-end`},Vt=`<section style="text-align:center;">
2
2
  <img src="https://api.qrserver.com/v1/create-qr-code/?data={{url}}" />
3
3
  <p>{{text}}</p>
4
4
  </section>`,Ht=d({__name:`CustomComponentForm`,props:{mode:{},initial:{}},emits:[`save`,`cancel`],setup(t,{emit:n}){let r=t,i=n,{t:a}=P(),o=e(),s=x({name:``,description:``,template:``}),c=E([]),d=x({name:``,template:``});function p(){r.mode===`edit`&&r.initial?(s.name=r.initial.name,s.description=r.initial.description||``,s.template=r.initial.template,c.value=r.initial.props.length?r.initial.props.map(e=>({name:e.name,description:e.description||``,default:e.default||``,required:!!e.required,type:e.type||`string`})):[]):(s.name=``,s.description=``,s.template=``,c.value=[]),d.name=``,d.template=``}p();function h(){c.value.push({name:``,description:``,default:``,required:!1,type:`string`})}function v(e){e<0||e>=c.value.length||c.value.splice(e,1)}function y(){d.name=``,d.template=``;let e=s.name.trim();if(!e)return d.name=a(`component.nameRequired`),!1;if(!/^[A-Z][a-zA-Z0-9]*$/.test(e))return d.name=a(`component.nameInvalid`),!1;if(Oe(e))return d.name=a(`component.nameReserved`,{name:e}),!1;let t=r.initial?.id;return o.userComponents.find(n=>n.name===e&&(r.mode===`create`||n.id!==t))?(d.name=a(`component.nameDuplicate`),!1):s.template.trim()?!0:(d.template=a(`component.templateRequired`),!1)}function b(){return c.value.filter(e=>e.name.trim()).map(e=>({name:e.name.trim(),description:e.description.trim()||void 0,default:e.default||void 0,required:e.required||void 0,type:e.type===`string`?void 0:e.type}))}function S(){y()&&i(`save`,{name:s.name.trim(),description:s.description.trim()||void 0,template:s.template,props:b()})}function w(){i(`cancel`)}let F=E(!1),I=k(()=>{if(!s.template.trim())return``;let e=b(),t={id:`__preview__`,name:s.name.trim()||`Preview`,template:s.template,props:e},n={};for(let t of e)t.default!==void 0&&t.default!==``?n[t.name]=t.default:t.type===`array`?n[t.name]=`[]`:t.type===`boolean`?n[t.name]=`true`:t.type===`number`&&(n[t.name]=`0`);try{let e=ke(t,n);return U(e)}catch{return``}}),L=k(()=>`<span style="color:#aaa;font-size:12px;">${a(`component.noContent`)}</span>`);function R(e){return e===`array`?`["item1","item2"]`:a(`component.defaultValue`)}return(e,n)=>{let r=z,i=G,o=ce,p=be,y=xe,b=ye,x=Se,E=ve,k=W;return m(),g(`div`,st,[N(`h3`,ct,f(t.mode===`create`?M(a)(`component.create`):M(a)(`component.edit`)),1),N(`div`,lt,[A(r,{for:`comp-name`},{default:T(()=>[l(f(M(a)(`component.nameLabel`))+` `,1),n[4]||=N(`span`,{class:`text-red-500 ml-0.5`},`*`,-1),N(`span`,ut,f(M(a)(`component.nameHint`)),1)]),_:1}),A(i,{id:`comp-name`,modelValue:M(s).name,"onUpdate:modelValue":n[0]||=e=>M(s).name=e,placeholder:M(a)(`component.namePlaceholder`),class:u({"border-red-500":M(d).name})},null,8,[`modelValue`,`placeholder`,`class`]),M(d).name?(m(),g(`p`,dt,f(M(d).name),1)):j(``,!0)]),N(`div`,ft,[A(r,{for:`comp-desc`},{default:T(()=>[l(f(M(a)(`component.descLabel`)),1)]),_:1}),A(i,{id:`comp-desc`,modelValue:M(s).description,"onUpdate:modelValue":n[1]||=e=>M(s).description=e,placeholder:M(a)(`component.descPlaceholder`)},null,8,[`modelValue`,`placeholder`])]),N(`div`,pt,[N(`div`,mt,[A(r,null,{default:T(()=>[l(f(M(a)(`component.propsLabel`)),1)]),_:1}),A(o,{variant:`outline`,size:`sm`,onClick:h},{default:T(()=>[A(M(ae),{class:`size-3 mr-1`}),l(` `+f(M(a)(`component.addProp`)),1)]),_:1})]),M(c).length>0?(m(),g(C,{key:0},[N(`div`,ht,[N(`span`,gt,f(M(a)(`component.propName`)),1),N(`span`,_t,f(M(a)(`component.propType`)),1),N(`span`,vt,f(M(a)(`component.propDesc`)),1),N(`span`,yt,f(M(a)(`component.propDefault`)),1),n[5]||=N(`span`,{class:`col-span-1`},null,-1)]),N(`div`,bt,[(m(!0),g(C,null,_(M(c),(e,t)=>(m(),g(`div`,{key:t,class:`flex flex-col sm:grid sm:grid-cols-13 gap-2 items-start sm:items-center p-3 sm:p-0 border sm:border-0 rounded-lg sm:rounded-none bg-muted/20 sm:bg-transparent`},[N(`div`,xt,[N(`span`,St,f(M(a)(`component.propName`)),1),A(i,{modelValue:e.name,"onUpdate:modelValue":t=>e.name=t,placeholder:`propName`,class:`h-8 text-sm flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`])]),N(`div`,Ct,[N(`span`,wt,f(M(a)(`component.propType`)),1),A(E,{modelValue:e.type,"onUpdate:modelValue":t=>e.type=t},{default:T(()=>[A(y,{class:`h-8 text-sm w-full`,"aria-label":M(a)(`component.propType`)},{default:T(()=>[A(p)]),_:1},8,[`aria-label`]),A(x,null,{default:T(()=>[A(b,{value:`string`},{default:T(()=>[...n[6]||=[l(` string `,-1)]]),_:1}),A(b,{value:`number`},{default:T(()=>[...n[7]||=[l(` number `,-1)]]),_:1}),A(b,{value:`boolean`},{default:T(()=>[...n[8]||=[l(` boolean `,-1)]]),_:1}),A(b,{value:`array`},{default:T(()=>[...n[9]||=[l(` array `,-1)]]),_:1})]),_:1})]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]),N(`div`,Tt,[N(`span`,Et,f(M(a)(`component.propDesc`)),1),A(i,{modelValue:e.description,"onUpdate:modelValue":t=>e.description=t,placeholder:M(a)(`component.propDesc`),class:`h-8 text-sm flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),N(`div`,Dt,[N(`span`,Ot,f(M(a)(`component.propDefault`)),1),A(i,{modelValue:e.default,"onUpdate:modelValue":t=>e.default=t,placeholder:R(e.type),class:`h-8 text-sm flex-1`},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),N(`div`,kt,[N(`label`,{class:`flex items-center gap-1 text-xs cursor-pointer select-none`,title:M(a)(`component.required`)},[D(N(`input`,{"onUpdate:modelValue":t=>e.required=t,type:`checkbox`,class:`cursor-pointer`},null,8,jt),[[O,e.required]])],8,At),A(o,{variant:`ghost`,size:`icon`,class:`size-7 text-muted-foreground hover:text-red-500`,"aria-label":M(a)(`common.delete`),title:M(a)(`common.delete`),onClick:e=>v(t)},{default:T(()=>[A(M(oe),{class:`size-3.5`})]),_:1},8,[`aria-label`,`title`,`onClick`])])]))),128))])],64)):(m(),g(`div`,Mt,f(M(a)(`component.noProps`)),1)),N(`p`,Nt,f(M(a)(`component.propRefHint`)),1)]),N(`div`,Pt,[A(r,{for:`comp-template`},{default:T(()=>[l(f(M(a)(`component.htmlTemplate`))+` `,1),n[10]||=N(`span`,{class:`text-red-500 ml-0.5`},`*`,-1)]),_:1}),A(k,{id:`comp-template`,modelValue:M(s).template,"onUpdate:modelValue":n[2]||=e=>M(s).template=e,placeholder:Vt,class:u([`font-mono text-sm resize-none h-44`,{"border-red-500":M(d).template}])},null,8,[`modelValue`,`class`]),M(d).template?(m(),g(`p`,Ft,f(M(d).template),1)):j(``,!0),N(`div`,It,[N(`p`,null,f(M(a)(`component.templateHint1`)),1),N(`p`,null,f(M(a)(`component.templateHint2`)),1),N(`p`,null,f(M(a)(`component.templateHint3`)),1),N(`p`,null,f(M(a)(`component.templateHint4`)),1)])]),M(s).template.trim()?(m(),g(`div`,Lt,[N(`div`,Rt,[A(r,{class:`text-muted-foreground`},{default:T(()=>[l(f(M(a)(`component.previewLabel`)),1)]),_:1}),A(o,{variant:`ghost`,size:`sm`,class:`h-6 px-2 text-xs`,onClick:n[3]||=e=>F.value=!M(F)},{default:T(()=>[l(f(M(F)?M(a)(`common.collapse`):M(a)(`common.expand`)),1)]),_:1})]),M(F)?(m(),g(`div`,{key:0,class:`rounded-lg border bg-white dark:bg-card p-3 text-sm overflow-x-auto`,innerHTML:M(I)||M(L)},null,8,zt)):j(``,!0)])):j(``,!0),N(`div`,Bt,[A(o,{variant:`outline`,onClick:w},{default:T(()=>[l(f(M(a)(`common.cancel`)),1)]),_:1}),A(o,{onClick:S},{default:T(()=>[l(f(t.mode===`create`?M(a)(`common.create`):M(a)(`common.save`)),1)]),_:1})])])}}}),Ut={class:`flex-1 overflow-y-auto px-4 sm:px-6 py-4 space-y-6`},Wt={key:1},Gt={class:`inline-flex items-center gap-1.5`},Kt={class:`inline-flex items-center gap-1.5`},qt=[`onClick`],Jt={class:`size-8 sm:size-9 shrink-0 rounded-lg bg-primary/10 flex items-center justify-center`},Yt={class:`flex-1 min-w-0`},Xt={class:`flex flex-wrap items-center gap-1.5 mb-0.5`},Zt={class:`text-sm font-semibold text-primary`},Qt={class:`text-[10px] border px-1.5 py-px rounded-full bg-muted text-muted-foreground`},$t={key:0,class:`text-xs text-muted-foreground leading-relaxed line-clamp-1`},en={key:0,class:`border-t px-3 sm:px-4 py-3 space-y-3 bg-muted/20`},tn={key:0},nn={class:`text-xs font-medium text-muted-foreground mb-2`},rn={class:`hidden sm:block rounded-lg border overflow-hidden`},an={class:`w-full text-xs border-separate border-spacing-0`},on={class:`bg-muted/40`},sn={class:`text-left px-3 py-2 font-medium text-muted-foreground w-28 border-b border-r border-border/50`},cn={class:`text-left px-3 py-2 font-medium text-muted-foreground w-16 border-b border-r border-border/50`},ln={class:`text-left px-3 py-2 font-medium text-muted-foreground w-16 border-b border-r border-border/50`},un={class:`text-left px-3 py-2 font-medium text-muted-foreground border-b border-r border-border/50`},dn={class:`text-left px-3 py-2 font-medium text-muted-foreground w-24 border-b border-border/50`},fn={class:`px-3 py-2 border-b border-r border-border/30`},pn={class:`font-mono text-primary font-medium`},mn={class:`px-3 py-2 border-b border-r border-border/30`},hn={class:`text-[10px] bg-muted/60 px-1.5 py-0.5 rounded text-muted-foreground`},gn={class:`px-3 py-2 border-b border-r border-border/30`},_n={class:`px-3 py-2 border-b border-r border-border/30 text-muted-foreground`},vn={class:`px-3 py-2 border-b border-border/30`},yn={key:0,class:`text-[11px] bg-muted px-1.5 py-0.5 rounded text-foreground`},bn={key:1,class:`text-muted-foreground/50`},xn={class:`sm:hidden space-y-2`},Sn={class:`flex items-center gap-2`},Cn={class:`font-mono text-sm font-semibold text-primary`},wn={class:`text-[10px] bg-muted/60 px-1.5 py-0.5 rounded text-muted-foreground`},Tn={key:0,class:`text-xs text-muted-foreground`},En={key:1,class:`flex items-center gap-1 text-xs text-muted-foreground`},Dn={class:`bg-muted px-1.5 py-0.5 rounded text-foreground`},On={class:`flex items-center gap-2`},kn={key:1,class:`border-t pt-3 space-y-2`},An={class:`flex items-center justify-between`},jn={class:`text-xs font-medium text-muted-foreground flex items-center gap-1.5`},Mn={key:0,class:`text-center py-4`},Nn={class:`text-xs text-muted-foreground`},Pn={key:1,class:`space-y-1.5`},Fn=[`src`,`alt`],In={key:1,class:`size-7 rounded-full bg-muted flex items-center justify-center shrink-0`},Ln={class:`flex-1 min-w-0`},Rn={class:`text-xs font-medium truncate`},zn={key:0,class:`text-[10px] text-muted-foreground truncate`},Bn={class:`flex items-center justify-between`},Vn={class:`flex items-center gap-1.5`},Hn={class:`text-sm font-medium text-muted-foreground`},Un={class:`text-xs text-muted-foreground/60`},Wn={class:`flex items-center gap-1.5`},Gn={key:0,class:`text-center py-8 border rounded-xl bg-card/50`},Kn={class:`text-xs text-muted-foreground`},qn={key:1,class:`space-y-2`},Jn=[`onClick`],Yn={class:`size-8 sm:size-9 shrink-0 rounded-lg bg-primary/10 flex items-center justify-center`},Xn={class:`flex-1 min-w-0`},Zn={class:`flex flex-wrap items-center gap-1.5 mb-0.5`},Qn={class:`text-sm font-semibold text-foreground`},$n={class:`text-[10px] border px-1.5 py-px rounded-full bg-muted text-muted-foreground`},er={key:0,class:`text-xs text-muted-foreground leading-relaxed line-clamp-1`},tr={key:0,class:`border-t px-3 sm:px-4 py-3 space-y-3 bg-muted/20`},nr={key:0},rr={class:`text-xs font-medium text-muted-foreground mb-2`},ir={class:`hidden sm:block rounded-lg border overflow-hidden`},ar={class:`w-full text-xs`},or={class:`bg-muted/50`},sr={class:`text-left px-3 py-2 font-medium text-muted-foreground w-28`},cr={class:`text-left px-3 py-2 font-medium text-muted-foreground w-16`},lr={class:`text-left px-3 py-2 font-medium text-muted-foreground w-16`},ur={class:`text-left px-3 py-2 font-medium text-muted-foreground`},dr={class:`text-left px-3 py-2 font-medium text-muted-foreground w-24`},fr={class:`px-3 py-2`},pr={class:`font-mono text-primary font-medium`},mr={class:`px-3 py-2`},hr={class:`text-[10px] bg-muted/60 px-1.5 py-0.5 rounded text-muted-foreground`},gr={class:`px-3 py-2`},_r={class:`px-3 py-2 text-muted-foreground`},vr={class:`px-3 py-2`},yr={key:0,class:`text-[11px] bg-muted px-1.5 py-0.5 rounded text-foreground`},br={key:1,class:`text-muted-foreground/50`},xr={class:`sm:hidden space-y-2`},Sr={class:`flex items-center gap-2`},Cr={class:`font-mono text-sm font-semibold text-primary`},wr={class:`text-[10px] bg-muted/60 px-1.5 py-0.5 rounded text-muted-foreground`},Tr={key:0,class:`text-xs text-muted-foreground`},Er={key:1,class:`flex items-center gap-1 text-xs text-muted-foreground`},Dr={class:`bg-muted px-1.5 py-0.5 rounded text-foreground`},Or={class:`flex items-center gap-2 pt-1 border-t`},kr=d({__name:`CustomComponentDialog`,setup(n){let{t:a}=P(),o=De(),s=Ae(),d=e(),p=Me(),w=k(()=>p.value.filter(e=>!e.hidden)),D=ze(),O=r(),{toggleShowComponentDialog:F}=O,L=E(!1),z=E(`create`),B=E(``),V=E(null);function ve(){z.value=`create`,B.value=``,V.value=null,L.value=!0}function ye(e){z.value=`edit`,B.value=e.id,V.value=e,L.value=!0}function be(e){if(z.value===`create`){if(!d.createComponent(e))return}else if(!d.updateComponent(B.value,e))return;L.value=!1}function xe(){L.value=!1}function Se(){let e=JSON.stringify(d.userComponents,null,2),t=new Blob([e],{type:`application/json`}),n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=`md-components-${Date.now()}.json`,r.click(),URL.revokeObjectURL(n),I.success(a(`component.exportSuccess`))}let U=E(null);function ke(){U.value?.click()}function je(e){let t=e.target.files?.[0];if(!t)return;let n=new FileReader;n.onload=e=>{try{let t=JSON.parse(e.target?.result);if(!Array.isArray(t))throw Error(a(`component.formatError`));let n=0;for(let e of t){if(!e.name||!e.template||Oe(e.name))continue;let t=d.userComponents.find(t=>t.name===e.name);t?d.updateComponent(t.id,{name:e.name,description:e.description,template:e.template,props:e.props||[]}):d.createComponent({name:e.name,description:e.description,template:e.template,props:e.props||[]}),n++}I.success(a(`component.importSuccess`,{count:n}))}catch{I.error(a(`component.importFailed`))}U.value&&(U.value.value=``)},n.readAsText(t)}let W=E(`builtin`),G=E(null),Ne=x({}),K=E(null);c(W,()=>{G.value=null});function q(e){G.value=G.value===e?null:e}function J(e,t){Ne[e]=t}function Y(e){if(G.value===e.id)return Ne[e.id]}function X(e){let n=Y(e);if(n){let t=i(e,n);if(t.length){I.error(a(`component.requiredEmpty`,{props:t.join(`, `)}));return}}let r=n?t(e,n):e.example||d.buildSnippet(e);s.insertAtCursor(r),I.success(a(`component.insertSuccess`,{name:e.name})),F(!1)}function Pe(e){o.confirm({title:a(`component.confirmDelete`),description:a(`component.deleteConfirm`,{name:e.name}),onConfirm:()=>{d.deleteComponent(e.id)}})}function Fe(e){e||(F(!1),L.value=!1,G.value=null)}async function Ie(e){let n=Y(e);if(n){let t=i(e,n);if(t.length){I.error(a(`component.requiredEmpty`,{props:t.join(`, `)}));return}}let r=n?t(e,n):e.example||d.buildSnippet(e);try{await navigator.clipboard.writeText(r),K.value=e.id,setTimeout(()=>{K.value=null},1500)}catch{I.error(a(`common.copyFailed`))}}function Z(e){return e.required?{label:a(`component.required`),class:`bg-red-50 text-red-600 border-red-200`}:e.default!==void 0&&e.default!==``?{label:a(`component.optional`),class:`bg-blue-50 text-blue-600 border-blue-200`}:{label:a(`component.optional`),class:`bg-muted text-muted-foreground border-border`}}let $=E(!1),Be=E(null);function Ve(e){return e.name===`MpProfile`}function He(e){let t=e.logo||`https://cdn-doocs.oss-cn-shenzhen.aliyuncs.com/gh/doocs/md/images/mp-logo.png`,n=[`mpId="${H(e.mpId)}"`,`nickname="${H(e.name)}"`,`headimg="${H(t)}"`];return e.desc&&n.push(`signature="${H(e.desc)}"`),n.push(`serviceType="${e.serviceType||`1`}"`),n.push(`verifyStatus="${e.verify||`0`}"`),`<MpProfile ${n.join(` `)} />`}function Ue(e){let t=He(e);s.insertAtCursor(t),I.success(a(`component.insertMpSuccess`,{name:e.name})),F(!1)}function We(){Be.value=null,$.value=!0}function Ge(e){Be.value=e,$.value=!0}function qe(e){o.confirm({title:a(`component.confirmDelete`),description:a(`component.deleteMpConfirm`,{name:e.name}),onConfirm:()=>{D.deleteAccount(e.id),I.success(a(`component.deleted`))}})}return c(()=>O.isShowComponentDialog,e=>{if(e&&O.componentDialogTarget){let e=O.componentDialogTarget;O.componentDialogTarget=null,h(()=>{let t=d.builtInComponents.find(t=>t.name===e);t&&(G.value=t.id)})}e||(G.value=null)}),(e,t)=>{let n=ge,r=_e,i=me,o=Ee,s=we,c=ce,p=fe,h=de,x=le,E=ue,k=Te,P=Ce,F=he,I=pe,B=Ke;return m(),g(C,null,[A(I,{open:M(O).isShowComponentDialog,"onUpdate:open":Fe},{default:T(()=>[A(F,{class:`sm:max-w-4xl h-[80vh] flex flex-col p-0 gap-0`},{default:T(()=>[A(i,{class:`px-4 sm:px-6 pt-5 pb-4 border-b shrink-0`},{default:T(()=>[A(n,{class:`flex items-center gap-2 text-base`},{default:T(()=>[A(M(R),{class:`size-4.5`}),l(` `+f(M(a)(`menu.component`)),1)]),_:1}),A(r,{class:`text-xs leading-relaxed mt-1`},{default:T(()=>[l(f(M(a)(`component.description`))+` `,1),t[4]||=N(`code`,{class:`bg-muted px-1 py-0.5 rounded font-mono`},`<QRCodeBlock url="…" />`,-1)]),_:1})]),_:1}),N(`div`,Ut,[M(L)?(m(),y(Ht,{key:0,mode:M(z),initial:M(V),onSave:be,onCancel:xe},null,8,[`mode`,`initial`])):j(``,!0),M(L)?j(``,!0):(m(),g(`div`,Wt,[A(P,{modelValue:M(W),"onUpdate:modelValue":t[2]||=e=>b(W)?W.value=e:null,class:`w-full`},{default:T(()=>[A(s,{class:`grid w-full grid-cols-2`},{default:T(()=>[A(o,{value:`builtin`},{default:T(()=>[N(`span`,Gt,[A(M(Le),{class:`size-3.5`}),l(` `+f(M(a)(`component.builtin`)),1)])]),_:1}),A(o,{value:`custom`},{default:T(()=>[N(`span`,Kt,[A(M(R),{class:`size-3.5`}),l(` `+f(M(a)(`component.custom`)),1)])]),_:1})]),_:1}),A(k,{value:`builtin`,class:`mt-4 space-y-2`},{default:T(()=>[(m(!0),g(C,null,_(M(w),e=>(m(),g(`div`,{key:e.id,class:u([`border rounded-xl overflow-hidden transition-all`,M(G)===e.id?`border-primary/30 bg-primary/2`:`hover:border-border/80 bg-card`])},[N(`div`,{class:`flex items-start sm:items-center gap-3 p-3 sm:p-4 cursor-pointer select-none`,onClick:t=>q(e.id)},[N(`div`,Jt,[A(M(R),{class:`size-4 text-primary`})]),N(`div`,Yt,[N(`div`,Xt,[N(`code`,Zt,f(e.name),1),N(`span`,Qt,f(M(a)(`component.propCount`,{count:e.props.length})),1)]),e.description?(m(),g(`p`,$t,f(e.description),1)):j(``,!0)]),N(`div`,{class:`flex items-center gap-1 shrink-0`,onClick:t[0]||=S(()=>{},[`stop`])},[A(c,{variant:`default`,size:`sm`,class:`h-7 px-2.5 text-xs gap-1`,onClick:t=>X(e)},{default:T(()=>[A(M(Q),{class:`size-3`}),l(` `+f(M(a)(`common.insert`)),1)]),_:1},8,[`onClick`]),A(c,{variant:`ghost`,size:`icon`,class:`size-7 text-muted-foreground`,"aria-label":M(G)===e.id?M(a)(`common.collapse`):M(a)(`common.expand`),"aria-expanded":M(G)===e.id,onClick:t=>q(e.id)},{default:T(()=>[A(M(te),{class:u([`size-3.5 transition-transform duration-200`,{"rotate-180":M(G)===e.id}])},null,8,[`class`])]),_:2},1032,[`aria-label`,`aria-expanded`,`onClick`])])],8,qt),A(v,{"enter-active-class":`transition-all duration-200 ease-out`,"enter-from-class":`opacity-0 -translate-y-1`,"enter-to-class":`opacity-100 translate-y-0`,"leave-active-class":`transition-all duration-150 ease-in`,"leave-from-class":`opacity-100 translate-y-0`,"leave-to-class":`opacity-0 -translate-y-1`},{default:T(()=>[M(G)===e.id?(m(),g(`div`,en,[e.props.length>0?(m(),g(`div`,tn,[N(`p`,nn,f(M(a)(`component.propDocs`)),1),N(`div`,rn,[N(`table`,an,[N(`thead`,null,[N(`tr`,on,[N(`th`,sn,f(M(a)(`component.propNameCol`)),1),N(`th`,cn,f(M(a)(`component.typeCol`)),1),N(`th`,ln,f(M(a)(`component.statusCol`)),1),N(`th`,un,f(M(a)(`component.descCol`)),1),N(`th`,dn,f(M(a)(`component.defaultCol`)),1)])]),N(`tbody`,null,[(m(!0),g(C,null,_(e.props,e=>(m(),g(`tr`,{key:e.name,class:`bg-background`},[N(`td`,fn,[N(`code`,pn,f(e.name),1)]),N(`td`,mn,[N(`code`,hn,f(e.type||`string`),1)]),N(`td`,gn,[N(`span`,{class:u([`inline-flex items-center px-1.5 py-0.5 rounded border text-[10px] font-medium`,Z(e).class])},f(Z(e).label),3)]),N(`td`,_n,f(e.description||`—`),1),N(`td`,vn,[e.default?(m(),g(`code`,yn,f(e.default),1)):(m(),g(`span`,bn,`—`))])]))),128))])])]),N(`div`,xn,[(m(!0),g(C,null,_(e.props,e=>(m(),g(`div`,{key:e.name,class:`rounded-lg border bg-card p-3 space-y-1`},[N(`div`,Sn,[N(`code`,Cn,f(e.name),1),N(`code`,wn,f(e.type||`string`),1),N(`span`,{class:u([`inline-flex items-center px-1.5 py-0.5 rounded border text-[10px] font-medium`,Z(e).class])},f(Z(e).label),3)]),e.description?(m(),g(`p`,Tn,f(e.description),1)):j(``,!0),e.default?(m(),g(`div`,En,[N(`span`,null,f(M(a)(`component.defaultPrefix`)),1),N(`code`,Dn,f(e.default),1)])):j(``,!0)]))),128))])])):j(``,!0),A(ot,{def:e,"onUpdate:values":t=>J(e.id,t)},null,8,[`def`,`onUpdate:values`]),N(`div`,On,[A(c,{variant:`default`,size:`sm`,class:`h-7 px-2.5 text-xs gap-1`,onClick:t=>X(e)},{default:T(()=>[A(M(Q),{class:`size-3`}),l(` `+f(M(a)(`component.insertWithValues`)),1)]),_:1},8,[`onClick`]),A(c,{variant:`ghost`,size:`icon`,class:`size-7 text-muted-foreground`,"aria-label":M(a)(`common.copy`),title:M(a)(`common.copy`),onClick:t=>Ie(e)},{default:T(()=>[M(K)===e.id?(m(),y(M(ee),{key:0,class:`size-3 text-green-500`})):(m(),y(M(ne),{key:1,class:`size-3`}))]),_:2},1032,[`aria-label`,`title`,`onClick`])]),Ve(e)?(m(),g(`div`,kn,[N(`div`,An,[N(`p`,jn,[A(M(Re),{class:`size-3.5`}),l(` `+f(M(a)(`component.savedAccounts`)),1)]),A(c,{variant:`outline`,size:`sm`,class:`h-6 px-2 text-xs gap-1`,onClick:We},{default:T(()=>[A(M(ae),{class:`size-3`}),l(` `+f(M(a)(`common.add`)),1)]),_:1})]),M(D).accounts.length===0?(m(),g(`div`,Mn,[N(`p`,Nn,f(M(a)(`component.noAccounts`)),1)])):(m(),g(`div`,Pn,[(m(!0),g(C,null,_(M(D).accounts,e=>(m(),g(`div`,{key:e.id,class:`flex items-center gap-2 p-2 rounded-lg border bg-card hover:bg-muted/50 transition-colors`},[e.logo?(m(),g(`img`,{key:0,src:e.logo,class:`size-7 rounded-full object-cover shrink-0`,alt:e.name},null,8,Fn)):(m(),g(`div`,In,[A(M(Re),{class:`size-3.5 text-muted-foreground`})])),N(`div`,Ln,[N(`p`,Rn,f(e.name),1),e.desc?(m(),g(`p`,zn,f(e.desc),1)):j(``,!0)]),A(E,{"delay-duration":300},{default:T(()=>[A(x,null,{default:T(()=>[A(p,{"as-child":``},{default:T(()=>[A(c,{variant:`ghost`,size:`icon`,class:`size-6 shrink-0 text-primary hover:text-primary`,"aria-label":M(a)(`common.insert`),onClick:t=>Ue(e)},{default:T(()=>[A(M(Q),{class:`size-3`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1024),A(h,{side:`top`,class:`z-250`},{default:T(()=>[l(f(M(a)(`common.insert`)),1)]),_:1})]),_:2},1024)]),_:2},1024),A(E,{"delay-duration":300},{default:T(()=>[A(x,null,{default:T(()=>[A(p,{"as-child":``},{default:T(()=>[A(c,{variant:`ghost`,size:`icon`,class:`size-6 shrink-0 text-muted-foreground`,"aria-label":M(a)(`common.edit`),onClick:t=>Ge(e.id)},{default:T(()=>[A(M(ie),{class:`size-3`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1024),A(h,{side:`top`,class:`z-250`},{default:T(()=>[l(f(M(a)(`common.edit`)),1)]),_:1})]),_:2},1024)]),_:2},1024),A(E,{"delay-duration":300},{default:T(()=>[A(x,null,{default:T(()=>[A(p,{"as-child":``},{default:T(()=>[A(c,{variant:`ghost`,size:`icon`,class:`size-6 shrink-0 text-destructive hover:text-destructive`,"aria-label":M(a)(`common.delete`),onClick:t=>qe(e)},{default:T(()=>[A(M(oe),{class:`size-3`})]),_:1},8,[`aria-label`,`onClick`])]),_:2},1024),A(h,{side:`top`,class:`z-250`},{default:T(()=>[l(f(M(a)(`common.delete`)),1)]),_:1})]),_:2},1024)]),_:2},1024)]))),128))]))])):j(``,!0)])):j(``,!0)]),_:2},1024)],2))),128))]),_:1}),A(k,{value:`custom`,class:`mt-4 space-y-4`},{default:T(()=>[N(`input`,{ref_key:`importFileRef`,ref:U,type:`file`,accept:`.json`,class:`hidden`,onChange:je},null,544),N(`div`,Bn,[N(`div`,Vn,[A(M(R),{class:`size-3.5 text-muted-foreground`}),N(`h4`,Hn,f(M(a)(`component.custom`)),1),N(`span`,Un,f(M(a)(`component.propCount`,{count:M(d).userComponents.length})),1)]),N(`div`,Wn,[A(c,{variant:`outline`,size:`sm`,class:`h-6 px-2 text-xs gap-1`,disabled:M(d).userComponents.length===0,onClick:Se},{default:T(()=>[A(M(re),{class:`size-3`}),l(` `+f(M(a)(`common.export`)),1)]),_:1},8,[`disabled`]),A(c,{variant:`outline`,size:`sm`,class:`h-6 px-2 text-xs gap-1`,onClick:ke},{default:T(()=>[A(M(se),{class:`size-3`}),l(` `+f(M(a)(`common.import`)),1)]),_:1}),A(c,{variant:`outline`,size:`sm`,class:`h-6 px-2 text-xs`,onClick:ve},{default:T(()=>[A(M(ae),{class:`mr-1 size-3`}),l(` `+f(M(a)(`common.create`)),1)]),_:1})])]),M(d).userComponents.length===0?(m(),g(`div`,Gn,[N(`p`,Kn,f(M(a)(`component.noCustom`)),1)])):(m(),g(`div`,qn,[(m(!0),g(C,null,_(M(d).userComponents,e=>(m(),g(`div`,{key:e.id,class:u([`border rounded-xl overflow-hidden transition-all`,M(G)===e.id?`border-primary/30 bg-primary/2`:`hover:border-border/80 bg-card`])},[N(`div`,{class:`flex items-start sm:items-center gap-3 p-3 sm:p-4 cursor-pointer select-none`,onClick:t=>q(e.id)},[N(`div`,Yn,[A(M(R),{class:`size-4 text-primary`})]),N(`div`,Xn,[N(`div`,Zn,[N(`code`,Qn,f(e.name),1),N(`span`,$n,f(M(a)(`component.propCount`,{count:e.props.length})),1)]),e.description?(m(),g(`p`,er,f(e.description),1)):j(``,!0)]),N(`div`,{class:`flex items-center gap-1 shrink-0`,onClick:t[1]||=S(()=>{},[`stop`])},[A(c,{variant:`default`,size:`sm`,class:`h-7 px-2.5 text-xs gap-1`,onClick:t=>X(e)},{default:T(()=>[A(M(Q),{class:`size-3`}),l(` `+f(M(a)(`common.insert`)),1)]),_:1},8,[`onClick`]),A(c,{variant:`ghost`,size:`icon`,class:`size-7 text-muted-foreground`,"aria-label":M(G)===e.id?M(a)(`common.collapse`):M(a)(`common.expand`),"aria-expanded":M(G)===e.id,onClick:t=>q(e.id)},{default:T(()=>[A(M(te),{class:u([`size-3.5 transition-transform duration-200`,{"rotate-180":M(G)===e.id}])},null,8,[`class`])]),_:2},1032,[`aria-label`,`aria-expanded`,`onClick`])])],8,Jn),A(v,{"enter-active-class":`transition-all duration-200 ease-out`,"enter-from-class":`opacity-0 -translate-y-1`,"enter-to-class":`opacity-100 translate-y-0`,"leave-active-class":`transition-all duration-150 ease-in`,"leave-from-class":`opacity-100 translate-y-0`,"leave-to-class":`opacity-0 -translate-y-1`},{default:T(()=>[M(G)===e.id?(m(),g(`div`,tr,[e.props.length>0?(m(),g(`div`,nr,[N(`p`,rr,f(M(a)(`component.propDocs`)),1),N(`div`,ir,[N(`table`,ar,[N(`thead`,or,[N(`tr`,null,[N(`th`,sr,f(M(a)(`component.propNameCol`)),1),N(`th`,cr,f(M(a)(`component.typeCol`)),1),N(`th`,lr,f(M(a)(`component.statusCol`)),1),N(`th`,ur,f(M(a)(`component.descCol`)),1),N(`th`,dr,f(M(a)(`component.defaultCol`)),1)])]),N(`tbody`,null,[(m(!0),g(C,null,_(e.props,e=>(m(),g(`tr`,{key:e.name,class:`border-t border-border/50`},[N(`td`,fr,[N(`code`,pr,f(e.name),1)]),N(`td`,mr,[N(`code`,hr,f(e.type||`string`),1)]),N(`td`,gr,[N(`span`,{class:u([`inline-flex items-center px-1.5 py-0.5 rounded border text-[10px] font-medium`,Z(e).class])},f(Z(e).label),3)]),N(`td`,_r,f(e.description||`—`),1),N(`td`,vr,[e.default?(m(),g(`code`,yr,f(e.default),1)):(m(),g(`span`,br,`—`))])]))),128))])])]),N(`div`,xr,[(m(!0),g(C,null,_(e.props,e=>(m(),g(`div`,{key:e.name,class:`rounded-lg border bg-card p-3 space-y-1`},[N(`div`,Sr,[N(`code`,Cr,f(e.name),1),N(`code`,wr,f(e.type||`string`),1),N(`span`,{class:u([`inline-flex items-center px-1.5 py-0.5 rounded border text-[10px] font-medium`,Z(e).class])},f(Z(e).label),3)]),e.description?(m(),g(`p`,Tr,f(e.description),1)):j(``,!0),e.default?(m(),g(`div`,Er,[N(`span`,null,f(M(a)(`component.defaultPrefix`)),1),N(`code`,Dr,f(e.default),1)])):j(``,!0)]))),128))])])):j(``,!0),A(ot,{def:e,"onUpdate:values":t=>J(e.id,t)},null,8,[`def`,`onUpdate:values`]),N(`div`,Or,[A(c,{variant:`default`,size:`sm`,class:`h-7 px-2.5 text-xs gap-1`,onClick:t=>X(e)},{default:T(()=>[A(M(Q),{class:`size-3`}),l(` `+f(M(a)(`component.insertWithValues`)),1)]),_:1},8,[`onClick`]),A(c,{variant:`outline`,size:`sm`,class:`h-7 px-2.5 text-xs gap-1`,onClick:t=>ye(e)},{default:T(()=>[A(M(ie),{class:`size-3`}),l(` `+f(M(a)(`common.edit`)),1)]),_:1},8,[`onClick`]),A(c,{variant:`outline`,size:`sm`,class:`h-7 px-2.5 text-xs gap-1 text-red-500 hover:text-red-600 hover:border-red-300`,onClick:t=>Pe(e)},{default:T(()=>[A(M(oe),{class:`size-3`}),l(` `+f(M(a)(`common.delete`)),1)]),_:1},8,[`onClick`])])])):j(``,!0)]),_:2},1024)],2))),128))]))]),_:1})]),_:1},8,[`modelValue`])]))])]),_:1})]),_:1},8,[`open`]),A(B,{open:M($),"onUpdate:open":t[3]||=e=>b($)?$.value=e:null,"account-id":M(Be)},null,8,[`open`,`account-id`])],64)}}});export{kr as default};
@@ -1 +1 @@
1
- import{_ as e,g as t,h as n,q as r,t as i}from"./md-ui-Dq6MTvr4.js";import{$ as a,C as o,Ct as ee,E as s,Et as c,F as l,G as u,H as d,S as f,W as p,b as m,ct as h,d as g,f as _,m as v,nt as y,pt as b,v as x,w as S,x as te,xt as C,y as w}from"./md-vendor_vue-BeOfKbk1.js";import{n as ne}from"./md-vue-i18n-Cxvw1c3e.js";import{n as T}from"./md-lib-CvTniYNx.js";import{t as E}from"./md-createLucideIcon-BXdNAL-d.js";import{t as D}from"./md-check-lU7D5avq.js";import{t as O}from"./md-cloud-upload-kYEY7erk.js";import{t as re}from"./md-copy-FPkQvYMT.js";import{t as k}from"./md-utils-CfHWyiHX.js";import{n as ie}from"./md-button-BSiUqWkb.js";import{b as A}from"./md-Teleport-C33MrUY6.js";import{n as j,t as M}from"./md-CheckboxIndicator-hbjLY94G.js";import{s as N}from"./md-vendor_vueuse-B2NyWnbq.js";import{i as ae,n as oe,r as se,t as ce}from"./md-TabsTrigger-D71LxSp0.js";import{n as le}from"./md-post-CHezuK0L.js";import{t as ue}from"./md-clipboard-BYFl_-FZ.js";import{t as P}from"./md-PanelDialog-DMTByC9s.js";var F=E({name:`expand`,size:24,node:[[`path`,{d:`m15 15 6 6`,key:`1s409w`}],[`path`,{d:`m15 9 6-6`,key:`ko1vev`}],[`path`,{d:`M21 16v5h-5`,key:`1ck2sf`}],[`path`,{d:`M21 8V3h-5`,key:`1qoq8a`}],[`path`,{d:`M3 16v5h5`,key:`1t08am`}],[`path`,{d:`m3 21 6-6`,key:`wwnumi`}],[`path`,{d:`M3 8V3h5`,key:`1ln10m`}],[`path`,{d:`M9 9 3 3`,key:`v551iv`}]]}),de=s({__name:`Checkbox`,props:{defaultValue:{},modelValue:{},disabled:{type:Boolean},value:{},id:{},trueValue:{},falseValue:{},asChild:{type:Boolean},as:{},name:{},required:{type:Boolean},class:{type:[Boolean,null,String,Object,Array]}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,i=N(n,`class`),a=A(i,r);return(e,t)=>(d(),m(C(j),l(C(a),{class:C(k)(`grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground`,n.class)}),{default:y(()=>[S(C(M),{class:`grid place-content-center text-current`},{default:y(()=>[u(e.$slots,`default`,{},()=>[S(C(D),{class:`h-4 w-4`})])]),_:3})]),_:3},16,[`class`]))}}),fe={class:`px-4 py-4 sm:px-6`},pe={class:`grid gap-4 lg:grid-cols-2`},me={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},he={class:`shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},ge={key:0,class:`min-h-0 flex-1 space-y-2 overflow-auto px-3 py-2 text-left`},_e=[`for`],ve={key:1,class:`flex flex-1 items-center justify-center p-4`},ye={class:`text-sm text-muted-foreground`},be={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},xe={class:`relative shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},Se=[`aria-label`,`title`],Ce={class:`min-h-0 flex-1 overflow-auto p-2`},we={class:`text-left text-xs text-muted-foreground sm:text-sm`},Te={class:`flex justify-end`},Ee={class:`grid gap-4 lg:grid-cols-2`},De={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},Oe={class:`relative shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},ke=[`aria-label`,`title`],Ae={class:`min-h-0 flex-1 p-2`},je=[`onKeydown`],Me={class:`text-sm text-muted-foreground`},Ne={class:`mt-1 text-xs text-muted-foreground/60`},Pe={key:1,class:`h-full overflow-auto`},Fe={class:`text-left text-xs text-muted-foreground sm:text-sm`},Ie={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},Le={class:`shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},Re={class:`min-h-0 flex-1 overflow-auto`},ze={key:0,class:`space-y-2 px-3 py-2 text-left`},Be=[`for`],I={key:1,class:`flex h-full min-h-[10rem] items-center justify-center p-4 text-sm text-muted-foreground`},Ve={class:`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`},He={class:`px-4 py-4 sm:px-6`},Ue={class:`relative max-h-[min(60vh,28rem)] overflow-auto rounded-lg border border-border bg-muted p-4`},We={class:`break-all text-left text-xs text-muted-foreground sm:text-sm`},L=s({__name:`EditorStateDialog`,props:{open:{type:Boolean}},emits:[`update:open`],setup(s,{emit:l}){let u=s,E=l,{t:k,te:A}=ne();function j(e){let t=`editorState.storeLabels.${e}`;return A(t)?k(t):e}let M=x({get:()=>u.open,set:e=>E(`update:open`,e)}),N=t(),L=i(),R=le(),z=e(),B=n(),V=b(`import`),Ge=x(()=>[{value:`import`,label:k(`editorState.importTab`)},{value:`export`,label:k(`editorState.exportTab`)}]),H=b({data:{},selected:{}});a(()=>u.open,e=>{e&&qe()},{immediate:!0});function Ke(){return{isDark:L.isDark,isOpenRightSlider:L.isOpenRightSlider,isOpenPostSlider:L.isOpenPostSlider,showAIToolbox:L.showAIToolbox,theme:N.theme,fontFamily:N.fontFamily,fontSize:N.fontSize,primaryColor:N.primaryColor,codeBlockTheme:N.codeBlockTheme,legend:N.legend,isMacCodeBlock:N.isMacCodeBlock,isShowLineNumber:N.isShowLineNumber,isCiteStatus:N.isCiteStatus,isCountStatus:N.isCountStatus,isUseIndent:N.isUseIndent,isUseJustify:N.isUseJustify,currentPostId:R.currentPostId,currentPostIndex:R.currentPostIndex,posts:R.posts,cssContentConfig:z.cssContentConfig,titleList:B.titleList,readingTime:B.readingTime,isShowCssEditor:L.isShowCssEditor,isShowTableEditDialog:L.isShowTableEditDialog,isShowUploadImgDialog:L.isShowUploadImgDialog,aiDialogVisible:L.aiDialogVisible,aiImageDialogVisible:L.aiImageDialogVisible}}async function qe(){try{let e=Ke();H.value={data:e,selected:Object.keys(e).reduce((e,t)=>(e[t]=!0,e),{})}}catch{}}let U=x(()=>H.value.data?Object.keys(H.value.data).reduce((e,t)=>(H.value.selected[t]&&(e[t]=H.value.data[t]),e),{}):{}),W=b({data:{},selected:{}}),G=b(null),K=x(()=>W.value.data?Object.keys(W.value.data).reduce((e,t)=>(W.value.selected[t]&&(e[t]=W.value.data[t]),e),{}):{});function Je(){let e=Object.keys(H.value.data).reduce((e,t)=>(H.value.selected[t]&&(e[t]=H.value.data[t]),e),{}),t=new Date,n=e=>String(e).padStart(2,`0`),i=`doocs-md-config-${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())}_${n(t.getHours())}-${n(t.getMinutes())}-${n(t.getSeconds())}.json`;r(JSON.stringify(e,null,2),i,`application/json`),T.success(k(`editorState.exportSuccess`)),M.value=!1}let q=b(!1),J=x(()=>V.value===`export`?U.value:V.value===`import`?K.value:{}),Y=b(!1);async function Ye(e){try{await ue(e),Y.value=!0,setTimeout(()=>{Y.value=!1},1500)}catch{T.error(k(`editorState.copyRetry`))}}let X=b(null),Z=b(!1);function Q(){X.value?.click()}function $(e){let t=new FileReader;t.onload=e=>{try{let t=e.target?.result,n=JSON.parse(t);if(typeof n!=`object`||Array.isArray(n)){T.error(k(`editorState.importFormatError`));return}let r=Object.keys(H.value.data).concat(Object.keys(W.value.data)),i=Object.keys(n).reduce((e,t)=>(r.includes(t)&&(e[t]=n[t]),e),{});if(Object.keys(i).length===0){T.error(k(`editorState.importNoApplicable`));return}G.value=n,W.value={data:n,selected:Object.keys(n).reduce((e,t)=>(e[t]=!0,e),{})},T.success(k(`editorState.importSuccess`))}catch{T.error(k(`editorState.parseFailed`))}},t.readAsText(e)}function Xe(e){let t=e.target;t.files?.length&&($(t.files[0]),t.value=``)}function Ze(e){e.preventDefault(),Z.value=!1;let t=e.dataTransfer?.files?.[0];t&&t.name.endsWith(`.json`)?$(t):T.error(k(`editorState.importFormatError`))}function Qe(){K.value&&(Object.keys(W.value.selected).forEach(e=>{if(W.value.selected[e]&&W.value.data?.[e]!==void 0){let t=W.value.data[e];e===`isDark`?L.isDark=t:e===`isOpenRightSlider`?L.isOpenRightSlider=t:e===`isOpenPostSlider`?L.isOpenPostSlider=t:e===`showAIToolbox`?L.showAIToolbox=t:e===`theme`?N.theme=t:e===`fontFamily`?N.fontFamily=t:e===`fontSize`?N.fontSize=t:e===`primaryColor`?N.primaryColor=t:e===`codeBlockTheme`?N.codeBlockTheme=t:e===`legend`?N.legend=t:e===`isMacCodeBlock`?N.isMacCodeBlock=t:e===`isShowLineNumber`?N.isShowLineNumber=t:e===`isCiteStatus`?N.isCiteStatus=t:e===`isCountStatus`?N.isCountStatus=t:e===`isUseIndent`?N.isUseIndent=t:e===`isUseJustify`?N.isUseJustify=t:e===`currentPostId`?R.currentPostId=t:e===`currentPostIndex`?R.currentPostIndex=t:e===`posts`?R.replacePosts(t):e===`cssContentConfig`?z.cssContentConfig=t:e===`titleList`?B.titleList=t:e===`readingTime`?B.readingTime=t:e===`isShowCssEditor`?L.isShowCssEditor=t:e===`isShowTableEditDialog`?L.isShowTableEditDialog=t:e===`isShowUploadImgDialog`?L.isShowUploadImgDialog=t:e===`aiDialogVisible`?L.aiDialogVisible=t:e===`aiImageDialogVisible`&&(L.aiImageDialogVisible=t)}}),T.success(k(`editorState.applySuccess`)),M.value=!1)}return(e,t)=>{let n=ce,r=oe,i=de,a=ie,s=se,l=ae;return d(),f(v,null,[S(P,{open:M.value,"onUpdate:open":t[5]||=e=>M.value=e,title:C(k)(`editorState.title`),description:C(k)(`editorState.description`),icon:C(O),size:`4xl`},{default:y(()=>[w(`div`,fe,[S(l,{modelValue:C(V),"onUpdate:modelValue":t[4]||=e=>h(V)?V.value=e:null,class:`w-full`},{default:y(()=>[S(r,{class:`grid h-auto w-full grid-cols-2`},{default:y(()=>[(d(!0),f(v,null,p(Ge.value,e=>(d(),m(n,{key:e.value,value:e.value},{default:y(()=>[o(c(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1}),S(s,{value:`export`,class:`mt-4 space-y-4`},{default:y(()=>[w(`div`,pe,[w(`div`,me,[w(`p`,he,c(C(k)(`editorState.selectExport`)),1),C(H).data?(d(),f(`ul`,ge,[(d(!0),f(v,null,p(C(H).data,(e,t)=>(d(),f(`li`,{key:t,class:`flex items-center space-x-2`},[S(i,{id:`export-${t}`,modelValue:C(H).selected[t],"onUpdate:modelValue":e=>C(H).selected[t]=e},null,8,[`id`,`modelValue`,`onUpdate:modelValue`]),w(`label`,{for:`export-${t}`,class:`text-sm text-foreground`},c(j(t)),9,_e)]))),128))])):(d(),f(`div`,ve,[w(`p`,ye,c(C(k)(`common.loading`)),1)]))]),w(`div`,be,[w(`p`,xe,[w(`span`,null,c(C(k)(`editorState.jsonPreview`)),1),w(`button`,{type:`button`,class:`absolute right-2 top-2 cursor-pointer rounded p-1 text-muted-foreground hover:bg-muted`,"aria-label":C(k)(`editorState.fullscreenPreview`),title:C(k)(`editorState.fullscreenPreview`),onClick:t[0]||=e=>q.value=!0},[S(C(F),{class:`size-4`})],8,Se)]),w(`div`,Ce,[w(`pre`,we,c(JSON.stringify(U.value,null,2)),1)])])]),w(`div`,Te,[S(a,{class:`h-10 w-full sm:w-auto`,disabled:Object.values(C(H).selected).every(e=>!e),onClick:Je},{default:y(()=>[o(c(C(k)(`editorState.exportSelected`)),1)]),_:1},8,[`disabled`])])]),_:1}),S(s,{value:`import`,class:`mt-4 space-y-4`},{default:y(()=>[w(`input`,{ref_key:`fileInputRef`,ref:X,type:`file`,accept:`.json`,class:`hidden`,onChange:Xe},null,544),w(`div`,Ee,[w(`div`,De,[w(`p`,Oe,[w(`span`,null,c(C(k)(`editorState.importJson`)),1),C(G)?(d(),f(`button`,{key:0,type:`button`,class:`absolute right-2 top-2 cursor-pointer rounded p-1 text-muted-foreground hover:bg-muted`,"aria-label":C(k)(`editorState.fullscreenPreview`),title:C(k)(`editorState.fullscreenPreview`),onClick:t[1]||=e=>q.value=!0},[S(C(F),{class:`size-4`})],8,ke)):te(``,!0)]),w(`div`,Ae,[C(G)?(d(),f(`div`,Pe,[w(`pre`,Fe,c(JSON.stringify(K.value,null,2)),1)])):(d(),f(`div`,{key:0,role:`button`,tabindex:`0`,class:ee([`flex h-full min-h-[10rem] cursor-pointer flex-col items-center justify-center rounded-lg border-2 border-dashed transition-colors`,{"border-primary bg-primary/5":C(Z),"border-border hover:bg-muted":!C(Z)}]),onClick:Q,onKeydown:[g(_(Q,[`prevent`]),[`enter`]),g(_(Q,[`prevent`]),[`space`])],onDragover:t[2]||=_(e=>Z.value=!0,[`prevent`]),onDragleave:t[3]||=_(e=>Z.value=!1,[`prevent`]),onDrop:Ze},[S(C(O),{class:`mb-2 size-12 text-muted-foreground sm:size-16`}),w(`span`,Me,c(C(k)(`editorState.jsonDropHint`)),1),w(`span`,Ne,c(C(k)(`editorState.jsonFormatHint`)),1)],42,je))])]),w(`div`,Ie,[w(`p`,Le,c(C(k)(`editorState.selectImportItems`)),1),w(`div`,Re,[C(G)?(d(),f(`ul`,ze,[(d(!0),f(v,null,p(C(W).data,(e,t)=>(d(),f(`li`,{key:t,class:`flex items-center space-x-2`},[S(i,{id:`import-${t}`,modelValue:C(W).selected[t],"onUpdate:modelValue":e=>C(W).selected[t]=e},null,8,[`id`,`modelValue`,`onUpdate:modelValue`]),w(`label`,{for:`import-${t}`,class:`text-sm text-foreground`},c(j(t)),9,Be)]))),128))])):(d(),f(`div`,I,c(C(k)(`editorState.importFirst`)),1))])])]),w(`div`,Ve,[S(a,{variant:`outline`,class:`h-10 w-full sm:w-auto`,onClick:Q},{default:y(()=>[o(c(C(k)(`editorState.reimport`)),1)]),_:1}),S(a,{class:`h-10 w-full sm:w-auto`,disabled:Object.values(C(W).selected).every(e=>!e),onClick:Qe},{default:y(()=>[o(c(C(k)(`editorState.applySelected`)),1)]),_:1},8,[`disabled`])])]),_:1})]),_:1},8,[`modelValue`])])]),_:1},8,[`open`,`title`,`description`,`icon`]),S(P,{open:C(q),"onUpdate:open":t[7]||=e=>h(q)?q.value=e:null,title:C(k)(`editorState.fullscreenPreview`),description:C(k)(`editorState.fullscreenDescription`),size:`4xl`},{default:y(()=>[w(`div`,He,[w(`div`,Ue,[C(Y)?(d(),m(a,{key:0,variant:`ghost`,size:`icon`,class:`absolute right-2 top-2 size-8 cursor-default`,disabled:``,"aria-label":C(k)(`common.copied`)},{default:y(()=>[S(C(D),{class:`size-4 text-green-500`})]),_:1},8,[`aria-label`])):(d(),m(a,{key:1,variant:`ghost`,size:`icon`,class:`absolute right-2 top-2 size-8 text-muted-foreground hover:text-foreground`,"aria-label":C(k)(`editorState.copyJson`),onClick:t[6]||=e=>Ye(JSON.stringify(J.value,null,2))},{default:y(()=>[S(C(re),{class:`size-4`})]),_:1},8,[`aria-label`])),w(`pre`,We,c(JSON.stringify(J.value,null,2)),1)])])]),_:1},8,[`open`,`title`,`description`])],64)}}});export{L as default};
1
+ import{_ as e,g as t,h as n,q as r,t as i}from"./md-ui-BLkQlUQC.js";import{$ as a,C as o,Ct as ee,E as s,Et as c,F as l,G as u,H as d,S as f,W as p,b as m,ct as h,d as g,f as _,m as v,nt as y,pt as b,v as x,w as S,x as te,xt as C,y as w}from"./md-vendor_vue-BeOfKbk1.js";import{n as ne}from"./md-vue-i18n-Cxvw1c3e.js";import{n as T}from"./md-lib-CvTniYNx.js";import{t as E}from"./md-createLucideIcon-BXdNAL-d.js";import{t as D}from"./md-check-lU7D5avq.js";import{t as O}from"./md-cloud-upload-kYEY7erk.js";import{t as re}from"./md-copy-FPkQvYMT.js";import{t as k}from"./md-utils-CfHWyiHX.js";import{n as ie}from"./md-button-BSiUqWkb.js";import{b as A}from"./md-Teleport-C33MrUY6.js";import{n as j,t as M}from"./md-CheckboxIndicator-hbjLY94G.js";import{s as N}from"./md-vendor_vueuse-B2NyWnbq.js";import{i as ae,n as oe,r as se,t as ce}from"./md-TabsTrigger-D71LxSp0.js";import{n as le}from"./md-post-CoWfijHq.js";import{t as ue}from"./md-clipboard-2tuieAqv.js";import{t as P}from"./md-PanelDialog-DMTByC9s.js";var F=E({name:`expand`,size:24,node:[[`path`,{d:`m15 15 6 6`,key:`1s409w`}],[`path`,{d:`m15 9 6-6`,key:`ko1vev`}],[`path`,{d:`M21 16v5h-5`,key:`1ck2sf`}],[`path`,{d:`M21 8V3h-5`,key:`1qoq8a`}],[`path`,{d:`M3 16v5h5`,key:`1t08am`}],[`path`,{d:`m3 21 6-6`,key:`wwnumi`}],[`path`,{d:`M3 8V3h5`,key:`1ln10m`}],[`path`,{d:`M9 9 3 3`,key:`v551iv`}]]}),de=s({__name:`Checkbox`,props:{defaultValue:{},modelValue:{},disabled:{type:Boolean},value:{},id:{},trueValue:{},falseValue:{},asChild:{type:Boolean},as:{},name:{},required:{type:Boolean},class:{type:[Boolean,null,String,Object,Array]}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,i=N(n,`class`),a=A(i,r);return(e,t)=>(d(),m(C(j),l(C(a),{class:C(k)(`grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground`,n.class)}),{default:y(()=>[S(C(M),{class:`grid place-content-center text-current`},{default:y(()=>[u(e.$slots,`default`,{},()=>[S(C(D),{class:`h-4 w-4`})])]),_:3})]),_:3},16,[`class`]))}}),fe={class:`px-4 py-4 sm:px-6`},pe={class:`grid gap-4 lg:grid-cols-2`},me={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},he={class:`shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},ge={key:0,class:`min-h-0 flex-1 space-y-2 overflow-auto px-3 py-2 text-left`},_e=[`for`],ve={key:1,class:`flex flex-1 items-center justify-center p-4`},ye={class:`text-sm text-muted-foreground`},be={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},xe={class:`relative shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},Se=[`aria-label`,`title`],Ce={class:`min-h-0 flex-1 overflow-auto p-2`},we={class:`text-left text-xs text-muted-foreground sm:text-sm`},Te={class:`flex justify-end`},Ee={class:`grid gap-4 lg:grid-cols-2`},De={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},Oe={class:`relative shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},ke=[`aria-label`,`title`],Ae={class:`min-h-0 flex-1 p-2`},je=[`onKeydown`],Me={class:`text-sm text-muted-foreground`},Ne={class:`mt-1 text-xs text-muted-foreground/60`},Pe={key:1,class:`h-full overflow-auto`},Fe={class:`text-left text-xs text-muted-foreground sm:text-sm`},Ie={class:`flex min-h-[12rem] flex-col overflow-hidden rounded-lg border border-border lg:min-h-[24rem] lg:max-h-[24rem]`},Le={class:`shrink-0 border-b border-border bg-muted/50 p-2 text-sm font-medium text-muted-foreground`},Re={class:`min-h-0 flex-1 overflow-auto`},ze={key:0,class:`space-y-2 px-3 py-2 text-left`},Be=[`for`],I={key:1,class:`flex h-full min-h-[10rem] items-center justify-center p-4 text-sm text-muted-foreground`},Ve={class:`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`},He={class:`px-4 py-4 sm:px-6`},Ue={class:`relative max-h-[min(60vh,28rem)] overflow-auto rounded-lg border border-border bg-muted p-4`},We={class:`break-all text-left text-xs text-muted-foreground sm:text-sm`},L=s({__name:`EditorStateDialog`,props:{open:{type:Boolean}},emits:[`update:open`],setup(s,{emit:l}){let u=s,E=l,{t:k,te:A}=ne();function j(e){let t=`editorState.storeLabels.${e}`;return A(t)?k(t):e}let M=x({get:()=>u.open,set:e=>E(`update:open`,e)}),N=t(),L=i(),R=le(),z=e(),B=n(),V=b(`import`),Ge=x(()=>[{value:`import`,label:k(`editorState.importTab`)},{value:`export`,label:k(`editorState.exportTab`)}]),H=b({data:{},selected:{}});a(()=>u.open,e=>{e&&qe()},{immediate:!0});function Ke(){return{isDark:L.isDark,isOpenRightSlider:L.isOpenRightSlider,isOpenPostSlider:L.isOpenPostSlider,showAIToolbox:L.showAIToolbox,theme:N.theme,fontFamily:N.fontFamily,fontSize:N.fontSize,primaryColor:N.primaryColor,codeBlockTheme:N.codeBlockTheme,legend:N.legend,isMacCodeBlock:N.isMacCodeBlock,isShowLineNumber:N.isShowLineNumber,isCiteStatus:N.isCiteStatus,isCountStatus:N.isCountStatus,isUseIndent:N.isUseIndent,isUseJustify:N.isUseJustify,currentPostId:R.currentPostId,currentPostIndex:R.currentPostIndex,posts:R.posts,cssContentConfig:z.cssContentConfig,titleList:B.titleList,readingTime:B.readingTime,isShowCssEditor:L.isShowCssEditor,isShowTableEditDialog:L.isShowTableEditDialog,isShowUploadImgDialog:L.isShowUploadImgDialog,aiDialogVisible:L.aiDialogVisible,aiImageDialogVisible:L.aiImageDialogVisible}}async function qe(){try{let e=Ke();H.value={data:e,selected:Object.keys(e).reduce((e,t)=>(e[t]=!0,e),{})}}catch{}}let U=x(()=>H.value.data?Object.keys(H.value.data).reduce((e,t)=>(H.value.selected[t]&&(e[t]=H.value.data[t]),e),{}):{}),W=b({data:{},selected:{}}),G=b(null),K=x(()=>W.value.data?Object.keys(W.value.data).reduce((e,t)=>(W.value.selected[t]&&(e[t]=W.value.data[t]),e),{}):{});function Je(){let e=Object.keys(H.value.data).reduce((e,t)=>(H.value.selected[t]&&(e[t]=H.value.data[t]),e),{}),t=new Date,n=e=>String(e).padStart(2,`0`),i=`doocs-md-config-${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())}_${n(t.getHours())}-${n(t.getMinutes())}-${n(t.getSeconds())}.json`;r(JSON.stringify(e,null,2),i,`application/json`),T.success(k(`editorState.exportSuccess`)),M.value=!1}let q=b(!1),J=x(()=>V.value===`export`?U.value:V.value===`import`?K.value:{}),Y=b(!1);async function Ye(e){try{await ue(e),Y.value=!0,setTimeout(()=>{Y.value=!1},1500)}catch{T.error(k(`editorState.copyRetry`))}}let X=b(null),Z=b(!1);function Q(){X.value?.click()}function $(e){let t=new FileReader;t.onload=e=>{try{let t=e.target?.result,n=JSON.parse(t);if(typeof n!=`object`||Array.isArray(n)){T.error(k(`editorState.importFormatError`));return}let r=Object.keys(H.value.data).concat(Object.keys(W.value.data)),i=Object.keys(n).reduce((e,t)=>(r.includes(t)&&(e[t]=n[t]),e),{});if(Object.keys(i).length===0){T.error(k(`editorState.importNoApplicable`));return}G.value=n,W.value={data:n,selected:Object.keys(n).reduce((e,t)=>(e[t]=!0,e),{})},T.success(k(`editorState.importSuccess`))}catch{T.error(k(`editorState.parseFailed`))}},t.readAsText(e)}function Xe(e){let t=e.target;t.files?.length&&($(t.files[0]),t.value=``)}function Ze(e){e.preventDefault(),Z.value=!1;let t=e.dataTransfer?.files?.[0];t&&t.name.endsWith(`.json`)?$(t):T.error(k(`editorState.importFormatError`))}function Qe(){K.value&&(Object.keys(W.value.selected).forEach(e=>{if(W.value.selected[e]&&W.value.data?.[e]!==void 0){let t=W.value.data[e];e===`isDark`?L.isDark=t:e===`isOpenRightSlider`?L.isOpenRightSlider=t:e===`isOpenPostSlider`?L.isOpenPostSlider=t:e===`showAIToolbox`?L.showAIToolbox=t:e===`theme`?N.theme=t:e===`fontFamily`?N.fontFamily=t:e===`fontSize`?N.fontSize=t:e===`primaryColor`?N.primaryColor=t:e===`codeBlockTheme`?N.codeBlockTheme=t:e===`legend`?N.legend=t:e===`isMacCodeBlock`?N.isMacCodeBlock=t:e===`isShowLineNumber`?N.isShowLineNumber=t:e===`isCiteStatus`?N.isCiteStatus=t:e===`isCountStatus`?N.isCountStatus=t:e===`isUseIndent`?N.isUseIndent=t:e===`isUseJustify`?N.isUseJustify=t:e===`currentPostId`?R.currentPostId=t:e===`currentPostIndex`?R.currentPostIndex=t:e===`posts`?R.replacePosts(t):e===`cssContentConfig`?z.cssContentConfig=t:e===`titleList`?B.titleList=t:e===`readingTime`?B.readingTime=t:e===`isShowCssEditor`?L.isShowCssEditor=t:e===`isShowTableEditDialog`?L.isShowTableEditDialog=t:e===`isShowUploadImgDialog`?L.isShowUploadImgDialog=t:e===`aiDialogVisible`?L.aiDialogVisible=t:e===`aiImageDialogVisible`&&(L.aiImageDialogVisible=t)}}),T.success(k(`editorState.applySuccess`)),M.value=!1)}return(e,t)=>{let n=ce,r=oe,i=de,a=ie,s=se,l=ae;return d(),f(v,null,[S(P,{open:M.value,"onUpdate:open":t[5]||=e=>M.value=e,title:C(k)(`editorState.title`),description:C(k)(`editorState.description`),icon:C(O),size:`4xl`},{default:y(()=>[w(`div`,fe,[S(l,{modelValue:C(V),"onUpdate:modelValue":t[4]||=e=>h(V)?V.value=e:null,class:`w-full`},{default:y(()=>[S(r,{class:`grid h-auto w-full grid-cols-2`},{default:y(()=>[(d(!0),f(v,null,p(Ge.value,e=>(d(),m(n,{key:e.value,value:e.value},{default:y(()=>[o(c(e.label),1)]),_:2},1032,[`value`]))),128))]),_:1}),S(s,{value:`export`,class:`mt-4 space-y-4`},{default:y(()=>[w(`div`,pe,[w(`div`,me,[w(`p`,he,c(C(k)(`editorState.selectExport`)),1),C(H).data?(d(),f(`ul`,ge,[(d(!0),f(v,null,p(C(H).data,(e,t)=>(d(),f(`li`,{key:t,class:`flex items-center space-x-2`},[S(i,{id:`export-${t}`,modelValue:C(H).selected[t],"onUpdate:modelValue":e=>C(H).selected[t]=e},null,8,[`id`,`modelValue`,`onUpdate:modelValue`]),w(`label`,{for:`export-${t}`,class:`text-sm text-foreground`},c(j(t)),9,_e)]))),128))])):(d(),f(`div`,ve,[w(`p`,ye,c(C(k)(`common.loading`)),1)]))]),w(`div`,be,[w(`p`,xe,[w(`span`,null,c(C(k)(`editorState.jsonPreview`)),1),w(`button`,{type:`button`,class:`absolute right-2 top-2 cursor-pointer rounded p-1 text-muted-foreground hover:bg-muted`,"aria-label":C(k)(`editorState.fullscreenPreview`),title:C(k)(`editorState.fullscreenPreview`),onClick:t[0]||=e=>q.value=!0},[S(C(F),{class:`size-4`})],8,Se)]),w(`div`,Ce,[w(`pre`,we,c(JSON.stringify(U.value,null,2)),1)])])]),w(`div`,Te,[S(a,{class:`h-10 w-full sm:w-auto`,disabled:Object.values(C(H).selected).every(e=>!e),onClick:Je},{default:y(()=>[o(c(C(k)(`editorState.exportSelected`)),1)]),_:1},8,[`disabled`])])]),_:1}),S(s,{value:`import`,class:`mt-4 space-y-4`},{default:y(()=>[w(`input`,{ref_key:`fileInputRef`,ref:X,type:`file`,accept:`.json`,class:`hidden`,onChange:Xe},null,544),w(`div`,Ee,[w(`div`,De,[w(`p`,Oe,[w(`span`,null,c(C(k)(`editorState.importJson`)),1),C(G)?(d(),f(`button`,{key:0,type:`button`,class:`absolute right-2 top-2 cursor-pointer rounded p-1 text-muted-foreground hover:bg-muted`,"aria-label":C(k)(`editorState.fullscreenPreview`),title:C(k)(`editorState.fullscreenPreview`),onClick:t[1]||=e=>q.value=!0},[S(C(F),{class:`size-4`})],8,ke)):te(``,!0)]),w(`div`,Ae,[C(G)?(d(),f(`div`,Pe,[w(`pre`,Fe,c(JSON.stringify(K.value,null,2)),1)])):(d(),f(`div`,{key:0,role:`button`,tabindex:`0`,class:ee([`flex h-full min-h-[10rem] cursor-pointer flex-col items-center justify-center rounded-lg border-2 border-dashed transition-colors`,{"border-primary bg-primary/5":C(Z),"border-border hover:bg-muted":!C(Z)}]),onClick:Q,onKeydown:[g(_(Q,[`prevent`]),[`enter`]),g(_(Q,[`prevent`]),[`space`])],onDragover:t[2]||=_(e=>Z.value=!0,[`prevent`]),onDragleave:t[3]||=_(e=>Z.value=!1,[`prevent`]),onDrop:Ze},[S(C(O),{class:`mb-2 size-12 text-muted-foreground sm:size-16`}),w(`span`,Me,c(C(k)(`editorState.jsonDropHint`)),1),w(`span`,Ne,c(C(k)(`editorState.jsonFormatHint`)),1)],42,je))])]),w(`div`,Ie,[w(`p`,Le,c(C(k)(`editorState.selectImportItems`)),1),w(`div`,Re,[C(G)?(d(),f(`ul`,ze,[(d(!0),f(v,null,p(C(W).data,(e,t)=>(d(),f(`li`,{key:t,class:`flex items-center space-x-2`},[S(i,{id:`import-${t}`,modelValue:C(W).selected[t],"onUpdate:modelValue":e=>C(W).selected[t]=e},null,8,[`id`,`modelValue`,`onUpdate:modelValue`]),w(`label`,{for:`import-${t}`,class:`text-sm text-foreground`},c(j(t)),9,Be)]))),128))])):(d(),f(`div`,I,c(C(k)(`editorState.importFirst`)),1))])])]),w(`div`,Ve,[S(a,{variant:`outline`,class:`h-10 w-full sm:w-auto`,onClick:Q},{default:y(()=>[o(c(C(k)(`editorState.reimport`)),1)]),_:1}),S(a,{class:`h-10 w-full sm:w-auto`,disabled:Object.values(C(W).selected).every(e=>!e),onClick:Qe},{default:y(()=>[o(c(C(k)(`editorState.applySelected`)),1)]),_:1},8,[`disabled`])])]),_:1})]),_:1},8,[`modelValue`])])]),_:1},8,[`open`,`title`,`description`,`icon`]),S(P,{open:C(q),"onUpdate:open":t[7]||=e=>h(q)?q.value=e:null,title:C(k)(`editorState.fullscreenPreview`),description:C(k)(`editorState.fullscreenDescription`),size:`4xl`},{default:y(()=>[w(`div`,He,[w(`div`,Ue,[C(Y)?(d(),m(a,{key:0,variant:`ghost`,size:`icon`,class:`absolute right-2 top-2 size-8 cursor-default`,disabled:``,"aria-label":C(k)(`common.copied`)},{default:y(()=>[S(C(D),{class:`size-4 text-green-500`})]),_:1},8,[`aria-label`])):(d(),m(a,{key:1,variant:`ghost`,size:`icon`,class:`absolute right-2 top-2 size-8 text-muted-foreground hover:text-foreground`,"aria-label":C(k)(`editorState.copyJson`),onClick:t[6]||=e=>Ye(JSON.stringify(J.value,null,2))},{default:y(()=>[S(C(re),{class:`size-4`})]),_:1},8,[`aria-label`])),w(`pre`,We,c(JSON.stringify(J.value,null,2)),1)])])]),_:1},8,[`open`,`title`,`description`])],64)}}});export{L as default};