aitu-app 0.6.48 → 0.6.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/assets/CanvasAudioPlayer-DITqjh6L.js +2 -0
- package/assets/CanvasAudioPlayer-mm7y75Ol.css +1 -0
- package/assets/ChatMessagesArea-D9jmGx5a.js +250 -0
- package/assets/ChatMessagesArea-DyR_wHFQ.css +1 -0
- package/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/assets/KnowledgeBaseContent-C_BAVG2b.css +1 -0
- package/assets/KnowledgeBaseContent-za__rOJH.js +53 -0
- package/assets/MVCreator-CTG316DL.js +152 -0
- package/assets/MVCreator-D2l2Gm4W.css +1 -0
- package/assets/MediaLibrarySidebar-CNCXXhfY.css +1 -0
- package/assets/ModelBenchmarkWorkbench-CAF7qCOz.css +1 -0
- package/assets/ModelBenchmarkWorkbench-JCQglDx0.js +2 -0
- package/assets/MusicAnalyzer-DE_rzhdo.js +1 -0
- package/assets/MusicAnalyzer-DhtRGpAp.css +1 -0
- package/assets/MusicAnalyzer-QQf3iMVf.js +6 -0
- package/assets/ResizableDivider-CNJfwuMZ.js +1 -0
- package/assets/ResizableDivider-ClzYJk-6.css +1 -0
- package/assets/Tableau10-B-NsZVaP.js +1 -0
- package/assets/Tableau10-Dnlau_Wv.js +1 -0
- package/assets/TaskQueuePanel-CcKV6Mtu.js +1 -0
- package/assets/VideoAnalyzer-4jAswALN.js +2 -0
- package/assets/VideoAnalyzer-BNHBu5xL.css +1 -0
- package/assets/__vite-browser-external-UePf-KSV.js +1 -0
- package/assets/apl-B4CMkyY2.js +1 -0
- package/assets/arc-CUJYo2bm.js +1 -0
- package/assets/arc-Do7iheP0.js +1 -0
- package/assets/array-B5oSNiGi.js +1 -0
- package/assets/array-BKyUJesY.js +1 -0
- package/assets/asciiarmor-Df11BRmG.js +1 -0
- package/assets/asn1-EdZsLKOL.js +1 -0
- package/assets/asterisk-B-8jnY81.js +1 -0
- package/assets/batch-image-generation-BcGzhZc6.js +6 -0
- package/assets/batch-image-generation-BePygpHd.css +1 -0
- package/assets/blockDiagram-38ab4fdb-7dWD8NFK.js +118 -0
- package/assets/blockDiagram-38ab4fdb-CQhYv8hA.js +118 -0
- package/assets/brainfuck-C4LP7Hcl.js +1 -0
- package/assets/browser-Dlc7rtso.js +1 -0
- package/assets/c4Diagram-3d4e48cf-DcDSmMC1.js +10 -0
- package/assets/c4Diagram-3d4e48cf-YiNiIQMx.js +10 -0
- package/assets/channel-CbiJkWzq.js +1 -0
- package/assets/channel-CmPwOS9o.js +1 -0
- package/assets/character-Bo9jcTNu.css +1 -0
- package/assets/classDiagram-70f12bd4--vcKyE3X.js +2 -0
- package/assets/classDiagram-70f12bd4-uRbi4Ob8.js +2 -0
- package/assets/classDiagram-v2-f2320105-CJVRZ6AN.js +2 -0
- package/assets/classDiagram-v2-f2320105-vzjVMHkr.js +2 -0
- package/assets/clike-B9uivgTg.js +1 -0
- package/assets/clipper-DOGfacWv.js +1 -0
- package/assets/clojure-BMjYHr_A.js +1 -0
- package/assets/clone-D79TnM4U.js +1 -0
- package/assets/cmake-BQqOBYOt.js +1 -0
- package/assets/cobol-CWcv1MsR.js +1 -0
- package/assets/coffeescript-S37ZYGWr.js +1 -0
- package/assets/commonlisp-DBKNyK5s.js +1 -0
- package/assets/createText-2e5e7dd3-BwZkEiuo.js +8 -0
- package/assets/createText-2e5e7dd3-Caeqt6QH.js +5 -0
- package/assets/crystal-SjHAIU92.js +1 -0
- package/assets/css-BnMrqG3P.js +1 -0
- package/assets/cypher-C_CwsFkJ.js +1 -0
- package/assets/d-pRatUO7H.js +1 -0
- package/assets/diff-DbItnlRl.js +1 -0
- package/assets/dockerfile-BKs6k2Af.js +1 -0
- package/assets/dtd-DF_7sFjM.js +1 -0
- package/assets/dylan-DwRh75JA.js +1 -0
- package/assets/ebnf-CDyGwa7X.js +1 -0
- package/assets/ecl-Cabwm37j.js +1 -0
- package/assets/edges-e0da2a9e-C0phcDTf.js +4 -0
- package/assets/edges-e0da2a9e-izyAbn2P.js +4 -0
- package/assets/eiffel-CnydiIhH.js +1 -0
- package/assets/elm-vLlmbW-K.js +1 -0
- package/assets/erDiagram-9861fffd-2xZLFO3_.js +51 -0
- package/assets/erDiagram-9861fffd-CbdcBVpG.js +51 -0
- package/assets/erlang-BNw1qcRV.js +1 -0
- package/assets/external-skills-BcV6ATYi.js +1 -0
- package/assets/factor-kuTfRLto.js +1 -0
- package/assets/fcl-Kvtd6kyn.js +1 -0
- package/assets/flowDb-956e92f1-CKDRVial.js +10 -0
- package/assets/flowDb-956e92f1-X_4p-qaU.js +10 -0
- package/assets/flowDiagram-66a62f08-CujQt6CJ.js +4 -0
- package/assets/flowDiagram-66a62f08-DBi4rRPf.js +4 -0
- package/assets/flowDiagram-v2-96b9c2cf-BLkw2ciq.js +1 -0
- package/assets/flowDiagram-v2-96b9c2cf-DVKQK2hY.js +1 -0
- package/assets/flowchart-elk-definition-4a651766-Uf06y1Ck.js +139 -0
- package/assets/flowchart-elk-definition-4a651766-wpAztAJn.js +139 -0
- package/assets/forth-Ffai-XNe.js +1 -0
- package/assets/fortran-DYz_wnZ1.js +1 -0
- package/assets/ganttDiagram-c361ad54-B3JxRUoo.js +257 -0
- package/assets/ganttDiagram-c361ad54-CIb_MFVi.js +257 -0
- package/assets/gas-Bneqetm1.js +1 -0
- package/assets/gherkin-heZmZLOM.js +1 -0
- package/assets/gitGraphDiagram-72cf32ee-PuJBoZww.js +70 -0
- package/assets/gitGraphDiagram-72cf32ee-i6oLazGK.js +70 -0
- package/assets/graph-CbDG5PTO.js +1 -0
- package/assets/graph-DUQ4GGpV.js +1 -0
- package/assets/groovy-D9Dt4D0W.js +1 -0
- package/assets/haskell-Cw1EW3IL.js +1 -0
- package/assets/haxe-H-WmDvRZ.js +1 -0
- package/assets/http-DBlCnlav.js +1 -0
- package/assets/idl-BEugSyMb.js +1 -0
- package/assets/index-04BPVAKr.js +1 -0
- package/assets/index-3862675e-CLvnWYyN.js +1 -0
- package/assets/index-3862675e-CxQdmW6r.js +1 -0
- package/assets/index-3K3oLjal.js +1 -0
- package/assets/index-Ayt_kr_j.js +1 -0
- package/assets/index-B0aeak-l.js +1 -0
- package/assets/index-BAeTUD9a.js +1 -0
- package/assets/index-BECtRsXJ.js +6 -0
- package/assets/index-BScFd-2h.js +4 -0
- package/assets/index-BUB5I7zd.js +1 -0
- package/assets/index-BWokxWXg.js +1 -0
- package/assets/index-BYAyLEaG.js +1 -0
- package/assets/index-BZS4gNhO.js +7 -0
- package/assets/index-Bc75bQXQ.js +2 -0
- package/assets/index-BjxNPKa3.js +1 -0
- package/assets/index-BkvYpt-1.js +1 -0
- package/assets/index-Bnb0fjWR.js +1 -0
- package/assets/index-CGq-gcht.js +12 -0
- package/assets/index-CJ7peDFP.css +1 -0
- package/assets/index-CJCAjGj3.js +2 -0
- package/assets/index-CdYUDSvm.js +1 -0
- package/assets/index-CxEkGLrr.js +686 -0
- package/assets/index-DHQdBbnC.js +3 -0
- package/assets/index-DYdelMnT.js +1 -0
- package/assets/index-Dk5t_-56.js +99 -0
- package/assets/index-DlZybecc.js +1 -0
- package/assets/index-DmWG413C.js +1 -0
- package/assets/index-DzlsyVkU.js +1 -0
- package/assets/index-EYhL1Kgt.js +1 -0
- package/assets/index-c441JIOr.js +13 -0
- package/assets/index-fqJaUvT1.js +1 -0
- package/assets/index-hGrN05cs.js +1 -0
- package/assets/index-zV_AIntM.js +2 -0
- package/assets/infoDiagram-f8f76790-BYO9kBqO.js +7 -0
- package/assets/infoDiagram-f8f76790-D_TYtc3S.js +7 -0
- package/assets/init-A0kIFD9x.js +1 -0
- package/assets/init-Gi6I4Gst.js +1 -0
- package/assets/javascript-iXu5QeM3.js +1 -0
- package/assets/journeyDiagram-49397b02-DWfiJTLK.js +139 -0
- package/assets/journeyDiagram-49397b02-Dv5EEshV.js +139 -0
- package/assets/julia-DuME0IfC.js +1 -0
- package/assets/katex-Cu_Erd72.js +261 -0
- package/assets/layout-Bc2296BZ.js +1 -0
- package/assets/layout-Dm28IvOg.js +1 -0
- package/assets/line-C3mpslQb.js +1 -0
- package/assets/line-DTTPRZLU.js +1 -0
- package/assets/linear-YwuGF1HZ.js +1 -0
- package/assets/linear-g8AgbOem.js +1 -0
- package/assets/livescript-BwQOo05w.js +1 -0
- package/assets/lua-BgMRiT3U.js +1 -0
- package/assets/main-DlDiDA_U.css +9 -0
- package/assets/main-sSl0uAQQ.js +564 -0
- package/assets/mathematica-DTrFuWx2.js +1 -0
- package/assets/mbox-CNhZ1qSd.js +1 -0
- package/assets/mermaid.core-GIkiJOrg.js +91 -0
- package/assets/mindmap-definition-fc14e90a-Chuh4Ixc.js +425 -0
- package/assets/mindmap-definition-fc14e90a-D_ZKvIES.js +425 -0
- package/assets/mirc-CjQqDB4T.js +1 -0
- package/assets/mllike-CXdrOF99.js +1 -0
- package/assets/modelica-Dc1JOy9r.js +1 -0
- package/assets/mscgen-BA5vi2Kp.js +1 -0
- package/assets/mumps-BT43cFF4.js +1 -0
- package/assets/nginx-DdIZxoE0.js +1 -0
- package/assets/nsis-LdVXkNf5.js +1 -0
- package/assets/ntriples-BfvgReVJ.js +1 -0
- package/assets/octave-Ck1zUtKM.js +1 -0
- package/assets/ordinal-BRr1uYdk.js +1 -0
- package/assets/ordinal-Cboi1Yqb.js +1 -0
- package/assets/oz-BzwKVEFT.js +1 -0
- package/assets/pascal--L3eBynH.js +1 -0
- package/assets/path-CY0bYimO.js +1 -0
- package/assets/path-CbwjOpE9.js +1 -0
- package/assets/perl-CdXCOZ3F.js +1 -0
- package/assets/photo-wall-splitter-CY0T_wNE.js +1 -0
- package/assets/pieDiagram-8a3498a8-DRsICc_f.js +35 -0
- package/assets/pieDiagram-8a3498a8-Dah8ahbr.js +35 -0
- package/assets/pig-CevX1Tat.js +1 -0
- package/assets/powershell-CFHJl5sT.js +1 -0
- package/assets/properties-C78fOPTZ.js +1 -0
- package/assets/protobuf-ChK-085T.js +1 -0
- package/assets/pug-DeIclll2.js +1 -0
- package/assets/puppet-DMA9R1ak.js +1 -0
- package/assets/python-BuPzkPfP.js +1 -0
- package/assets/q-pXgVlZs6.js +1 -0
- package/assets/quadrantDiagram-120e2f19-Fh6InPVY.js +7 -0
- package/assets/quadrantDiagram-120e2f19-gL-_zV58.js +7 -0
- package/assets/r-B6wPVr8A.js +1 -0
- package/assets/requirementDiagram-deff3bca-CNSkJJCh.js +52 -0
- package/assets/requirementDiagram-deff3bca-CfDffyTL.js +52 -0
- package/assets/rpm-CTu-6PCP.js +1 -0
- package/assets/ruby-B2Rjki9n.js +1 -0
- package/assets/sankeyDiagram-04a897e0-Bk-KjkRU.js +8 -0
- package/assets/sankeyDiagram-04a897e0-JvhHugQc.js +8 -0
- package/assets/sas-B4kiWyti.js +1 -0
- package/assets/scheme-C41bIUwD.js +1 -0
- package/assets/sequenceDiagram-704730f1-DtYYZkJD.js +122 -0
- package/assets/sequenceDiagram-704730f1-Hcr6n9p8.js +122 -0
- package/assets/shell-CjFT_Tl9.js +1 -0
- package/assets/sieve-C3Gn_uJK.js +1 -0
- package/assets/simple-mode-GW_nhZxv.js +1 -0
- package/assets/smalltalk-CnHTOXQT.js +1 -0
- package/assets/solr-DehyRSwq.js +1 -0
- package/assets/sparql-DkYu6x3z.js +1 -0
- package/assets/spreadsheet-BCZA_wO0.js +1 -0
- package/assets/sql-D0XecflT.js +1 -0
- package/assets/stateDiagram-587899a1-BBe_EhAD.js +1 -0
- package/assets/stateDiagram-587899a1-DqdI8yJY.js +1 -0
- package/assets/stateDiagram-v2-d93cdb3a-BFy9jG1p.js +1 -0
- package/assets/stateDiagram-v2-d93cdb3a-CR8nQq3k.js +1 -0
- package/assets/stex-C3f8Ysf7.js +1 -0
- package/assets/styles-6aaf32cf-B3jetBAL.js +207 -0
- package/assets/styles-6aaf32cf-CtTk65AO.js +207 -0
- package/assets/styles-9a916d00-BzAmphe7.js +160 -0
- package/assets/styles-9a916d00-CC9GaYxg.js +160 -0
- package/assets/styles-c10674c1-CNAwL7Ic.js +116 -0
- package/assets/styles-c10674c1-Db2Kd6RJ.js +116 -0
- package/assets/stylus-B533Al4x.js +1 -0
- package/assets/svgDrawCommon-08f97a94-C5qlB1eZ.js +1 -0
- package/assets/svgDrawCommon-08f97a94-JdKl-BWQ.js +1 -0
- package/assets/swift-BzpIVaGY.js +1 -0
- package/assets/tcl-DVfN8rqt.js +1 -0
- package/assets/textile-CnDTJFAw.js +1 -0
- package/assets/tiddlywiki-DO-Gjzrf.js +1 -0
- package/assets/tiki-DGYXhP31.js +1 -0
- package/assets/timeline-definition-85554ec2-DOdYNzv7.js +61 -0
- package/assets/timeline-definition-85554ec2-o-R8VXA5.js +61 -0
- package/assets/toml-Bm5Em-hy.js +1 -0
- package/assets/tool-windows-Cuh0TRgJ.css +1 -0
- package/assets/tool-windows-DWUG3k_L.js +2846 -0
- package/assets/troff-wAsdV37c.js +1 -0
- package/assets/ttcn-CfJYG6tj.js +1 -0
- package/assets/ttcn-cfg-B9xdYoR4.js +1 -0
- package/assets/ttd-dialog-BQiy0hwR.js +99 -0
- package/assets/ttd-dialog-BlUvpMr5.css +1 -0
- package/assets/turtle-B1tBg_DP.js +1 -0
- package/assets/useCharacters-BJLEgDAP.css +1 -0
- package/assets/useCharacters-BxKzeyv4.js +6 -0
- package/assets/vb-CmGdzxic.js +1 -0
- package/assets/vbscript-BuJXcnF6.js +1 -0
- package/assets/velocity-D8B20fx6.js +1 -0
- package/assets/verilog-C6RDOZhf.js +1 -0
- package/assets/version-update-prompt-HA-CqLZW.js +1 -0
- package/assets/version-update-prompt-P9Rd5ve2.css +1 -0
- package/assets/vhdl-lSbBsy5d.js +1 -0
- package/assets/video-recovery-service-C0PZsfFC.js +1 -0
- package/assets/web-vitals-DcvjKPr-.js +1 -0
- package/assets/webidl-ZXfAyPTL.js +1 -0
- package/assets/winbox.bundle.min-CoRPjCs5.js +1 -0
- package/assets/workflow-generation-utils-DspPdLxa.js +3 -0
- package/assets/xlsx-CkFp8p6R.js +105 -0
- package/assets/xquery-DzFWVndE.js +1 -0
- package/assets/xychartDiagram-e933f94c-D13oeSTj.js +7 -0
- package/assets/xychartDiagram-e933f94c-DwikDAhJ.js +7 -0
- package/assets/yacas-BJ4BC0dw.js +1 -0
- package/assets/z80-Hz9HOZM7.js +1 -0
- package/idle-prefetch-manifest.json +18 -4
- package/package.json +1 -1
- package/precache-manifest.json +1015 -3
- package/sw.js +1 -1
- package/version.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@charset "UTF-8";.task-progress-overlay{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;--task-progress-accent: #f39c12;background:radial-gradient(circle at 18% 18%,rgba(245,184,73,.16),transparent 24%),radial-gradient(circle at 76% 78%,rgba(179,144,122,.14),transparent 32%),linear-gradient(135deg,#ffffffe0,#ece6e0bd);border-radius:inherit;overflow:hidden}.task-progress-overlay__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(140deg,#ffffff94,#ffffff1a),radial-gradient(circle at 50% 60%,rgba(255,255,255,.18),transparent 60%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.task-progress-overlay__pulse,.task-progress-overlay__dots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.task-progress-overlay__pulse{background:radial-gradient(circle at 16% 18%,rgba(243,156,18,.14),transparent 22%),radial-gradient(circle at 72% 70%,rgba(168,133,112,.12),transparent 34%);mix-blend-mode:multiply;animation:task-progress-overlay-pulse 3.6s ease-in-out infinite}.task-progress-overlay__dots{top:18%;right:20%;bottom:18%;left:20%;opacity:.32;background-image:radial-gradient(circle,rgba(255,255,255,.7) 0 1.2px,transparent 1.8px);background-size:28px 28px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 92%);mask-image:linear-gradient(180deg,rgba(0,0,0,.8),transparent 92%)}.task-progress-overlay__content{position:relative;z-index:1;transform-origin:center center;transition:transform .15s ease-out}.task-progress-overlay__progress{--image-generation-progress-accent: var(--task-progress-accent);--image-generation-progress-accent-soft: rgba(243, 156, 18, .14);--image-generation-progress-ring-bg: rgba(148, 163, 184, .24);--image-generation-progress-text: rgba(55, 65, 81, .9)}.task-progress-overlay__bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:#94a3b82e;z-index:1}.task-progress-overlay__bar-fill{height:100%;background:linear-gradient(90deg,#f39c12,#e67e22);transition:width .3s ease;box-shadow:0 0 8px #f39c1280}.task-progress-overlay--video{--task-progress-accent: #5a4fcf;background:radial-gradient(circle at 18% 18%,rgba(105,91,224,.18),transparent 24%),radial-gradient(circle at 72% 74%,rgba(90,79,207,.1),transparent 32%),linear-gradient(135deg,#faf9ffe0,#e8e5f7c7)}.task-progress-overlay--video .task-progress-overlay__pulse{background:radial-gradient(circle at 18% 22%,rgba(123,104,238,.16),transparent 22%),radial-gradient(circle at 72% 70%,rgba(90,79,207,.14),transparent 34%)}.task-progress-overlay--video .task-progress-overlay__bar-fill{background:linear-gradient(90deg,#5a4fcf,#7b68ee);box-shadow:0 0 8px #5a4fcf80}.task-progress-overlay--loading{--task-progress-accent: #00a870}.task-progress-overlay--loading .task-progress-overlay__pulse{background:radial-gradient(circle at 18% 18%,rgba(0,168,112,.12),transparent 22%),radial-gradient(circle at 76% 72%,rgba(132,204,166,.12),transparent 34%)}.task-progress-overlay--loading .task-progress-overlay__bar-fill{background:linear-gradient(90deg,#00a870,#00c48c);box-shadow:0 0 8px #00a87080}@keyframes task-progress-overlay-pulse{0%,to{opacity:.48;transform:scale(.98)}50%{opacity:.82;transform:scale(1.04)}}.task-queue-panel__filters-container{display:flex;flex-direction:column;gap:12px}.task-queue-panel__filters-container .t-tabs__nav-container.t-is-top:after{display:none}.task-queue-panel__filters{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;width:100%}.task-queue-panel__type-filters{display:flex;align-items:center;gap:4px;padding:3px;background:var(--td-bg-color-secondarycontainer, #f3f3f3);border-radius:10px;flex-shrink:0}.task-queue-panel__type-filters .t-button{position:relative;color:var(--td-text-color-secondary, #666);border:none!important;background:transparent!important;height:32px!important;min-width:32px!important;padding:0!important;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important}.task-queue-panel__type-filters .t-button:hover{color:var(--td-text-color-primary, #333);background:#0000000a!important}.task-queue-panel__filter-btn--active{color:#f39c12!important;background:#f39c121f!important;box-shadow:inset 0 0 0 1px #f39c122e}.task-queue-panel__filter-btn--active svg,.task-queue-panel__filter-btn--active .t-icon,.task-queue-panel__filter-btn--active span{color:currentColor!important}.task-queue-panel__search-row{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.task-queue-panel__filter-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.task-queue-panel__search-input{flex:1;min-width:100px}.task-queue-panel__search-input .t-input{border-radius:8px;height:32px;background:var(--td-bg-color-container, #fff)!important;border:1.5px solid #dcdcdc!important;transition:all .25s ease}.task-queue-panel__search-input .t-input:hover{border-color:#f39c12!important}.task-queue-panel__search-input .t-input--focused{border-color:#f39c12!important;box-shadow:0 0 0 3px #f39c1226!important}.task-queue-panel__clear-btn{flex-shrink:0}.task-queue-panel__clear-text{display:inline}@media(max-width:480px){.task-queue-panel__clear-text{display:none}}.task-queue-panel__actions{display:flex;gap:8px;flex-shrink:0}.task-queue-panel__batch-actions{display:flex;align-items:center;justify-content:space-between}.task-queue-panel__batch-select{display:flex;align-items:center;gap:8px;margin-left:12px}.task-queue-panel__batch-select :global(.t-checkbox).t-is-checked .t-checkbox__input{background-color:#f39c12;border-color:#f39c12}.task-queue-panel__batch-select :global(.t-checkbox).t-is-indeterminate .t-checkbox__input{background-color:#f39c12;border-color:#f39c12}.task-queue-panel__batch-select :global(.t-checkbox):hover .t-checkbox__input{border-color:#f39c12}.task-queue-panel__batch-count{font-size:13px;color:var(--td-text-color-secondary, #757575)}.task-queue-panel__batch-buttons{display:flex;align-items:center;gap:8px}.task-queue-panel__content{padding:12px 0 12px 24px}.task-queue-panel__list{display:flex;flex-direction:column;gap:12px}.task-queue-panel__empty{text-align:center;padding:48px 24px;color:var(--td-text-color-placeholder, #bbbbbb)}.task-queue-panel__empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.task-queue-panel__empty-text{font-size:14px}.virtual-task-list__back-to-top{position:absolute!important;bottom:16px!important;left:50%!important;transform:translate(-50%)!important;z-index:10;box-shadow:0 4px 12px #0000001f;border:1px solid var(--td-component-border, #e7e7e7);background:var(--td-bg-color-container, #fff)!important;color:var(--td-text-color-secondary, #757575)!important;width:32px!important;height:32px!important;padding:0!important;display:flex!important;align-items:center;justify-content:center;flex-shrink:0}.virtual-task-list__back-to-top:hover{background:var(--td-bg-color-secondarycontainer, #f3f3f3)!important;color:var(--td-text-color-primary, #333)!important}.virtual-task-list__back-to-top .t-icon{font-size:16px}.task-item{display:grid;gap:4px 12px;background:transparent;border-bottom:1px solid var(--td-component-border, #e7e7e7);padding:16px 24px 16px 0;transition:background-color .2s ease;position:relative;cursor:pointer}.task-item:hover{background-color:var(--td-bg-color-secondarycontainer, #f3f3f3)}.task-item--selected{border-color:#f39c12;background:#f39c120a}.task-item--processing .task-item__status-tag{background-color:#5a4fcf14!important;color:#5a4fcf!important;border:1px solid rgba(90,79,207,.15)!important}.task-item--wide{grid-template-columns:120px 1fr;grid-template-areas:"preview body"}.task-item--wide .task-item__preview-wrapper{grid-area:preview}.task-item--wide .task-item__body{grid-area:body}.task-item--wide.task-item--selection-mode{grid-template-columns:auto 120px 1fr;grid-template-areas:"checkbox preview body"}.task-item--wide.task-item--selection-mode .task-item__checkbox{grid-area:checkbox}.task-item--compact{grid-template-columns:100px 1fr;grid-template-areas:"preview prompt" "info info"}.task-item--compact .task-item__preview-wrapper{grid-area:preview;width:100px;height:75px}.task-item--compact .task-item__body{display:contents}.task-item--compact .task-item__prompt-area{grid-area:prompt}.task-item--compact .task-item__info-area{grid-area:info;margin-top:4px}.task-item--compact .task-item__content-row{align-items:center}.task-item--compact.task-item--selection-mode{grid-template-columns:auto 100px 1fr;grid-template-areas:"checkbox preview prompt" "info info info"}.task-item--compact.task-item--selection-mode .task-item__checkbox{grid-area:checkbox}.task-item__checkbox{display:flex;align-items:flex-start;padding-top:4px;padding-left:16px}.task-item__checkbox :global(.t-checkbox).t-is-checked .t-checkbox__input{background-color:#f39c12;border-color:#f39c12}.task-item__checkbox :global(.t-checkbox).t-is-indeterminate .t-checkbox__input{background-color:#f39c12;border-color:#f39c12}.task-item__checkbox :global(.t-checkbox):hover .t-checkbox__input{border-color:#f39c12}.task-item__preview-wrapper{width:120px;height:90px;flex-shrink:0;align-self:start}.task-item__preview{width:100%;height:100%;border-radius:8px;overflow:hidden;cursor:pointer;position:relative}.task-item__preview img,.task-item__preview video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block;transition:transform .2s ease}.task-item__preview:hover img,.task-item__preview:hover video{transform:scale(1.05)}.task-item__preview-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--td-text-color-placeholder, #999);font-size:11px}.task-item__preview-failed{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:8px;background:var(--td-bg-color-secondarycontainer, #f3f3f3);border:1px solid var(--td-component-border, #e7e7e7);color:var(--td-text-color-placeholder, #bbb);font-size:10px}.task-item__preview-failed .t-icon{opacity:.5;font-size:18px}.task-item__video-play-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#00000026;color:#fff;opacity:.85;transition:all .2s ease}.task-item__video-play-overlay .t-icon{filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}.task-item__preview:hover .task-item__video-play-overlay{opacity:1;background:#00000040}.task-item__body{display:flex;flex-direction:column;min-width:0}.task-item__prompt-area{min-width:0;display:flex;flex-direction:column}.task-item__prompt{font-size:14px;font-weight:400;line-height:1.5;color:var(--td-text-color-primary, #1d1d1f);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.task-item__subtitle{margin-top:4px;font-size:12px;line-height:1.45;color:var(--td-text-color-placeholder, #999);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.task-item__info-area{display:flex;flex-direction:column;gap:4px;min-width:0}.task-item__content-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 12px;margin-top:4px;width:100%}.task-item__actions{display:flex;align-items:center;gap:8px;flex-shrink:0;margin-left:auto}.task-item__primary-action{font-weight:500!important;height:26px!important;padding:0 10px!important;border-radius:13px!important;font-size:12px!important;background:#f39c12!important;border:none!important;color:#fff!important}.task-item__primary-action:hover{background:#e67e22!important}.task-item__primary-action .t-icon{font-size:14px}.task-item__secondary-actions{display:flex;align-items:center;gap:4px}.task-item__secondary-actions .t-button{color:var(--td-text-color-placeholder, #999)!important;padding:4px!important;height:24px!important;width:24px!important;min-width:0!important}.task-item__secondary-actions .t-button:hover{color:var(--td-text-color-primary, #333)!important;background:var(--td-bg-color-secondarycontainer, #f3f3f3)!important}.task-item__delete-btn:hover{color:var(--td-error-color, #e34d59)!important}.task-item__meta{display:flex;flex-direction:column;gap:4px;margin-top:2px;flex:1;min-width:0}.task-item__tags{display:flex;flex-wrap:wrap;gap:4px}.task-item__tags .t-tag{font-size:10px!important;height:18px!important;border-radius:4px!important;padding:0 4px!important;color:var(--td-text-color-secondary, #666);background:var(--td-bg-color-secondarycontainer, #f3f3f3);border:none}.task-item__tags .task-item__status-tag{font-weight:500}.task-item__details{font-size:11px;color:var(--td-text-color-placeholder, #999);display:flex;flex-wrap:wrap;align-items:center;gap:6px;line-height:1.4}.task-item__link{color:var(--td-brand-color, #0052d9);text-decoration:none}.task-item__link:hover{text-decoration:underline}.task-item__error{background:#fff1f0;border-radius:6px;padding:6px 10px;margin-top:4px}.task-item__error-message{color:#e34d59;font-size:11px;line-height:1.4}.task-item__error-details-link{color:#0052d9;cursor:pointer;text-decoration:underline;margin-left:4px}.task-item__multi-badge{position:absolute;bottom:4px;right:4px;background:#000000a6;color:#fff;padding:1px 5px;border-radius:4px;font-size:10px;font-weight:500;z-index:1;pointer-events:none}.task-item__cache-badge{position:absolute;bottom:4px;left:4px;background:#00a870d9;color:#fff;padding:1px 4px;border-radius:3px;font-size:9px;display:flex;align-items:center;gap:2px;z-index:1}.task-item__cache-badge svg{width:10px;height:10px}.task-item__sync-badge{position:absolute;bottom:4px;left:4px;padding:2px 6px;border-radius:4px;font-size:10px;display:flex;align-items:center;gap:3px;z-index:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease}.task-item__sync-badge svg{width:12px;height:12px}.task-item__sync-badge--synced{background:#00a870e6;color:#fff}.task-item__sync-badge--syncing{background:#0052d9e6;color:#fff}.task-item__sync-badge--warning{background:#ed7d31e6;color:#fff}.task-item__sync-badge--clickable{background:#0052d9d9;color:#fff;cursor:pointer}.task-item__sync-badge--clickable:hover{background:#0052d9;transform:scale(1.05)}@media(max-width:1200px){.task-queue-panel{width:100%;left:0;right:0}.task-queue-panel__filters-container{gap:8px}.task-queue-panel__filters{flex-direction:row;align-items:center;gap:8px}.task-queue-panel__search-row{width:100%}.task-queue-panel__search-input{max-width:none}.task-queue-panel__content{padding:12px 0 24px 16px}}@media(max-width:768px){.side-drawer__title{font-size:16px!important}.side-drawer__header{padding:12px!important}.side-drawer__filter{padding:0 12px 12px!important}.task-queue-panel__filters-container{gap:6px}.task-queue-panel__filters-container .t-tabs .t-tabs__nav-container,.task-queue-panel__filters-container .t-tabs .t-tabs__nav-wrap{padding:0!important}.task-queue-panel__filters-container .t-tabs .t-tabs__nav{gap:0!important}.task-queue-panel__filters-container .t-tabs .t-tabs__nav-item{font-size:11px!important;padding:4px 2px!important;min-width:auto!important;white-space:nowrap;margin:0!important}.task-queue-panel__filters-container .t-tabs .t-tabs__nav-scroll-btn{width:14px!important;min-width:14px!important;padding:0!important}.task-queue-panel__filters-container .t-tabs .t-tabs__bar{height:2px!important}.task-queue-panel__filters{gap:6px}.task-queue-panel__type-filters{padding:2px;border-radius:8px}.task-queue-panel__type-filters .t-button{height:30px!important;min-width:30px!important}.task-queue-panel__search-input{flex:1;min-width:80px!important}.task-queue-panel__search-input .t-input{min-height:28px!important;height:28px!important;font-size:13px!important;border-width:1px!important}.task-queue-panel__search-input .t-input__inner{font-size:13px!important}.task-queue-panel__filter-actions .t-button{min-height:28px!important;height:28px!important;padding:0 10px!important;font-size:12px!important}.task-queue-panel__content{padding:8px 0 16px 12px}.task-queue-panel__list{gap:8px}.task-queue-panel__empty{padding:32px 16px}.task-queue-panel__empty-icon{font-size:36px;margin-bottom:12px}.task-queue-panel__empty-text{font-size:13px}.task-item{padding:12px 16px 12px 0;gap:3px 8px}.task-item__primary-action{min-height:26px!important;height:26px!important;min-width:auto!important;padding:0 10px!important}.task-item--wide{grid-template-columns:80px 1fr}.task-item--wide.task-item--selection-mode{grid-template-columns:auto 80px 1fr}.task-item--compact{grid-template-columns:70px 1fr;grid-template-areas:"preview prompt" "info info"}.task-item--compact.task-item--selection-mode{grid-template-columns:auto 70px 1fr;grid-template-areas:"checkbox preview prompt" "info info info"}.task-item--compact .task-item__preview-wrapper{grid-area:preview;width:70px;height:52px}.task-item--compact .task-item__prompt-area{grid-area:prompt}.task-item--compact .task-item__info-area{grid-area:info;margin-top:4px}.task-item__preview-wrapper{width:80px;height:60px}.task-item__prompt{font-size:13px;-webkit-line-clamp:2}.task-item__checkbox{padding-left:12px}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}.task-notification{position:absolute;top:-8px;right:-8px;min-width:20px;height:20px;background:var(--td-error-color, #e34d59);color:#fff;border-radius:10px;font-size:12px;font-weight:500;display:flex;align-items:center;justify-content:center;padding:0 6px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.task-preview-dialog{z-index:5200!important}.task-preview-dialog .task-preview-container{position:relative;display:flex;align-items:center;justify-content:center;gap:24px;padding:24px;min-height:60vh}.task-preview-dialog .task-preview-content{flex:1;display:flex;align-items:center;justify-content:center;max-width:calc(100% - 120px);position:relative}.task-preview-dialog .task-preview-cache-badge{position:absolute;bottom:12px;left:12px;display:flex;align-items:center;gap:4px;padding:4px 10px;background:#00a870e6;color:#fff;border-radius:6px;font-size:12px;font-weight:500}.task-preview-dialog .task-preview-nav{flex-shrink:0;z-index:1}.task-preview-dialog .task-preview-nav--left{margin-right:auto}.task-preview-dialog .task-preview-nav--right{margin-left:auto}.task-preview-dialog .task-preview-nav:hover{transform:scale(1.1);transition:transform .2s ease}.task-toolbar-button{width:56px;height:56px;background:#fff;border-radius:50%;box-shadow:0 2px 8px #00000026;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.task-toolbar-button:hover{transform:scale(1.05);box-shadow:0 4px 12px #0003;background:#f5f5f5}.task-toolbar-button:active{transform:scale(.95)}.task-toolbar-button--expanded{background:#f0f0f0;box-shadow:0 4px 12px #0003}.task-toolbar-button--icon-only{width:48px;height:48px}.task-toolbar-button__content{display:flex;align-items:center;justify-content:center}.task-toolbar-button__text{color:#757575;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;white-space:nowrap;transition:color .3s ease}.task-toolbar-button__status{position:absolute;width:12px;height:12px;border-radius:50%;bottom:4px;right:4px;border:2px solid #ffffff;animation:pulse 2s infinite}.task-toolbar-button__status--active{background:var(--td-success-color, #00a870)}.task-toolbar-button__status--failed{background:var(--td-error-color, #e34d59)}.task-toolbar-button .t-badge{display:flex;align-items:center;justify-content:center;background-color:transparent!important}.task-toolbar-button .t-badge__count{color:#e91e63!important;border:1px solid #E91E63!important}.virtual-task-list__loading-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--td-text-color-secondary, #757575);font-size:13px}.virtual-task-list__loading-spinner{width:16px;height:16px;border:2px solid var(--td-component-border, #e7e7e7);border-top-color:#f39c12;border-radius:50%;animation:spin .8s linear infinite}.virtual-task-list__pagination-info,.virtual-task-list__no-more{text-align:center;padding:12px;color:var(--td-text-color-placeholder, #bbb);font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}.character-time-selector{display:flex;flex-direction:column;gap:16px}.character-time-selector.is-dragging .character-time-selector__range{transition:none!important}.character-time-selector__preview{position:relative;display:flex;justify-content:center;align-items:center;min-height:180px;max-height:240px;background:#1a1a1a;border-radius:8px;overflow:hidden}.character-time-selector__loading{display:flex;flex-direction:column;align-items:center;gap:8px;color:#999}.character-time-selector__spinner{width:24px;height:24px;border:2px solid #333;border-top-color:var(--td-brand-color, #0052d9);border-radius:50%;animation:character-spin .8s linear infinite}.character-time-selector__frame{max-width:100%;max-height:240px;-o-object-fit:contain;object-fit:contain;transition:opacity .15s ease}.character-time-selector__placeholder{color:#666;font-size:14px}.character-time-selector__time-badge{position:absolute;bottom:8px;right:8px;padding:4px 10px;background:#000000bf;color:#fff;font-size:13px;font-family:SF Mono,Monaco,monospace;border-radius:4px;font-weight:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform .15s ease}.character-time-selector__timeline{position:relative;height:52px;background:#1e1e1e;border-radius:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;box-shadow:inset 0 1px 3px #0000004d}.character-time-selector__timeline-bg{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to bottom,#2a2a2a,#1e1e1e 40%,#1a1a1a)}.character-time-selector__frame-strip{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;z-index:0;overflow:hidden;background:#1a1a1a}.character-time-selector__frame-strip--loading{display:block}.character-time-selector__strip-shimmer{width:100%;height:100%;background:linear-gradient(90deg,#1a1a1a,#2a2a2a,#3a3a3a,#2a2a2a,#1a1a1a 80%);background-size:200% 100%;animation:frame-strip-shimmer 1.5s ease-in-out infinite}@keyframes frame-strip-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.character-time-selector__frame-thumb{flex:1;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.65;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:frame-fade-in .3s ease-out}.character-time-selector__frame-thumb:not(:last-child){border-right:1px solid rgba(0,0,0,.5)}@keyframes frame-fade-in{0%{opacity:0}to{opacity:.65}}.character-time-selector__markers{position:absolute;top:0;left:0;right:0;height:100%;pointer-events:none;z-index:1}.character-time-selector__marker{position:absolute;top:0;height:100%;transform:translate(-50%)}.character-time-selector__marker:before{content:"";position:absolute;top:0;left:50%;width:1px;height:10px;background:#fff3;transform:translate(-50%)}.character-time-selector__marker span{position:absolute;bottom:6px;left:50%;transform:translate(-50%);font-size:10px;color:#fff6;font-family:SF Mono,Monaco,monospace}.character-time-selector__range{position:absolute;top:6px;bottom:6px;z-index:2;background:linear-gradient(to bottom,#3b82f659,#3b82f633);border-top:2px solid #3b82f6;border-bottom:2px solid #3b82f6;transition:left .2s cubic-bezier(.4,0,.2,1),width .2s cubic-bezier(.4,0,.2,1),background .15s ease;will-change:left,width}.character-time-selector__range:hover:not(.dragging){background:linear-gradient(to bottom,#3b82f673,#3b82f64d)}.character-time-selector__range.dragging{background:linear-gradient(to bottom,#3b82f680,#3b82f659);transition:background .1s ease}.character-time-selector__handle{position:absolute;top:-2px;bottom:-2px;width:12px;background:#3b82f6;cursor:ew-resize;z-index:3;transition:background .15s ease,transform .15s cubic-bezier(.4,0,.2,1),box-shadow .15s ease}.character-time-selector__handle:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:18px;background:#ffffffb3;border-radius:1px;box-shadow:-3px 0 #ffffff4d,3px 0 #ffffff4d}.character-time-selector__handle:hover{background:#60a5fa;transform:scaleX(1.15);box-shadow:0 0 8px #3b82f680}.character-time-selector__handle:active{background:#2563eb;transform:scaleX(1.2)}.character-time-selector__handle--left{left:0;border-radius:6px 0 0 6px}.character-time-selector__handle--right{right:0;border-radius:0 6px 6px 0}.dragging .character-time-selector__handle{background:#60a5fa}.character-time-selector__range-content{display:flex;align-items:center;justify-content:center;height:100%;padding:0 18px;cursor:grab;transition:background .15s ease}.character-time-selector__range-content:hover{background:#ffffff0d}.character-time-selector__range-content:active{cursor:grabbing;background:#ffffff14}.character-time-selector__range-label{font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5);white-space:nowrap;pointer-events:none;letter-spacing:.5px}.character-time-selector__info{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--td-text-color-secondary, #666);padding:0 4px;font-family:SF Mono,Monaco,monospace}.character-time-selector__actions{display:flex;justify-content:flex-end;gap:12px;padding-top:12px;border-top:1px solid var(--td-component-border, #e7e7e7)}@keyframes character-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{r as t,hw as Qe,at as Ne,y as s,kN as Je,eO as M,gK as y,kO as es,kP as ss,kQ as as,aI as ts,kR as rs,kS as is,kT as ns,kU as us,kK as cs,kV as ls,kL as os,kW as ds,jN as ms,kX as fs,kY as be,ks as We,ku as De,kZ as ps,kz as hs,kA as Ns,bV as le,k_ as Z,k$ as xs,l0 as ks,fM as re,l1 as gs,iv as bs,iw as vs,l2 as ys,l3 as Fe,al as ye,l4 as js,l5 as qs,cr as Ts,l6 as je,l7 as se,l8 as qe,fY as Te}from"./tool-windows-DWUG3k_L.js";import{t as ws,a as Es}from"./main-sSl0uAQQ.js";/* empty css */const Ds=({className:e,style:a})=>s.jsxDEV("div",{className:e,style:{...a,background:"linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%)",backgroundSize:"200% 100%",animation:"shimmer 1.5s infinite",borderRadius:"8px",minHeight:"100px",width:"100%"},children:s.jsxDEV("style",{children:`
|
|
2
|
+
@keyframes shimmer {
|
|
3
|
+
0% { background-position: 200% 0; }
|
|
4
|
+
100% { background-position: -200% 0; }
|
|
5
|
+
}
|
|
6
|
+
`},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/retry-image.tsx",lineNumber:60,columnNumber:5},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/retry-image.tsx",lineNumber:48,columnNumber:3},void 0);function _s(e){if(e.startsWith("data:")||e.startsWith("blob:"))return e;try{const a=new URL(e,window.location.origin);return a.searchParams.has("bypass_sw")||a.searchParams.set("bypass_sw","1"),a.toString()}catch{const a=e.includes("?")?"&":"?";return`${e}${a}bypass_sw=1`}}function Vs(e){return e.startsWith("data:")||e.startsWith("blob:")||e.includes("/__aitu_cache__/")||e.includes("/asset-library/")||e.includes("thumbnail=")}function we(e){return e.startsWith("/__aitu_cache__/")||e.startsWith("/asset-library/")}function Us(){return typeof navigator<"u"&&"serviceWorker"in navigator&&!!navigator.serviceWorker.controller}const Ee=({src:e,alt:a,maxRetries:N=5,initialRetryDelay:k=1e3,onLoadSuccess:u,onLoadFailure:o,fallback:U,showSkeleton:q=!0,bypassSWAfterRetries:j=2,eager:R,...m})=>{const f=t.useMemo(()=>Qe(e),[e]),l=R??Vs(f),[r,i]=t.useState(f),[g,b]=t.useState(0),[p,h]=t.useState(!0),[v,O]=t.useState(!1),[Y,I]=t.useState(!1),T=t.useRef(null),H=t.useRef(null),D=t.useCallback(async C=>{if(!we(C))return null;try{const P=await Ne.getCachedBlob(C);if(P&&P.size>0)return URL.createObjectURL(P)}catch(P){console.warn("[RetryImage] Failed to get blob for virtual URL:",C,P)}return null},[]),z=t.useCallback(C=>k*Math.pow(2,C),[k]),G=t.useCallback(()=>{h(!1),O(!1),u==null||u()},[u]),_=t.useCallback(async()=>{if(f.startsWith("data:")){h(!1),O(!0),o==null||o(new Error("Failed to load inline data image"));return}if(g<N){const C=z(g),P=g+1,ae=P>=j&&!Y;if(ae&&I(!0),ae&&we(f)&&!T.current){const $=await D(f);if($){T.current=$,b(P),i($);return}}H.current=setTimeout(()=>{if(b(P),T.current){i(`${T.current}#retry=${Date.now()}`);return}let $=f;(ae||Y)&&($=_s($));const ne=$.includes("?")?"&":"?";$=`${$}${ne}_retry=${Date.now()}`,i($)},C)}else{h(!1),O(!0);const C=new Error(`Failed to load image after ${N} retries`);o==null||o(C)}},[g,N,f,z,o,Y,j,D]);return t.useEffect(()=>(T.current&&(URL.revokeObjectURL(T.current),T.current=null),b(0),h(!0),O(!1),I(!1),we(f)&&!Us()?D(f).then(C=>{C?(T.current=C,i(C)):i(f)}):i(f),()=>{H.current&&clearTimeout(H.current)}),[f,D]),t.useEffect(()=>()=>{H.current&&clearTimeout(H.current),T.current&&(URL.revokeObjectURL(T.current),T.current=null)},[]),v&&U?s.jsxDEV(s.Fragment,{children:U},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/retry-image.tsx",lineNumber:306,columnNumber:12},void 0):s.jsxDEV("div",{style:{position:"relative",width:"100%",height:"100%"},children:[p&&q&&s.jsxDEV(Ds,{className:m.className,style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",...m.style}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/retry-image.tsx",lineNumber:314,columnNumber:9},void 0),s.jsxDEV("img",{...m,src:r,alt:a,loading:l?"eager":"lazy",decoding:l?"sync":"async",referrerPolicy:"no-referrer",onLoad:G,onError:_,style:{...m.style,opacity:p?0:1,transition:"opacity 0.3s ease-out",width:"100%",height:"100%"}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/retry-image.tsx",lineNumber:327,columnNumber:7},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/retry-image.tsx",lineNumber:311,columnNumber:5},void 0)},Is=({taskType:e,taskStatus:a,realProgress:N,startedAt:k,mediaUrl:u,isImageLoading:o=!1,onImageLoaded:U,onImageError:q,estimatedDuration:j=as})=>{const[R,m]=t.useState(1),f=t.useRef(null),{displayProgress:l}=Je({taskType:e,taskStatus:a,startedAt:k,realProgress:N,mediaUrl:u,isImageLoading:o,estimatedDuration:j}),r=90,i=80,g=.5,b=1.2;if(t.useEffect(()=>{const O=f.current;if(!O)return;const Y=()=>{const{width:T,height:H}=O.getBoundingClientRect(),D=H-10,z=T-20,G=D/r,_=z/i,C=Math.min(G,_,b);m(Math.max(C,g))};Y();const I=new ResizeObserver(Y);return I.observe(O),()=>I.disconnect()},[]),a!==M.PROCESSING)return null;const p=l??0,h=e===y.IMAGE?es(p,!!u,o):e===y.AUDIO?p<10?"提交任务...":p<45?"生成旋律...":p<85?"渲染音轨...":"整理结果...":p<10?"准备中...":p<50?"生成中...":p<90?"渲染中...":"即将完成...",v=["task-progress-overlay",e===y.VIDEO||e===y.AUDIO?"task-progress-overlay--video":"",u&&o?"task-progress-overlay--loading":""].filter(Boolean).join(" ");return s.jsxDEV("div",{ref:f,className:v,children:[s.jsxDEV("div",{className:"task-progress-overlay__backdrop"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:142,columnNumber:7},void 0),s.jsxDEV("div",{className:"task-progress-overlay__pulse"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:143,columnNumber:7},void 0),s.jsxDEV("div",{className:"task-progress-overlay__dots"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:144,columnNumber:7},void 0),s.jsxDEV("div",{className:"task-progress-overlay__content",style:{transform:`scale(${R})`},children:s.jsxDEV(ss,{progress:p,progressMode:"determinate",statusText:h,tone:u&&o?"loading":"default",className:"task-progress-overlay__progress"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:151,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:147,columnNumber:7},void 0),s.jsxDEV("div",{className:"task-progress-overlay__bar",children:s.jsxDEV("div",{className:"task-progress-overlay__bar-fill",style:{width:`${p}%`}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:162,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:161,columnNumber:7},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskProgressOverlay.tsx",lineNumber:140,columnNumber:5},void 0)},Cs=500;function Ss(e){if(typeof e!="number"||!Number.isFinite(e)||e<=0)return null;const a=Math.round(e),N=Math.floor(a/60),k=a%60;return`${N}:${String(k).padStart(2,"0")}`}function pe(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function Rs(e){if(!e)return!1;const a=e.toLowerCase();return a==="kling_video"||a.startsWith("kling-v")}function Ls(e){if(e==="text2video")return"文生视频";if(e==="image2video")return"图生视频"}function As(e){return e==="std"?"std 高性能":e==="pro"?"pro 高表现":e}function _e(e){const a=e.params.videoAnalyzerAction;return a==="analyze"||a==="rewrite"?a:null}function Ms(e){const a=_e(e);if(a==="analyze")return pe(e.params.videoAnalyzerSourceLabel)||null;if(a==="rewrite"){const N=pe(e.params.prompt);return N?N.replace(/^改编脚本:\s*/,""):null}return null}function Os(e){const a=_e(e);return a==="analyze"?"视频分析":a==="rewrite"?"脚本改编":null}function zs(e){switch(e){case M.PENDING:case M.PROCESSING:return"primary";case M.COMPLETED:return"success";case M.FAILED:return"danger";case M.CANCELLED:return"default";default:return"default"}}function Ps(e){switch(e){case M.PENDING:case M.PROCESSING:return"处理中";case M.COMPLETED:return"已完成";case M.FAILED:return"失败";case M.CANCELLED:return"已取消";default:return"未知"}}const Be=ts.memo(({task:e,selectionMode:a=!1,isSelected:N=!1,isCompact:k,onSelectionChange:u,onRetry:o,onDelete:U,onDownload:q,onInsert:j,onCopy:R,onPreviewOpen:m,onEdit:f,onExtractCharacter:l})=>{var K,L,fe,de,te,xe,he,Ve,Ue,Ie,Ce,Se,Re,Le,Ae,Me,Oe,ze,Pe,$e,He,Ge;const[r,i]=t.useState(null),[g,b]=t.useState(!1),p=t.useRef(null),h=e.status===M.COMPLETED,v=e.status===M.FAILED,O=e.status===M.CANCELLED,Y=v||O,I=k!==void 0?k:g;t.useEffect(()=>{if(k!==void 0)return;const x=p.current;if(!x)return;const ie=new ResizeObserver(ke=>{for(const ge of ke){const Ze=ge.contentRect.width;b(Ze<Cs)}});return ie.observe(x),()=>ie.disconnect()},[k]);const T=((K=e.params.storyboard)==null?void 0:K.enabled)===!0,H=h&&e.type===y.VIDEO&&rs(e.remoteId)&&is(e.params.model)&&!T,D=e.type===y.CHARACTER,z=e.type===y.AUDIO,G=e.type===y.CHAT,_=z&&ns(e.result),C=e.type===y.IMAGE||e.type===y.VIDEO||e.type===y.AUDIO&&!_,P=us(e.result),ae=cs(e.result,e.params.title||e.params.prompt),$=ls(P),ne=os(e.result),ue=_e(e),J=Ms(e),me=Os(e),Q=D?h&&((L=e.result)!=null&&L.characterUsername)?`@${e.result.characterUsername}`:"角色创建中...":G?((fe=e.result)==null?void 0:fe.title)||e.params.prompt||((de=e.result)==null?void 0:de.chatResponse):_?ae||$||e.params.prompt:((te=e.result)==null?void 0:te.title)||e.params.title||e.params.prompt,W=e.params.params&&typeof e.params.params=="object"?e.params.params:null,c=e.type===y.AUDIO&&!_?Ss((xe=e.result)==null?void 0:xe.duration):null,V=e.type===y.VIDEO&&Rs(e.params.model),A=pe(W==null?void 0:W.model_name)||((he=e.params.model)!=null&&he.toLowerCase().startsWith("kling-v")?e.params.model:void 0),S=As(pe(W==null?void 0:W.mode)),F=pe(W==null?void 0:W.klingAction2),oe=Ls(F);pe(W==null?void 0:W.cfg_scale);const ce=_?void 0:((Ue=(Ve=e.result)==null?void 0:Ve.urls)==null?void 0:Ue[0])||((Ie=e.result)==null?void 0:Ie.url),n=e.type===y.IMAGE&&ce?Qe(ce):ce;ws(D||z?void 0:n);const d=_?0:((Se=(Ce=e.result)==null?void 0:Ce.urls)==null?void 0:Se.length)||((Re=e.result)!=null&&Re.url?1:0),w=t.useMemo(()=>JSON.stringify({taskId:e.id,taskType:e.type,taskStatus:e.status,hasMultipleResults:d>1}),[d,e.id,e.status,e.type]),E=z?_||(Le=e.result)==null?void 0:Le.previewImageUrl:n,ee=ds(E,e.type===y.IMAGE?"image":void 0,"small");t.useEffect(()=>{if(h&&E&&e.type===y.IMAGE){const x=new Image;x.onload=()=>{i({width:x.naturalWidth,height:x.naturalHeight})},x.onerror=()=>{i(null)},x.src=E}},[h,E,e.type]);const B=x=>{const ie=x.target;ie.closest("button")||ie.closest(".t-checkbox")||ie.closest("a")||ie.closest(".task-item__preview")||(a?u==null||u(e.id,!N):h&&n&&C&&(m==null||m()))},X=x=>{x.stopPropagation(),h&&n&&C&&(m==null||m())};return s.jsxDEV("div",{ref:p,className:`task-item ${a?"task-item--selection-mode":""} ${N?"task-item--selected":""} ${I?"task-item--compact":"task-item--wide"} task-item--${e.status.toLowerCase()}`,onClick:B,children:[a&&s.jsxDEV("div",{className:"task-item__checkbox",children:s.jsxDEV(ms,{checked:N,onChange:x=>u==null?void 0:u(e.id,x)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:509,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:508,columnNumber:11},void 0),(h||v||e.status===M.PROCESSING)&&(E||D||G||e.type===y.VIDEO||e.type===y.IMAGE||e.type===y.AUDIO)&&s.jsxDEV("div",{className:"task-item__preview-wrapper",children:s.jsxDEV("div",{className:"task-item__preview","data-track":"task_click_preview",onClick:X,children:v?s.jsxDEV("div",{className:"task-item__preview-failed",children:[s.jsxDEV(fs,{size:"24px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:535,columnNumber:21},void 0),s.jsxDEV("span",{children:"生成失败"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:536,columnNumber:21},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:534,columnNumber:19},void 0):e.status===M.PROCESSING?G?s.jsxDEV("div",{className:"task-item__preview-placeholder",children:s.jsxDEV("span",{children:ue==="analyze"?`视频分析中 ${Math.round(e.progress??0)}%`:ue==="rewrite"?`脚本改编中 ${Math.round(e.progress??0)}%`:"生成文本中"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:541,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:540,columnNumber:21},void 0):s.jsxDEV(Is,{taskType:e.type,taskStatus:e.status,realProgress:e.progress,startedAt:e.startedAt,mediaUrl:E},e.startedAt,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:551,columnNumber:21},void 0):s.jsxDEV(s.Fragment,{children:e.type===y.IMAGE&&n?s.jsxDEV(s.Fragment,{children:[s.jsxDEV(Ee,{src:ee||n,alt:"Generated",maxRetries:5,fallback:s.jsxDEV("div",{className:"task-item__preview-placeholder",children:s.jsxDEV("span",{children:"图片加载失败"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:571,columnNumber:31},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:570,columnNumber:29},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:565,columnNumber:25},void 0),d>1&&s.jsxDEV("span",{className:"task-item__multi-badge",children:[d,"张"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:576,columnNumber:27},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:564,columnNumber:23},void 0):z&&E?s.jsxDEV(s.Fragment,{children:[s.jsxDEV(Ee,{src:E,alt:Q||"音频封面",maxRetries:3,fallback:s.jsxDEV("div",{className:"task-item__preview-placeholder",children:[s.jsxDEV(be,{size:"24px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:589,columnNumber:31},void 0),s.jsxDEV("span",{children:"音频封面"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:590,columnNumber:31},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:588,columnNumber:29},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:583,columnNumber:25},void 0),s.jsxDEV("div",{className:"task-item__video-play-overlay",children:s.jsxDEV(be,{size:"28px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:595,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:594,columnNumber:25},void 0),d>1&&s.jsxDEV("span",{className:"task-item__multi-badge",children:[d,"首"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:598,columnNumber:27},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:582,columnNumber:23},void 0):_?s.jsxDEV("div",{className:"task-item__preview-placeholder",children:[s.jsxDEV(We,{size:"24px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:605,columnNumber:25},void 0),s.jsxDEV("span",{children:"歌词"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:606,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:604,columnNumber:23},void 0):G?s.jsxDEV("div",{className:"task-item__preview-placeholder",children:s.jsxDEV("span",{children:"文本"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:610,columnNumber:25},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:609,columnNumber:23},void 0):D&&((Ae=e.result)!=null&&Ae.characterProfileUrl)?s.jsxDEV("div",{className:"task-item__character-preview",children:s.jsxDEV(Ee,{src:e.result.characterProfileUrl,alt:`@${e.result.characterUsername}`,maxRetries:5,fallback:s.jsxDEV("div",{className:"task-item__character-fallback",children:s.jsxDEV(De,{size:"32px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:620,columnNumber:31},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:619,columnNumber:29},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:614,columnNumber:25},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:613,columnNumber:23},void 0):n?s.jsxDEV(s.Fragment,{children:[s.jsxDEV(ps,{src:n,poster:(Me=e.result)==null?void 0:Me.previewImageUrl,alt:Q||"视频预览",thumbnailSize:"small",videoProps:{muted:!0,playsInline:!0,preload:"metadata"}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:627,columnNumber:25},void 0),s.jsxDEV("div",{className:"task-item__video-play-overlay",children:s.jsxDEV(be,{size:"32px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:640,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:639,columnNumber:25},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:626,columnNumber:23},void 0):s.jsxDEV("div",{className:"task-item__preview-placeholder",children:e.type===y.IMAGE?s.jsxDEV(hs,{size:"24px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:646,columnNumber:27},void 0):e.type===y.VIDEO?s.jsxDEV(Ns,{size:"24px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:648,columnNumber:27},void 0):s.jsxDEV(s.Fragment,{children:[s.jsxDEV(be,{size:"24px"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:651,columnNumber:29},void 0),s.jsxDEV("span",{children:"音频"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:652,columnNumber:29},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:650,columnNumber:27},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:644,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:561,columnNumber:19},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:527,columnNumber:15},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:526,columnNumber:13},void 0),s.jsxDEV("div",{className:"task-item__body",children:[s.jsxDEV("div",{className:"task-item__prompt-area",children:[s.jsxDEV(le,{content:e.params.prompt,showArrow:!1,children:s.jsxDEV("div",{className:"task-item__prompt",children:Q},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:668,columnNumber:15},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:667,columnNumber:13},void 0),G&&J&&s.jsxDEV(le,{content:J,showArrow:!1,children:s.jsxDEV("div",{className:"task-item__subtitle",children:J},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:672,columnNumber:17},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:671,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:666,columnNumber:11},void 0),s.jsxDEV("div",{className:"task-item__info-area",children:[s.jsxDEV("div",{className:"task-item__content-row",children:[s.jsxDEV("div",{className:"task-item__meta",children:[s.jsxDEV("div",{className:"task-item__tags",children:[s.jsxDEV(Z,{theme:zs(e.status),variant:"light",className:"task-item__status-tag",children:Ps(e.status)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:683,columnNumber:19},void 0),e.params.model&&s.jsxDEV(Z,{variant:"outline",className:"task-item__model-tag",children:e.params.model},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:693,columnNumber:21},void 0),G&&me&&s.jsxDEV(Z,{variant:"outline",children:me},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:698,columnNumber:21},void 0),V&&A&&s.jsxDEV(Z,{variant:"outline",children:A},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:701,columnNumber:21},void 0),V&&S&&s.jsxDEV(Z,{variant:"outline",children:S},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:704,columnNumber:21},void 0),V&&oe&&s.jsxDEV(Z,{variant:"outline",children:oe},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:707,columnNumber:21},void 0),e.type===y.VIDEO&&e.params.seconds&&s.jsxDEV(Z,{variant:"outline",children:[e.params.seconds,"s"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:712,columnNumber:21},void 0),e.type===y.VIDEO&&e.params.size&&s.jsxDEV(Z,{variant:"outline",children:e.params.size},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:715,columnNumber:21},void 0),c&&s.jsxDEV(Z,{variant:"outline",children:c},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:718,columnNumber:21},void 0),e.type===y.AUDIO&&e.params.mv&&!_&&s.jsxDEV(Z,{variant:"outline",children:e.params.mv},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:723,columnNumber:23},void 0),e.type===y.AUDIO&&e.params.tags&&!_&&s.jsxDEV(Z,{variant:"outline",children:((Oe=String(e.params.tags).split(",")[0])==null?void 0:Oe.trim())||"音频"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:728,columnNumber:23},void 0),_&&s.jsxDEV(Z,{variant:"outline",children:"歌词"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:733,columnNumber:36},void 0),_&&ne[0]&&s.jsxDEV(Z,{variant:"outline",children:ne[0]},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:735,columnNumber:21},void 0),e.params.batchId&&typeof e.params.batchIndex=="number"&&typeof e.params.batchTotal=="number"&&s.jsxDEV(Z,{variant:"outline",children:["批量 ",e.params.batchIndex+1,"/",e.params.batchTotal]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:740,columnNumber:23},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:681,columnNumber:17},void 0),s.jsxDEV("div",{className:"task-item__details",children:[s.jsxDEV("span",{className:"task-item__time",children:xs(e.createdAt)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:748,columnNumber:19},void 0),e.startedAt&&s.jsxDEV("span",{className:"task-item__duration",children:["·"," ",ks((e.completedAt||Date.now())-e.startedAt)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:752,columnNumber:21},void 0),(()=>{var ke,ge;const x=(r==null?void 0:r.width)||((ke=e.result)==null?void 0:ke.width)||e.params.width,ie=(r==null?void 0:r.height)||((ge=e.result)==null?void 0:ge.height)||e.params.height;return x&&ie?s.jsxDEV("span",{className:"task-item__size",children:[" ","· ",x,"x",ie]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:770,columnNumber:25},void 0):null})(),c&&s.jsxDEV("span",{className:"task-item__size",children:[" · ",c]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:779,columnNumber:21},void 0),h&&((ze=e.result)==null?void 0:ze.url)&&!_&&s.jsxDEV("a",{href:e.result.url,target:"_blank",rel:"noopener noreferrer",className:"task-item__link","data-track":"task_click_open_link",onClick:x=>x.stopPropagation(),children:"· 打开链接"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:785,columnNumber:21},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:747,columnNumber:17},void 0),(e.type===y.VIDEO||e.type===y.AUDIO||e.type===y.CHAT&&typeof e.progress=="number")&&e.status===M.PROCESSING&&s.jsxDEV("div",{className:"task-item__progress-container",children:s.jsxDEV("div",{className:"task-item__progress-bar",children:s.jsxDEV("div",{className:`task-item__progress-fill task-item__progress-fill--${e.status}`,style:{width:`${e.progress??0}%`}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:806,columnNumber:25},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:805,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:804,columnNumber:21},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:680,columnNumber:15},void 0),s.jsxDEV("div",{className:"task-item__actions",children:[s.jsxDEV("div",{className:"task-item__secondary-actions",children:[h&&((Pe=e.result)==null?void 0:Pe.url)&&!D&&s.jsxDEV(le,{content:"下载",children:s.jsxDEV(re,{size:"small",variant:"text",icon:s.jsxDEV(gs,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:823,columnNumber:31},void 0),"data-track":"task_click_download","data-track-params":w,onClick:x=>{x.stopPropagation(),q==null||q(e.id)}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:820,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:819,columnNumber:21},void 0),h&&_&&P&&s.jsxDEV(le,{content:"复制歌词",children:s.jsxDEV(re,{size:"small",variant:"text",icon:s.jsxDEV(We,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:839,columnNumber:31},void 0),onClick:x=>{x.stopPropagation(),R==null||R(e.id)}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:836,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:835,columnNumber:21},void 0),!D&&!z&&!G&&s.jsxDEV(le,{content:"编辑",children:s.jsxDEV(re,{size:"small",variant:"text",icon:s.jsxDEV(bs,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:853,columnNumber:31},void 0),onClick:x=>{x.stopPropagation(),f==null||f(e.id)}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:850,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:849,columnNumber:21},void 0),H&&s.jsxDEV(le,{content:"角色",children:s.jsxDEV(re,{size:"small",variant:"text",icon:s.jsxDEV(De,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:867,columnNumber:31},void 0),onClick:x=>{x.stopPropagation(),l==null||l(e.id)}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:864,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:863,columnNumber:21},void 0),s.jsxDEV(le,{content:"删除",children:s.jsxDEV(re,{size:"small",variant:"text",className:"task-item__delete-btn",icon:s.jsxDEV(vs,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:881,columnNumber:29},void 0),onClick:x=>{x.stopPropagation(),U==null||U(e.id)}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:877,columnNumber:21},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:876,columnNumber:19},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:817,columnNumber:17},void 0),h&&(((($e=e.result)==null?void 0:$e.url)||((He=e.result)==null?void 0:He.chatResponse))&&!D||_)&&s.jsxDEV(re,{size:"small",theme:"primary",className:"task-item__primary-action","data-track":"task_click_insert","data-track-params":w,onClick:x=>{x.stopPropagation(),j==null||j(e.id)},children:"插入"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:895,columnNumber:21},void 0),Y&&s.jsxDEV(re,{size:"small",theme:"primary",className:"task-item__primary-action","data-track":"task_click_retry","data-track-params":w,onClick:x=>{x.stopPropagation(),o==null||o(e.id)},children:"重试"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:911,columnNumber:19},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:815,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:679,columnNumber:13},void 0),v&&e.error&&s.jsxDEV("div",{className:"task-item__error",children:s.jsxDEV("div",{className:"task-item__error-message",children:[e.error.message,((Ge=e.error.details)==null?void 0:Ge.originalError)&&s.jsxDEV(le,{content:s.jsxDEV("div",{className:"task-item__error-details-tooltip",children:[s.jsxDEV("div",{className:"task-item__error-details-title",children:"详细错误:"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:937,columnNumber:27},void 0),s.jsxDEV("div",{className:"task-item__error-details-content",children:e.error.details.originalError},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:940,columnNumber:27},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:936,columnNumber:25},void 0),theme:"light",placement:"bottom",children:s.jsxDEV("span",{className:"task-item__error-details-link",onClick:x=>x.stopPropagation(),children:"[详情]"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:948,columnNumber:23},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:934,columnNumber:21},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:931,columnNumber:17},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:930,columnNumber:15},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:678,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:664,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/TaskItem.tsx",lineNumber:497,columnNumber:7},void 0)},(e,a)=>{var N,k;return e.task.id===a.task.id&&e.task.status===a.task.status&&e.task.progress===a.task.progress&&((N=e.task.error)==null?void 0:N.message)===((k=a.task.error)==null?void 0:k.message)&&e.task.result===a.task.result&&e.isSelected===a.isSelected&&e.selectionMode===a.selectionMode&&e.isCompact===a.isCompact}),$s=new Set,Hs=140,Xe=0,Gs=3,Ke=375,Ws=20,Qs=({tasks:e,selectionMode:a=!1,selectedTaskIds:N,onSelectionChange:k,onRetry:u,onDelete:o,onDownload:U,onInsert:q,onCopy:j,onEdit:R,onPreviewOpen:m,onExtractCharacter:f,className:l="",emptyContent:r,isCompact:i,hasMore:g=!1,isLoadingMore:b=!1,onLoadMore:p,totalCount:h,loadedCount:v,allLoadedText:O,allLoadedHint:Y})=>{const I=N??$s,T=t.useRef(null),H=t.useRef(null),D=t.useRef(null),z=t.useRef(0),[G,_]=t.useState(()=>typeof window<"u"&&window.innerWidth<Ke),[C,P]=t.useState(!1),ae=i!==void 0?i:G,$=c=>{let V=c;for(;V;){const S=getComputedStyle(V).overflowY;if((S==="auto"||S==="scroll")&&V.scrollHeight>V.clientHeight)return V;V=V.parentElement}return null};t.useEffect(()=>{if(!g||!p)return;const c=T.current;if(!c)return;const V=setTimeout(()=>{const S=c.scrollHeight>c.clientHeight?c:$(c);if(D.current=S,!S)return;const F=()=>{const{scrollTop:oe,scrollHeight:ce,clientHeight:n}=S,d=ce-oe-n,w=Date.now();w-z.current<500||d<300&&g&&!b&&(z.current=w,p())};S.addEventListener("scroll",F,{passive:!0}),F(),c.__loadMoreCleanup=()=>{S.removeEventListener("scroll",F)}},150);return()=>{var A;clearTimeout(V),(A=c.__loadMoreCleanup)==null||A.call(c)}},[g,b,p,e.length]),t.useEffect(()=>{const c=T.current;if(!c)return;const V=setTimeout(()=>{const S=c.scrollHeight>c.clientHeight?c:$(c);if(D.current=S,!S)return;const F=()=>{P(S.scrollTop>S.clientHeight)};S.addEventListener("scroll",F),F(),c.__scrollCleanup=()=>{S.removeEventListener("scroll",F)}},100);return()=>{var A;clearTimeout(V),(A=c.__scrollCleanup)==null||A.call(c)}},[e.length]);const ne=()=>{const c=D.current||T.current;c&&(c.scrollTop=0)};t.useEffect(()=>{if(i!==void 0)return;const c=T.current;if(!c)return;const V=c,A=F=>{const oe=F??V.getBoundingClientRect().width;_(oe<Ke)},S=new ResizeObserver(F=>{A(F[0].contentRect.width)});return S.observe(V),A(),()=>{S.disconnect()}},[i,T.current]);const ue=e.length>Ws,J=ys({count:ue?e.length:0,getScrollElement:()=>T.current,estimateSize:()=>Hs+Xe,overscan:Gs,enabled:ue,measureElement:c=>c.offsetHeight});if(e.length===0)return s.jsxDEV("div",{className:`virtual-task-list virtual-task-list--empty ${l}`,children:r},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:280,columnNumber:7},void 0);const me=e.length||v||0,Q=()=>s.jsxDEV(s.Fragment,{children:[b&&s.jsxDEV("div",{className:"virtual-task-list__loading-more",children:[s.jsxDEV("span",{className:"virtual-task-list__loading-spinner"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:297,columnNumber:11},void 0),s.jsxDEV("span",{children:"加载中..."},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:298,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:296,columnNumber:9},void 0),g&&!b&&h!==void 0&&h>0&&s.jsxDEV("div",{className:"virtual-task-list__pagination-info",children:["已加载 ",me," / ",h]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:306,columnNumber:11},void 0),!g&&e.length>0&&h!==void 0&&h>50&&s.jsxDEV("div",{className:"virtual-task-list__no-more",children:Y?s.jsxDEV(le,{content:Y,children:s.jsxDEV("span",{children:O||`已加载全部 ${h} 个任务`},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:318,columnNumber:17},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:317,columnNumber:15},void 0):O||`已加载全部 ${h} 个任务`},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:315,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:293,columnNumber:5},void 0);if(!ue)return s.jsxDEV("div",{ref:H,className:`virtual-task-list-container ${l}`,style:{height:"100%",position:"relative",display:"flex",flexDirection:"column"},children:[s.jsxDEV("div",{ref:T,className:"virtual-task-list-scrollarea",style:{flex:1,overflow:"auto"},children:[e.map(c=>s.jsxDEV(Be,{task:c,selectionMode:a,isSelected:I.has(c.id),isCompact:ae,onSelectionChange:k,onRetry:u,onDelete:o,onDownload:U,onInsert:q,onEdit:R,onPreviewOpen:()=>m==null?void 0:m(c.id),onExtractCharacter:f},c.id,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:349,columnNumber:13},void 0)),s.jsxDEV(Q,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:365,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:343,columnNumber:9},void 0),C&&s.jsxDEV(re,{shape:"circle",variant:"base",theme:"default",icon:s.jsxDEV(Fe,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:373,columnNumber:19},void 0),onClick:ne,className:"virtual-task-list__back-to-top"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:369,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:333,columnNumber:7},void 0);const W=J.getVirtualItems();return s.jsxDEV("div",{ref:H,className:`virtual-task-list-container ${l}`,style:{height:"100%",width:"100%",position:"relative",display:"flex",flexDirection:"column"},children:[s.jsxDEV("div",{ref:T,className:"virtual-task-list-scrollarea",style:{flex:1,width:"100%",overflow:"auto"},children:[s.jsxDEV("div",{style:{height:`${J.getTotalSize()}px`,width:"100%",position:"relative"},children:W.map(c=>{const V=e[c.index];return V?s.jsxDEV("div",{"data-index":c.index,ref:A=>{A&&J.measureElement(A)},style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${c.start}px)`,paddingBottom:`${Xe}px`},children:s.jsxDEV(Be,{task:V,selectionMode:a,isSelected:I.has(V.id),isCompact:ae,onSelectionChange:k,onRetry:u,onDelete:o,onDownload:U,onInsert:q,onCopy:j,onEdit:R,onPreviewOpen:()=>m==null?void 0:m(V.id),onExtractCharacter:f},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:435,columnNumber:17},void 0)},V.id,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:418,columnNumber:15},void 0):null})},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:406,columnNumber:9},void 0),s.jsxDEV(Q,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:454,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:397,columnNumber:7},void 0),C&&s.jsxDEV(re,{shape:"circle",variant:"base",theme:"default",icon:s.jsxDEV(Fe,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:462,columnNumber:17},void 0),onClick:ne,className:"virtual-task-list__back-to-top"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:458,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/task-queue/VirtualTaskList.tsx",lineNumber:386,columnNumber:5},void 0)};function Fs(e,a){const[N,k]=t.useState(a||null),[u,o]=t.useState(!1),[U,q]=t.useState(!0),[j,R]=t.useState(null),m=t.useRef("none"),f=t.useCallback(async()=>{if(q(!0),!a){k(null),o(!1),q(!1);return}const l=await Ne.getCachedUrl(a);l?(j&&j!==l&&URL.revokeObjectURL(j),R(l),k(l),o(!0)):a?(k(a),o(!1)):(k(null),o(!1)),q(!1)},[a,j]);return t.useEffect(()=>{f(),a&&(m.current=Ne.getCacheStatus(a))},[e,a]),t.useEffect(()=>Ne.subscribe(()=>{if(!a)return;const r=Ne.getCacheStatus(a),i=m.current;r!==i&&(m.current=r,(r==="cached"||r==="none")&&f())}),[a,f]),t.useEffect(()=>()=>{j&&URL.revokeObjectURL(j)},[j]),{url:N,isFromCache:u,isLoading:U}}const Ye=1,ve=3,Bs=({videoUrl:e,videoDuration:a,onConfirm:N,onCancel:k,disabled:u=!1})=>{const o=t.useRef(null),U=t.useRef(null),q=t.useRef(null),j=t.useRef(null),R=t.useRef(0),[m,f]=t.useState(!0),[l,r]=t.useState(a),[i,g]=t.useState(0),[b,p]=t.useState(Math.min(ve,a)),[h,v]=t.useState(0),[O,Y]=t.useState(""),[I,T]=t.useState(!1),[H,D]=t.useState(null),[z,G]=t.useState([]),[_,C]=t.useState(!1),P=b-i,ae=l>0?P/l*100:100,$=l>0?i/l*100:0;t.useEffect(()=>(e&&(f(!0),Y(""),G([]),T(!1),D(null)),()=>{j.current!==null&&cancelAnimationFrame(j.current)}),[e]);const ne=()=>{const n=o.current;if(n){const d=n.duration;r(d),T(!0),p(Math.min(ve,d))}},ue=t.useCallback(async()=>{const n=o.current;if(!(!n||!I||l<=0||_)){C(!0);try{const w=Math.max(4,Math.ceil(l*2)),E=l/w,ee=[],B=document.createElement("canvas"),X=B.getContext("2d");if(!X)return;const K=50,L=n.videoWidth/n.videoHeight||16/9,fe=Math.round(K*L);B.width=fe,B.height=K;for(let de=0;de<w;de++){const te=Math.min((de+.5)*E,l-.01);await new Promise(xe=>{const he=()=>{n.removeEventListener("seeked",he),xe()};n.addEventListener("seeked",he),n.currentTime=te}),X.drawImage(n,0,0,fe,K),ee.push(B.toDataURL("image/jpeg",.5))}G(ee),n.currentTime=i}catch(d){console.warn("Failed to generate frame strip:",d)}finally{C(!1)}}},[I,l,_,i]);t.useEffect(()=>{if(I&&l>0&&z.length===0&&!_){const n=setTimeout(()=>{ue()},100);return()=>clearTimeout(n)}},[I,l,z.length,_,ue]);const J=t.useCallback(()=>{const n=o.current,d=U.current;if(!n||!d)return;const w=d.getContext("2d");if(w)try{d.width=n.videoWidth,d.height=n.videoHeight,w.drawImage(n,0,0,d.width,d.height);const E=d.toDataURL("image/jpeg",.8);Y(E),f(!1)}catch(E){console.warn("Failed to generate frame image:",E)}},[]),me=t.useCallback(()=>{const n=o.current;n&&m&&(n.currentTime===0||Math.abs(n.currentTime-i)<.1)&&J()},[m,i,J]),Q=t.useCallback(n=>{const d=o.current;!d||!I||Math.abs(n-R.current)<.1||(R.current=n,d.readyState>=2&&(d.currentTime=n))},[I]),W=t.useCallback(()=>{J()},[J]);t.useEffect(()=>{if(I&&l>0){v(i);const n=o.current;n&&n.readyState>=2&&(n.currentTime=i)}},[I,l]);const c=t.useCallback(n=>{const d=q.current;if(!d)return 0;const w=d.getBoundingClientRect(),E=n.clientX-w.left;return Math.max(0,Math.min(1,E/w.width))*l},[l]),V=n=>{if(u||!I)return;n.preventDefault(),n.stopPropagation(),D("left");const d=b,w=ee=>{const B=c(ee),X=d-Ye,K=Math.max(0,d-ve),L=Math.max(K,Math.min(X,B));g(L),v(L),Q(L)},E=()=>{D(null),document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",E),Q(i)};document.addEventListener("mousemove",w),document.addEventListener("mouseup",E)},A=n=>{if(u||!I)return;n.preventDefault(),n.stopPropagation(),D("right");const d=i,w=ee=>{const B=c(ee),X=d+Ye,K=Math.min(l,d+ve),L=Math.max(X,Math.min(K,B));p(L),v(L),Q(L)},E=()=>{D(null),document.removeEventListener("mousemove",w),document.removeEventListener("mouseup",E),Q(b)};document.addEventListener("mousemove",w),document.addEventListener("mouseup",E)},S=n=>{if(u||!I)return;n.preventDefault(),D("center");const d=q.current;if(!d)return;const w=d.getBoundingClientRect(),E=n.clientX,ee=i,B=b-i,X=L=>{const de=(L.clientX-E)/w.width*l;let te=ee+de;te=Math.max(0,Math.min(l-B,te)),g(te),p(te+B),v(te),Q(te)},K=()=>{D(null),document.removeEventListener("mousemove",X),document.removeEventListener("mouseup",K),Q(i)};document.addEventListener("mousemove",X),document.addEventListener("mouseup",K)},F=n=>{if(u||!I||H||n.target.closest(".character-time-selector__range"))return;const w=q.current;if(!w)return;const E=w.getBoundingClientRect(),B=(n.clientX-E.left)/E.width*l,X=b-i,K=X/2;let L=B-K;L=Math.max(0,Math.min(l-X,L)),g(L),p(L+X),v(L),Q(L)},oe=()=>{N(Math.round(i),Math.round(b))},ce=n=>n.toFixed(1)+"s";return s.jsxDEV("div",{className:`character-time-selector ${H?"is-dragging":""}`,children:[s.jsxDEV("video",{ref:o,src:e,style:{display:"none"},muted:!0,playsInline:!0,preload:"auto",crossOrigin:"anonymous",onLoadedMetadata:ne,onSeeked:W,onCanPlay:me},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:382,columnNumber:7},void 0),s.jsxDEV("canvas",{ref:U,style:{display:"none"}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:396,columnNumber:7},void 0),s.jsxDEV("div",{className:"character-time-selector__preview",children:[m?s.jsxDEV("div",{className:"character-time-selector__loading",children:[s.jsxDEV("div",{className:"character-time-selector__spinner"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:402,columnNumber:13},void 0),s.jsxDEV("span",{children:"加载中..."},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:403,columnNumber:13},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:401,columnNumber:11},void 0):O?s.jsxDEV("img",{src:O,alt:"Video frame",className:"character-time-selector__frame"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:406,columnNumber:11},void 0):s.jsxDEV("div",{className:"character-time-selector__placeholder",children:"视频帧加载失败"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:412,columnNumber:11},void 0),s.jsxDEV("div",{className:"character-time-selector__time-badge",children:ce(h)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:416,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:399,columnNumber:7},void 0),s.jsxDEV("div",{className:"character-time-selector__timeline",ref:q,onClick:F,children:[z.length>0?s.jsxDEV("div",{className:"character-time-selector__frame-strip",children:z.map((n,d)=>s.jsxDEV("img",{src:n,alt:"",className:"character-time-selector__frame-thumb",draggable:!1},d,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:431,columnNumber:15},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:429,columnNumber:11},void 0):_?s.jsxDEV("div",{className:"character-time-selector__frame-strip character-time-selector__frame-strip--loading",children:s.jsxDEV("div",{className:"character-time-selector__strip-shimmer"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:442,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:441,columnNumber:11},void 0):s.jsxDEV("div",{className:"character-time-selector__timeline-bg"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:445,columnNumber:11},void 0),s.jsxDEV("div",{className:`character-time-selector__range ${H?"dragging":""}`,style:{left:`${$}%`,width:`${ae}%`},children:[s.jsxDEV("div",{className:"character-time-selector__handle character-time-selector__handle--left",onMouseDown:V},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:457,columnNumber:11},void 0),s.jsxDEV("div",{className:"character-time-selector__range-content",onMouseDown:S,children:s.jsxDEV("span",{className:"character-time-selector__range-label",children:[ce(i)," - ",ce(b)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:466,columnNumber:13},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:462,columnNumber:11},void 0),s.jsxDEV("div",{className:"character-time-selector__handle character-time-selector__handle--right",onMouseDown:A},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:471,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:449,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:422,columnNumber:7},void 0),s.jsxDEV("div",{className:"character-time-selector__info",children:[s.jsxDEV("span",{children:["API参数: ",Math.round(i),", ",Math.round(b)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:480,columnNumber:9},void 0),s.jsxDEV("span",{children:["时长: ",P.toFixed(1),"s"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:481,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:479,columnNumber:7},void 0),s.jsxDEV("div",{className:"character-time-selector__actions",children:[s.jsxDEV(re,{variant:"outline",onClick:k,disabled:u,children:"取消"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:486,columnNumber:9},void 0),s.jsxDEV(re,{theme:"primary",onClick:oe,disabled:u||!I,children:"创建角色"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:493,columnNumber:9},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:485,columnNumber:7},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterTimeRangeSelector.tsx",lineNumber:380,columnNumber:5},void 0)},Zs=({visible:e,task:a,onClose:N,onCreateStart:k,onCreateComplete:u})=>{var g;const{createTask:o,tasks:U}=Es(),[q,j]=t.useState(!1),{url:R}=Fs((a==null?void 0:a.id)??"",(g=a==null?void 0:a.result)==null?void 0:g.url),m=t.useMemo(()=>a!=null&&a.params.seconds?parseFloat(a.params.seconds.toString()):10,[a==null?void 0:a.params.seconds]),f=t.useMemo(()=>a?U.some(b=>b.type===y.CHARACTER&&b.params.sourceLocalTaskId===a.id&&(b.status===M.PENDING||b.status===M.PROCESSING)):!1,[a,U]),l=t.useCallback(async(b,p)=>{if(!a||!a.remoteId){ye.error("无效的任务数据");return}j(!0),k==null||k();try{const h=js(b,p),v=qs(a.params.model),O=o({prompt:a.params.prompt||"角色提取",model:v,sourceVideoTaskId:a.remoteId,characterTimestamps:h,sourceLocalTaskId:a.id},y.CHARACTER);ye.success("角色创建任务已加入队列"),u==null||u(O.id),N()}catch(h){console.error("Failed to create character task:",h);const v=h.message||"创建任务失败";ye.error(v)}finally{j(!1)}},[a,o,k,u,N]),r=()=>{q||N()},i=()=>{q||N()};return!a||!R?null:s.jsxDEV(Ts,{visible:e,header:"角色",onClose:r,footer:null,width:560,className:"character-create-dialog",closeOnOverlayClick:!q,closeOnEscKeydown:!q,children:[s.jsxDEV("div",{className:"character-create-dialog__description",children:["从视频中提取角色,创建后可通过 ",s.jsxDEV("code",{children:"@username"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterCreateDialog.tsx",lineNumber:130,columnNumber:25},void 0)," 在提示词中引用"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterCreateDialog.tsx",lineNumber:129,columnNumber:7},void 0),f&&s.jsxDEV("div",{className:"character-create-dialog__warning",children:"此视频已有一个角色正在创建中"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterCreateDialog.tsx",lineNumber:135,columnNumber:9},void 0),s.jsxDEV(Bs,{videoUrl:R,videoDuration:m,onConfirm:l,onCancel:i,disabled:q||f},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterCreateDialog.tsx",lineNumber:141,columnNumber:7},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterCreateDialog.tsx",lineNumber:119,columnNumber:5},void 0)},Js=({characterId:e,profilePictureUrl:a,alt:N="Character",className:k,onClick:u})=>{const[o,U]=t.useState(a||null),[q,j]=t.useState(!1),[R,m]=t.useState(!0);t.useEffect(()=>{let r=!1;return(async()=>{m(!0),j(!1);const g=await je.getCachedUrl(e);if(!r){if(g){U(g),m(!1);return}a?(U(a),je.cacheAvatar(e,a).catch(()=>{})):j(!0),m(!1)}})(),()=>{r=!0}},[e,a]);const f=async()=>{if(o===a){const r=await je.getCachedUrl(e);if(r&&r!==o){U(r);return}}j(!0)},l=()=>{m(!1)};return q||!o?s.jsxDEV("div",{className:k,onClick:u,style:u?{cursor:"pointer"}:void 0,children:s.jsxDEV(De,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterAvatar.tsx",lineNumber:101,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterAvatar.tsx",lineNumber:100,columnNumber:7},void 0):s.jsxDEV("img",{src:o,alt:N,className:k,onError:f,onLoad:l,onClick:u,style:{display:R?"none":"block",cursor:u?"pointer":void 0}},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/character/CharacterAvatar.tsx",lineNumber:107,columnNumber:5},void 0)};function ea(){const[e,a]=t.useState([]),[N,k]=t.useState(!0),u=t.useRef(new Map);t.useEffect(()=>{const r=se.getCharacters$().subscribe(i=>{a(i),k(!1)});return se.init(),()=>r.unsubscribe()},[]),t.useEffect(()=>{N||(async()=>{const i=se.getPendingCharacters();for(const g of i)u.current.get(g.id)||o(g)})()},[N]);const o=t.useCallback(async r=>{if(!u.current.get(r.id)){u.current.set(r.id,!0);try{const i=await qe.resumePolling(r.id,{onStatusChange:async g=>{await se.updateCharacterStatus(r.id,g)}});await se.updateCharacter(r.id,{username:i.username,profilePictureUrl:i.profile_picture_url,permalink:i.permalink,status:"completed",completedAt:Date.now()})}catch(i){console.error("[useCharacters] Character polling failed:",i),await se.updateCharacterStatus(r.id,"failed",i.message)}finally{u.current.delete(r.id)}}},[]),U=t.useCallback(async r=>{var g;const i=Date.now();Te.track("character_extract_start",{videoTaskId:r.videoTaskId,hasTimestamps:!!((g=r.characterTimestamps)!=null&&g.length)});try{const p=(await qe.createCharacter(r)).id,h={id:p,username:"",profilePictureUrl:"",sourceTaskId:r.localTaskId||"",sourceVideoId:r.videoTaskId,sourcePrompt:r.sourcePrompt,characterTimestamps:r.characterTimestamps,status:"processing",createdAt:Date.now()};return await se.saveCharacter(h),u.current.set(p,!0),qe.resumePolling(p,{onStatusChange:async v=>{await se.updateCharacterStatus(p,v)}}).then(async v=>{await se.updateCharacter(p,{username:v.username,profilePictureUrl:v.profile_picture_url,permalink:v.permalink,status:"completed",completedAt:Date.now()}),Te.track("character_extract_success",{characterId:p,username:v.username,duration:Date.now()-i})}).catch(async v=>{console.error("[useCharacters] Character creation failed:",v),await se.updateCharacterStatus(p,"failed",v.message),Te.track("character_extract_failed",{characterId:p,error:v.message,duration:Date.now()-i})}).finally(()=>{u.current.delete(p)}),h}catch(b){throw console.error("[useCharacters] Failed to create character:",b),b}},[]),q=t.useCallback(async r=>(u.current.delete(r),se.deleteCharacter(r)),[]),j=t.useCallback(async()=>{await se.init()},[]),R=t.useCallback(r=>e.find(i=>i.id===r),[e]),m=t.useCallback(r=>e.some(i=>i.sourceTaskId===r&&(i.status==="pending"||i.status==="processing")),[e]),f=e.filter(r=>r.status==="completed"),l=e.filter(r=>r.status==="pending"||r.status==="processing");return{characters:e,completedCharacters:f,pendingCharacters:l,isLoading:N,createCharacter:U,deleteCharacter:q,refreshCharacters:j,getCharacterById:R,isCreatingCharacterForTask:m}}export{Js as C,Be as T,Qs as V,Zs as a,ea as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var u="error";function o(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var b=new RegExp("^[\\+\\-\\*/%&\\\\|\\^~<>!]"),k=new RegExp("^[\\(\\)\\[\\]\\{\\}@,:`=;\\.]"),x=new RegExp("^((==)|(<>)|(<=)|(>=)|(<>)|(<<)|(>>)|(//)|(\\*\\*))"),m=new RegExp("^((\\+=)|(\\-=)|(\\*=)|(%=)|(/=)|(&=)|(\\|=)|(\\^=))"),I=new RegExp("^((//=)|(>>=)|(<<=)|(\\*\\*=))"),R=new RegExp("^[_A-Za-z][_A-Za-z0-9]*"),a=["class","module","sub","enum","select","while","if","function","get","set","property","try","structure","synclock","using","with"],f=["else","elseif","case","catch","finally"],h=["next","loop"],s=["and","andalso","or","orelse","xor","in","not","is","isnot","like"],O=o(s),v=["#const","#else","#elseif","#end","#if","#region","addhandler","addressof","alias","as","byref","byval","cbool","cbyte","cchar","cdate","cdbl","cdec","cint","clng","cobj","compare","const","continue","csbyte","cshort","csng","cstr","cuint","culng","cushort","declare","default","delegate","dim","directcast","each","erase","error","event","exit","explicit","false","for","friend","gettype","goto","handles","implements","imports","infer","inherits","interface","isfalse","istrue","lib","me","mod","mustinherit","mustoverride","my","mybase","myclass","namespace","narrowing","new","nothing","notinheritable","notoverridable","of","off","on","operator","option","optional","out","overloads","overridable","overrides","paramarray","partial","private","protected","public","raiseevent","readonly","redim","removehandler","resume","return","shadows","shared","static","step","stop","strict","then","throw","to","true","trycast","typeof","until","until","when","widening","withevents","writeonly"],p=["object","boolean","char","string","byte","sbyte","short","ushort","int16","uint16","integer","uinteger","int32","uint32","long","ulong","int64","uint64","decimal","single","double","float","date","datetime","intptr","uintptr"],z=o(v),E=o(p),C='"',S=o(a),g=o(f),y=o(h),w=o(["end"]),T=o(["do"]);function l(e,n){n.currentIndent++}function c(e,n){n.currentIndent--}function d(e,n){if(e.eatSpace())return null;var i=e.peek();if(i==="'")return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.a-f]/i,!1)){var r=!1;if((e.match(/^\d*\.\d+F?/i)||e.match(/^\d+\.\d*F?/)||e.match(/^\.\d+F?/))&&(r=!0),r)return e.eat(/J/i),"number";var t=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?t=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),t=!0):e.match(/^0(?![\dx])/i)&&(t=!0),t)return e.eat(/L/i),"number"}return e.match(C)?(n.tokenize=F(e.current()),n.tokenize(e,n)):e.match(I)||e.match(m)?null:e.match(x)||e.match(b)||e.match(O)?"operator":e.match(k)?null:e.match(T)?(l(e,n),n.doInCurrentLine=!0,"keyword"):e.match(S)?(n.doInCurrentLine?n.doInCurrentLine=!1:l(e,n),"keyword"):e.match(g)?"keyword":e.match(w)?(c(e,n),c(e,n),"keyword"):e.match(y)?(c(e,n),"keyword"):e.match(E)||e.match(z)?"keyword":e.match(R)?"variable":(e.next(),u)}function F(e){var n=e.length==1,i="string";return function(r,t){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return t.tokenize=d,i;r.eat(/['"]/)}return n&&(t.tokenize=d),i}}function K(e,n){var i=n.tokenize(e,n),r=e.current();if(r===".")return i=n.tokenize(e,n),i==="variable"?"variable":u;var t="[({".indexOf(r);return t!==-1&&l(e,n),t="])}".indexOf(r),t!==-1&&c(e,n)?u:i}const L={name:"vb",startState:function(){return{tokenize:d,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1}},token:function(e,n){e.sol()&&(n.currentIndent+=n.nextLineIndent,n.nextLineIndent=0,n.doInCurrentLine=0);var i=K(e,n);return n.lastToken={style:i,content:e.current()},i},indent:function(e,n,i){var r=n.replace(/^\s+|\s+$/g,"");return r.match(y)||r.match(w)||r.match(g)?i.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*i.unit},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:"'"},autocomplete:a.concat(f).concat(h).concat(s).concat(v).concat(p)}};export{L as vb};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function p(h){var v="error";function i(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var y=new RegExp("^[\\+\\-\\*/&\\\\\\^<>=]"),g=new RegExp("^((<>)|(<=)|(>=))"),m=new RegExp("^[\\.,]"),w=new RegExp("^[\\(\\)]"),k=new RegExp("^[A-Za-z][_A-Za-z0-9]*"),x=["class","sub","select","while","if","function","property","with","for"],C=["else","elseif","case"],I=["next","loop","wend"],S=i(["and","or","not","xor","is","mod","eqv","imp"]),O=["dim","redim","then","until","randomize","byval","byref","new","property","exit","in","const","private","public","get","set","let","stop","on error resume next","on error goto 0","option explicit","call","me"],D=["true","false","nothing","empty","null"],R=["abs","array","asc","atn","cbool","cbyte","ccur","cdate","cdbl","chr","cint","clng","cos","csng","cstr","date","dateadd","datediff","datepart","dateserial","datevalue","day","escape","eval","execute","exp","filter","formatcurrency","formatdatetime","formatnumber","formatpercent","getlocale","getobject","getref","hex","hour","inputbox","instr","instrrev","int","fix","isarray","isdate","isempty","isnull","isnumeric","isobject","join","lbound","lcase","left","len","loadpicture","log","ltrim","rtrim","trim","maths","mid","minute","month","monthname","msgbox","now","oct","replace","rgb","right","rnd","round","scriptengine","scriptenginebuildversion","scriptenginemajorversion","scriptengineminorversion","second","setlocale","sgn","sin","space","split","sqr","strcomp","string","strreverse","tan","time","timer","timeserial","timevalue","typename","ubound","ucase","unescape","vartype","weekday","weekdayname","year"],E=["vbBlack","vbRed","vbGreen","vbYellow","vbBlue","vbMagenta","vbCyan","vbWhite","vbBinaryCompare","vbTextCompare","vbSunday","vbMonday","vbTuesday","vbWednesday","vbThursday","vbFriday","vbSaturday","vbUseSystemDayOfWeek","vbFirstJan1","vbFirstFourDays","vbFirstFullWeek","vbGeneralDate","vbLongDate","vbShortDate","vbLongTime","vbShortTime","vbObjectError","vbOKOnly","vbOKCancel","vbAbortRetryIgnore","vbYesNoCancel","vbYesNo","vbRetryCancel","vbCritical","vbQuestion","vbExclamation","vbInformation","vbDefaultButton1","vbDefaultButton2","vbDefaultButton3","vbDefaultButton4","vbApplicationModal","vbSystemModal","vbOK","vbCancel","vbAbort","vbRetry","vbIgnore","vbYes","vbNo","vbCr","VbCrLf","vbFormFeed","vbLf","vbNewLine","vbNullChar","vbNullString","vbTab","vbVerticalTab","vbUseDefault","vbTrue","vbFalse","vbEmpty","vbNull","vbInteger","vbLong","vbSingle","vbDouble","vbCurrency","vbDate","vbString","vbObject","vbError","vbBoolean","vbVariant","vbDataObject","vbDecimal","vbByte","vbArray"],a=["WScript","err","debug","RegExp"],L=["description","firstindex","global","helpcontext","helpfile","ignorecase","length","number","pattern","source","value","count"],T=["clear","execute","raise","replace","test","write","writeline","close","open","state","eof","update","addnew","end","createobject","quit"],j=["server","response","request","session","application"],F=["buffer","cachecontrol","charset","contenttype","expires","expiresabsolute","isclientconnected","pics","status","clientcertificate","cookies","form","querystring","servervariables","totalbytes","contents","staticobjects","codepage","lcid","sessionid","timeout","scripttimeout"],B=["addheader","appendtolog","binarywrite","end","flush","redirect","binaryread","remove","removeall","lock","unlock","abandon","getlasterror","htmlencode","mappath","transfer","urlencode"],c=T.concat(L);a=a.concat(E),h.isASP&&(a=a.concat(j),c=c.concat(B,F));var W=i(O),z=i(D),A=i(R),K=i(a),N=i(c),M='"',P=i(x),b=i(C),d=i(I),s=i(["end"]),q=i(["do"]),V=i(["on error resume next","exit"]),Y=i(["rem"]);function f(e,n){n.currentIndent++}function u(e,n){n.currentIndent--}function l(e,n){if(e.eatSpace())return null;var r=e.peek();if(r==="'"||e.match(Y))return e.skipToEnd(),"comment";if(e.match(/^((&H)|(&O))?[0-9\.]/i,!1)&&!e.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i,!1)){var t=!1;if((e.match(/^\d*\.\d+/i)||e.match(/^\d+\.\d*/)||e.match(/^\.\d+/))&&(t=!0),t)return e.eat(/J/i),"number";var o=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?o=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),o=!0):e.match(/^0(?![\dx])/i)&&(o=!0),o)return e.eat(/L/i),"number"}return e.match(M)?(n.tokenize=_(e.current()),n.tokenize(e,n)):e.match(g)||e.match(y)||e.match(S)?"operator":e.match(m)?null:e.match(w)?"bracket":e.match(V)?(n.doInCurrentLine=!0,"keyword"):e.match(q)?(f(e,n),n.doInCurrentLine=!0,"keyword"):e.match(P)?(n.doInCurrentLine?n.doInCurrentLine=!1:f(e,n),"keyword"):e.match(b)?"keyword":e.match(s)?(u(e,n),u(e,n),"keyword"):e.match(d)?(n.doInCurrentLine?n.doInCurrentLine=!1:u(e,n),"keyword"):e.match(W)?"keyword":e.match(z)?"atom":e.match(N)?"variableName.special":e.match(A)||e.match(K)?"builtin":e.match(k)?"variable":(e.next(),v)}function _(e){var n=e.length==1,r="string";return function(t,o){for(;!t.eol();){if(t.eatWhile(/[^'"]/),t.match(e))return o.tokenize=l,r;t.eat(/['"]/)}return n&&(o.tokenize=l),r}}function H(e,n){var r=n.tokenize(e,n),t=e.current();return t==="."?(r=n.tokenize(e,n),t=e.current(),r&&(r.substr(0,8)==="variable"||r==="builtin"||r==="keyword")?((r==="builtin"||r==="keyword")&&(r="variable"),c.indexOf(t.substr(1))>-1&&(r="keyword"),r):v):r}return{name:"vbscript",startState:function(){return{tokenize:l,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1,ignoreKeyword:!1}},token:function(e,n){e.sol()&&(n.currentIndent+=n.nextLineIndent,n.nextLineIndent=0,n.doInCurrentLine=0);var r=H(e,n);return n.lastToken={style:r,content:e.current()},r===null&&(r=null),r},indent:function(e,n,r){var t=n.replace(/^\s+|\s+$/g,"");return t.match(d)||t.match(s)||t.match(b)?r.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*r.unit}}}const J=p({}),U=p({isASP:!0});export{J as vbScript,U as vbScriptASP};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function u(n){for(var e={},i=n.split(" "),r=0;r<i.length;++r)e[i[r]]=!0;return e}var s=u("#end #else #break #stop #[[ #]] #{end} #{else} #{break} #{stop}"),a=u("#if #elseif #foreach #set #include #parse #macro #define #evaluate #{if} #{elseif} #{foreach} #{set} #{include} #{parse} #{macro} #{define} #{evaluate}"),c=u("$foreach.count $foreach.hasNext $foreach.first $foreach.last $foreach.topmost $foreach.parent.count $foreach.parent.hasNext $foreach.parent.first $foreach.parent.last $foreach.parent $velocityCount $!bodyContent $bodyContent"),k=/[+\-*&%=<>!?:\/|]/;function o(n,e,i){return e.tokenize=i,i(n,e)}function t(n,e){var i=e.beforeParams;e.beforeParams=!1;var r=n.next();if(r=="'"&&!e.inString&&e.inParams)return e.lastTokenWasBuiltin=!1,o(n,e,p(r));if(r=='"'){if(e.lastTokenWasBuiltin=!1,e.inString)return e.inString=!1,"string";if(e.inParams)return o(n,e,p(r))}else{if(/[\[\]{}\(\),;\.]/.test(r))return r=="("&&i?e.inParams=!0:r==")"&&(e.inParams=!1,e.lastTokenWasBuiltin=!0),null;if(/\d/.test(r))return e.lastTokenWasBuiltin=!1,n.eatWhile(/[\w\.]/),"number";if(r=="#"&&n.eat("*"))return e.lastTokenWasBuiltin=!1,o(n,e,h);if(r=="#"&&n.match(/ *\[ *\[/))return e.lastTokenWasBuiltin=!1,o(n,e,b);if(r=="#"&&n.eat("#"))return e.lastTokenWasBuiltin=!1,n.skipToEnd(),"comment";if(r=="$")return n.eat("!"),n.eatWhile(/[\w\d\$_\.{}-]/),c&&c.propertyIsEnumerable(n.current())?"keyword":(e.lastTokenWasBuiltin=!0,e.beforeParams=!0,"builtin");if(k.test(r))return e.lastTokenWasBuiltin=!1,n.eatWhile(k),"operator";n.eatWhile(/[\w\$_{}@]/);var l=n.current();return s&&s.propertyIsEnumerable(l)?"keyword":a&&a.propertyIsEnumerable(l)||n.current().match(/^#@?[a-z0-9_]+ *$/i)&&n.peek()=="("&&!(a&&a.propertyIsEnumerable(l.toLowerCase()))?(e.beforeParams=!0,e.lastTokenWasBuiltin=!1,"keyword"):e.inString?(e.lastTokenWasBuiltin=!1,"string"):n.pos>l.length&&n.string.charAt(n.pos-l.length-1)=="."&&e.lastTokenWasBuiltin?"builtin":(e.lastTokenWasBuiltin=!1,null)}}function p(n){return function(e,i){for(var r=!1,l,f=!1;(l=e.next())!=null;){if(l==n&&!r){f=!0;break}if(n=='"'&&e.peek()=="$"&&!r){i.inString=!0,f=!0;break}r=!r&&l=="\\"}return f&&(i.tokenize=t),"string"}}function h(n,e){for(var i=!1,r;r=n.next();){if(r=="#"&&i){e.tokenize=t;break}i=r=="*"}return"comment"}function b(n,e){for(var i=0,r;r=n.next();){if(r=="#"&&i==2){e.tokenize=t;break}r=="]"?i++:r!=" "&&(i=0)}return"meta"}const W={name:"velocity",startState:function(){return{tokenize:t,beforeParams:!1,inParams:!1,inString:!1,lastTokenWasBuiltin:!1}},token:function(n,e){return n.eatSpace()?null:e.tokenize(n,e)},languageData:{commentTokens:{line:"##",block:{open:"#*",close:"*#"}}}};export{W as velocity};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function A(i){var o=i.statementIndentUnit,u=i.dontAlignCalls,c=i.noIndentKeywords||[],s=i.multiLineStrings,a=i.hooks||{};function g(e){for(var n={},t=e.split(" "),r=0;r<t.length;++r)n[t[r]]=!0;return n}var h=g("accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind bins binsof bit break buf bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin function generate genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import incdir include initial inout input inside instance int integer interconnect interface intersect join join_any join_none large let liblist library local localparam logic longint macromodule matches medium modport module nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 null or output package packed parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor"),w=/[\+\-\*\/!~&|^%=?:]/,k=/[\[\]{}()]/,b=/\d[0-9_]*/,I=/\d*\s*'s?d\s*\d[0-9_]*/i,O=/\d*\s*'s?b\s*[xz01][xz01_]*/i,T=/\d*\s*'s?o\s*[xz0-7][xz0-7_]*/i,W=/\d*\s*'s?h\s*[0-9a-fxz?][0-9a-fxz?_]*/i,B=/(\d[\d_]*(\.\d[\d_]*)?E-?[\d_]+)|(\d[\d_]*\.\d[\d_]*)/i,M=/^((\w+)|[)}\]])/,U=/[)}\]]/,d,v,K=g("case checker class clocking config function generate interface module package primitive program property specify sequence table task"),f={};for(var m in K)f[m]="end"+m;f.begin="end",f.casex="endcase",f.casez="endcase",f.do="while",f.fork="join;join_any;join_none",f.covergroup="endgroup";for(var V in c){var m=c[V];f[m]&&(f[m]=void 0)}var R=g("always always_comb always_ff always_latch assert assign assume else export for foreach forever if import initial repeat while");function _(e,n){var t=e.peek(),r;if(a[t]&&(r=a[t](e,n))!=!1||a.tokenBase&&(r=a.tokenBase(e,n))!=!1)return r;if(/[,;:\.]/.test(t))return d=e.next(),null;if(k.test(t))return d=e.next(),"bracket";if(t=="`")return e.next(),e.eatWhile(/[\w\$_]/)?"def":null;if(t=="$")return e.next(),e.eatWhile(/[\w\$_]/)?"meta":null;if(t=="#")return e.next(),e.eatWhile(/[\d_.]/),"def";if(t=='"')return e.next(),n.tokenize=D(t),n.tokenize(e,n);if(t=="/"){if(e.next(),e.eat("*"))return n.tokenize=L,L(e,n);if(e.eat("/"))return e.skipToEnd(),"comment";e.backUp(1)}if(e.match(B)||e.match(I)||e.match(O)||e.match(T)||e.match(W)||e.match(b)||e.match(B))return"number";if(e.eatWhile(w))return"meta";if(e.eatWhile(/[\w\$_]/)){var l=e.current();return h[l]?(f[l]&&(d="newblock"),R[l]&&(d="newstatement"),v=l,"keyword"):"variable"}return e.next(),null}function D(e){return function(n,t){for(var r=!1,l,y=!1;(l=n.next())!=null;){if(l==e&&!r){y=!0;break}r=!r&&l=="\\"}return(y||!(r||s))&&(t.tokenize=_),"string"}}function L(e,n){for(var t=!1,r;r=e.next();){if(r=="/"&&t){n.tokenize=_;break}t=r=="*"}return"comment"}function j(e,n,t,r,l){this.indented=e,this.column=n,this.type=t,this.align=r,this.prev=l}function p(e,n,t){var r=e.indented,l=new j(r,n,t,null,e.context);return e.context=l}function C(e){var n=e.context.type;return(n==")"||n=="]"||n=="}")&&(e.indented=e.context.indented),e.context=e.context.prev}function N(e,n){if(e==n)return!0;var t=n.split(";");for(var r in t)if(e==t[r])return!0;return!1}function P(){var e=[];for(var n in f)if(f[n]){var t=f[n].split(";");for(var r in t)e.push(t[r])}var l=new RegExp("[{}()\\[\\]]|("+e.join("|")+")$");return l}return{name:"verilog",startState:function(e){var n={tokenize:null,context:new j(-e,0,"top",!1),indented:0,startOfLine:!0};return a.startState&&a.startState(n),n},token:function(e,n){var t=n.context;if(e.sol()&&(t.align==null&&(t.align=!1),n.indented=e.indentation(),n.startOfLine=!0),a.token){var r=a.token(e,n);if(r!==void 0)return r}if(e.eatSpace())return null;d=null,v=null;var r=(n.tokenize||_)(e,n);if(r=="comment"||r=="meta"||r=="variable")return r;if(t.align==null&&(t.align=!0),d==t.type)C(n);else if(d==";"&&t.type=="statement"||t.type&&N(v,t.type))for(t=C(n);t&&t.type=="statement";)t=C(n);else if(d=="{")p(n,e.column(),"}");else if(d=="[")p(n,e.column(),"]");else if(d=="(")p(n,e.column(),")");else if(t&&t.type=="endcase"&&d==":")p(n,e.column(),"statement");else if(d=="newstatement")p(n,e.column(),"statement");else if(d=="newblock"&&!(v=="function"&&t&&(t.type=="statement"||t.type=="endgroup"))){if(!(v=="task"&&t&&t.type=="statement")){var l=f[v];p(n,e.column(),l)}}return n.startOfLine=!1,r},indent:function(e,n,t){if(e.tokenize!=_&&e.tokenize!=null)return null;if(a.indent){var r=a.indent(e);if(r>=0)return r}var l=e.context,y=n&&n.charAt(0);l.type=="statement"&&y=="}"&&(l=l.prev);var x=!1,$=n.match(M);return $&&(x=N($[0],l.type)),l.type=="statement"?l.indented+(y=="{"?0:o||t.unit):U.test(l.type)&&l.align&&!u?l.column+(x?0:1):l.type==")"&&!x?l.indented+(o||t.unit):l.indented+(x?0:t.unit)},languageData:{indentOnInput:P(),commentTokens:{line:"//",block:{open:"/*",close:"*/"}}}}}const J=A({});var z={"|":"link",">":"property",$:"variable",$$:"variable","?$":"qualifier","?*":"qualifier","-":"contentSeparator","/":"property","/-":"property","@":"variableName.special","@-":"variableName.special","@++":"variableName.special","@+=":"variableName.special","@+=-":"variableName.special","@--":"variableName.special","@-=":"variableName.special","%+":"tag","%-":"tag","%":"tag",">>":"tag","<<":"tag","<>":"tag","#":"tag","^":"attribute","^^":"attribute","^!":"attribute","*":"variable","**":"variable","\\":"keyword",'"':"comment"},E={"/":"beh-hier",">":"beh-hier","-":"phys-hier","|":"pipe","?":"when","@":"stage","\\":"keyword"},S=3,q=/^([~!@#\$%\^&\*-\+=\?\/\\\|'"<>]+)([\d\w_]*)/,F=/^[! ] */,G=/^\/[\/\*]/;const Q=A({hooks:{electricInput:!1,token:function(i,o){var u=void 0,c;if(i.sol()&&!o.tlvInBlockComment){i.peek()=="\\"&&(u="def",i.skipToEnd(),i.string.match(/\\SV/)?o.tlvCodeActive=!1:i.string.match(/\\TLV/)&&(o.tlvCodeActive=!0)),o.tlvCodeActive&&i.pos==0&&o.indented==0&&(c=i.match(F,!1))&&(o.indented=c[0].length);var s=o.indented,a=s/S;if(a<=o.tlvIndentationStyle.length){var g=i.string.length==s,h=a*S;if(h<i.string.length){var w=i.string.slice(h),k=w[0];E[k]&&(c=w.match(q))&&z[c[1]]&&(s+=S,k=="\\"&&h>0||(o.tlvIndentationStyle[a]=E[k],a++))}if(!g)for(;o.tlvIndentationStyle.length>a;)o.tlvIndentationStyle.pop()}o.tlvNextIndent=s}if(o.tlvCodeActive){var c;if(u===void 0)if(o.tlvInBlockComment)i.match(/^.*?\*\//)?o.tlvInBlockComment=!1:i.skipToEnd(),u="comment";else if((c=i.match(G))&&!o.tlvInBlockComment)c[0]=="//"?i.skipToEnd():o.tlvInBlockComment=!0,u="comment";else if(c=i.match(q)){var b=c[1],I=c[2];z.hasOwnProperty(b)&&(I.length>0||i.eol())?u=z[b]:i.backUp(i.current().length-1)}else i.match(/^\t+/)?u="invalid":i.match(/^[\[\]{}\(\);\:]+/)?u="meta":(c=i.match(/^[mM]4([\+_])?[\w\d_]*/))?u=c[1]=="+"?"keyword.special":"keyword":i.match(/^ +/)?i.eol()&&(u="error"):i.match(/^[\w\d_]+/)?u="number":i.next()}else i.match(/^[mM]4([\w\d_]*)/)&&(u="keyword");return u},indent:function(i){return i.tlvCodeActive==!0?i.tlvNextIndent:-1},startState:function(i){i.tlvIndentationStyle=[],i.tlvCodeActive=!0,i.tlvNextIndent=-1,i.tlvInBlockComment=!1}}});export{Q as tlv,J as verilog};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as c,y as e,fM as p,jA as g,cr as w}from"./tool-windows-DWUG3k_L.js";import{a as b}from"./main-sSl0uAQQ.js";const y=()=>{var v;const[s,r]=c.useState(null),[f,u]=c.useState(!1),{activeTasks:N}=b();c.useEffect(()=>{const o=async i=>{var x;const h=i,t=(x=h.detail)==null?void 0:x.version,d=document.querySelector('meta[name="app-version"]'),a=d==null?void 0:d.getAttribute("content");try{const n=await fetch(`/version.json?t=${Date.now()}`);if(n.ok){const l=await n.json();if(a&&l.version===a)return;if(!t||l.version===t){r(l);return}}}catch(n){console.warn("Failed to fetch version.json:",n)}a&&t&&a===t||r(h.detail)};return window.addEventListener("sw-update-available",o),window.__debugTriggerUpdate=(i="9.9.9")=>{window.dispatchEvent(new CustomEvent("sw-update-available",{detail:{version:i}}))},()=>{window.removeEventListener("sw-update-available",o)}},[]);const m=()=>{r(null),u(!1),window.dispatchEvent(new CustomEvent("user-confirmed-upgrade"))};return!s||N.length>0?null:e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"version-update-prompt",children:e.jsxDEV("div",{className:"version-update-prompt__content",children:[e.jsxDEV("span",{className:"version-update-prompt__text",children:["新版本 v",s.version," 已就绪"]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:92,columnNumber:11},void 0),s.changelog&&s.changelog.length>0&&e.jsxDEV(p,{theme:"default",variant:"text",size:"small",onClick:()=>u(!0),children:"查看更新内容"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:96,columnNumber:13},void 0),e.jsxDEV(p,{theme:"primary",size:"small",onClick:m,icon:e.jsxDEV(g,{},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:109,columnNumber:19},void 0),children:"立即更新"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:105,columnNumber:11},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:91,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:90,columnNumber:7},void 0),e.jsxDEV(w,{header:`新版本 v${s.version} 更新内容`,visible:f,onClose:()=>u(!1),width:600,footer:e.jsxDEV(p,{theme:"primary",onClick:m,children:"立即更新"},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:122,columnNumber:11},void 0),children:e.jsxDEV("div",{style:{maxHeight:"400px",overflowY:"auto",paddingRight:"8px"},children:e.jsxDEV("ul",{style:{paddingLeft:"20px",margin:0},children:(v=s.changelog)==null?void 0:v.map((o,i)=>e.jsxDEV("li",{style:{marginBottom:"4px",lineHeight:"1.5"},children:[i+1,". ",o]},i,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:130,columnNumber:15},void 0))},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:128,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:127,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:116,columnNumber:7},void 0)]},void 0,!0,{fileName:"/Users/ljq/code/shuidiyu/aitu/packages/drawnix/src/components/version-update/version-update-prompt.tsx",lineNumber:89,columnNumber:5},void 0)};export{y as VersionUpdatePrompt};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@charset "UTF-8";.version-update-prompt{position:fixed;top:10px;left:62px;right:auto;z-index:1000;background-color:var(--td-bg-color-container);border:1px solid var(--td-border-level-2-color);border-radius:var(--td-radius-medium);box-shadow:var(--td-shadow-2);padding:8px 12px;animation:slideIn .3s ease-out}.version-update-prompt__content{display:flex;align-items:center;gap:12px}.version-update-prompt__text{font-size:14px;color:var(--td-text-color-primary)}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media(max-width:768px){.version-update-prompt{left:60px;top:52px;max-width:calc(100vw - 152px)}.version-update-prompt__content{gap:8px}.version-update-prompt__text{font-size:13px}}@media(max-width:480px){.version-update-prompt{left:58px;top:52px;padding:6px 10px;max-width:calc(100vw - 132px)}.version-update-prompt__text{font-size:12px}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function f(e){for(var t={},n=e.split(","),r=0;r<n.length;++r){var i=n[r].toUpperCase(),l=n[r].charAt(0).toUpperCase()+n[r].slice(1);t[n[r]]=!0,t[i]=!0,t[l]=!0}return t}function p(e){return e.eatWhile(/[\w\$_]/),"meta"}var k=f("null"),s={"`":p,$:p},g=!1,y=f("abs,access,after,alias,all,and,architecture,array,assert,attribute,begin,block,body,buffer,bus,case,component,configuration,constant,disconnect,downto,else,elsif,end,end block,end case,end component,end for,end generate,end if,end loop,end process,end record,end units,entity,exit,file,for,function,generate,generic,generic map,group,guarded,if,impure,in,inertial,inout,is,label,library,linkage,literal,loop,map,mod,nand,new,next,nor,null,of,on,open,or,others,out,package,package body,port,port map,postponed,procedure,process,pure,range,record,register,reject,rem,report,return,rol,ror,select,severity,signal,sla,sll,sra,srl,subtype,then,to,transport,type,unaffected,units,until,use,variable,wait,when,while,with,xnor,xor"),v=f("architecture,entity,begin,case,port,else,elsif,end,for,function,if"),d=/[&|~><!\)\(*#%@+\/=?\:;}{,\.\^\-\[\]]/,o;function c(e,t){var n=e.next();if(s[n]){var r=s[n](e,t);if(r!==!1)return r}if(n=='"')return t.tokenize=m(n),t.tokenize(e,t);if(n=="'")return t.tokenize=b(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(n))return o=n,null;if(/[\d']/.test(n))return e.eatWhile(/[\w\.']/),"number";if(n=="-"&&e.eat("-"))return e.skipToEnd(),"comment";if(d.test(n))return e.eatWhile(d),"operator";e.eatWhile(/[\w\$_]/);var i=e.current();return y.propertyIsEnumerable(i.toLowerCase())?(v.propertyIsEnumerable(i)&&(o="newstatement"),"keyword"):k.propertyIsEnumerable(i)?"atom":"variable"}function b(e){return function(t,n){for(var r=!1,i,l=!1;(i=t.next())!=null;){if(i==e&&!r){l=!0;break}r=!r&&i=="--"}return(l||!(r||g))&&(n.tokenize=c),"string"}}function m(e){return function(t,n){for(var r=!1,i,l=!1;(i=t.next())!=null;){if(i==e&&!r){l=!0;break}r=!r&&i=="--"}return(l||!(r||g))&&(n.tokenize=c),"string.special"}}function h(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function a(e,t,n){return e.context=new h(e.indented,t,n,null,e.context)}function u(e){var t=e.context.type;return(t==")"||t=="]"||t=="}")&&(e.indented=e.context.indented),e.context=e.context.prev}const w={name:"vhdl",startState:function(e){return{tokenize:null,context:new h(-e,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(n.align==null&&(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;o=null;var r=(t.tokenize||c)(e,t);if(r=="comment"||r=="meta")return r;if(n.align==null&&(n.align=!0),(o==";"||o==":")&&n.type=="statement")u(t);else if(o=="{")a(t,e.column(),"}");else if(o=="[")a(t,e.column(),"]");else if(o=="(")a(t,e.column(),")");else if(o=="}"){for(;n.type=="statement";)n=u(t);for(n.type=="}"&&(n=u(t));n.type=="statement";)n=u(t)}else o==n.type?u(t):(n.type=="}"||n.type=="top"||n.type=="statement"&&o=="newstatement")&&a(t,e.column(),"statement");return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=c&&e.tokenize!=null)return 0;var r=t&&t.charAt(0),i=e.context,l=r==i.type;return i.type=="statement"?i.indented+(r=="{"?0:n.unit):i.align?i.column+(l?0:1):i.indented+(l?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:"--"}}};export{w as vhdl};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{at as f,aP as u}from"./tool-windows-DWUG3k_L.js";async function h(e){if(!e||!e.children)return 0;let n=0;for(const c of e.children){const r=c.url;if(r&&r.startsWith("blob:")&&r.includes("#merged-video-")){const s=r.indexOf("#merged-video-");if(s===-1)continue;const i=r.substring(s+1),d=i.indexOf("#",1),o=d>0?i.substring(0,d):i;try{const t=await f.getCachedBlob(o);if(t){const a=`${URL.createObjectURL(t)}#${o}`,l=e.children.indexOf(c);u.setNode(e,{url:a},[l]),n++}else console.warn("[VideoRecovery] Cache not found for taskId:",o)}catch(t){console.error("[VideoRecovery] Failed to recover video:",o,t)}}}return n}function x(e){e&&requestAnimationFrame(async()=>{try{await h(e)}catch(n){console.error("[VideoRecovery] Initialization failed:",n)}})}export{x as initVideoRecoveryService,h as recoverExpiredVideoUrls};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var W=Object.defineProperty;var j=(t,e,i)=>e in t?W(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i;var h=(t,e,i)=>j(t,typeof e!="symbol"?e+"":e,i);let O=-1;const f=t=>{addEventListener("pageshow",(e=>{e.persisted&&(O=e.timeStamp,t(e))}),!0)},l=(t,e,i,n)=>{let r,o;return a=>{e.value>=0&&(a||n)&&(o=e.value-(r??0),(o||r===void 0)&&(r=e.value,e.delta=o,e.rating=((s,d)=>s>d[1]?"poor":s>d[0]?"needs-improvement":"good")(e.value,i),t(e)))}},w=t=>{requestAnimationFrame((()=>requestAnimationFrame((()=>t()))))},A=()=>{const t=performance.getEntriesByType("navigation")[0];if(t&&t.responseStart>0&&t.responseStart<performance.now())return t},v=()=>{const t=A();return(t==null?void 0:t.activationStart)??0},u=(t,e=-1)=>{const i=A();let n="navigate";return O>=0?n="back-forward-cache":i&&(document.prerendering||v()>0?n="prerender":document.wasDiscarded?n="restore":i.type&&(n=i.type.replace(/_/g,"-"))),{name:t,value:e,rating:"good",delta:0,entries:[],id:`v5-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:n}},P=new WeakMap;function I(t,e){return P.get(t)||P.set(t,new e),P.get(t)}class z{constructor(){h(this,"t");h(this,"i",0);h(this,"o",[])}h(e){var r;if(e.hadRecentInput)return;const i=this.o[0],n=this.o.at(-1);this.i&&i&&n&&e.startTime-n.startTime<1e3&&e.startTime-i.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),(r=this.t)==null||r.call(this,e)}}const g=(t,e,i={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(t)){const n=new PerformanceObserver((r=>{Promise.resolve().then((()=>{e(r.getEntries())}))}));return n.observe({type:t,buffered:!0,...i}),n}}catch{}},F=t=>{let e=!1;return()=>{e||(t(),e=!0)}};let m=-1;const $=new Set,M=()=>document.visibilityState!=="hidden"||document.prerendering?1/0:0,L=t=>{if(document.visibilityState==="hidden"){if(t.type==="visibilitychange")for(const e of $)e();isFinite(m)||(m=t.type==="visibilitychange"?t.timeStamp:0,removeEventListener("prerenderingchange",L,!0))}},y=()=>{var t;if(m<0){const e=v();m=(document.prerendering||(t=globalThis.performance.getEntriesByType("visibility-state").filter((n=>n.name==="hidden"&&n.startTime>e))[0])==null?void 0:t.startTime)??M(),addEventListener("visibilitychange",L,!0),addEventListener("prerenderingchange",L,!0),f((()=>{setTimeout((()=>{m=M()}))}))}return{get firstHiddenTime(){return m},onHidden(e){$.add(e)}}},C=t=>{document.prerendering?addEventListener("prerenderingchange",(()=>t()),!0):t()},k=[1800,3e3],G=(t,e={})=>{C((()=>{const i=y();let n,r=u("FCP");const o=g("paint",(a=>{for(const s of a)s.name==="first-contentful-paint"&&(o.disconnect(),s.startTime<i.firstHiddenTime&&(r.value=Math.max(s.startTime-v(),0),r.entries.push(s),n(!0)))}));o&&(n=l(t,r,k,e.reportAllChanges),f((a=>{r=u("FCP"),n=l(t,r,k,e.reportAllChanges),w((()=>{r.value=performance.now()-a.timeStamp,n(!0)}))})))}))},B=[.1,.25],X=(t,e={})=>{const i=y();G(F((()=>{let n,r=u("CLS",0);const o=I(e,z),a=d=>{for(const c of d)o.h(c);o.i>r.value&&(r.value=o.i,r.entries=o.o,n())},s=g("layout-shift",a);s&&(n=l(t,r,B,e.reportAllChanges),i.onHidden((()=>{a(s.takeRecords()),n(!0)})),f((()=>{o.i=0,r=u("CLS",0),n=l(t,r,B,e.reportAllChanges),w((()=>n()))})),setTimeout(n))})))};let D=0,b=1/0,T=0;const J=t=>{for(const e of t)e.interactionId&&(b=Math.min(b,e.interactionId),T=Math.max(T,e.interactionId),D=T?(T-b)/7+1:0)};let S;const H=()=>S?D:performance.interactionCount??0,K=()=>{"interactionCount"in performance||S||(S=g("event",J,{type:"event",buffered:!0,durationThreshold:0}))};let x=0;class Q{constructor(){h(this,"u",[]);h(this,"l",new Map);h(this,"m");h(this,"p")}v(){x=H(),this.u.length=0,this.l.clear()}L(){const e=Math.min(this.u.length-1,Math.floor((H()-x)/50));return this.u[e]}h(e){var r,o;if((r=this.m)==null||r.call(this,e),!e.interactionId&&e.entryType!=="first-input")return;const i=this.u.at(-1);let n=this.l.get(e.interactionId);if(n||this.u.length<10||e.duration>i.P){if(n?e.duration>n.P?(n.entries=[e],n.P=e.duration):e.duration===n.P&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],P:e.duration},this.l.set(n.id,n),this.u.push(n)),this.u.sort(((a,s)=>s.P-a.P)),this.u.length>10){const a=this.u.splice(10);for(const s of a)this.l.delete(s.id)}(o=this.p)==null||o.call(this,n)}}}const _=t=>{const e=globalThis.requestIdleCallback||setTimeout;document.visibilityState==="hidden"?t():(t=F(t),addEventListener("visibilitychange",t,{once:!0,capture:!0}),e((()=>{t(),removeEventListener("visibilitychange",t,{capture:!0})})))},N=[200,500],Y=(t,e={})=>{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;const i=y();C((()=>{K();let n,r=u("INP");const o=I(e,Q),a=d=>{_((()=>{for(const p of d)o.h(p);const c=o.L();c&&c.P!==r.value&&(r.value=c.P,r.entries=c.entries,n())}))},s=g("event",a,{durationThreshold:e.durationThreshold??40});n=l(t,r,N,e.reportAllChanges),s&&(s.observe({type:"first-input",buffered:!0}),i.onHidden((()=>{a(s.takeRecords()),n(!0)})),f((()=>{o.v(),r=u("INP"),n=l(t,r,N,e.reportAllChanges)})))}))};class U{constructor(){h(this,"m")}h(e){var i;(i=this.m)==null||i.call(this,e)}}const q=[2500,4e3],Z=(t,e={})=>{C((()=>{const i=y();let n,r=u("LCP");const o=I(e,U),a=d=>{e.reportAllChanges||(d=d.slice(-1));for(const c of d)o.h(c),c.startTime<i.firstHiddenTime&&(r.value=Math.max(c.startTime-v(),0),r.entries=[c],n())},s=g("largest-contentful-paint",a);if(s){n=l(t,r,q,e.reportAllChanges);const d=F((()=>{a(s.takeRecords()),s.disconnect(),n(!0)})),c=p=>{p.isTrusted&&(_(d),removeEventListener(p.type,c,{capture:!0}))};for(const p of["keydown","click","visibilitychange"])addEventListener(p,c,{capture:!0});f((p=>{r=u("LCP"),n=l(t,r,q,e.reportAllChanges),w((()=>{r.value=performance.now()-p.timeStamp,n(!0)}))}))}}))},R=[800,1800],E=t=>{document.prerendering?C((()=>E(t))):document.readyState!=="complete"?addEventListener("load",(()=>E(t)),!0):setTimeout(t)},ee=(t,e={})=>{let i=u("TTFB"),n=l(t,i,R,e.reportAllChanges);E((()=>{const r=A();r&&(i.value=Math.max(r.responseStart-v(),0),i.entries=[r],n(!0),f((()=>{i=u("TTFB",0),n=l(t,i,R,e.reportAllChanges),n(!0)})))}))};export{B as CLSThresholds,k as FCPThresholds,N as INPThresholds,q as LCPThresholds,R as TTFBThresholds,X as onCLS,G as onFCP,Y as onINP,Z as onLCP,ee as onTTFB};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function a(e){return new RegExp("^(("+e.join(")|(")+"))\\b")}var l=["Clamp","Constructor","EnforceRange","Exposed","ImplicitThis","Global","PrimaryGlobal","LegacyArrayClass","LegacyUnenumerableNamedProperties","LenientThis","NamedConstructor","NewObject","NoInterfaceObject","OverrideBuiltins","PutForwards","Replaceable","SameObject","TreatNonObjectAsNull","TreatNullAs","EmptyString","Unforgeable","Unscopeable"],u=a(l),o=["unsigned","short","long","unrestricted","float","double","boolean","byte","octet","Promise","ArrayBuffer","DataView","Int8Array","Int16Array","Int32Array","Uint8Array","Uint16Array","Uint32Array","Uint8ClampedArray","Float32Array","Float64Array","ByteString","DOMString","USVString","sequence","object","RegExp","Error","DOMException","FrozenArray","any","void"],m=a(o),c=["attribute","callback","const","deleter","dictionary","enum","getter","implements","inherit","interface","iterable","legacycaller","maplike","partial","required","serializer","setlike","setter","static","stringifier","typedef","optional","readonly","or"],s=a(c),f=["true","false","Infinity","NaN","null"],y=a(f),d=["callback","dictionary","enum","interface"],p=a(d),b=["typedef"],v=a(b),A=/^[:<=>?]/,g=/^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/,h=/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/,i=/^_?[A-Za-z][0-9A-Z_a-z-]*/,D=/^_?[A-Za-z][0-9A-Z_a-z-]*(?=\s*;)/,k=/^"[^"]*"/,E=/^\/\*.*?\*\//,C=/^\/\*.*/,w=/^.*?\*\//;function N(e,r){if(e.eatSpace())return null;if(r.inComment)return e.match(w)?(r.inComment=!1,"comment"):(e.skipToEnd(),"comment");if(e.match("//"))return e.skipToEnd(),"comment";if(e.match(E))return"comment";if(e.match(C))return r.inComment=!0,"comment";if(e.match(/^-?[0-9\.]/,!1)&&(e.match(g)||e.match(h)))return"number";if(e.match(k))return"string";if(r.startDef&&e.match(i))return"def";if(r.endDef&&e.match(D))return r.endDef=!1,"def";if(e.match(s))return"keyword";if(e.match(m)){var t=r.lastToken,n=(e.match(/^\s*(.+?)\b/,!1)||[])[1];return t===":"||t==="implements"||n==="implements"||n==="="?"builtin":"type"}return e.match(u)?"builtin":e.match(y)?"atom":e.match(i)?"variable":e.match(A)?"operator":(e.next(),null)}const S={name:"webidl",startState:function(){return{inComment:!1,lastToken:"",startDef:!1,endDef:!1}},token:function(e,r){var t=N(e,r);if(t){var n=e.current();r.lastToken=n,t==="keyword"?(r.startDef=p.test(n),r.endDef=r.endDef||v.test(n)):r.startDef=!1}return t},languageData:{autocomplete:l.concat(o).concat(c).concat(f)}};export{S as webIDL};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(){var n,q=document.createElement("style");q.innerHTML="@keyframes wb-fade-in{0%{opacity:0}to{opacity:.85}}.winbox{position:fixed;left:0;top:0;background:#0050ff;box-shadow:0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22);transition:width .3s,height .3s,left .3s,top .3s;transition-timing-function:cubic-bezier(.3,1,.3,1);contain:layout size;text-align:left;touch-action:none}.wb-body,.wb-header{position:absolute;left:0}.wb-header{top:0;width:100%;height:35px;line-height:35px;color:#fff;overflow:hidden;z-index:1}.wb-body{top:35px;right:0;bottom:0;overflow:auto;-webkit-overflow-scrolling:touch;overflow-scrolling:touch;will-change:contents;background:#fff;margin-top:0!important;contain:strict;z-index:0}.wb-control *,.wb-icon{background-repeat:no-repeat}.wb-drag{height:100%;padding-left:10px;cursor:move}.wb-title{font-family:Arial,sans-serif;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-icon{display:none;width:20px;height:100%;margin:-1px 8px 0-3px;float:left;background-size:100%;background-position:center}.wb-e,.wb-w{width:10px;top:0}.wb-n,.wb-s{left:0;height:10px;position:absolute}.wb-n{top:-5px;right:0;cursor:n-resize;z-index:2}.wb-e{position:absolute;right:-5px;bottom:0;cursor:w-resize;z-index:2}.wb-s{bottom:-5px;right:0;cursor:n-resize;z-index:2}.wb-nw,.wb-sw,.wb-w{left:-5px}.wb-w{position:absolute;bottom:0;cursor:w-resize;z-index:2}.wb-ne,.wb-nw,.wb-sw{width:15px;height:15px;z-index:2;position:absolute}.wb-nw{top:-5px;cursor:nw-resize}.wb-ne,.wb-sw{cursor:ne-resize}.wb-ne{top:-5px;right:-5px}.wb-se,.wb-sw{bottom:-5px}.wb-se{position:absolute;right:-5px;width:15px;height:15px;cursor:nw-resize;z-index:2}.wb-control{float:right;height:100%;max-width:100%;text-align:center}.wb-control *{display:inline-block;width:30px;height:100%;max-width:100%;background-position:center;cursor:pointer}.no-close .wb-close,.no-full .wb-full,.no-header .wb-header,.no-max .wb-max,.no-min .wb-min,.no-resize .wb-body~div,.wb-body .wb-hide,.wb-show,.winbox.hide,.winbox.min .wb-body>*,.winbox.min .wb-full,.winbox.min .wb-min,.winbox.modal .wb-full,.winbox.modal .wb-max,.winbox.modal .wb-min{display:none}.winbox.max .wb-drag,.winbox.min .wb-drag{cursor:default}.wb-min{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAyIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNOCAwaDdhMSAxIDAgMCAxIDAgMkgxYTEgMSAwIDAgMSAwLTJoN3oiLz48L3N2Zz4=);background-size:14px auto;background-position:center calc(50% + 6px)}.wb-max{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNmZmYiIHZpZXdCb3g9IjAgMCA5NiA5NiI+PHBhdGggZD0iTTIwIDcxLjMxMUMxNS4zNCA2OS42NyAxMiA2NS4yMyAxMiA2MFYyMGMwLTYuNjMgNS4zNy0xMiAxMi0xMmg0MGM1LjIzIDAgOS42NyAzLjM0IDExLjMxMSA4SDI0Yy0yLjIxIDAtNCAxLjc5LTQgNHY1MS4zMTF6Ii8+PHBhdGggZD0iTTkyIDc2VjM2YzAtNi42My01LjM3LTEyLTEyLTEySDQwYy02LjYzIDAtMTIgNS4zNy0xMiAxMnY0MGMwIDYuNjMgNS4zNyAxMiAxMiAxMmg0MGM2LjYzIDAgMTItNS4zNyAxMi0xMnptLTUyIDRjLTIuMjEgMC00LTEuNzktNC00VjM2YzAtMi4yMSAxLjc5LTQgNC00aDQwYzIuMjEgMCA0IDEuNzkgNCA0djQwYzAgMi4yMS0xLjc5IDQtNCA0SDQweiIvPjwvc3ZnPg==);background-size:17px auto}.wb-close{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9Ii0xIC0xIDE4IDE4Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJtMS42MTMuMjEuMDk0LjA4M0w4IDYuNTg1IDE0LjI5My4yOTNsLjA5NC0uMDgzYTEgMSAwIDAgMSAxLjQwMyAxLjQwM2wtLjA4My4wOTRMOS40MTUgOGw2LjI5MiA2LjI5M2ExIDEgMCAwIDEtMS4zMiAxLjQ5N2wtLjA5NC0uMDgzTDggOS40MTVsLTYuMjkzIDYuMjkyLS4wOTQuMDgzQTEgMSAwIDAgMSAuMjEgMTQuMzg3bC4wODMtLjA5NEw2LjU4NSA4IC4yOTMgMS43MDdBMSAxIDAgMCAxIDEuNjEzLjIxeiIvPjwvc3ZnPg==);background-size:15px auto;background-position:5px center}.wb-full{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjIuNSIgdmlld0JveD0iMCAwIDI0IDI0Ij48cGF0aCBkPSJNOCAzSDVhMiAyIDAgMCAwLTIgMnYzbTE4IDBWNWEyIDIgMCAwIDAtMi0yaC0zbTAgMThoM2EyIDIgMCAwIDAgMi0ydi0zTTMgMTZ2M2EyIDIgMCAwIDAgMiAyaDMiLz48L3N2Zz4=);background-size:16px auto}.winbox.max .wb-body~div,.winbox.min .wb-body~div,.winbox.modal .wb-body~div,.winbox.modal .wb-drag,body.wb-lock iframe{pointer-events:none}.winbox.max{box-shadow:none}.winbox.max .wb-body{margin:0!important}.winbox iframe{position:absolute;width:100%;height:100%;border:0}body.wb-lock .winbox{will-change:left,top,width,height;transition:none}.winbox.modal:before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:inherit;border-radius:inherit}.winbox.modal:after{content:'';position:absolute;top:-50vh;left:-50vw;right:-50vw;bottom:-50vh;background:#0d1117;animation:wb-fade-in .2s ease-out forwards;z-index:-1}.no-animation{transition:none}.no-shadow{box-shadow:none}.no-header .wb-body{top:0}.no-move:not(.min) .wb-title{pointer-events:none}.wb-body .wb-show{display:revert}";var G=document.getElementsByTagName("head")[0];G.firstChild?G.insertBefore(q,G.firstChild):G.appendChild(q);var ti=document.createElement("div");ti.innerHTML="<div class=wb-header><div class=wb-control><span class=wb-min></span><span class=wb-max></span><span class=wb-full></span><span class=wb-close></span></div><div class=wb-drag><div class=wb-icon></div><div class=wb-title></div></div></div><div class=wb-body></div><div class=wb-n></div><div class=wb-s></div><div class=wb-w></div><div class=wb-e></div><div class=wb-nw></div><div class=wb-ne></div><div class=wb-se></div><div class=wb-sw></div>";function l(i,t,e,o){i&&i.addEventListener(t,e,o||!1)}function Q(i,t){var e=window,o=Y;e&&e.removeEventListener(i,t,o||!1)}function C(i,t){i.stopPropagation(),t&&i.preventDefault()}function d(i,t,e){e=""+e,i["_s_"+t]!==e&&(i.style.setProperty(t,e),i["_s_"+t]=e)}var L=[],f=[],ei={capture:!0,passive:!1},Y={capture:!0,passive:!0},g,li=0,O=10,E,y,si,u,v,X;function N(i,t){if(!(this instanceof N))return new N(i);if(g||di(),i){if(t){var e=i;i=t}if(typeof i=="string")e=i;else{var o=i.id,s=i.index,m=i.root,c=i.template;e=e||i.title;var b=i.icon,T=i.mount,H=i.html,r=i.url,a=i.width,w=i.height,x=i.minwidth,I=i.minheight,p=i.maxwidth,M=i.maxheight,$=i.autosize,A=i.overflow,D=i.min,j=i.max,k=i.hidden,ii=i.modal,R=i.x||(ii?"center":0),V=i.y||(ii?"center":0),S=i.top,B=i.left,P=i.bottom,W=i.right,ri=i.background,Z=i.border,F=i.header,_=i.class,hi=i.oncreate,mi=i.onclose,ci=i.onfocus,ai=i.onblur,wi=i.onmove,fi=i.onresize,gi=i.onfullscreen,bi=i.onmaximize,xi=i.onminimize,vi=i.onrestore,pi=i.onhide,Mi=i.onshow,yi=i.onload}}this.g=(c||ti).cloneNode(!0),this.g.id=this.id=o||"winbox-"+ ++li,this.g.className="winbox"+(_?" "+(typeof _=="string"?_:_.join(" ")):"")+(ii?" modal":""),this.g.winbox=this,this.window=this.g,this.body=this.g.getElementsByClassName("wb-body")[0],this.h=F||35,f.push(this),ri&&this.setBackground(ri),Z?d(this.body,"margin",Z+(isNaN(Z)?"":"px")):Z=0,F&&(t=this.g.getElementsByClassName("wb-header")[0],d(t,"height",F+"px"),d(t,"line-height",F+"px"),d(this.body,"top",F+"px")),e&&this.setTitle(e),b&&this.setIcon(b),T?this.mount(T):H?this.body.innerHTML=H:r&&this.setUrl(r,yi),S=S?h(S,v):0,P=P?h(P,v):0,B=B?h(B,u):0,W=W?h(W,u):0,e=u-B-W,b=v-S-P,p=p?h(p,e):e,M=M?h(M,b):b,x=x?h(x,p):150,I=I?h(I,M):this.h,$?((m||g).appendChild(this.body),a=Math.max(Math.min(this.body.clientWidth+2*Z+1,p),x),w=Math.max(Math.min(this.body.clientHeight+this.h+Z+1,M),I),this.g.appendChild(this.body)):(a=a?h(a,p):Math.max(p/2,x)|0,w=w?h(w,M):Math.max(M/2,I)|0),R=R?h(R,e,a):B,V=V?h(V,b,w):S,this.x=R,this.y=V,this.width=a,this.height=w,this.s=x,this.o=I,this.m=p,this.l=M,this.top=S,this.right=W,this.bottom=P,this.left=B,this.index=s,this.j=A,this.focused=this.hidden=this.full=this.max=this.min=!1,this.onclose=mi,this.onfocus=ci,this.onblur=ai,this.onmove=wi,this.onresize=fi,this.onfullscreen=gi,this.onmaximize=bi,this.onminimize=xi,this.onrestore=vi,this.onhide=pi,this.onshow=Mi,k?this.hide():this.focus(),(s||s===0)&&(this.index=s,d(this.g,"z-index",s),s>O&&(O=s)),j?this.maximize():D?this.minimize():this.resize().move(),ui(this),(m||g).appendChild(this.g),hi&&hi.call(this,i)}N.new=function(i){return new N(i)},N.stack=function(){return f};function h(i,t,e){return typeof i=="string"&&(i==="center"?i=(t-e)/2+.5|0:i==="right"||i==="bottom"?i=t-e:(e=parseFloat(i),i=(""+e!==i&&i.substring((""+e).length))==="%"?t/100*e+.5|0:e)),i}function di(){g=document.body,g[y="requestFullscreen"]||g[y="msRequestFullscreen"]||g[y="webkitRequestFullscreen"]||g[y="mozRequestFullscreen"]||(y=""),si=y&&y.replace("request","exit").replace("mozRequest","mozCancel").replace("Request","Exit"),l(window,"resize",function(){ni(),K()}),l(g,"mousedown",function(){X=!1},!0),l(g,"mousedown",function(){if(!X){var i=f.length;if(i)for(--i;0<=i;i--){var t=f[i];if(t.focused){t.blur();break}}}}),ni()}function ui(i){z(i,"drag"),z(i,"n"),z(i,"s"),z(i,"w"),z(i,"e"),z(i,"nw"),z(i,"ne"),z(i,"se"),z(i,"sw"),l(i.g.getElementsByClassName("wb-min")[0],"click",function(t){C(t),i.min?i.restore().focus():i.minimize()}),l(i.g.getElementsByClassName("wb-max")[0],"click",function(t){C(t),i.max?i.restore().focus():i.maximize().focus()}),y?l(i.g.getElementsByClassName("wb-full")[0],"click",function(t){C(t),i.fullscreen().focus()}):i.addClass("no-full"),l(i.g.getElementsByClassName("wb-close")[0],"click",function(t){C(t),i.close()||(i=null)}),l(i.g,"mousedown",function(){X=!0},!0),l(i.body,"mousedown",function(){i.focus()},!0)}function U(i){L.splice(L.indexOf(i),1),K(),i.removeClass("min"),i.min=!1,i.g.title=""}function K(){for(var i=L.length,t={},e={},o=0,s;o<i;o++)s=L[o],s=s.left+":"+s.top,e[s]?e[s]++:(t[s]=0,e[s]=1);o=0;for(var m,c;o<i;o++)s=L[o],m=s.left+":"+s.top,c=Math.min((u-s.left-s.right)/e[m],250),s.resize(c+1|0,s.h,!0).move(s.left+t[m]*c|0,v-s.bottom-s.h,!0),t[m]++}function z(i,t){function e(r){if(C(r,!0),i.focus(),t==="drag"){if(i.min){i.restore();return}if(!i.g.classList.contains("no-max")){var a=Date.now(),w=a-H;if(H=a,300>w){i.max?i.restore():i.maximize();return}}}i.min||(g.classList.add("wb-lock"),(c=r.touches)&&(c=c[0])?(r=c,l(window,"touchmove",o,Y),l(window,"touchend",s,Y)):(l(window,"mousemove",o,Y),l(window,"mouseup",s,Y)),b=r.pageX,T=r.pageY)}function o(r){C(r),c&&(r=r.touches[0]);var a=r.pageX;r=r.pageY;var w=a-b,x=r-T,I=i.width,p=i.height,M=i.x,$=i.y,A;if(t==="drag"){if(i.g.classList.contains("no-move"))return;i.x+=w,i.y+=x;var D=A=1}else{if(t==="e"||t==="se"||t==="ne"){i.width+=w;var j=1}else(t==="w"||t==="sw"||t==="nw")&&(i.x+=w,i.width-=w,D=j=1);if(t==="s"||t==="se"||t==="sw"){i.height+=x;var k=1}else(t==="n"||t==="ne"||t==="nw")&&(i.y+=x,i.height-=x,A=k=1)}j&&(i.width=Math.max(Math.min(i.width,i.m,u-i.x-i.right),i.s),j=i.width!==I),k&&(i.height=Math.max(Math.min(i.height,i.l,v-i.y-i.bottom),i.o),k=i.height!==p),(j||k)&&i.resize(),D&&(i.max&&(i.x=(a<u/3?i.left:a>u/3*2?u-i.width-i.right:u/2-i.width/2)+w),i.x=Math.max(Math.min(i.x,i.j?u-30:u-i.width-i.right),i.j?30-i.width:i.left),D=i.x!==M),A&&(i.max&&(i.y=i.top+x),i.y=Math.max(Math.min(i.y,i.j?v-i.h:v-i.height-i.bottom),i.top),A=i.y!==$),(D||A)&&(i.max&&i.restore(),i.move()),(j||D)&&(b=a),(k||A)&&(T=r)}function s(r){C(r),g.classList.remove("wb-lock"),c?(Q("touchmove",o),Q("touchend",s)):(Q("mousemove",o),Q("mouseup",s))}var m=i.g.getElementsByClassName("wb-"+t)[0];if(m){var c,b,T,H=0;l(m,"mousedown",e,ei),l(m,"touchstart",e,ei)}}function ni(){var i=document.documentElement;u=i.clientWidth,v=i.clientHeight}n=N.prototype,n.mount=function(i){return this.unmount(),i.i||(i.i=i.parentNode),this.body.textContent="",this.body.appendChild(i),this},n.unmount=function(i){var t=this.body.firstChild;if(t){var e=i||t.i;e&&e.appendChild(t),t.i=i}return this},n.setTitle=function(i){var t=this.g.getElementsByClassName("wb-title")[0];i=this.title=i;var e=t.firstChild;return e?e.nodeValue=i:t.textContent=i,this},n.setIcon=function(i){var t=this.g.getElementsByClassName("wb-icon")[0];return d(t,"background-image","url("+i+")"),d(t,"display","inline-block"),this},n.setBackground=function(i){return d(this.g,"background",i),this},n.setUrl=function(i,t){var e=this.body.firstChild;return e&&e.tagName.toLowerCase()==="iframe"?e.src=i:(this.body.innerHTML='<iframe src="'+i+'"></iframe>',t&&(this.body.firstChild.onload=t)),this},n.focus=function(i){if(i===!1)return this.blur();if(!this.focused){if(i=f.length,1<i)for(var t=1;t<=i;t++){var e=f[i-t];if(e.focused){e.blur(),f.push(f.splice(f.indexOf(this),1)[0]);break}}d(this.g,"z-index",++O),this.index=O,this.addClass("focus"),this.focused=!0,this.onfocus&&this.onfocus()}return this},n.blur=function(i){return i===!1?this.focus():(this.focused&&(this.removeClass("focus"),this.focused=!1,this.onblur&&this.onblur()),this)},n.hide=function(i){if(i===!1)return this.show();if(!this.hidden)return this.onhide&&this.onhide(),this.hidden=!0,this.addClass("hide")},n.show=function(i){if(i===!1)return this.hide();if(this.hidden)return this.onshow&&this.onshow(),this.hidden=!1,this.removeClass("hide")},n.minimize=function(i){return i===!1?this.restore():(E&&J(),this.max&&(this.removeClass("max"),this.max=!1),this.min||(L.push(this),K(),this.g.title=this.title,this.addClass("min"),this.min=!0,this.focused&&(this.blur(),oi()),this.onminimize&&this.onminimize()),this)};function oi(){var i=f.length;if(i)for(--i;0<=i;i--){var t=f[i];if(!t.min){t.focus();break}}}n.restore=function(){return E&&J(),this.min&&(U(this),this.resize().move(),this.onrestore&&this.onrestore()),this.max&&(this.max=!1,this.removeClass("max").resize().move(),this.onrestore&&this.onrestore()),this},n.maximize=function(i){return i===!1?this.restore():(E&&J(),this.min&&U(this),this.max||(this.addClass("max").resize(u-this.left-this.right,v-this.top-this.bottom,!0).move(this.left,this.top,!0),this.max=!0,this.onmaximize&&this.onmaximize()),this)},n.fullscreen=function(i){if(this.min&&(U(this),this.resize().move()),!E||!J())this.body[y](),E=this,this.full=!0,this.onfullscreen&&this.onfullscreen();else if(i===!1)return this.restore();return this};function J(){if(E.full=!1,document.fullscreen||document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement)return document[si](),!0}n.close=function(i){if(this.onclose&&this.onclose(i))return!0;this.min&&U(this),f.splice(f.indexOf(this),1),this.unmount(),this.g.remove(),this.g.textContent="",this.g=this.body=this.g.winbox=null,this.focused&&oi()},n.move=function(i,t,e){return i||i===0?e||(this.x=i?i=h(i,u-this.left-this.right,this.width):0,this.y=t?t=h(t,v-this.top-this.bottom,this.height):0):(i=this.x,t=this.y),d(this.g,"left",i+"px"),d(this.g,"top",t+"px"),this.onmove&&this.onmove(i,t),this},n.resize=function(i,t,e){return i||i===0?e||(this.width=i?i=h(i,this.m):0,this.height=t?t=h(t,this.l):0,i=Math.max(i,this.s),t=Math.max(t,this.o)):(i=this.width,t=this.height),d(this.g,"width",i+"px"),d(this.g,"height",t+"px"),this.onresize&&this.onresize(i,t),this},n.addControl=function(i){var t=i.class,e=i.image,o=i.click;i=i.index;var s=document.createElement("span"),m=this.g.getElementsByClassName("wb-control")[0],c=this;return t&&(s.className=t),e&&d(s,"background-image","url("+e+")"),o&&(s.onclick=function(b){o.call(this,b,c)}),m.insertBefore(s,m.childNodes[i||0]),this},n.removeControl=function(i){return(i=this.g.getElementsByClassName(i)[0])&&i.remove(),this},n.addClass=function(i){return this.g.classList.add(i),this},n.removeClass=function(i){return this.g.classList.remove(i),this},n.toggleClass=function(i){return this.g.classList.contains(i)?this.removeClass(i):this.addClass(i)},window.WinBox=N}).call(void 0);
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./tool-windows-Cuh0TRgJ.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{at as z,i0 as A,ia as D,_ as b}from"./tool-windows-DWUG3k_L.js";async function O(t,e,i){if(t.size===0)throw new Error("Invalid frame blob: size is 0");const l=`/__aitu_cache__/video-frame_${e}_${i}`;return await z.cacheMediaFromBlob(l,t,"image",{metadata:{source:"video-frame",shotId:e,frameType:i}}),l}async function H(t,e,i){const l=URL.createObjectURL(t),c=document.createElement("video");c.muted=!0,c.preload="auto";try{await new Promise((m,h)=>{c.onloadedmetadata=()=>m(),c.onerror=()=>h(new Error("Failed to load video")),c.src=l});const a=document.createElement("canvas"),d=a.getContext("2d"),r=Math.min(1,320/c.videoWidth);a.width=Math.round(c.videoWidth*r),a.height=Math.round(c.videoHeight*r);const n=[];for(let m=0;m<e.length;m++){i==null||i(m,e.length);try{const h=await S(c,a,d,e[m]);n.push(h)}catch{n.push(null)}}return i==null||i(e.length,e.length),n}finally{URL.revokeObjectURL(l),c.src=""}}async function Z(t,e,i,l){const c=l||i,a=document.createElement("video");a.muted=!0,a.preload="auto",a.crossOrigin="anonymous";try{await new Promise((E,v)=>{a.onloadedmetadata=()=>E(),a.onerror=()=>v(new Error("Failed to load video")),a.src=t});const d=document.createElement("canvas"),s=d.getContext("2d"),n=Math.min(1,1280/a.videoWidth);d.width=Math.round(a.videoWidth*n),d.height=Math.round(a.videoHeight*n);const m=c==="first"?Math.min(.1,a.duration):Math.max(0,a.duration-.1),h=await S(a,d,s,m);return await O(h,e,i)}catch(d){return console.debug("[video-frame-cache] extractFrameFromUrl failed:",d),null}finally{a.src=""}}function S(t,e,i,l){return new Promise((c,a)=>{const d=Math.min(Math.max(0,l),t.duration||0);t.currentTime=d;const s=()=>{t.removeEventListener("seeked",s),i.drawImage(t,0,0,e.width,e.height),e.toBlob(r=>{r&&r.size>0?c(r):a(new Error("toBlob returned empty"))},"image/jpeg",.85)};t.addEventListener("seeked",s)})}function G(t){const{model:e,firstFrameUrl:i,lastFrameUrl:l,extraReferenceUrls:c=[],characterReferenceUrls:a=[]}=t,d=D(e),s=[],r=n=>{!n||s.includes(n)||s.push(n)};if(d.imageUpload.mode==="frames"){r(i),r(l);const n=s.length>0?s.slice(0,d.imageUpload.maxCount):void 0,m=a.length>0?a:void 0;return{referenceImages:n,unusedCharacterReferenceUrls:m}}for(const n of a)if(r(n),s.length>=d.imageUpload.maxCount)break;r(i);for(const n of c)if(r(n),s.length>=d.imageUpload.maxCount)break;return{referenceImages:s.length>0?s:void 0}}async function Y(t,e){return A(t,{interval:1e3,timeout:1800*1e3,signal:e})}function j(t){return Math.max(2,String(Math.max(t,0)).length)}function T(t,e){return String(t).padStart(e,"0")}function M(t,e,i){const l=T(t+1,i);return e==="first"?`${l}.首帧`:e==="last"?`${l}.尾帧`:`${l}.视频`}function P(t){return["#!/bin/sh","set -eu","",'cd "$(dirname "$0")"',"",`MANIFEST_FILE=${JSON.stringify(t)}`,"",'if [ ! -f "$MANIFEST_FILE" ]; then',' echo "未找到 $MANIFEST_FILE"'," exit 1","fi","","download_if_missing() {",' file_name="$1"',' source_url="$2"',' if [ -s "$file_name" ]; then',' echo "[skip] $file_name"'," return 0"," fi",' echo "[download] $file_name"',' curl -L --fail --retry 3 --retry-delay 1 --output "$file_name.part" "$source_url"',' mv "$file_name.part" "$file_name"',"}","","emit_entries() {"," if command -v node >/dev/null 2>&1; then",` node -e 'const fs=require("fs"); const manifest=JSON.parse(fs.readFileSync(process.argv[1],"utf8")); for (const entry of manifest.downloadEntries||[]) { if (entry?.fileName && entry?.url) process.stdout.write(String(entry.fileName)+"\\t"+String(entry.url)+"\\n"); }' "$MANIFEST_FILE"`," return 0"," fi",""," if command -v python3 >/dev/null 2>&1; then",` python3 - "$MANIFEST_FILE" <<'PY'`,"import json, sys","with open(sys.argv[1], 'r', encoding='utf-8') as fh:"," manifest = json.load(fh)","for entry in manifest.get('downloadEntries', []):"," file_name = entry.get('fileName')"," url = entry.get('url')"," if file_name and url:",' print(f"{file_name}\\t{url}")',"PY"," return 0"," fi","",' echo "需要 node 或 python3 来解析 $MANIFEST_FILE" >&2'," return 1","}","",'TMP_ENTRIES_FILE="$(mktemp -t workflow-download-entries.XXXXXX)"',`trap 'rm -f "$TMP_ENTRIES_FILE"' EXIT INT TERM`,"",'emit_entries > "$TMP_ENTRIES_FILE"',"","while IFS=' ' read -r file_name source_url; do",' [ -n "${file_name:-}" ] || continue',' [ -n "${source_url:-}" ] || continue',' download_if_missing "$file_name" "$source_url"','done < "$TMP_ENTRIES_FILE"',"",'echo "下载完成"',""].join(`
|
|
3
|
+
`)}function X(t){return t.map(e=>({...e,generated_first_frame_url:void 0,generated_last_frame_url:void 0,generated_video_url:void 0,suppressed_generated_urls:void 0}))}function V(t){return t.map(e=>({...e,referenceImageUrl:void 0}))}function q(t,e){return{shots:X(t),characters:V(e)}}function K(t){return t.flatMap((e,i)=>{const l=[];return e.generated_first_frame_url&&l.push({url:e.generated_first_frame_url,type:"image",kind:"first",shotIndex:i}),e.generated_last_frame_url&&l.push({url:e.generated_last_frame_url,type:"image",kind:"last",shotIndex:i}),e.generated_video_url&&l.push({url:e.generated_video_url,type:"video",kind:"video",shotIndex:i}),l})}async function Q(t){const{recordId:e,fileNamePrefix:i,zipBaseName:l,scriptMarkdown:c,recordMeta:a,shots:d,assets:s,audioAsset:r,onProgress:n}=t,m=new Date().toISOString(),h=j(d.length),E=T(0,h),{default:v}=await b(async()=>{const{default:o}=await import("./tool-windows-DWUG3k_L.js").then(u=>u.j);return{default:o}},__vite__mapDeps([0]),import.meta.url),{downloadFromBlob:N,getFileExtension:F,normalizeImageDataUrl:U,processBatchWithConcurrency:L}=await b(async()=>{const{downloadFromBlob:o,getFileExtension:u,normalizeImageDataUrl:p,processBatchWithConcurrency:_}=await import("./tool-windows-DWUG3k_L.js").then(w=>w.on);return{downloadFromBlob:o,getFileExtension:u,normalizeImageDataUrl:p,processBatchWithConcurrency:_}},__vite__mapDeps([0]),import.meta.url),$=new v,f={exportedAt:m,record:a,files:{script:`${E}.脚本.md`,music:null,manifest:`${E}.manifest.json`,downloadScript:`${E}.补全下载.sh`},shots:d.map((o,u)=>({index:u+1,id:o.id,label:o.label||`镜头 ${u+1}`,startTime:o.startTime,endTime:o.endTime,files:{first:null,last:null,video:null}})),errors:[],downloadEntries:[]};if($.file(f.files.script,c),n==null||n(s.length>0||r?8:40),r!=null&&r.url){const o=r.plannedFileName||`${E}.音乐.mp3`;f.downloadEntries.push({fileName:o,url:r.url});try{const u=await fetch(r.url,{referrerPolicy:"no-referrer"});if(!u.ok)throw new Error(`HTTP ${u.status}`);const p=await u.blob(),_=F(r.url,p.type)||r.fallbackExtension||"mp3",w=o.replace(/\.[^.]+$/,`.${_}`);$.file(w,p),f.files.music=w,w!==o&&(f.downloadEntries[f.downloadEntries.length-1].fileName=w)}catch(u){f.files.music=o,f.errors.push(r.downloadErrorMessage||"音乐下载失败"),console.error("[workflow-export] Failed to export audio asset:",r.url,u)}}else r!=null&&r.missingErrorMessage&&f.errors.push(r.missingErrorMessage);await L(s,async(o,u)=>{const p=o.type==="image"?U(o.url):o.url,_=f.shots[o.shotIndex],w=o.type==="image"?"png":"mp4",I=`${M(o.shotIndex,o.kind,h)}.${w}`;f.downloadEntries.push({fileName:I,url:p});try{const g=await fetch(p,{referrerPolicy:"no-referrer"});if(!g.ok)throw new Error(`HTTP ${g.status}`);const x=await g.blob(),B=F(p,x.type)||w,y=`${M(o.shotIndex,o.kind,h)}.${B}`;$.file(y,x),_.files[o.kind]=y,y!==I&&(f.downloadEntries[f.downloadEntries.length-1].fileName=y)}catch(g){const x=(_==null?void 0:_.label)||`镜头 ${o.shotIndex+1}`;f.errors.push(`${x} ${o.kind} 下载失败`),_.files[o.kind]=I,console.error("[workflow-export] Failed to export asset:",p,g)}finally{const g=u+1,x=s.length>0?Math.round(g/s.length*62):62;n==null||n(8+x)}},3),$.file(f.files.downloadScript,P(f.files.manifest),{unixPermissions:493}),$.file(f.files.manifest,JSON.stringify(f,null,2));const W=await $.generateAsync({type:"blob"},o=>n==null?void 0:n(70+Math.round(o.percent*.3))),R=e.replace(/[^a-zA-Z0-9_-]/g,""),C=m.slice(0,19).replace(/[:T]/g,"-"),k=`${l}_${R||i}_${C}.zip`;return N(W,k),n==null||n(100),{assetCount:s.length,zipFileName:k}}export{K as a,Z as b,O as c,G as d,H as e,Q as f,q as r,Y as w};
|