Files

1 line
7.7 KiB
JavaScript

import{i as e}from"./rolldown-runtime-DWdDZTNf.js";import{At as t,B as n,G as r,H as i,J as a,K as o,Nt as s,Tt as c,U as l,W as u,Y as d,Z as f,a as p,bt as m,ct as h,j as g,kt as _,n as v,ot as y,xt as b}from"./vue-B11_pI9F.js";import{a as x,i as S}from"./const-BjfH-jZe.js";import{t as C}from"./_plugin-vue_export-helper-B67ILkmu.js";import{a as w,t as T}from"./kimi-DRwOD7EI.js";import{c as E,h as D,m as O,n as ee,t as k}from"./useMessage-Cpv2N0cC.js";import{L as A,M as j,N as te,V as M,a as N,c as P,d as F,g as I,l as L,n as R,v as z}from"./index-jtNAhQeK.js";import{Ft as B,K as V,ot as H}from"./ThumbnailSlide-COLdjDXw.js";import{t as U}from"./kimi.button-DiBbOOiZ.js";import{t as W}from"./dayjs.min-BoSdjn8v.js";import{t as G}from"./Loading-DTHKpUX9.js";import{t as K}from"./SelectMenu-J2_ZM6vn.js";j(5);var q=()=>({upload:async e=>{let t=new FormData,{accessToken:n}=await F(),r={"x-msh-platform":`web`,"R-Timezone":Intl.DateTimeFormat().resolvedOptions().timeZone};n&&(r.Authorization=`Bearer ${n}`),Object.assign(r,await P()),t.append(`file`,e,`screenshot-${Date.now()}.png`);let i=await fetch(`/apiv2-files/file/upload`,{method:`POST`,body:t,headers:r}),a=await i.text();if(!i.ok)throw Error(`kimi fs upload failed: ${i.status} ${a}`);return I(T,a,{ignoreUnknownFields:!0})}}),J=async(e,t)=>{e?.type!==`image`||!e.src||(e.src=await t(e.src))},Y=async(e,t)=>{!e||typeof e!=`object`||Array.isArray(e)||await J(e.fill,t)},X=async(e,t)=>{let n=[];if(e.elementType===`image`&&n.push(t(e.src).then(t=>{e.src=t})),`fill`in e&&n.push(J(e.fill,t)),e.elementType===`table`){n.push(Y(e.style,t));for(let r of e.rows)for(let e of r)n.push(J(e.fill,t))}await Promise.all(n)},Z=async(e,t)=>{let n=[];n.push(J(e.background,t));for(let r of e.elements)n.push(X(r,t));await Promise.all(n)},ne=async(e,t)=>{let n=[];for(let r of Object.values(e.theme?.tableStyles??{}))n.push(Y(r,t));for(let r of e.pages)n.push(Z(r,t));await Promise.all(n)},Q=M(()=>{let{meta:e,exportPPTD:t,originalFSJSON:n}=H(),r=i(()=>e.value.slideId),{isImageNeedResolve:a,resolveImageUrl:o}=V(),s=L(w),l=c(!1),{upload:u}=q(),d=async e=>{if(!a(e))return e;let t=await o(e);if(!t)throw Error(`image resolve failed: ${e}`);return t},f=async()=>{let e=JSON.parse(JSON.stringify(t()));await ne(e,d);let r=B(e,n.value??void 0);return JSON.stringify(r,null,2)},m=async()=>{let e=await f();return(await u(new Blob([e],{type:`application/json`}))).file?.id},{data:h,isLoading:g,isFetched:_,refetch:v}=p({queryKey:i(()=>[`getShare`,r.value]),enabled:i(()=>!!r.value),queryFn:async()=>await s.getShare({slidesId:r.value})});return{shareInfo:h,isShareDataLoading:g,isShareLoading:l,refreshShare:v,shareSlides:async()=>{if(!(!_.value||l.value)){l.value=!0;try{if(!r.value)throw Error(`slide id required`);let e=await m(),t=await s.shareSlides({slidesId:r.value,payloadFileId:e});return await v(),t}finally{l.value=!1}}},updateShare:async(e,t)=>{if(!(!_.value||l.value)){if(!r.value)return null;l.value=!0;try{await s.updateShare({slidesId:r.value,shareId:e,isPublic:t}),await v()}finally{l.value=!1}}},createShareSnapshot:f}}),re=e(W(),1),ie={key:0,class:`share-title`},ae={class:`center-tips`},$={class:`form-submit center`},oe={class:`center-tips`},se={class:`form-submit center`},ce={class:`share-info`},le={class:`line`},ue={class:`line input-like`},de=[`href`],fe={key:1,class:`share-link`},pe=C(f({__name:`ShareContent`,setup(e){let{t:c}=A(),f=k(),{shareInfo:p,isShareLoading:g,shareSlides:v,updateShare:y,isShareDataLoading:b}=Q(),{showConfirm:C}=E(),w=(e=>e===`https://www.kimi.com`?S:e===`https://www.kimi.ai`?x:e)(location.origin),T=i(()=>!!p.value?.shareId),O=i(()=>!!p.value?.isBanned),j=i(()=>`${w}/neo-ppt/share/${p.value?.shareId}`),M=i(()=>{let e=p.value?.shareTime;return e?(0,re.default)(D(e)).format(`YYYY-MM-DD HH:mm`):``}),P=i(()=>[{label:c(`share.public`),value:`public`},{label:c(`share.private`),value:`private`}]),F=i(()=>p.value?.isPublic?`public`:`private`),I=e=>e instanceof Error?e.message:String(e),L=()=>{ee(`showFeedback`,{additionParams:{shareReport:1}})},B=async()=>{let e=Date.now();try{await v(),N(`msh_nppt_share_create`,{type:`create`,shareId:p.value?.shareId,duration:Date.now()-e,is_success:!0})}catch(t){N(`msh_nppt_share_create`,{type:`create`,duration:Date.now()-e,is_success:!1,error_reason:I(t)}),R(t),f.error(c(`share.createLinkFailed`))}},V=async e=>{if(!p.value?.shareId)return;let t=e===`public`;if(!(!t&&!await C({title:c(`share.setPrivateTitle`),content:c(`share.setPrivateDesc`),confirmText:c(`share.setPrivateConfirm`),cancelText:c(`common.cancel`),remindKey:`set_share_private`}))){N(`msh_nppt_share_state_change`,{state:t?`public`:`private`});try{await y(p.value.shareId,t),t||f.info(c(`share.setPrivateSuccess`))}catch(e){R(e),f.error(c(`share.updateShareFailed`))}}},H=async()=>{if(g.value||!await C({title:c(`share.updateLinkTitle`),content:c(`share.updateLinkDesc`),confirmText:c(`share.updateLinkConfirm`),cancelText:c(`common.cancel`),remindKey:`update_share`}))return;let e=Date.now();try{await v(),N(`msh_nppt_share_create`,{type:`update`,shareId:p.value?.shareId,duration:Date.now()-e,is_success:!0}),f.success(c(`share.updateLinkSuccess`))}catch(t){N(`msh_nppt_share_create`,{type:`update`,shareId:p.value?.shareId,duration:Date.now()-e,is_success:!1,error_reason:I(t)}),R(t),f.error(c(`share.createLinkFailed`))}},W=async()=>{if(j.value){N(`msh_nppt_share_preview`,{type:`copy`});try{await te(j.value),f.success(c(`share.copySuccess`))}catch{f.error(c(`share.copyFailed`))}}};return(e,i)=>(h(),o(`div`,{class:t([`tab-content`,{between:T.value&&!O.value}])},[T.value?(h(),o(`div`,ie,s(_(c)(`basic.share`)),1)):r(``,!0),_(b)?(h(),u(G,{key:1})):O.value?(h(),o(n,{key:2},[d(_(z),{class:`main-icon`,name:`Warning`,width:32}),l(`div`,ae,s(_(c)(`share.bannedTips`)),1),l(`div`,$,[d(_(U),{type:`primary`,onClick:L},{default:m(()=>[a(s(_(c)(`share.goFeedback`)),1)]),_:1})])],64)):T.value?(h(),o(n,{key:4},[l(`div`,ce,[l(`div`,le,[l(`div`,null,s(_(c)(`share.updateTime`))+s(M.value),1),d(K,{class:t([`public-menu`,{disabled:_(g)}]),"menu-list":P.value,"active-menu":F.value,onClick:V},null,8,[`class`,`menu-list`,`active-menu`])]),l(`div`,ue,[l(`div`,{class:t([`link`,{disabled:!_(p)?.isPublic}])},s(j.value),3),_(p)?.isPublic?(h(),o(`a`,{key:0,class:`share-link`,href:j.value,target:`_blank`,onClick:i[0]||(i[0]=e=>_(N)(`msh_nppt_share_preview`,{type:`goto`}))},[a(s(_(c)(`share.viewLink`))+` `,1),d(_(z),{class:`link-arrow`,name:`UpperRight`,width:16})],8,de)):(h(),o(`span`,fe,s(_(c)(`share.notPublic`)),1))])]),l(`div`,{class:t([`button-box`,{hidden:!_(p)?.isPublic}])},[d(_(U),{type:`secondary`,loading:_(g),icon:`Refresh_b`,onClick:H},{default:m(()=>[a(s(_(c)(`share.updateLinkBtn`)),1)]),_:1},8,[`loading`]),d(_(U),{type:`primary`,icon:`Copy`,onClick:W},{default:m(()=>[a(s(_(c)(`share.copyLinkBtn`)),1)]),_:1})],2)],64)):(h(),o(n,{key:3},[d(_(z),{class:`main-icon`,name:`Link`,width:32}),l(`div`,oe,[a(s(_(c)(`share.createLink`)),1),i[1]||(i[1]=l(`br`,null,null,-1)),a(` `+s(_(c)(`share.createLinkDesc`)),1)]),l(`div`,se,[d(_(U),{type:`primary`,loading:_(g),onClick:B},{default:m(()=>[a(s(_(c)(`share.createLinkBtn`)),1)]),_:1},8,[`loading`])])],64))],2))}}),[[`__scopeId`,`data-v-d65ed9b3`]]),me={key:0,class:`share-dialog`},he=C(f({__name:`ShareDialog`,emits:[`close`],setup(e,{emit:n}){let a=n,{isOverseas:s}=O(),{shareInfo:l}=Q(),{t:f}=A(),p=c(!1),x=i(()=>!!l.value?.shareId),S=()=>{p.value=!1},C=()=>{S()},w={ignore:[`.share-dialog-trigger`,`.modal-mask`]},T=()=>{a(`close`)};return y(()=>{p.value=!0,N(`msh_nppt_export_show`,{is_oversea:s.value},!0)}),(e,n)=>(h(),u(g,{name:`share-dialog-fade`,appear:``,onAfterLeave:T},{default:m(()=>[p.value?b((h(),o(`div`,me,[d(pe,{class:t([`share-height`,{"share-height-with-title":x.value}])},null,8,[`class`])])),[[_(v),[C,w]]]):r(``,!0)]),_:1}))}}),[[`__scopeId`,`data-v-49a824d3`]]);export{he as default};