1import{r as s,j as e}from"./vendor-react-B--7RBOU.js";import{c as O,T as w,S,a as U}from"./index-nJ2jv59_.js";import{generateContent as D}from"./geminiService-B6EQiH8U.js";import{buildViralStructureBreakdownSpec as G,buildUltraDetailCoreRules as P,buildViralAnalysisTableFormat as B}from"./segmentPromptSpec-DIAXvWzT.js";import{F as q}from"./file-video-DTbZCZGj.js";import{U as T}from"./upload-DoBpSw_7.js";import{G as H}from"./globe-D5nXzRzd.js";import{R as Y}from"./refresh-cw-Cj3hYgA9.js";import"./vendor-batch-utils-CGYAwOYr.js";import"./ossUpload-Dr_HOKC1.js";/** 2 * @license lucide-react v0.344.0 - ISC 3 * 4 * This source code is licensed under the ISC license. 5 * See the LICENSE file in the root directory of this source tree. 6 */const Z=O("SquarePen",[["path",{d:"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7",key:"1m0v6g"}],["path",{d:"M18.375 2.625a2.121 2.121 0 1 1 3 3L12 15l-4 1 1-4Z",key:"1lpok0"}]]),ce=()=>{const[n,C]=s.useState(null),[J,K]=s.useState(()=>localStorage.getItem("viral_analysis_video_name")||""),m="CUSTOM",[c,I]=s.useState(w[0]),[h,_]=s.useState(""),[u,b]=s.useState(8),[v,p]=s.useState("8"),[r,y]=s.useState(null),[l,A]=s.useState(()=>localStorage.getItem("viral_analysis_result")||"");s.useEffect(()=>{l&&localStorage.setItem("viral_analysis_result",l)},[l]);const[M,j]=s.useState(!1),[g,$]=s.useState(""),[o,L]=s.useState(()=>localStorage.getItem("viral_analysis_extra_instructions")||"");s.useEffect(()=>{localStorage.setItem("viral_analysis_extra_instructions",o)},[o]);const E=t=>{t.target.files&&t.target.files[0]&&C(t.target.files[0])},f=async t=>{if(!n&&t!=="modify")return;y(t);const a=c===m?h.trim():c;if(!a){alert("请å è¾å ¥èªå®ä¹è¯è¨å 容");return}try{const i=`${u}s`,z=` 7 **è¾åºæ ¼å¼ä¸¥æ ¼è¦æ±**: 8 9 **第ä¸é¨å**: ${t==="reverse"?"çæ¬¾è§£ææ»ç»ï¼å« 8 ç»´åº¦ç»ææè§£ï¼ä¸»é¢å®ä½ãçæ¬¾ç»æ Timelineãé©åç±»åãçç¹åæã转åç¹ãèå¥å¯åº¦ãè§è§æ¯é¢ãä¸è´æ§éç¹ï¼":t==="derivative"?"è¡çåä½æè·¯ï¼å«ç款é»è¾å¤ç¨æ¹å¼ãä¸åè§é¢å¨äººè®¾/è²è°/é头æ°è´¨ä¸çç»ä¸æå¯¹æ¯è¯´æï¼":"ä¿®æ¹è¯´æ"} (çº¯ææ¬) 10 ${t==="reverse"?G(a):""} 11 ${t==="derivative"?` 12- ç®è¿°è¡çç**主é¢**ä¸**çæ¬¾é»è¾å¤ç¨æ¹å¼**ï¼è¯´ææ°å 容å¦ä½ä¸åèè§é¢å¨**人设ãè²è°ãé头æ°è´¨**ä¸ä¿æç»ä¸æå»æå¯¹æ¯ã 13`:""} 14 15 ${P(i)} 16 17 ${B(i,a)} 18 ${t==="reverse"||t==="derivative"?` 19 20**忍æç¤ºè¯ç¹å«æ³¨æ**: é¤å¨ä½æè¿°å¤ï¼å å½±ï¼å æºæ¹å/ç±»å/è²æ¸©ï¼ãé头ï¼ç¦æ®µæè§/æºä½/è¿éï¼ãè²å½©ï¼ä¸»è²è°/è°è²é£æ ¼ï¼ãæå¾ï¼ä¸»ä½ä½ç½®/屿¬¡ï¼ãåºæ¯ï¼ç¯å¢ç»èï¼ãæ°å´ï¼ç¨ç»é¢å ç´ æ¯æï¼ãä¸è´æ§éç¹ï¼å ·ä½å¤è§ç»èï¼åé¡»é项ååºï¼**ä¸å¾åªåå¨ä½èçç¥å ¶å®ç»´åº¦**ã 21`:""} 22 `;let d="";t==="reverse"?d=` 23 **ä»»å¡**: çæ¬¾è§é¢æ·±åº¦è§£æåæç¤ºè¯åæ¨ (Reverse Engineering)ã 24 **è¾å ¥å¤ç**: 请ä»ç»è§çä¸ä¼ çè§é¢æä»¶ã 25 1. **深度æ»ç»ï¼8 ç»´åº¦ç»ææè§£ï¼**: æä»¥ä¸ç»´åº¦éä¸å±å¼åæââå ¨ç主é¢å®ä½ãçæ¬¾ç»æé»è¾ï¼Hookâéºå«âçç¹âäºå¨å¼å¯¼âè½¬åæ¶å°¾ï¼ãé©åç±»å䏿æ³ãçç¹ï¼Viral Triggerï¼åæã转åç¹ï¼å¸¦è´§è§é¢å¿ å¡«ï¼ãèå¥ä¸å 容å¯åº¦ãè§è§æ¯é¢ä¸ä¸è´æ§ç¬¦å·ã人ç©/产å/åºæ¯ä¸è´æ§éç¹ãæ¯ä¸ç»´åº¦é¡»æå ·ä½æ°æ®ä¸æ¶é´æ³æ¯æï¼ç¦æ¢ç©ºæ³å¥è¯ã 26 2. **æç¤ºè¯åæ¨**: æ ¹æ® ${u}s åæ®µï¼éæ®µåæ¨å¯æ§è¡ç AI è§é¢æç¤ºè¯ï¼é¡»è¾¾å°ç»ä¸è§èï¼ç»è´å ¥å¾®ãä¸éæ¼ä»»ä½ç»èï¼ï¼ä¸é¤å¨ä½æè¿°å¤ï¼å å½±ãéå¤´ç¦æ®µä¸æºä½ãè²å½©ä¸è°è²ãæå¾ä¸åºæ¯ãæ°å´æ 绪ãä¸è´æ§éç¹åé¡»é项ååºï¼ä¸å¾çç¥ã 27 `:t==="derivative"?d=` 28 **ä»»å¡**: çæ¬¾é»è¾è¡çåä½ (Derivative Creation)ã 29 **è¾å ¥å¤ç**: æåä¸ä¼ è§é¢ç飿 ¼ã主é¢ãçæ¬¾é»è¾ãè¿éèå¥ãè§è§æ¯é¢ã 30 1. **è¡çåä½**: ä¿æåè§é¢çãçæ¬¾é»è¾ãåã飿 ¼è´¨æãä¸åï¼ä½æ´æ¢ä¸ä¸ªå ·ä½çåæå 容æåºæ¯ï¼åä½ä¸ä¸ªæ°çè§é¢èæ¬ãé¡»è¯´ææ°å 容å¦ä½ä¸åèè§é¢å¨äººè®¾ãè²è°ãé头æ°è´¨ä¸ä¿æç»ä¸æå»æå¯¹æ¯ã 31 2. **æç¤ºè¯çæ**: è¾åºæ°åæç详ç»åéæç¤ºè¯ï¼æ ¼å¼ä¸åæ¨å®å ¨ä¸è´ï¼å¹¶éµå®ç
31»ä¸è§èï¼ç»è´å¯æ§è¡ã嫿®µå æ¶é´è½´ä¸å ¥ç»/åºç»ï¼ï¼å段人设/åºæ¯/è²è°å»¶ç»é¡»åå ·ä½ï¼ä¸å¾ç©ºæ³æ¦æ¬ï¼å å½±ãé头ãè²å½©ãæå¾ãåºæ¯ãæ°å´ãä¸è´æ§éç¹åé¡»é项ååºã 32 `:t==="modify"&&(d=` 33 **ä»»å¡**: ä¿®æ¹ç°æç»æã 34 åºäºä¹åçåæç»æï¼è¯·åºç¨ä»¥ä¸ç¨æ·ä¿®æ¹æè§éæ°çæè¡¨æ ¼å 容: ${g}ã 35 è¯·ä¿æä¸æ¹è§å®çè¡¨æ ¼æ ¼å¼ä¸ç»è´å¯æ§è¡è¦æ±ä¸åï¼æ¯ä¸ªæ¶é´æ¡å¿ 须宿´èªæ´½ï¼ç»é¢+å°è¯+é头+å 线+声é³è为ä¸ä½ï¼ï¼å æ°æ®æ ç¾ç®è¦ï¼ä¸å¾ç©ºæ³å·æï¼ç®åé头å 许精ç¼è¡¨è¿°ã 36 `);const V=o.trim().length>0?` 37 **ç¨æ·é¢å¤æä»¤ï¼çææ¶å¿ é¡»éµå®ï¼ä¸ä¸å¾ä¸ä¸æ¹æ ¼å¼è¦æ±å²çªï¼**: 38 ${o.trim()} 39 `:"",F=` 40 ${d} 41 ${V} 42 43 **ç®æ è¯è¨**: ${a}ã 44 ${z} 45 46 **Strict Output Rules**: 47 1. DO NOT output any internal thought process, "Okay I will", or analysis steps before the final result. 48 2. The output MUST START DIRECTLY with "**第ä¸é¨å**:". 49 3. Do not use <thinking> tags. 50 51 **注æ**: è¯·ç´æ¥è¾åºæç»ç»æï¼ä¸¥ç¦è¾åº AI æèè¿ç¨ã 52 `,N=await D({model:U.GEMINI_3_PRO,prompt:F,video:n||void 0});if(N.text){let x=N.text.replace(/<thinking>[\s\S]*?<\/thinking>/gi,"").trim();const k=x.indexOf("**第ä¸é¨å**");k!==-1&&(x=x.substring(k)),A(x)}}catch(i){console.error(i),alert(i.message||"åæå¤±è´¥ãè¯·æ£æ¥åå°é ç½®ã")}finally{y(null)}},R=()=>{navigator.clipboard.writeText(l),j(!0),setTimeout(()=>j(!1),2e3)};return e.jsxs("div",{className:"max-w-7xl mx-auto space-y-8 pb-20",children:[e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("h2",{className:"text-3xl font-bold text-white",children:"çæ¬¾å¤å»"}),e.jsx("p",{className:"text-gray-400",children:"深度è§é¢è§£æãæç¤ºè¯åæ¨åçæ¬¾é»è¾è¡çã"})]}),e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-12 gap-8",children:[e.jsxs("div",{className:"lg:col-span-4 space-y-6 bg-dark-800 p-6 rounded-xl border border-dark-800 shadow-xl h-fit",children:[e.jsxs("div",{className:"border-2 border-dashed border-gray-600 rounded-lg p-8 text-center hover:border-brand-500 transition-colors relative group",children:[e.jsx("input",{type:"file",accept:"video/*",onChange:E,className:"absolute inset-0 w-full h-full opacity-0 cursor-pointer z-10"}),n?e.jsxs("div",{className:"flex flex-col items-center text-brand-400",children:[e.jsx(q,{size:48,className:"mb-2"}),e.jsx("span",{className:"font-medium text-sm truncate w-full",children:n.name})]}):e.jsxs("div",{className:"flex flex-col items-center text-gray-400 group-hover:text-white transition-colors",children:[e.jsx(T,{size:48,className:"mb-2"}),e.jsx("span",{className:"font-medium",children:"ç¹å»ä¸ä¼ è§é¢"})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-gray-300 mb-1 flex items-center gap-2",children:[e.jsx(H,{size:16})," ç®æ å½å®¶/è¯è¨"]}),e.jsxs("select",{value:c,onChange:t=>I(t.target.value),className:"w-full bg-dark-900 border border-gray-700 rounded-lg p-2.5 text-white focus:ring-2 focus:ring-brand-500 outline-none",children:[w.map(t=>e.jsx("option",{value:t,children:t},t)),e.jsx("option",{value:m,children:"èªå®ä¹"})]})]}),c===m&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-xs font-medium text-gray-300 mb-1",children:"èªå®ä¹è¯è¨"}),e.jsx("input",{type:"text",value:h,onChange:t=>_(t.target.value),placeholder:"ä¾å¦ï¼é©å½è¯ï¼é©è¯ï¼",className:"w-full bg-dark-900 border border-gray-700 rounded-lg p-2.5 text-white focus:ring-2 focus:ring-brand-500 outline-none"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-300 mb-1",children:"åæ®µæ¶é¿ï¼ç§ï¼"}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("input",{type:"number",min:3,max:60,step:1,value:v,onChange:t=>{p(t.target.value);const a=parseInt(t.target.value,10);if(!isNaN(a)){const i=Math.min(60,Math.max(3,a));b(i)}},onBlur:()=>{const t=parseInt(v,10);if(isNaN(t)||t<3||t>60)p(String(u));else{const a=Math.min(60,Math.max(3,t));b(a),p(String(a))}},className:"flex-1 bg-dark-900 border border-gray-700 rounded-lg p-2.5 text-white focus:ring-2 focus:ring-brand-500 outline-none [appearance:textfield] [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none"}),e.jsx("span",{className:"text-sm text-gray-400 shrink-0",children:"ç§/段"})]}),e.jsx("p",{className:"text-[10px] text-gray-500 mt-1",children:"æ¯æ 3â60 ç§ï¼æè§é¢èå¥èªè¡è®¾å®"})]}),e.jsxs("div",{children:[e.jsxs("label",{className:"block text-sm font-medium text-gray-300 mb-1 flex items-center gap-2",children:[e.jsx(Z,{size:16})," é¢å¤æä»¤ï¼å¯éï¼"]}),e.jsx("textarea",{value:o,onChange:t=>
52L(t.target.value),rows:4,placeholder:"ä¾å¦ï¼é¢å Sora/Veo/å¯çµ çæçè§é¢ï¼æ¨ªå± 16:9ï¼åå®çºªå½çé£ï¼ç¦æ¢è¡è
¥æ´åï¼æ¯æ®µçªåºä¸ä¸ªäº§ååç¹â¦â¦",className:"w-full bg-dark-900 border border-gray-700 rounded-lg p-2.5 text-sm text-white placeholder:text-gray-500 focus:ring-2 focus:ring-brand-500 outline-none resize-y min-h-[88px]"}),e.jsx("p",{className:"text-[10px] text-gray-500 mt-1",children:"è§£æãè¡çä¸ãä¿®æ¹ç»æãåä¼åèæ¤å¤ï¼ç空åä¸å½±ååæé»è¾ã"})]})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-3 pt-4 border-t border-gray-700",children:[e.jsxs("button",{onClick:()=>f("reverse"),disabled:!!r||!n,className:"col-span-1 bg-gradient-to-br from-blue-600 to-indigo-700 text-white p-3 rounded-lg font-bold disabled:opacity-50 flex flex-col items-center justify-center gap-1 hover:scale-105 transition-transform shadow-lg",children:[e.jsx(Y,{size:20,className:r==="reverse"?"animate-spin":""}),e.jsx("span",{className:"text-xs font-bold mt-1 text-center",children:"çæ¬¾è§£æ&忍"})]}),e.jsxs("button",{onClick:()=>f("derivative"),disabled:!!r||!n,className:"col-span-1 bg-gradient-to-br from-purple-600 to-pink-600 text-white p-3 rounded-lg font-bold disabled:opacity-50 flex flex-col items-center justify-center gap-1 hover:scale-105 transition-transform shadow-lg",children:[e.jsx(S,{size:20,className:r==="derivative"?"animate-spin":""}),e.jsx("span",{className:"text-xs font-bold mt-1 text-center",children:"è¡çæç¤ºè¯"})]})]})]}),e.jsxs("div",{className:"lg:col-span-8 bg-dark-800 rounded-xl border border-dark-800 shadow-xl flex flex-col min-h-[600px]",children:[e.jsxs("div",{className:"flex justify-between items-center p-4 border-b border-gray-700 bg-dark-900/50 rounded-t-xl",children:[e.jsx("h3",{className:"font-semibold text-gray-200 flex items-center gap-2",children:"è§£æç»æ"}),l&&e.jsx("button",{onClick:R,className:"px-3 py-1.5 rounded bg-dark-800 border border-gray-600 text-xs text-brand-400",children:M?"å·²å¤å¶":"å¤å¶è¡¨æ ¼"})]}),e.jsx("div",{className:"flex-1 p-6 overflow-y-auto bg-dark-900/30 font-mono text-sm text-gray-300",children:r?e.jsxs("div",{className:"h-full flex flex-col items-center justify-center gap-4 text-gray-500 animate-pulse",children:[e.jsx(S,{size:48,className:"text-brand-500"}),e.jsxs("p",{children:[r==="reverse"&&"æ£å¨è¿è¡æ·±åº¦ç款æè§£ä¸åæ¨...",r==="derivative"&&"æ£å¨åºäºç款é»è¾è¿è¡è¡çåä½...",r==="modify"&&"æ£å¨åºç¨ä¿®æ¹..."]})]}):l?e.jsx("div",{className:"prose prose-invert max-w-none whitespace-pre-wrap",children:l}):e.jsxs("div",{className:"h-full flex flex-col items-center justify-center text-gray-600 gap-4",children:[e.jsx(T,{size:32}),e.jsx("p",{children:"请ä¸ä¼ è§é¢ä»¥è·åè¯¦ç»æè§£ã"})]})}),l&&e.jsxs("div",{className:"p-4 border-t border-gray-700 bg-dark-900/50 rounded-b-xl flex gap-3",children:[e.jsx("input",{type:"text",value:g,onChange:t=>$(t.target.value),placeholder:"è¾å
¥ä¿®æ¹æè§...",className:"flex-1 bg-dark-800 border border-gray-700 rounded-lg px-4 py-3 text-sm text-white"}),e.jsx("button",{onClick:()=>f("modify"),disabled:!!r||!g,className:"bg-brand-600 text-white px-6 rounded-lg font-medium",children:"ä¿®æ¹ç»æ"})]})]})]})]})};export{ce as ViralAnalysis};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.