1"use strict";(self.webpackChunkdigital_library=self.webpackChunkdigital_library||[]).push([[702],{10702(e,s,a){a.r(s),a.d(s,{default:()=>w});var t=a(65043),i=a(60103),o=a(60831),r=a(5522),l=a(28533),n=a(46026),d=a(36133),c=a(81048),u=a(50021),p=a(38485),b=a(27595),m=a(9029),x=a(25829),h=a(42481),f=a(93748),v=a(70579);const g=[{title:"User",dataIndex:"user",key:"user",sorter:(e,s)=>{var a;return null===(a=e.user)||void 0===a?void 0:a.localeCompare(s.user)}},{title:"Subscription",dataIndex:"subscription",key:"subscription",sorter:(e,s)=>{var a;return null===(a=e.subscription)||void 0===a?void 0:a.localeCompare(s.subscription)}},{title:"Approval",dataIndex:"approval",key:"approval",render:e=>(0,v.jsx)("b",{children:e})},{title:"Proof",dataIndex:"proof",key:"proof"},{title:"Date Submitted",dataIndex:"date",key:"date",sorter:(e,s)=>new Date(e.date).getTime()-new Date(s.date).getTime()},{title:"Start Date",dataIndex:"startDate",key:"startDate",sorter:(e,s)=>new Date(e.startDate).getTime()-new Date(s.startDate).getTime()},{title:"End Date",dataIndex:"endDate",key:"endDate",sorter:(e,s)=>new Date(e.endDate).getTime()-new Date(s.endDate).getTime()},{title:"Action",width:150,dataIndex:"action",key:"action"}],w=()=>{const e=(0,f.d)(),[s,a]=(0,o.L4)(r.PS),[w,y]=(0,t.useState)([]),[j,k]=(0,t.useState)(!1),[D,A]=(0,t.useState)(!1),[C,P]=(0,t.useState)(!1),N=new l.A("payments"),[_,S]=(0,t.useState)(null),[z,T]=(0,t.useState)(!1),F=(s,t,i,o)=>{let r=t?k:A;N.updateData(s,{approved:t,subscription_id:i,user_id:o},()=>{}).then(s=>{console.log(s),N.fetchData(null,a),r(!1),T(!1),e({position:"top",title:"Payment status changed!",status:"success",duration:3e3,isClosable:!0})}).catch(s=>{r(!1),e({position:"top",title:"An error occurred!",status:"error",duration:3e3,isClosable:!0})})};return(0,t.useEffect)(()=>{console.log(s),y([...s].sort((e,s)=>new Date(s.created_at).getTime()-new Date(e.created_at).getTime()).map((s,t)=>({id:s.payment_id,key:t,user:s.user_name,subscription:s.subscription_name,approval:s.approved?"Approved":"Pending",proof:(0,v.jsx)("a",{href:s.proof_of_payment,className:"text-blue-600 italic",children:"Link to Proof"}),date:new Date(s.created_at).toLocaleString(),startDate:new Date(s.start_date).toLocaleString(),endDate:new Date(s.end_date).toLocaleString(),action:(0,v.jsxs)("div",{className:"flex flex-row gap-2",children:[(0,v.jsx)(d.T,{size:"sm",color:"primary",onClick:()=>{S(s),T(!0)},children:(0,v.jsx)("i",{className:"pi pi-eye"})}),(0,v.jsxs)(p.y,{children:[(0,v.jsx)(u.T,{children:(0,v.jsx)(d.T,{isLoading:C,size:"sm",className:"w-1/6 bg-red-400 text-white rounded-lg ",isIconOnly:!0,children:(0,v.jsx)("i",{className:"pi pi-trash"})})}),(0,v.jsx)(c.C,{children:(0,v.jsxs)("div",{className:"px-1 py-2",children:[(0,v.jsx)("div",{className:"text-small text-red-600 font-bold p-1",children:"Warning"}),(0,v.jsx)("div",{className:"text-sm p-1",children:"Are you sure you want to delete?"}),(0,v.jsx)("div",{className:"w-3/6 bg-red-500 p-2 m-2 flex justify-center items-center cursor-pointer hover:bg-red-600 shadow-red-800 text-white rounded-lg ",onClick:()=>{var t;t=s.payment_id,P(!0),N.deleteData(t,null,()=>{}).then(s=>{console.log(s),N.fetchData(null,a),P(!1),e({position:"top",title:"Payment deleted!",status:"success",duration:3e3,isClosable:!0})}).catch(s=>{P(!1),e({position:"top",title:"An error occurred!",status:"error",duration:3e3,isClosable:!0})})},children:C?(0,v.jsx)(n.o,{size:"sm",color:"white"}):(0,v.jsx)("i",{className:"pi pi-trash text-sm"})})]})})]})]})})))},[s]),(0,v.jsxs)(i.A,{children:[(0,v.jsx)(m.A,{title:"Approval",open:z,footer:(0,v.jsxs)("div",{className:"flex flex-row gap-3",children:[(0,v.jsx)(h.A,{title:"Deny",children:(0,v.jsx)(d.T,{size:"sm",className:"w-2/4 bg-amber-400 text-white px-4 rounded-lg ",isLoading:D,startContent:(0,v.jsx)("i",{className:"pi pi-times text-xs "}),onClick:()=>{F(null===_||void 0===_?void 0:_.payment_id,!1,null===_||void 0===_?void 0:_.subscription_id,null===_||void 0===_?void 0:_.user_id)}})}),(0,v.jsx)(h.A,{title:"Approve",children:(0,v.jsx)(d.T,{size:"sm",isLoading:j,className:"w-2/4 bg-success-400 text-white px-4 roun
1ded-lg ",startContent:(0,v.jsx)("i",{className:"pi pi-check text-xs "}),onClick:()=>{F(null===_||void 0===_?void 0:_.payment_id,!0,null===_||void 0===_?void 0:_.subscription_id,null===_||void 0===_?void 0:_.user_id)}})})]}),onCancel:()=>{T(!z),S(null)},children:(0,v.jsxs)("div",{className:"flex flex-col w-full h-auto",children:[(I=null===_||void 0===_?void 0:_.proof_of_payment,new RegExp("^(https?:\\/\\/)?((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|((\\d{1,3}\\.){3}\\d{1,3}))(\\:\\d+)?(\\/[-a-z\\d%_.~+]*)*(\\?[;&a-z\\d%_.~+=-]*)?(\\#[-a-z\\d_]*)?$","i").test(I)?null!==_&&void 0!==_&&_.proof_of_payment.toLowerCase().includes("pdf")?(0,v.jsx)(v.Fragment,{children:(0,v.jsx)("i",{className:"pi pi-file-pdf text-5xl text-red-600"})}):(0,v.jsx)("img",{src:null===_||void 0===_?void 0:_.proof_of_payment,alt:"proof",className:"w-full h-96 object-cover"}):(0,v.jsx)("p",{children:"Invalid proof of payment"})),(0,v.jsx)("a",{href:null===_||void 0===_?void 0:_.proof_of_payment,className:"text-blue-600 italic",children:"Download link"})]})}),(0,v.jsx)("div",{className:"flex flex-col lg:px-8 py-1 px-4 lg:py-2 bg-white mb-5",children:(0,v.jsx)("div",{className:"overflow-y-auto pb-3 mb-5 overflow-x-hidden",children:(0,v.jsx)("div",{className:"p-5",children:(0,v.jsx)(b.Z,{className:"overflow-y-auto p-2 shadow-none",style:{height:"100%"},children:(0,v.jsx)(x.A,{columns:g,style:{overflow:"auto"},dataSource:w,pagination:{defaultPageSize:10,showSizeChanger:!1,pageSizeOptions:["20"]}})})})})})]});var I}},80017(e,s,a){a.d(s,{f:()=>o,u:()=>i});var t=a(85933),[i,o]=(0,t.q)({name:"CardContext",strict:!0,errorMessage:"useCardContext: `context` is undefined. Seems you forgot to wrap component within <Card />"})},27595(e,s,a){a.d(s,{Z:()=>A});var t=a(89379),i=a(80017),o=a(80045),r=a(38741),l=a(21645),n=(0,r.tv)({slots:{base:["flex","flex-col","relative","overflow-hidden","height-auto","outline-none","text-foreground","box-border","bg-content1",...l.zb],header:["flex","p-3","z-10","w-full","justify-start","items-center","shrink-0","overflow-inherit","color-inherit","subpixel-antialiased"],body:["relative","flex","flex-1","w-full","p-3","flex-auto","flex-col","place-content-inherit","align-items-inherit","h-auto","break-words","text-left","overflow-y-auto","subpixel-antialiased"],footer:["p-3","h-auto","flex","w-full","items-center","overflow-hidden","color-inherit","subpixel-antialiased"]},variants:{shadow:{none:{base:"shadow-none"},sm:{base:"shadow-small"},md:{base:"shadow-medium"},lg:{base:"shadow-large"}},radius:{none:{base:"rounded-none",header:"rounded-none",footer:"rounded-none"},sm:{base:"rounded-small",header:"rounded-t-small",footer:"rounded-b-small"},md:{base:"rounded-medium",header:"rounded-t-medium",footer:"rounded-b-medium"},lg:{base:"rounded-large",header:"rounded-t-large",footer:"rounded-b-large"}},fullWidth:{true:{base:"w-full"}},isHoverable:{true:{base:"data-[hover=true]:bg-content2 dark:data-[hover=true]:bg-content2"}},isPressable:{true:{base:"cursor-pointer"}},isBlurred:{true:{base:["bg-background/80","dark:bg-background/20","backdrop-blur-md","backdrop-saturate-150"]}},isFooterBlurred:{true:{footer:["bg-background/10","backdrop-blur","backdrop-saturate-150"]}},isDisabled:{true:{base:"opacity-disabled cursor-not-allowed"}},disableAnimation:{true:"",false:{base:"transition-transform-background motion-reduce:transition-none"}}},compoundVariants:[{isPressable:!0,disableAnimation:!1,class:"data-[pressed=true]:scale-[0.97] tap-highlight-transparent"}],defaultVariants:{radius:"lg",shadow:"md",fullWidth:!1,isHoverable:!1,isPressable:!1,isDisabled:!1,disableAnimation:!1,isFooterBlurred:!1}}),d=a(65043),c=a(23438),u=a(69462),p=a(49031),b=a(95502),m=a(91356),x=a(27887),h=a(55943),f=a(30479),v=a(75445),g=a(3195),w=a(41083);const y=["ref","as","children","disableRipple","onClick","onPress","autoFocus","className","classNames","allowTextSelectionOnPress"];var j=a(90648),k=a(70579),D=(0,m.Rf)((e,s)=>{const{children:a,context:r,Component:l,isPressable:D,disableAnimation:A,disableRipple:C,getCardProps:P,getRippleProps:N}=function(e){const[s,a]=(0,m.rE)(e,n.variantKeys),{ref:i,as:r,children:l,disableRipple:j=!1,onClick:k,onPress:D,autoFocus:A,className:C,classNames:P,allowTextSelectionOnPress:N=!0}=s,_=(0,o.A)(s,y),S=(0,g.zD)(i),z=r||(e.isPressable?"button":"div"),T="string"===typeof z,F=(0,x.$)(null==P?void 0:P.base,C),{onClick:I,onClear:E,ripples:H}=(0,w.k)(),L=s=>{e.disableAnimation||j||!S.current||I(s)},{buttonProps:R,isPressed:B}=(0,b.l)((0,t.A)({onPress:D,elementType:r,isDisabled:!e.isPressable,onClick:(0,c.cy)(k,L),allowTextSelectionOnPress:N},_),S),{hoverProps:W,isHovered:O}=(0,p.Mk)((0,t.A)({isDisabled:!e.isHoverable},_)),{isFocusVisible:M,isFocused:V,focusProps:$}=(0,u.og)({autoFocus:A}),U=(0,d.useMemo)(()=>n((0,t.A)({},a)),[(0,h.t6)(a)]),Z=(0,d.useMemo)(()=>({isDisabled:e.isDisabled,isFooterBlurred:e.isFooterBlurred,disableAnimation:e.disableAnimation,fullWidth:e.fullWidth,slots:U,classNames:P}),[U,P,e.isDisabled,e.isFooterBlurred,e.disableAnimation,e.fullWidth]),q=(0,d.useCallback)(function(){let s=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};
1return(0,t.A)({ref:S,className:U.base({class:F}),tabIndex:e.isPressable?0:-1,"data-hover":(0,f.sE)(O),"data-pressed":(0,f.sE)(B),"data-focus":(0,f.sE)(V),"data-focus-visible":(0,f.sE)(M),"data-disabled":(0,f.sE)(e.isDisabled)},(0,c.v6)(e.isPressable?(0,t.A)((0,t.A)((0,t.A)({},R),$),{},{role:"button"}):{},e.isHoverable?W:{},(0,v.$)(_,{enabled:T}),(0,v.$)(s)))},[S,U,F,T,e.isPressable,e.isHoverable,e.isDisabled,O,B,M,R,$,W,_]),K=(0,d.useCallback)(()=>({ripples:H,onClear:E}),[H,E]);return{context:Z,domRef:S,Component:z,classNames:P,children:l,isHovered:O,isPressed:B,isPressable:e.isPressable,isHoverable:e.isHoverable,disableAnimation:e.disableAnimation,disableRipple:j,handleClick:L,isFocusVisible:M,getCardProps:q,getRippleProps:K}}((0,t.A)((0,t.A)({},e),{},{ref:s}));return(0,k.jsxs)(l,(0,t.A)((0,t.A)({},P()),{},{children:[(0,k.jsx)(i.u,{value:r,children:a}),D&&!A&&!C&&(0,k.jsx)(j.j,(0,t.A)({},N()))]}))});D.displayName="NextUI.Card";var A=D}}]); 2//# sourceMappingURL=702.7aea5d9f.chunk.js.map
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.