PageSourceSearch

https://maplind.com/assets/exp-buff-3O17oTOZ.js

js maplind.com collected 2026-10-02 01:36:35 UTC 23,072 bytes, 1 lines download raw bytes

1import{w as rr,a as P}from"./chunk-JZWAC4HX-BBSNRSIZ.js";import{j as o}from"./jsx-runtime-u17CrQMm.js";import{a as tr}from"./index-C3VScJl9.js";import{g as Se,p as nr,w as ar,x as or,ak as ir,z as sr,al as cr,am as lr,B as te,an as ur,D as dr}from"./tooltip-Bs82tuPD.js";import{B as V}from"./badge-B24XSAok.js";import{L as hr}from"./loader-BptM6xyO.js";import"./index-C0vr4iwm.js";const fr=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],pr=Se("Bell",fr);const gr=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Re=Se("Info",gr);const mr=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],vr=Se("Monitor",mr);var ne={exports:{}},je;function yr(){return je||(je=1,(function(c){var a=(function(n){var u=Object.prototype,s=u.hasOwnProperty,g=Object.defineProperty||function(r,e,t){r[e]=t.value},f,R=typeof Symbol=="function"?Symbol:{},D=R.iterator||"@@iterator",B=R.asyncIterator||"@@asyncIterator",k=R.toStringTag||"@@toStringTag";function S(r,e,t){return Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}),r[e]}try{S({},"")}catch{S=function(e,t,l){return e[t]=l}}function G(r,e,t,l){var i=e&&e.prototype instanceof v?e:v,y=Object.create(i.prototype),j=new X(l||[]);return g(y,"_invoke",{value:ee(r,t,j)}),y}n.wrap=G;function W(r,e,t){try{return{type:"normal",arg:r.call(e,t)}}catch(l){return{type:"throw",arg:l}}}var F="suspendedStart",x="suspendedYield",b="executing",m="completed",d={};function v(){}function w(){}function N(){}var A={};S(A,D,function(){return this});var E=Object.getPrototypeOf,$=E&&E(E(J([])));$&&$!==u&&s.call($,D)&&(A=$);var _=N.prototype=v.prototype=Object.create(A);w.prototype=N,g(_,"constructor",{value:N,configurable:!0}),g(N,"constructor",{value:w,configurable:!0}),w.displayName=S(N,k,"GeneratorFunction");function H(r){["next","throw","return"].forEach(function(e){S(r,e,function(t){return this._invoke(e,t)})})}n.isGeneratorFunction=function(r){var e=typeof r=="function"&&r.constructor;return e?e===w||(e.displayName||e.name)==="GeneratorFunction":!1},n.mark=function(r){return Object.setPrototypeOf?Object.setPrototypeOf(r,N):(r.__proto__=N,S(r,k,"GeneratorFunction")),r.prototype=Object.create(_),r},n.awrap=function(r){return{__await:r}};function z(r,e){function t(y,j,O,T){var M=W(r[y],r,j);if(M.type==="throw")T(M.arg);else{var h=M.arg,p=h.value;return p&&typeof p=="object"&&s.call(p,"__await")?e.resolve(p.__await).then(function(L){t("next",L,O,T)},function(L){t("throw",L,O,T)}):e.resolve(p).then(function(L){h.value=L,O(h)},function(L){return t("throw",L,O,T)})}}var l;function i(y,j){function O(){return new e(function(T,M){t(y,j,T,M)})}return l=l?l.then(O,O):O()}g(this,"_invoke",{value:i})}H(z.prototype),S(z.prototype,B,function(){return this}),n.AsyncIterator=z,n.async=function(r,e,t,l,i){i===void 0&&(i=Promise);var y=new z(G(r,e,t,l),i);return n.isGeneratorFunction(e)?y:y.next().then(function(j){return j.done?j.value:y.next()})};function ee(r,e,t){var l=F;return function(y,j){if(l===b)throw new Error("Generator is already running");if(l===m){if(y==="throw")throw j;return Q()}for(t.method=y,t.arg=j;;){var O=t.delegate;if(O){var T=U(O,t);if(T){if(T===d)continue;return T}}if(t.method==="next")t.sent=t._sent=t.arg;else if(t.method==="throw"){if(l===F)throw l=m,t.arg;t.dispatchException(t.arg)}else t.method==="return"&&t.abrupt("return",t.arg);l=b;var M=W(r,e,t);if(M.type==="normal"){if(l=t.done?m:x,M.arg===d)continue;return{value:M.arg,done:t.done}}else M.type==="throw"&&(l=m,t.method="throw",t.arg=M.arg)}}}function U(r,e){var t=e.method,l=r.iterator[t];if(l===f)return e.delegate=null,t==="throw"&&r.iterator.return&&(e.method="return",e.arg=f,U(r,e),e.method==="throw")||t!=="return"&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+t+"' method")),d;var i=W(l,r.iterator,e.arg);
1if(i.type==="throw")return e.method="throw",e.arg=i.arg,e.delegate=null,d;var y=i.arg;if(!y)return e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d;if(y.done)e[r.resultName]=y.value,e.next=r.nextLoc,e.method!=="return"&&(e.method="next",e.arg=f);else return y;return e.delegate=null,d}H(_),S(_,k,"Generator"),S(_,D,function(){return this}),S(_,"toString",function(){return"[object Generator]"});function C(r){var e={tryLoc:r[0]};1 in r&&(e.catchLoc=r[1]),2 in r&&(e.finallyLoc=r[2],e.afterLoc=r[3]),this.tryEntries.push(e)}function K(r){var e=r.completion||{};e.type="normal",delete e.arg,r.completion=e}function X(r){this.tryEntries=[{tryLoc:"root"}],r.forEach(C,this),this.reset(!0)}n.keys=function(r){var e=Object(r),t=[];for(var l in e)t.push(l);return t.reverse(),function i(){for(;t.length;){var y=t.pop();if(y in e)return i.value=y,i.done=!1,i}return i.done=!0,i}};function J(r){if(r){var e=r[D];if(e)return e.call(r);if(typeof r.next=="function")return r;if(!isNaN(r.length)){var t=-1,l=function i(){for(;++t<r.length;)if(s.call(r,t))return i.value=r[t],i.done=!1,i;return i.value=f,i.done=!0,i};return l.next=l}}return{next:Q}}n.values=J;function Q(){return{value:f,done:!0}}return X.prototype={constructor:X,reset:function(r){if(this.prev=0,this.next=0,this.sent=this._sent=f,this.done=!1,this.delegate=null,this.method="next",this.arg=f,this.tryEntries.forEach(K),!r)for(var e in this)e.charAt(0)==="t"&&s.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=f)},stop:function(){this.done=!0;var r=this.tryEntries[0],e=r.completion;if(e.type==="throw")throw e.arg;return this.rval},dispatchException:function(r){if(this.done)throw r;var e=this;function t(T,M){return y.type="throw",y.arg=r,e.next=T,M&&(e.method="next",e.arg=f),!!M}for(var l=this.tryEntries.length-1;l>=0;--l){var i=this.tryEntries[l],y=i.completion;if(i.tryLoc==="root")return t("end");if(i.tryLoc<=this.prev){var j=s.call(i,"catchLoc"),O=s.call(i,"finallyLoc");if(j&&O){if(this.prev<i.catchLoc)return t(i.catchLoc,!0);if(this.prev<i.finallyLoc)return t(i.finallyLoc)}else if(j){if(this.prev<i.catchLoc)return t(i.catchLoc,!0)}else if(O){if(this.prev<i.finallyLoc)return t(i.finallyLoc)}else throw new Error("try statement without catch or finally")}}},abrupt:function(r,e){for(var t=this.tryEntries.length-1;t>=0;--t){var l=this.tryEntries[t];if(l.tryLoc<=this.prev&&s.call(l,"finallyLoc")&&this.prev<l.finallyLoc){var i=l;break}}i&&(r==="break"||r==="continue")&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var y=i?i.completion:{};return y.type=r,y.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(y)},complete:function(r,e){if(r.type==="throw")throw r.arg;return r.type==="break"||r.type==="continue"?this.next=r.arg:r.type==="return"?(this.rval=this.arg=r.arg,this.method="return",this.next="end"):r.type==="normal"&&e&&(this.next=e),d},finish:function(r){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.finallyLoc===r)return this.complete(t.completion,t.afterLoc),K(t),d}},catch:function(r){for(var e=this.tryEntries.length-1;e>=0;--e){var t=this.tryEntries[e];if(t.tryLoc===r){var l=t.completion;if(l.type==="throw"){var i=l.arg;K(t)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(r,e,t){return this.delegate={iterator:J(r),resultName:e,nextLoc:t},this.method==="next"&&(this.arg=f),d}},n}
1)(c.exports);try{regeneratorRuntime=a}catch{typeof globalThis=="object"?globalThis.regeneratorRuntime=a:Function("r","regeneratorRuntime = r")(a)}})(ne)),ne.exports}var ae,Oe;function ke(){return Oe||(Oe=1,ae=(c,a)=>`${c}-${a}-${Math.random().toString(16).slice(3,8)}`),ae}var oe,Me;function Ve(){if(Me)return oe;Me=1;const c=ke();let a=0;return oe=({id:n,action:u,payload:s={}})=>{let g=n;return typeof g>"u"&&(g=c("Job",a),a+=1),{id:g,action:u,payload:s}},oe}var Z={},Te;function Ee(){if(Te)return Z;Te=1;let c=!1;return Z.logging=c,Z.setLogging=a=>{c=a},Z.log=(...a)=>c?console.log.apply(this,a):null,Z}var ie,Ae;function wr(){if(Ae)return ie;Ae=1;const c=Ve(),{log:a}=Ee(),n=ke();let u=0;return ie=()=>{const s=n("Scheduler",u),g={},f={};let R=[];u+=1;const D=()=>R.length,B=()=>Object.keys(g).length,k=()=>{if(R.length!==0){const x=Object.keys(g);for(let b=0;b<x.length;b+=1)if(typeof f[x[b]]>"u"){R[0](g[x[b]]);break}}},S=(x,b)=>new Promise((m,d)=>{const v=c({action:x,payload:b});R.push(async w=>{R.shift(),f[w.id]=v;try{m(await w[x].apply(this,[...b,v.id]))}catch(N){d(N)}finally{delete f[w.id],k()}}),a(`[${s}]: Add ${v.id} to JobQueue`),a(`[${s}]: JobQueue length=${R.length}`),k()});return{addWorker:x=>(g[x.id]=x,a(`[${s}]: Add ${x.id}`),a(`[${s}]: Number of workers=${B()}`),k(),x.id),addJob:async(x,...b)=>{if(B()===0)throw Error(`[${s}]: You need to have at least one worker before adding jobs`);return S(x,b)},terminate:async()=>{Object.keys(g).forEach(async x=>{await g[x].terminate()}),R=[]},getQueueLen:D,getNumWorkers:B}},ie}function br(c){throw new Error('Could not dynamically require "'+c+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var se,_e;function Lr(){return _e||(_e=1,se=c=>{const a={};return typeof WorkerGlobalScope<"u"?a.type="webworker":typeof document=="object"?a.type="browser":typeof process=="object"&&typeof br=="function"&&(a.type="node"),typeof c>"u"?a:a[c]}),se}var ce,Ce;function xr(){if(Ce)return ce;Ce=1;const a=Lr()("type")==="browser"?n=>new URL(n,window.location.href).href:n=>n;return ce=n=>{const u={...n};return["corePath","workerPath","langPath"].forEach(s=>{n[s]&&(u[s]=a(u[s]))}),u},ce}var le,Ie;function Ze(){return Ie||(Ie=1,le={TESSERACT_ONLY:0,LSTM_ONLY:1,TESSERACT_LSTM_COMBINED:2,DEFAULT:3}),le}const Nr="6.0.1",Sr={version:Nr};var ue,qe;function kr(){return qe||(qe=1,ue={workerBlobURL:!0,logger:()=>{}}),ue}var de,Pe;function Er(){if(Pe)return de;Pe=1;const c=Sr.version;return de={...kr(),workerPath:`https://cdn.jsdelivr.net/npm/tesseract.js@v${c}/dist/worker.min.js`},de}var he,De;function Rr(){return De||(De=1,he=({workerPath:c,workerBlobURL:a})=>{let n;if(Blob&&URL&&a){const u=new Blob([`importScripts("${c}");`],{type:"application/javascript"});n=new Worker(URL.createObjectURL(u))}else n=new Worker(c);return n}),he}var fe,Ge;function jr(){return Ge||(Ge=1,fe=c=>{c.terminate()}),fe}var pe,Be;function Or(){return Be||(Be=1,pe=(c,a)=>{c.onmessage=({data:n})=>{a(n)}}),pe}var ge,We;function Mr(){return We||(We=1,ge=async(c,a)=>{c.postMessage(a)}),ge}var me,Ue;function Tr(){if(Ue)return me;Ue=1;const c=n=>new Promise((u,s)=>{const g=new FileReader;g.onload=()=>{u(g.result)},g.onerror=({target:{error:{code:f}}})=>{s(Error(`File could not be read! Code=${f}`))},g.readAsArrayBuffer(n)}),a=async n=>{let u=n;if(typeof n>"u")return"undefined";if(typeof n=="string")/data:image\/([a-zA-Z]*);base64,([^"]*)/.test(n)?u=atob(n.split(",")[1]).split("").map(s=>s.charCodeAt(0)):u=await(await fetch(n)).arrayBuffer();else if(typeof HTMLElement<"u"&&n instanceof HTMLElement)n.tagName==="IMG"&&(u=await a(n.src)),n.tagName==="VIDEO"&&(u=await a(n.poster)),n.tagName==="CANVAS"&&await new Promise(s=>{n.toBlob(async g=>{u=await c(g),s()})});else if(typeof OffscreenCanvas<"u"&&n instanceof OffscreenCanvas){const s=await n.convertToBlob();u=await c(s)}else(n instanceof File||n instanceof Blob)&&(u=await c(n));return new Uint8Array(u)};return me=a,me}var ve,Ye;function Ar(){if(Ye)return ve;Ye=1;const c=Er(),a=Rr(),n=jr(),u=Or(),s=Mr(),g=Tr();return ve={defaultOptions:c,spawnWorker:a,terminateWorker:n,onMessage:u,send:s,loadImage:g},ve}var ye,$e;function Qe(){if($e)return ye;$e=1;const c=xr(),a=Ve(),{log:n}=Ee(),u=ke(),s=Ze(),{defaultOptions:g,spawnWorker:f,terminateWorker:R,onMessage:D,loadImage:B,send:k}=Ar();let S=0;return ye=async(G="eng",W=s.LSTM_ONLY,F={},x={})=>{const b=u("Worker",S),{logger:m,errorHandler:d,...v}=c({...g,...F}),w={},N=typeof G=="string"?G.split("+"):G;let A=W,E=x;const $=[s.DEFAULT,s.LSTM_ONLY].includes(W)&&!v.legacyCore;let _,H;const z=new Promise((h,p)=>{H=h,_=p}),ee=h=>{_(h.message)};let U=f(v);U.onerror=ee,S+=1;const C=({id:h,action:p,payload:L})=>new Promise((I,q)=>{n(`[${b}]: Start ${h}, action=${p}`);const Y=`${p}-${h}`;w[Y]={resolve:I,reject:q},k(U,{workerId:b,jobId:h,action:p,payload:L})}),K=()=>console.warn("`load` is depreciated and should be removed from code (workers now come pre-loaded)"),X=h=>C(a({id:h,action:"load",payload:{options:{lstmOnly:$,corePath:v.corePath,logging:v.logging}}})),J=(h,p,L)=>C(a({id:L,action:"FS",payload:{method:"writeFile",args:[h,p]}})),Q=(h,p)=>C(a({id:p,action:"FS",payload:{method:"readFile",args:[h,{encoding:"utf8"}]}})),r=(h,p)=>C(a({id:p,action:"FS",payload:{method:"unlink",args:[h]}})),e=(h,p,L)=>C(a({id:L,action:"FS",payload:{method:h,args:p}})),t=(h,p)=>C(a({id:p,action:"loadLanguage",payload:{langs:h,options:{langPath:v.langPath,dataPath:v.dataPath,cachePath:v.cachePath,cacheMethod:v.cacheMethod,gzip:v.gzip,lstmOnly:[s.DEFAULT,s.LSTM_ONLY].includes(A)&&!v.legacyLang}}})),l=(h,p,L,I)=>C(a({id:I,action:"initialize",payload:{langs:h,oem:p,config:L}}
1)),i=(h="eng",p,L,I)=>{if($&&[s.TESSERACT_ONLY,s.TESSERACT_LSTM_COMBINED].includes(p))throw Error("Legacy model requested but code missing.");const q=p||A;A=q;const Y=L||E;E=Y;const re=(typeof h=="string"?h.split("+"):h).filter(er=>!N.includes(er));return N.push(...re),re.length>0?t(re,I).then(()=>l(h,q,Y,I)):l(h,q,Y,I)},y=(h={},p)=>C(a({id:p,action:"setParameters",payload:{params:h}})),j=async(h,p={},L={text:!0},I)=>C(a({id:I,action:"recognize",payload:{image:await B(h),options:p,output:L}})),O=async(h,p)=>{if($)throw Error("`worker.detect` requires Legacy model, which was not loaded.");return C(a({id:p,action:"detect",payload:{image:await B(h)}}))},T=async()=>(U!==null&&(R(U),U=null),Promise.resolve());D(U,({workerId:h,jobId:p,status:L,action:I,data:q})=>{const Y=`${I}-${p}`;if(L==="resolve")n(`[${h}]: Complete ${p}`),w[Y].resolve({jobId:p,data:q}),delete w[Y];else if(L==="reject")if(w[Y].reject(q),delete w[Y],I==="load"&&_(q),d)d(q);else throw Error(q);else L==="progress"&&m({...q,userJobId:p})});const M={id:b,worker:U,load:K,writeText:J,readText:Q,removeFile:r,FS:e,reinitialize:i,setParameters:y,recognize:j,detect:O,terminate:T};return X().then(()=>t(G)).then(()=>l(G,W,x)).then(()=>H(M)).catch(()=>{}),z},ye}var we,Fe;function _r(){if(Fe)return we;Fe=1;const c=Qe();return we={recognize:async(u,s,g)=>{const f=await c(s,1,g);return f.recognize(u).finally(async()=>{await f.terminate()})},detect:async(u,s)=>{const g=await c("osd",0,s);return g.detect(u).finally(async()=>{await g.terminate()})}},we}var be,ze;function Cr(){return ze||(ze=1,be={AFR:"afr",AMH:"amh",ARA:"ara",ASM:"asm",AZE:"aze",AZE_CYRL:"aze_cyrl",BEL:"bel",BEN:"ben",BOD:"bod",BOS:"bos",BUL:"bul",CAT:"cat",CEB:"ceb",CES:"ces",CHI_SIM:"chi_sim",CHI_TRA:"chi_tra",CHR:"chr",CYM:"cym",DAN:"dan",DEU:"deu",DZO:"dzo",ELL:"ell",ENG:"eng",ENM:"enm",EPO:"epo",EST:"est",EUS:"eus",FAS:"fas",FIN:"fin",FRA:"fra",FRK:"frk",FRM:"frm",GLE:"gle",GLG:"glg",GRC:"grc",GUJ:"guj",HAT:"hat",HEB:"heb",HIN:"hin",HRV:"hrv",HUN:"hun",IKU:"iku",IND:"ind",ISL:"isl",ITA:"ita",ITA_OLD:"ita_old",JAV:"jav",JPN:"jpn",KAN:"kan",KAT:"kat",KAT_OLD:"kat_old",KAZ:"kaz",KHM:"khm",KIR:"kir",KOR:"kor",KUR:"kur",LAO:"lao",LAT:"lat",LAV:"lav",LIT:"lit",MAL:"mal",MAR:"mar",MKD:"mkd",MLT:"mlt",MSA:"msa",MYA:"mya",NEP:"nep",NLD:"nld",NOR:"nor",ORI:"ori",PAN:"pan",POL:"pol",POR:"por",PUS:"pus",RON:"ron",RUS:"rus",SAN:"san",SIN:"sin",SLK:"slk",SLV:"slv",SPA:"spa",SPA_OLD:"spa_old",SQI:"sqi",SRP:"srp",SRP_LATN:"srp_latn",SWA:"swa",SWE:"swe",SYR:"syr",TAM:"tam",TEL:"tel",TGK:"tgk",TGL:"tgl",THA:"tha",TIR:"tir",TUR:"tur",UIG:"uig",UKR:"ukr",URD:"urd",UZB:"uzb",UZB_CYRL:"uzb_cyrl",VIE:"vie",YID:"yid"}),be}var Le,He;function Ir(){return He||(He=1,Le={OSD_ONLY:"0",AUTO_OSD:"1",AUTO_ONLY:"2",AUTO:"3",SINGLE_COLUMN:"4",SINGLE_BLOCK_VERT_TEXT:"5",SINGLE_BLOCK:"6",SINGLE_LINE:"7",SINGLE_WORD:"8",C
1IRCLE_WORD:"9",SINGLE_CHAR:"10",SPARSE_TEXT:"11",SPARSE_TEXT_OSD:"12",RAW_LINE:"13"}),Le}var xe,Ke;function qr(){if(Ke)return xe;Ke=1,yr();const c=wr(),a=Qe(),n=_r(),u=Cr(),s=Ze(),g=Ir(),{setLogging:f}=Ee();return xe={languages:u,OEM:s,PSM:g,createScheduler:c,createWorker:a,setLogging:f,...n},xe}var Xe=qr();const Je=["경뿌","ㄴㅅㅁㅂ","그곳","그것","마빌","추가 경험치","70%","ㄴㅆㅁㅂ"];let Ne=null;const Pr=async()=>(Ne||(Ne=(async()=>await Xe.createWorker("kor",Xe.OEM.LSTM_ONLY))()),Ne),zr=rr(function(){const a=P.useRef(null),n=P.useRef(null),u=P.useRef(null),[s,g]=P.useState(!1),[f,R]=P.useState(null),[D,B]=P.useState(""),[k,S]=P.useState({isDragging:!1,startX:0,startY:0,currentX:0,currentY:0});tr(async()=>{const m=n.current,d=a.current;if(!d||!m||dr(f))return;const v=m.getContext("2d");if(!v)return;const w=d.getBoundingClientRect(),N=d.videoWidth/w.width,A=d.videoHeight/w.height,E={x:f.x*N,y:f.y*A,width:f.width*N,height:f.height*A};m.width=E.width,m.height=E.height,v.drawImage(d,E.x,E.y,E.width,E.height,0,0,E.width,E.height);const _=await(await Pr()).recognize(m);B(_.data.text)},f?1e4:null);const G=P.useCallback(m=>{if(!u.current)return;const d=u.current.getBoundingClientRect(),v=m.clientX-d.left,w=m.clientY-d.top;S({isDragging:!0,startX:v,startY:w,currentX:v,currentY:w}),R(null)},[]),W=P.useCallback(m=>{if(!k.isDragging||!u.current)return;const d=u.current.getBoundingClientRect(),v=m.clientX-d.left,w=m.clientY-d.top;S(N=>({...N,currentX:v,currentY:w}))},[k.isDragging]),F=P.useCallback(()=>{if(!k.isDragging)return;const{startX:m,startY:d,currentX:v,currentY:w}=k,N=Math.abs(v-m),A=Math.abs(w-d);N>10&&A>10&&R({x:Math.min(m,v),y:Math.min(d,w),width:N,height:A}),S(E=>({...E,isDragging:!1}))},[k]),b=P.useCallback(()=>{if(!k.isDragging)return null;const{startX:m,startY:d,currentX:v,currentY:w}=k;return{x:Math.min(m,v),y:Math.min(d,w),width:Math.abs(v-m),height:Math.abs(w-d)}},[k])();return P.useEffect(()=>{Je.some(m=>D.includes(m)?("Notification"in window?Notification.permission==="granted"?new Notification("경뿌가 있는 것 같아요.",{icon:"/android-chrome-192x192.png"}):Notification.permission!=="denied"&&Notification.requestPermission().then(d=>{d==="granted"&&new Notification("경뿌가 있는 것 같아요.",{icon:"/android-chrome-192x192.png"})}):alert("This browser does not support desktop notification"),!0):!1)},[D]),o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center",children:[o.jsxs(nr,{className:"w-full",children:[o.jsxs(ar,{className:"",children:[o.jsx(or,{className:"",children:"경뿌 모니터링 하기"}),o.jsx(ir,{children:"아래 단계에 따라 경뿌 모니터링을 시작하세요."})]}),o.jsxs(sr,{className:"space-y-6",children:[o.jsxs("div",{className:"flex gap-4",children:[o.jsx(V,{variant:"outline",className:"shrink-0 w-8 h-8 rounded-full flex items-center justify-center",children:o.jsx(Re,{className:"text-destructive"})}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("h3",{className:"font-semibold text-destructive",children:"경고"}),o.jsx("p",{className:"text-sm text-gray-600",children:"해당 기능은 '찍힌 계정'(찍계)이 될 수도있습니다."})]})]}),o.jsxs("div",{className:"flex gap-4",children:[o.jsx(V,{variant:"outline",className:"shrink-0 w-8 h-8 rounded-full flex items-center justify-center",children:"1"}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("h3",{className:"font-semibold text-gray-900",children:"메이플스토리 실행"}),o.jsx("p",{className:"text-sm text-gray-600",children:"먼저 메이플스토리 게임을 실행하고 게임 화면이 보이는 상태로 준비해주세요."})]})]}),o.jsxs("div",{className:"flex gap-4",children:[o.jsx(V,{variant:"outline",className:"shrink-0 w-8 h-8 rounded-full flex items-center justify-center",children:"2"}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("h3",{className:"font-semibold text-gray-900",children:"화면 공유 시작"}),o.jsx("p",{className:"text-sm text-gray-600",children:'아래 "화면 공유 시작" 버튼을 클릭하여 메이플스토리 화면 공유를 시작하세요.'})]})]}),o.jsxs("div",{className:"flex gap-4",children:[o.jsx(V,{variant:"outline",className:"shrink-0 w-8 h-8 rounded-full flex items-center justify-center",children:"3"}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("h3",{className:"font-semibold text-gray-900",children:"채팅창 영역 지정"}),o.jsx("p",{className:"text-sm text-gray-600",children:"화면 공유 후, 채팅창 영역을 드래그하여 선택해 주세요."})]})]}),o.jsxs(cr,{children:[o.jsx(pr,{className:"h-4 w-4"}),o.jsx(lr,{children:o.jsxs("div",{className:"space-y-2",children:[o.jsx("p",{className:"font-medium",children:"알림이 오지 않는다면?"}),o.jsx("p",{className:"text-sm",children:"아래 주소에서 사이트의 알림 설정을 허용해 주세요:"}),o.jsxs("div",{className:"text-xs text-gray-500 space-y-1",children:[o.jsx("p",{children:"• 크롬: chrome://settings/content/notifications"}),o.jsx("p",{children:"• 엣지: edge://settings/content/notifications"})]})]})})]}),s?f?o.jsxs(te,{className:"w-full",disabled:!0,children:[o.jsx(hr,{className:"w-4 h-4 mr-2 animate-spin"}),o.jsx("span",{className:"",children:"경뿌 모니터링 중"})]}):o.jsxs(te,{className:"w-full animate-pulse",variant:"secondary",children:[o.jsx(Re,{className:"w-4 h-4 mr-2"}),"채팅창 영역을 지정해 주세요."]}):o.jsxs(te,{className:"w-full",onClick:async()=>{navigator.mediaDevices.getDisplayMedia({video:!0,audio:!1}).then(m=>{a.current&&(a.current.srcObject=m,a.current.play()),g(!0),m.getTracks().forEac
1h(d=>{d.addEventListener("ended",()=>{g(!1),a.current.srcObject=null})})})},children:[o.jsx(vr,{className:"w-4 h-4 mr-2"}),"화면 공유 시작"]}),o.jsxs("div",{className:"relative mb-2 w-full border border-border rounded-xl overflow-hidden",children:[o.jsx("video",{className:"",ref:a}),o.jsxs("div",{ref:u,className:"absolute inset-0 cursor-crosshair",onMouseDown:G,onMouseMove:W,onMouseUp:F,onMouseLeave:F,children:[b&&o.jsx("div",{className:"absolute border-2 border-blue-500 bg-blue-500/20 pointer-events-none",style:{left:b.x,top:b.y,width:b.width,height:b.height},children:o.jsxs("div",{className:"absolute -top-6 left-0 bg-blue-500 text-white text-xs px-2 py-1 rounded",children:[Math.round(b.width)," × ",Math.round(b.height)]})}),f&&o.jsx("div",{className:"absolute border-2 border-green-500 bg-green-500/20 pointer-events-none",style:{left:f.x,top:f.y,width:f.width,height:f.height},children:o.jsxs("div",{className:"absolute -top-6 left-0 bg-green-500 text-white text-xs px-2 py-1 rounded",children:["선택됨: ",Math.round(f.width)," ×"," ",Math.round(f.height)]})})]})]})]}),o.jsxs(ur,{children:["모니터링중인 단어 -",Je.map((m,d)=>o.jsx(V,{className:"ml-1",variant:"secondary",children:m},d))]})]}),o.jsx("canvas",{className:"max-w-4xl mt-8 hidden",ref:n})]})});export{zr as default};

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.