PageSourceSearch

https://hansai.art/_next/static/chunks/pages/admin/super/profit-offer-requests-5f41a0120514eb8a.js

js hansai.art collected 2026-10-07 20:20:16 UTC 25,662 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[15198],{57933:(e,t,r)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/admin/super/profit-offer-requests",function(){return r(25113)}])},78846:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var a=r(2445),l=r(27006),n=r(96540),i=r(8548),o=r(13302);let s=(0,l.forwardRef)((e,t)=>{let{onClick:r=()=>{},onBeforeClick:s,title:c,body:d,confirm:u,cancel:h,checkPhrase:p,passwordConfirm:f,confirmColorScheme:m="red",as:g,modalSize:b="md",CustomComponent:y=null,onConfirmDialogImpress:Y=null,textAlign:x,...w}=e,[v,D]=(0,n.useState)(!1),S=y||i.A;return(0,a.FD)(a.FK,{children:[(0,a.Y)(S,{...w,as:g&&(0,l.forwardRef)((e,t)=>(0,n.createElement)(g,{...w,...e,ref:t})),onClick:async e=>{e.preventDefault(),e.stopPropagation();let t=!0;try{"function"==typeof s&&(t=await s()),t&&D(!0)}catch(e){}},ref:t}),(0,a.Y)(o.A,{isOpen:v,onClose:()=>D(!1),title:c,body:d,confirm:u,cancel:h,onConfirm:r,checkPhrase:p,passwordConfirm:f,colorScheme:m,size:b,onDialogImpress:Y,textAlign:x})]})})},13302:(e,t,r)=>{"use strict";r.d(t,{A:()=>f});var a=r(2445),l=r(27006),n=r(61032),i=r(96540),o=r(6442),s=r(99624),c=r(10767),d=r(79871),u=r(8548);let h=e=>{let{onAuthLoaded:t,onUserLoaded:r}=e,a=(0,c.A)(),{data:l}=(0,s.aB)(a);return(0,i.useEffect)(()=>{a&&l&&(t(a),r(l))},[a,l]),null},p=e=>{let{onImpress:t}=e,r=(0,d.A)(t);return(0,a.Y)("div",{ref:r})},f=e=>{let{isOpen:t,onClose:r,title:s,body:c,confirm:d,cancel:f="",onConfirm:m,onCancle:g,checkPhrase:b,passwordConfirm:y,colorScheme:Y,size:x,onDialogImpress:w=null,textAlign:v="center"}=e,D=(0,o.A)(),[S,C]=(0,i.useState)(),[A,k]=(0,i.useState)(),F=(0,i.useMemo)(()=>null==S?void 0:S.providerData.some(e=>{let{providerId:t}=e;return"google.com"===t}),[null==S?void 0:S.providerData]),[E,M]=(0,i.useState)(""),[N,I]=(0,i.useState)(),[T,z]=(0,i.useState)(),[R,P]=(0,i.useState)(!b),O=(0,i.useRef)(),B=async()=>{if(F){let e=new n.GoogleAuthProvider;try{if((await (0,n.signInWithPopup)(A,e)).user.uid!==S.uid){I(D.formatMessage({defaultMessage:"Google帳號不符",id:"admin.shared.confirmDialog.Google帳號不符"})),z(!1);return}}catch(e){console.error(e),z(!1);return}}else try{let e=n.EmailAuthProvider.credential(A.currentUser.email,E);await (0,n.reauthenticateWithCredential)(S,e)}catch(e){"auth/wrong-password"===e.code&&I(D.formatMessage({defaultMessage:"密碼錯誤",id:"admin.shared.confirmDialog.密碼錯誤"})),z(!1);return}},W=async()=>{z(!0),y&&await B();try{await m(),O.current&&(z(!1),r())}catch(e){console.error(e),O.current&&z(!1)}},G=(0,i.useMemo)(()=>R&&(!y||E.length>=6||F),[R,E]);return(0,a.FD)(a.FK,{children:[(0,a.Y)(l.AlertDialog,{isOpen:t,leastDestructiveRef:O,onClose:r,isCentered:!0,returnFocusOnClose:!1,motionPreset:"none",size:x,blockScrollOnMount:!1,children:(0,a.Y)(l.AlertDialogOverlay,{children:(0,a.FD)(l.AlertDialogContent,{children:[w&&(0,a.Y)(p,{onImpress:w}),(0,a.Y)(l.AlertDialogHeader,{fontSize:"lg",fontWeight:"bold",textAlign:v,children:s||D.formatMessage({defaultMessage:"注意",id:"admin.shared.confirmDialog.注意"})}),(0,a.FD)(l.AlertDialogBody,{as:l.VStack,children:[(0,a.Y)(l.Box,{whiteSpace:"pre-wrap",textAlign:v,children:c||D.formatMessage({defaultMessage:"確認執行此動作",id:"admin.shared.confirmDialog.確認執行此動作"})}),b&&(0,a.FD)(l.FormControl,{isRequired:!0,children:[(0,a.FD)(l.FormLabel,{children:[D.formatMessage({defaultMessage:"請輸入",id:"admin.shared.confirmDialog.請輸入"}),(0,a.Y)(l.Code,{colorScheme:"red",fontWeight:"bold",children:b}),D.formatMessage({defaultMessage:"來確認執行",id:"admin.shared.confirmDialog.來確認執行"})]}),(0,a.Y)(l.Input,{onChange:e=>{b&&P(e.target.value===b)},focusBorderColor:"red.500",onKeyUp:e=>{"Enter"===e.key&&G&&W()}})]}),y&&!F&&(0,a.FD)(l.FormControl,{isRequired:!0,isInvalid:N,children:[(0,a.Y)(l.FormLabel,{children:D.formatMessage({defaultMessage:"請輸入您的密碼",id:"admin.shared.confirmDialog.請輸入您的密碼"})}),(0,a.Y)(l.Input,{onChange:e=>M(e.target.value),type:"password",autoComplete:"new-password",onKeyUp:e=>{"Enter"===e.key&&G&&W()}}),(0,a.Y)(l.FormErrorMessage,{children:N})]})]}),(0,a.FD)(l.AlertDialogFooter,{justifyContent:"center",children:[(0,a.Y)(u.A,{colorScheme:"gray",ref:O,onClick:()=>{r(),"function"==typeof g&&g()},isLoading:T,rounded:"full",children:f||D.formatMessage({defaultMessage:"取消",id:"admin.shared.confirmDialog.取消"})}),(0,a.Y)(u.A,{rounded:"full",colorScheme:Y||"green",onClick:W,ml:3,isLoading:T,isDisabled:!G,children:d||D.formatMessage({defaultMessage:"確認",id:"admin.shared.confirmDialog.確認"})})]})]})})}),y&&(0,a.Y)(h,{onUserLoaded:C,onAuthLoaded:k})]})}},78459:(e,t,r)=>{"use strict";r.d(t,{Ay:()=>w});var a=r(2445),l=r(27006),n=r(96540),i=r(84961),o=r(6442);let s=e=>{let{ratio:t,isDisabled:r,compact:n,customPlaceHolder:s,...c}=e,d=(0,o.A)(),u=r?d.formatMessage({defaultMessage:"圖片已隱藏",id:"admin.shared.ratioImage.圖片已隱藏"}):d.formatMessage({defaultMessage:"請上傳圖片",id:"admin.shared.ratioImage.請上傳圖片"});return(0,a.Y)(l.AspectRatio,{ratio:"number"==typeof t?t:2,opacity:r?.4:1,...c,children:(0,a.Y)(l.Center,{bg:s?"GUI.gray.editor":"gray.100",color:"blocks.text",children:(0,a.FD)(l.VStack,{alignItems:"center",children:[!s&&(0,a.Y)(l.Icon,{as:i.UXq,width:"8",he
1ight:"8"}),!n&&!s&&(0,a.Y)(l.Text,{fontSize:"sm",fontFamily:"body",children:u}),s]})})})};var c=r(23805),d=r.n(c),u=r(29965),h=r.n(u),p=r(62529),f=r(65606);let m=e=>{if(!e)return null;if("string"==typeof e)return e;if(d()(e)){var t,r;return(null===(t=e.src)||void 0===t?void 0:t.startsWith("/_next"))||(null===(r=e.src)||void 0===r?void 0:r.startsWith("static/media/"))?e.src:e.publicURL||null}return null},g=(0,n.forwardRef)((e,t)=>{let{src:r,alt:i="",aspectRatio:o=1,sizes:s="100vw",priority:c=!1,quality:d,placeholder:u="empty",blurDataURL:g,onLoad:b,onError:y,objectFit:Y="cover",objectPosition:x="center",unoptimized:w=!1,skeleton:v=!0,fallbackSrc:D,crossOrigin:S,containerProps:C,borderRadius:A}=e,[k,F]=(0,n.useState)(v),[E,M]=(0,n.useState)(!1);(0,n.useEffect)(()=>{F(v),M(!1)},[r,v]),(0,n.useEffect)(()=>{if(!v)return;let e=setTimeout(()=>{F(!1)},1e4);return()=>clearTimeout(e)},[r,v]);let N=(0,n.useCallback)(e=>{F(!1),null==b||b(e)},[b]),I=(0,n.useCallback)(e=>{M(!0),F(!1),null==y||y(e)},[y]),T=m(E&&D?D:r),z=(0,n.useMemo)(()=>({aspectRatio:String(o)}),[o]),R=(0,n.useMemo)(()=>({objectFit:Y,objectPosition:x,opacity:E?.5:1}),[Y,x,E]);if(!T)return null;let P=!w&&!f.env.STORYBOOK;return(0,a.FD)(l.Box,{ref:t,position:"relative",width:"100%",overflow:"hidden",borderRadius:A,sx:z,...C,children:[k&&v&&(0,a.Y)(l.Skeleton,{position:"absolute",top:0,left:0,width:"100%",height:"100%",borderRadius:A}),(0,a.Y)(h(),{src:T,alt:i,fill:!0,sizes:s,priority:c,quality:d,placeholder:u,blurDataURL:g,onLoad:N,onError:I,loader:P?p.A:void 0,unoptimized:!P,crossOrigin:S,style:R})]})});g.displayName="OptimizedImage";let b=e=>{let{ratio:t,...r}=e;return(0,a.Y)(l.AspectRatio,{ratio:"number"==typeof t?t:2,...r,children:(0,a.Y)(l.Skeleton,{})})},y={"2xl":1280,xl:1024,lg:768,md:512,sm:256,xs:128,xxs:64},Y=e=>{let t=y[e];return t?"(max-width: ".concat(t,"px) 100vw, ").concat(t,"px"):"(min-width: 1280px) 1280px, 100vw"},x=(0,n.forwardRef)((e,t)=>{let r,{src:i,ratio:o=1,alt:c="",onLoadingComplete:d,size:u="md",sizes:h,isEditing:p,isPreview:f,isDisabled:m,skeleton:x=!0,forceSkeleton:w,compact:v,priority:D,bg:S,unoptimized:C,isWaterColor:A,customPlaceHolder:k,objectFit:F="cover",objectPosition:E,fallbackSrc:M,crossOrigin:N,quality:I,...T}=e,z="object"==typeof o&&null!==o,R=(0,l.useBreakpointValue)(z?o:{base:o}),P="free"===(r=void 0!==R?R:"number"==typeof o||"free"===o?o:1),O=p||f||A,B="number"==typeof r?r:1,W=y[u],G=h||Y(u),L=(0,n.useMemo)(()=>({ratio:B,isDisabled:m,compact:v,customPlaceHolder:k,bg:S,...T}),[B,m,v,k,S,T]),U=(0,n.useMemo)(()=>({sx:{aspectRatio:"auto","& img":{position:"relative !important",width:"100% !important",height:"auto !important"}}}),[]);if(m&&O)return(0,a.Y)(l.Box,{maxWidth:W,mx:"auto",width:"100%",children:(0,a.Y)(s,{...L})});if(!i)return w?(0,a.Y)(l.Box,{maxWidth:W,mx:"auto",width:"100%",children:(0,a.Y)(b,{ratio:B,...T})}):O?(0,a.Y)(l.Box,{maxWidth:W,mx:"auto",width:"100%",children:(0,a.Y)(s,{...L})}):null;let H=!!(P||p||f);return P?(0,a.Y)(l.Box,{ref:t,maxWidth:W,mx:"auto",width:"100%",bg:S,overflow:"hidden",...T,children:(0,a.Y)(g,{src:i,alt:c,aspectRatio:1,sizes:G,priority:D,quality:I,skeleton:H&&x,unoptimized:C,objectFit:F,objectPosition:E,fallbackSrc:M,crossOrigin:N,onLoad:d,containerProps:U})}):(0,a.Y)(l.Box,{ref:t,maxWidth:W,mx:"auto",width:"100%",bg:S,overflow:"hidden",...T,children:(0,a.Y)(g,{src:i,alt:c,aspectRatio:B,sizes:G,priority:D,quality:I,skeleton:H&&x,unoptimized:C,objectFit:F,objectPosition:E,fallbackSrc:M,crossOrigin:N,onLoad:d})})});x.displayName="RatioImage";let w=x},69235:(e,t,r)=>{"use strict";r.d(t,{A:()=>c});var a=r(2445),l=r(27006),n=r(58156),i=r.n(n),o=r(58065),s=r(7817);let c=e=>{let{role:t,children:r}=e,n=(0,s.A)(),c=(Array.isArray(t)?t:[t]).some(e=>i()(n,e));return n?c?r:(0,a.Y)(l.Center,{children:(0,a.Y)(l.Text,{fontSize:"xl",fontWeight:"bold",color:"red.500",children:(0,a.Y)(o.A,{id:"admin.shared.權限不足",defaultMessage:"權限不足"})})}):(0,a.Y)(l.Center,{children:(0,a.Y)(l.Spinner,{})})}},91711:(e,t,r)=>{"use strict";r.d(t,{A:()=>s,_:()=>i});var a=r(2445),l=r(22405),n=r(49177);let i=e=>e instanceof l.Timestamp?e.toDate():new Date(e instanceof Date?+e:e&&"object"==typeof e?"number"==typeof e._seconds?1e3*e._seconds:"number"==typeof e.seconds?1e3*e.seconds:NaN:"string"!=typeof e||/^\d+$/.test(e.trim())?+e:e),o=e=>{let{value:t,children:r,timeFormat:a="yy/MM/dd"}=e,l=t||r;if(!l)return null;try{return(0,n.b6)(i(l),a)||null}catch(e){return console.error(e),null}};o.DateTime=e=>(0,a.Y)(o,{timeFormat:"yy/MM/dd HH:mm",...e});let s=o},66351:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(2445),l=r(27006);function n(e){let{getInputProps:t,getCheckboxProps:r}=(0,l.useRadio)(e),n=t(),i=r();return(0,a.FD)(l.Box,{as:"label",children:[(0,a.Y)("input",{...n}),(0,a.Y)(l.Box,{...i,cursor:"pointer",whiteSpace:"nowrap",borderLeft:"4px solid transparent",_checked:{borderLeftColor:"teal.500",color:"teal.500"},px:"3",py:"1",children:e.children})]})}let i=e=>{let{options:t,onChange:r,defaultValue:i}=e,{getRootProps:o,getRadioProps:s}=(0,l.useRadioGroup)({defaultValue:i,onChange:r}),c=o();return(0,a.FD)(a.FK,{children:[(0,a.Y)(l.Select,{display:{base:"block",lg:"none"},w:"full",defaultValue:i,onChange:e=>r(e.target.value),children:t.map(e=>{let{value:t,label:r}=e;return(0,a.Y)("option",{value:t,children:r},t)})}),(0,a.Y)(l.Stack,{display:{base:"none",lg:"flex"},...c,children:t.map(e=>{let{value:t,label:r}=e,l=s({value:t});return(0,a.Y)(n,{...l,children:r},t)})})]})}},22061:(e,t,r)=>{"use strict";r.d(t,{A:()=>d});var a=r(2445),l=r(27006),n=r(86715),i=r(38146),o=r(69235),s=r(66351),c=r(68296);let d=e=>{let{tabs:t=[],allTabs:r=[],requiredRole:d=!1,title:u=""}=e,h=(0,n.useRouter)(),p=h.asPath.split("?")[0],f=r.findIndex(e=>"/admin/super/".concat(e.name)===p),m=t.findIndex(e=>e.query===h.query.tab),g=(0,a.FD)(l.Tabs,{variant:"soft-rounded",colorScheme:"teal",isLazy:!0,defaultIndex:m>=0?m:0,onChange:e=>{let r=t[e].query;window.history.pushState({},"","".concat(window.location.pathname).concat(r?"?tab=".concat(r):""))},children:[(0,a.Y)(l.TabList,{overflow:"auto",display:"block",whiteSpace:"nowrap",children:t.map((e,t)=>(0,a.Y)(l.Tab,{display:"inline-flex",children:e.label},t))}),(0,a.Y)(l.TabPanels,{children:t.map((e,t)=>(0,a.Y)(l.TabPanel,{children:(0,a.Y)(i.A,{children:e.comp})},t))})]});return(0,a.Y)(c.A,{children:(0,a.FD)(l.VStack,{children:[u&&(0,a.Y)(l.Heading,{as:"h1",size:"lg",mb:"4",textAlign:"left",w:"full",children:u}),(0,a.FD)(l.Stack,{direction:{base:"column",lg:"row"},alignItems:"flex-start",spacing:{base:4,lg:8},divider:(0,a.Y)(l.StackDivider,{}),w:"full",children:[r.length>1&&(0,a.Y)(l.Box,{flexShrink:0,minW:0,w:{base:"full",lg:"auto"},pos:{lg:"sticky"},top:"4",children:(0,a.Y)(s.A,{options:r.map((e,t)=>({label:e.label,value:"".concat(t)})),onChange:e=>{h.push("/admin/super/".concat(r[e].name))},defaultValue:"".concat(f)})}),(0,a.Y)(l.Box,{flex:"1",w:"full",minW:0,children:d?(0,a.Y)(o.A,{role:d,children:g}):g})]})]})})}},97184:(e,t,r)=>{"use strict";r.d(t,{m:()=>a});let a=[{name:"profit-offer-requests",label:"推廣申請"},{name:"store-listings",label:"推廣商品"},{name:"customer-promotion",label:"購買者推廣"},{name:"profit-offer-creators",label:"創作者名單"},{name:"store-management",label:"Store 設定"}]},89361:(e,t,r)=>{"use strict";r.d(t,{A:()=>d});var a=r(2445),l=r(10900),n=r(44995),i=r(78459),o=r(27536);let s=e=>
1{let{domNode:t}=e,r=t.attribs.href;return(0,a.Y)(n.A,{isExternal:!0,href:r,children:(0,l.zd)(t.children)})},c=e=>{let{domNode:t}=e,r=t.attribs["data-ratio"],l="string"==typeof r&&Number.isFinite(parseFloat(r))?parseFloat(r):r;return r?(0,a.Y)(i.Ay,{...t.attribs,ratio:l}):(0,a.Y)("img",{...t.attribs})},d=e=>(0,l.Ay)((0,o.A)(e),{replace:e=>{switch(e.name){case"a":return(0,a.Y)(s,{domNode:e});case"img":return(0,a.Y)(c,{domNode:e});default:return}}})},27536:(e,t,r)=>{"use strict";r.d(t,{A:()=>m});var a=r(56449),l=r.n(a),n=r(23805),i=r.n(n),o=r(73916),s=r.n(o),c=r(34005),d=r.n(c);let u=d().getDefaultWhiteList();u.p.push("style"),u.h2.push("style"),u.h3.push("style"),u.li.push("style"),u.img.push("data-ratio");let h=new(d()).FilterXSS({whiteList:u,css:!1}),p=[10,13],f=e=>l()(e)?e.map(f):i()(e)?s()(e,f):"string"!=typeof e?e:function(e){let t="";for(let r=0;r<e.length;r++){let a=e.charCodeAt(r);(a>=32||p.includes(a))&&(t+=e.charAt(r))}return t}(h.process(e)),m=f},10767:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(96540),l=r(99624),n=r(36795);let i=()=>{let{addSdk:e,activeSDK:t}=(0,a.useContext)(n.A);return(0,a.useEffect)(()=>{t.includes("auth")||setTimeout(()=>e("auth"))},[t]),t.includes("auth")&&(0,l.As)()}},11335:(e,t,r)=>{"use strict";r.d(t,{A:()=>d});var a=r(55364),l=r.n(a),n=r(96540),i=r(8519),o=r(10767);let s=new Map,c=["auth/id-token-expired","auth/id-token-revoked","auth/argument-error"],d=()=>{let e=(0,n.useRef)(0),t=(0,o.A)();return(0,n.useCallback)(async(r,a)=>{var n,o,d;let u="".concat("portaly:firebaseToken",":").concat(null===(n=t.currentUser)||void 0===n?void 0:n.uid),h=null!==(d=null===(o=(0,i.A)("session"))||void 0===o?void 0:o.getItem(u))&&void 0!==d?d:s.get(u),p=async()=>{h=await t.currentUser.getIdToken(!0),(0,i.F)(u,h,"session"),s.set(u,h)};h||await p();let f=async()=>{let t=await fetch(r,l()({},a,h&&{headers:{Authorization:"Bearer ".concat(h)}}));if(t.ok)return e.current=0,204===t.status?null:t.json();let n=await t.text();if(c.includes(n)&&e.current<3)return e.current+=1,await p(),f();let i=Error(n);return i.response=t,Promise.reject(i)};return f()},[t])}},15953:(e,t,r)=>{"use strict";r.d(t,{A:()=>n});var a=r(96540),l=r(11335);let n=()=>{let e=(0,l.A)();return(0,a.useCallback)(t=>{e("/api/revalidate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({target:"store",...t?{profileId:t}:{}})}).catch(()=>{})},[e])}},25113:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>M});var a=r(2445),l=r(22061),n=r(97184),i=r(27006),o=r(96540),s=r(59324),c=r(78846),d=r(58323),u=r(91711),h=r(11335),p=r(15953),f=r(38869),m=r(89361);let g=["商品不符合平台規範","非原創商品"],b=(e,t)=>{let r=[...e],a=t.trim();return a&&r.push(a),r.join("\n")},y=e=>{let{isOpen:t,onClose:r,requestId:l,productName:n,onRejected:s}=e,c=(0,i.useToast)(),d=(0,h.A)(),[u,p]=(0,o.useState)([]),[f,m]=(0,o.useState)(""),[y,Y]=(0,o.useState)(!1),x=(0,o.useMemo)(()=>b(u,f),[u,f]),w=e=>{p(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},v=()=>{y||(p([]),m(""),r())},D=async()=>{Y(!0);try{await d("/api/super/profit-offer-requests/".concat(l),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"reject",rejectReason:x})}),c({status:"success",title:"已拒絕申請"}),p([]),m(""),null==s||s(),r()}catch(e){c({status:"error",title:"操作失敗,請稍後再試"})}finally{Y(!1)}},S=x.length>0;return(0,a.FD)(i.Modal,{isOpen:t,onClose:v,size:"md",isCentered:!0,children:[(0,a.Y)(i.ModalOverlay,{}),(0,a.FD)(i.ModalContent,{children:[(0,a.Y)(i.ModalHeader,{fontWeight:700,children:"拒絕申請"}),(0,a.Y)(i.ModalCloseButton,{isDisabled:y}),(0,a.Y)(i.ModalBody,{children:(0,a.FD)(i.Stack,{spacing:4,children:[(0,a.FD)(i.Text,{fontSize:"sm",color:"GUI.gray.700",children:["商品:",(0,a.Y)(i.Text,{as:"span",fontWeight:600,color:"custom.textGray",children:n})]}),(0,a.FD)(i.Stack,{spacing:2,children:[(0,a.Y)(i.Text,{fontWeight:600,fontSize:"sm",children:"常見原因"}),(0,a.Y)(i.Stack,{spacing:2,pl:1,children:g.map(e=>(0,a.Y)(i.Checkbox,{colorScheme:"green",isChecked:u.includes(e),onChange:()=>w(e),children:e},e))})]}),(0,a.FD)(i.Stack,{spacing:2,children:[(0,a.Y)(i.Text,{fontWeight:600,fontSize:"sm",children:"補充說明(選填)"}),(0,a.Y)(i.Textarea,{value:f,onChange:e=>m(e.target.value),placeholder:"可補充細節,會一併附在拒絕信中",rows:3})]})]})}),(0,a.Y)(i.ModalFooter,{children:(0,a.FD)(i.HStack,{spacing:3,children:[(0,a.Y)(i.Button,{variant:"outline",onClick:v,isDisabled:y,children:"取消"}),(0,a.Y)(i.Button,{colorScheme:"red",onClick:D,isLoading:y,isDisabled:!S,children:"確認拒絕"})]})})]})]})};var Y=r(59137);let x={[Y.z.PENDING]:"待審核",[Y.z.APPROVED]:"已通過",[Y.z.REJECTED]:"已拒絕"},w=e=>{let{label:t,text:r,link:l}=e;return(0,a.FD)(i.HStack,{alignItems:"flex-start",w:"full",children:[(0,a.Y)(i.Text,{fontWeight:700,width:{base:"120px",md:"152px"},flexShrink:0,children:t}),(0,a.FD)(i.HStack,{alignItems:"center",spacing:2,flex:"1",minW:"0",children:[(0,a.Y)(i.Text,{maxW:{base
1:"calc(100% - 128px)",md:"650px"},whiteSpace:"pre-wrap",children:r}),l&&(0,a.Y)(i.IconButton,{"aria-label":"Open Link",as:"a",href:l,target:"_blank",size:"lg",variant:"link",display:"inline-block",icon:(0,a.Y)(f.HaR,{})})]})]})},v=new Intl.NumberFormat("en-US"),D=e=>{var t,r,l,n;let{isOpen:s,onClose:c,request:d,onReviewed:u}=e,f=(0,i.useToast)(),g=(0,h.A)(),b=(0,p.A)(),D=d.status===Y.z.PENDING,[S,C]=(0,o.useState)(!1),A=(0,i.useDisclosure)(),k=async()=>{C(!0);try{await g("/api/super/profit-offer-requests/".concat(d.id),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"approve"})}),f({status:"success",title:"已通過申請"}),b(),null==u||u(),c()}catch(e){f({status:"error",title:"操作失敗,請稍後再試"})}finally{C(!1)}},F=d.profileSlug,E=F?"".concat(window.location.origin,"/").concat(F):void 0;return(0,a.FD)(i.Modal,{isOpen:s,onClose:c,size:"lg",isCentered:!0,returnFocusOnClose:!1,children:[(0,a.Y)(i.ModalOverlay,{}),(0,a.FD)(i.ModalContent,{maxW:{base:"100%",md:"900px"},minW:{base:"100%",md:"600px"},w:"auto",children:[(0,a.Y)(i.ModalHeader,{mb:6,fontWeight:700,children:"商品推廣申請審核"}),(0,a.Y)(i.ModalCloseButton,{}),(0,a.Y)(i.ModalBody,{mb:10,maxH:{base:"60vh",md:"500px"},overflowY:"auto",children:(0,a.FD)(i.VStack,{spacing:10,alignItems:"flex-start",children:[(0,a.Y)(w,{label:"商品名稱",link:d.productUrl,text:d.productUrl?(0,a.Y)(i.Link,{href:d.productUrl,isExternal:!0,color:"GUI.green.500",fontWeight:"semibold",children:d.productName}):d.productName}),d.productDescription&&(0,a.FD)(i.HStack,{alignItems:"flex-start",w:"full",children:[(0,a.Y)(i.Text,{fontWeight:700,width:{base:"120px",md:"152px"},flexShrink:0,children:"商品描述"}),(0,a.Y)(i.Box,{flex:"1",minW:"0",fontSize:"sm",color:"GUI.gray.700",sx:{"p, ul, ol":{my:"0.25em"},"ul, ol":{pl:"1.25em"},a:{color:"GUI.green.500",textDecoration:"underline"}},children:(0,m.A)(d.productDescription)})]}),(0,a.Y)(w,{label:"審核狀態",text:x[d.status]}),(0,a.Y)(w,{label:"創作者",link:E,text:E?(0,a.Y)(i.Link,{href:E,isExternal:!0,color:"GUI.green.500",children:F}):(0,a.Y)(i.Text,{fontFamily:"mono",fontSize:"sm",children:d.profileId})}),(0,a.Y)(w,{label:"銷售數量",text:v.format(null!==(l=null===(t=d.salesSnapshot)||void 0===t?void 0:t.count)&&void 0!==l?l:0)}),(0,a.Y)(w,{label:"銷售金額",text:v.format(null!==(n=null===(r=d.salesSnapshot)||void 0===r?void 0:r.total)&&void 0!==n?n:0)}),(0,a.Y)(w,{label:"分潤比例",text:"".concat(d.rebateRate,"%")}),!D&&d.rejectReason&&(0,a.Y)(w,{label:"拒絕理由",text:d.rejectReason})]})}),(0,a.Y)(i.ModalFooter,{children:D?(0,a.FD)(i.HStack,{spacing:3,children:[(0,a.Y)(i.Button,{variant:"outline",onClick:c,children:"取消"}),(0,a.Y)(i.Button,{colorScheme:"red",variant:"outline",onClick:A.onOpen,isDisabled:S,children:"拒絕"}),(0,a.Y)(i.Button,{colorScheme:"green",onClick:k,isLoading:S,children:"同意申請"})]}):(0,a.Y)(i.Button,{onClick:c,children:"關閉"})})]}),D&&(0,a.Y)(y,{isOpen:A.isOpen,onClose:A.onClose,requestId:d.id,productName:d.productName,onRejected:()=>{null==u||u(),c()}})]})},S=d.A,C={[Y.z.PENDING]:"待審核",[Y.z.APPROVED]:"已通過",[Y.z.REJECTED]:"已拒絕"},A={[Y.z.PENDING]:"yellow",[Y.z.APPROVED]:"green",[Y.z.REJECTED]:"red"},k=e=>e?Date.parse(e):void 0,F=new Intl.NumberFormat("en-US"),E=e=>{let{status:t}=e,r=(0,h.A)(),l=(0,p.A)(),n=(0,i.useToast)(),{data:d,isLoading:f,mutate:m}=(0,s.Ay)("/api/super/profit-offer-requests?status=".concat(t),r),[g,b]=(0,o.useState)(null),y=(0,i.useDisclosure)(),[x,w]=(0,o.useState)(!1),v=(0,o.useCallback)(async e=>{let t=e.filter(e=>e.original.status===Y.z.PENDING).map(e=>e.original.id);if(0===t.length){n({status:"warning",title:"沒有待審核的申請"});return}w(!0);try{let e=await r("/api/super/profit-offer-requests/bulk",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"approve",ids:t})}),a=e.results.filter(e=>e.success).length;a>0&&l();let i=e.results.length-a;n({status:0===i?"success":"warning",title:"批次同意完成",description:0===i?"共 ".concat(a," 筆"):"成功 ".concat(a," 筆 / 失敗 ").concat(i," 筆\n")+e.results.filter(e=>!e.success).map(e=>"".concat(e.id,": ").concat(e.error||"未知錯誤")).join("\n"),duration:0===i?3e3:8e3,isClosable:!0}),m()}catch(e){n({status:"error",title:"批次同意失敗"})}finally{w(!1)}},[r,m,l,n]),E=(0,o.useMemo)(()=>{let e=[{Header:"商品",id:"productName",accessor:"productName",w:"288px",Cell:e=>{let{row:{original:t}}=e;return t.productUrl?(0,a.Y)(i.Link,{href:t.productUrl,isExternal:!0,color:"GUI.green.500",fontWeight:"semibold",noOfLines:1,children:t.productName}):(0,a.Y)(i.Text,{fontWeight:"semibold",noOfLines:1,children:t.productName})}},{Header:"創作者",id:"creator",accessor:e=>e.profileSlug||e.profileId,w:"224px",Cell:e=>{let{row:{original:t}}=e,r=t.profileSlug;if(!r)return(0,a.Y)(i.Text,{fontSize:"xs",fontFamily:"mono",children:t.profileId});let l="".concat(window.location.origin,"/").concat(r);return(0,a.Y)(i.Link,{href:l,isExternal:!0,color:"GUI.green.500",fontWeight:"semibold",children:r})}},{Header:"銷售數量",id:"salesCount",accessor:e=>{var t,r;return null!==(r=null===(t=e.salesSnapshot)||void 0===t?void 0:t.count)&&void 0!==r?r:0},disableFilters:!0,w:"144px",Cell:e=>{let{value:t}=e;return(0,a.Y)(i.Text,{fontSize:"sm",children:F.format(t)})}},{Header:"銷售金額",id:"salesTotal",accessor:e=>{var t,r;return null!==(r=null===(t=e.salesSnapshot)||void 0===t?void 0:t.total)&&void 0!==r?r:0},disableFilters:!0,w:"160px",Cell:e=>{let{value:t}=e;return(0,a.Y)(i.Text,{fontSize:"sm",children:F.format(t)})}},{Header:"分潤比例",accessor:"rebateRate",disableFilters:!0,w:"128px",Cell:e=>{let{value:t}=e;return(0,a.FD)(a.FK,{children:[t,"%"]})}}];return e.push({Header:"申請時間",id:"submittedAt",accessor:e=>k(e.submittedAt),Cell:u.A.DateTime,disableFilters:!0,isDate:!0,w:"224px"},{Header:e=>{let{selectedFlatRows:r}=e;if(t!==Y.z.PENDING)return"狀態";let l=r.filter(e=>e.original.status===Y.z.PENDING);return(0,a.FD)(i.HStack,{spacing:2,children:[(0,a.Y)(i.Text,{children:"狀態"}),l.length>0&&(0,a.FD)(c.A,{size:"xs",colorScheme:"green",confirmColorScheme:"green",body:"確認批次同意 ".concat(l.length," 筆申請?"),confirm:"批次同意",isLoading:x,onClick:()=>v(l),children:["批次同意 (",l.length,")"]})]})},accessor:"status",disableFilters:!0,disableSortBy:!0,w:"160px",Cell:e=>{let{value:t}=e;return(0,a.Y)(i.Badge,{colorScheme:A[t],children:C[t]})}},{Header:"操作",id:"action",accessor:"id",disableFilters:!0,disableSortBy:!0,w:"112px",Cell:e=>{let{row:{original:t}}=e;return(0,a.Y)(i.Button,{size:"sm",colorScheme:t.status===Y.z.PENDING?"green":"gray",variant:t.status===Y.z.PENDING?"solid":"ghost",onClick:()=>{b(t),y.onOpen()},children:t.status===Y.z.PENDING?"審核":"檢視"})}}),e},[y,t,x,v]);return f?(0,a.Y)(i.Flex,{justify:"center",py:"10",children:(0,a.Y)(i.Spinner,{})}):(null==d?void 0:d.length)?(0,a.FD)(i.Box,{children:[(0,a.Y)(S,{data:d,columns:E,storageKey:"profitOfferRequests-".concat(t),defaultSortBy:[{id:"submittedAt",desc:!0}],canSelectRow:t===Y.z.PENDING}),g&&(0,a.Y)(D,{isOpen:y.isOpen,onClose:()=>{y.onClose(),b(null)},request:g,onReviewed:()=>m()})]}):(0,a.FD)(i.Text,{color:"GUI.gray.500",py:"6",children:["目前沒有 ",C[t]," 的申請"]})},M=()=>(0,a.Y)(l.A,{title:"商品推廣",requiredRole:"admin",allTabs:n.m,tabs:[{label:"待審核",comp:(0,a.Y)(E,{status:Y.z.PENDING})},{label:"已通過",comp:(0,a.Y)(E,{status:Y.z.APPROVED}),query:"approved"},{label:"已拒絕",comp:(0,a.Y)(E,{status:Y.z.REJECTED}),query:"rejected"}]})},59137:(e,t,r)=>{"use strict";r.d(t,{z:()=>a});var a=function(e){return e.PENDING="pending",e.APPROVED="approved",e.REJECTED="rejected",e}({})}},e=>{var t=t=>e(e.s=t);e.O(0,[19883,28505,58247,67690,43465,87551,81544,53958,80971,64065,99624,13404,77381,90585,34005,47533,57716,
110900,59324,50211,64190,45915,90636,46593,38792],()=>t(57933)),_N_E=e.O()}]);

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.