1var e=Object.defineProperty,t=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable,i=(t,a,r)=>a in t?e(t,a,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[a]=r,s=(e,s)=>{for(var n in s||(s={}))a.call(s,n)&&i(e,n,s[n]);if(t)for(var n of t(s))r.call(s,n)&&i(e,n,s[n]);return e};"undefined"!=typeof require&&require;import{h as n,T as o,u as c,P as l,j as p,s as d,b as u,U as m,d as y}from"./index.441c06ad.js";import{i as h}from"./vue-countdown.esm.2f3fe4e2.js";import{o as g,e as f,i as P,G as b,W as w,l as x,p as A,b as v,r as C,c as B,f as k,g as T,w as I,t as S,j as R,v as E,n as O,ac as L,ad as F,d as D,y as j,X as q}from"./vendor.ddbd020e.js";import{_ as J}from"./Spinner.17e7fe7a.js";import{_ as K}from"./PaymentForm.b063b423.js";const W={},N={class:"bg-gray-300 min-h-screen flex justify-center items-center"},H=[P("div",{class:"w-full px-5"},[P("div",{class:"max-w-md bg-white shadow-lg rounded-lg mx-auto"},[P("div",{class:"w-full px-5 py-5 space-y-3 text-center"},[b(" æ£å¨è½è·³è³ä»æ¬¾é é¢ï¼ï¼ï¼ï¼"),P("br")])])],-1)];W.render=function(e,t){return g(),f("div",N,H)};var Q="data:image/png;base64,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",V="/assets/available-payment.8ceb087b.png",M="/assets/security-checkout.1be6ef17.png";const U={name:"Tappay",components:{countdown:h,BaseImage:n,Spinner:J,PaymentRedirecting:W},props:{expiredInMinutes:{type:[String,Number],default:20},orderId:{type:[String,Number],default:""},orderAmount:{type:[String,Number],default:0},tappayOption:{type:[String,Number],default:o.CREDIT}},async setup(){const e=c(),t=await l.getTappayKey();return window.TPDirect.setupSDK(t.app_id,t.app_key,t.app_env),{companyConfig:e.config,applePayMerchantIdentifier:t.apple_pay_merchant_identifier}},data(){return{error:{number:"",expiry:"",cvc:""},cardType:"",canGetPrime:!1,isLoading:!1,counting:!0,time:60*Number(this.expiredInMinutes)*1e3,isRedirecting:!0,canUseApplePay:!1,applePayError:""}},computed:s({isCredit(){return 30===Number(this.tappayOption)},isLinePay(){return 28===Number(this.tappayOption)},isJkoPay(){return 23===Number(this.tappayOption)},isPlusPay(){return 34===Number(this.tappayOption)},isApplePay(){return Number(this.tappayOption)===o.APPLEPAY}},w(p,["isRegionPaymentsHasCod"])),mounted(){this.isCredit&&(window.TPDirect.card.setup({fields:{number:{element:this.$refs["card-number"],placeholder:"**** **** **** ****"},expirationDate:{element:this.$refs["card-expiration-date"],placeholder:"MM / YY"},ccv:{element:this.$refs["card-ccv"],placeholder:"å¾ä¸ç¢¼"}}}),window.TPDirect.card.onUpdate((e=>{this.canGetPrime=e.canGetPrime,this.cardType=e.cardType,2===e.status.number?this.error.number="å¡èé¯èª¤":(e.status.number,this.error.number=""),2===e.status.expiry?this.error.expiry="å°ææ¥é¯èª¤":(e.status.expiry,this.error.expiry=""),2===e.status.cvc?this.error.cvc="å®å
¨ç¢¼é¯èª¤":(e.status.cvc,this.error.cvc="")}))),this.isLinePay&&this.getLinePayPrime(),this.isJkoPay&&this.getJkoPayPrime(),this.isPlusPay&&this.getPlusPayPrime(),this.isApplePay&&this.setupApplePay(),setTimeout((()=>{this.isRedirecting=!1}),1e3)},methods:{getPrime(){this.isLoading=!0;if(!1===window.TPDirect.card.getTappayFieldsStatus().canGetPrime)return d("è«ç¢ºèªä»æ¬¾è³è¨");window.TPDirect.card.getPrime((async e=>{if(0!==e.status)return d(e.msg);try{const t=await l.payByPrime(this.orderId,e.card.prime)||{};return t.payment_url?window.TPDirect.redirect(t.payment_url):this.$router.push({name:"thankyou"})}catch(t){if(this.isLoading=!1,!this.isRegionPaymentsHasCod)return await x.fire({type:"error",title:"å·å¡å¤±æ",confirmButtonText:"ä¿®æ¹å·å¡è³è¨"});const{value:e}=await x.fire({type:"error",title:"å·å¡å¤±æ",showCancelButton:!0,confirmButtonText:"æ¹ç¨è²¨å°ä»æ¬¾",cancelButtonText:"ä¿®æ¹å·å¡è³è¨"});e&&await this.payByCod()}}))},getLinePayPrime(){TPDirect.linePay.getPrime((async e=>{this.redirectToPay(e)}))},getJkoPayPrime(){TPDirect.jkoPay.getPrime((async e=>{this.redirectToPay(e)}))},getPlusPayPrime(){TPDirect.plusPay.getPrime(((e,t)=>{this.redirectToPay(t)}))},setupApplePay(){if(!this.applePayMerchantIdentifier)return this.applePayError="Apple Pay å°æªå®æè¨å®ï¼è«æ¹ç¨å
¶ä»ä»æ¬¾æ¹å¼";if(!window.TPDirect.paymentRequestApi.checkAvailability())return this.applePayError="æ¤ç覽å¨ä¸æ¯æ´ Apple Payï¼è«æ¹ç¨ Safari æå
¶ä»ä»æ¬¾æ¹å¼";window.TPDirect.paymentRequestApi.setupApplePay({merchantIdentifier:this.applePayMerchantIdentifier,countryCode:"TW"});const e=String(this.orderAmount);window.TPDirect.paymentRequestApi.setupPaymentRequest({supportedNetworks:["MASTERCARD","VISA","AMEX","JCB"],supportedMethods:["apple_pay"],displayItems:[{label:this.companyConfig.company_name||"è¨å®éé¡",amount:{currency:"TWD",value:e}}],total:{label:this.companyConfig.company_name||"è¨å®éé¡",amount:{currency:"TWD",value:e}},options:{requestPayerEmail:!1,requestPayerName:!1,requestPayerPhone:!1,requestShipping:!1}},(e=>e.browserSupportPaymentRequest?e.canMakePaymentWithActiveCard?void(this.canUseApplePay=!0):(console.warn(`[ApplePay] canMakePaymentWithActiveCard=falseãå¯è½æ¯é¢å
ç¡å¯ç¨å¡çï¼æç¶²å ${window.location.hostname} å°æªå®æ merchant identifier ${this.applePayMerchantIdentifier} ç Apple Pay é©èã`,e),this.applePayError="ç®åç¡æ³ä½¿ç¨ Apple Payï¼è«æ¹ç¨å
¶ä»ä»æ¬¾æ¹å¼"):this.applePayError="æ¤ç覽å¨ä¸æ¯æ´ Apple Payï¼è«æ¹ç¨ Safari æå
¶ä»ä»æ¬¾æ¹å¼"))},payByApplePay(){this.isLoading=!0,window.TPDirect.paymentRequestApi.getPrime((async e=>{if(0!==e.status)return this.isLoading=!1,console.error("[ApplePay] getPrime æªå®æ",e),d("Apple Pay æªå®æä»æ¬¾ï¼è«åè©¦ä¸æ¬¡ææ¹ç¨å
¶ä»ä»æ¬¾æ¹å¼");try{return await l.payByPrime(this.orderId,e.prime),this.$router.push({name:"thankyou"})}catch(t){if(this.isLoading=!1,console.error("[ApplePay] pay-by-prime 失æ",t),!this.isRegionPaymentsHasCod)return await x.fire({type:"error",title:"Ap
1ple Pay 仿¬¾å¤±æ"});const{value:e}=await x.fire({type:"error",title:"Apple Pay 仿¬¾å¤±æ",showCancelButton:!0,confirmButtonText:"æ¹ç¨è²¨å°ä»æ¬¾",cancelButtonText:"è¿å"});e&&await this.payByCod()}}))},async redirectToPay(e){if(0===e.status)try{const t=await l.payByPrime(this.orderId,e.prime);if(t.payment_url)return window.TPDirect.redirect(t.payment_url)}catch(t){if(this.isLoading=!1,!this.isRegionPaymentsHasCod)return await x.fire({type:"error",title:"çµå¸³å¤±æ"});const{value:e}=await x.fire({type:"error",title:"çµå¸³å¤±æ",showCancelButton:!0,confirmButtonText:"æ¹ç¨è²¨å°ä»æ¬¾"}).then((e=>{if(e.isDismissed)return this.$router.push("/checkout")}));e&&await this.payByCod()}else x.fire({type:"error",title:e.msg})},async payByCod(){return this.isLoading=!0,await l.payByCod(this.orderId),this.$router.push("/thankyou")},transform:e=>(Object.entries(e).forEach((([t,a])=>{const r=a<10?`0${a}`:a;e[t]=`${r}`})),e)}};A("data-v-2013c094");const Z={class:"bg-gray-300 min-h-screen"},G={key:1,class:"p-3 space-y-3 mx-auto max-w-screen-md"},z={class:"max-w-md mx-auto bg-white shadow-lg rounded-lg"},Y={class:"w-full p-4 px-5 py-5 space-y-4"},X={class:"flex justify-between items-center"},_={class:"d-inline-block mb-0 mr-1 text-sm"},$=P("h3",{class:"flex justify-center"},[P("span",{class:"text-2xl"},"Apple Pay")],-1),ee=P("label",{for:"apple-pay-amount",class:"mb-1"},"仿¬¾éé¡",-1),te=["textContent"],ae=["textContent"],re={class:"flex flex-col justify-between items-center pt-2"},ie=["disabled"],se=b(" ä½¿ç¨ Apple Pay 仿¬¾ "),ne=P("button",{type:"button",class:"h-12 w-24 text-blue-500 text-xs font-medium"}," åæ¶åä¸ä¸é ",-1),oe={key:2,class:"p-3 space-y-3 mx-auto max-w-screen-md"},ce={class:"max-w-md mx-auto bg-white shadow-lg rounded-lg"},le={class:"w-full p-4 px-5 py-5 space-y-3"},pe={class:"flex justify-between items-center"},de={class:"flex flex-row"},ue={class:"flex flex-row pt-2 text-sm pt-6 pb-5"},me={class:"d-inline-block mb-0 mr-1"},ye={key:1,class:"d-inline-block mb-0 mr-1 hidden"},he=P("h3",{class:"flex justify-center"},[P("img",{class:"mr-2",width:"32",src:Q,alt:""}),P("span",{class:"text-2xl"},"ç·ä¸å®å
¨å·å¡")],-1),ge=P("label",{for:"cc-payment",class:"mb-1"},"仿¬¾éé¡",-1),fe=["textContent"],Pe=P("label",{for:"card-number",class:"control-label mb-1"},"å¡è",-1),be={key:0,class:"text-red-500"},we={class:"grid grid-cols-2 gap-4"},xe={class:"form-group"},Ae=P("label",{for:"card-expiration-date",class:"control-label mb-1"},"å°ææ¥",-1),ve={ref:"card-expiration-date",class:"form-control cc-exp"},Ce={key:0,class:"text-red-500"},Be={class:"form-group mb-0"},ke={class:"row"},Te=P("div",{class:"col-6"},null,-1),Ie={class:"col-6"},Se=P("label",{for:"card-ccv",class:"control-label mb-1"},"å®å
¨ç¢¼",-1),Re={class:"input-group"},Ee={ref:"card-ccv",type:"tel",class:"form-control cc-cvc"},Oe={key:0,class:"text-red-500"},Le={class:"flex flex-col justify-between items-center pt-2"},Fe=["disabled"],De=b(" 確èªä»æ¬¾ "),je=P("button",{type:"button",class:"h-12 w-24 text-blue-500 text-xs font-medium"}," åæ¶åä¸ä¸é ",-1),qe=P("div",null,[P("img",{alt:"",class:"m-0",src:V}),P("img",{alt:"",class:"m-0",src:M})],-1);v(),U.render=function(e,t,a,r,i,s){const n=C("PaymentRedirecting"),o=C("BaseImage"),c=C("countdown"),l=C("Spinner"),p=C("router-link");return g(),f("div",Z,[i.isRedirecting?(g(),B(n,{key:0})):k("",!0),s.isApplePay?(g(),f("div",G,[P("div",z,[P("div",Y,[P("div",X,[T(o,{class:"h-12 w-12",src:r.companyConfig.logo_image_url,alt:"Logo"},null,8,["src"]),i.time>0?(g(),B(c,{key:0,time:i.time,interval:1e3,transform:s.transform},{default:I((e=>[P("h6",_," è³¼ç©è»ä¿çæéï¼"+S(e.minutes)+" : "+S(e.seconds),1)])),_:1},8,["time","transform"])):k("",!0)]),$,P("div",null,[ee,P("div",{id:"apple-pay-amount",class:"form-control bg-gray-300",textContent:S(a.orderAmount)},null,8,te)]),i.applePayError?(g(),f("div",{key:0,class:"bg-yellow-200 p-2 text-gray-700",textContent:S(i.applePayError)},null,8,ae)):k("",!0),P("div",re,[i.canUseApplePay?(g(),f("button",{key:0,type:"button",class:"h-12 w-full rounded font-medium bg-black text-white",disabled:i.isLoading,onClick:t[0]||(t[0]=(...e)=>s.payByApplePay&&s.payByApplePay(...e))},[R(T(l,{class:"inline-block"},null,512),[[E,i.isLoading]]),se],8,ie)):k("",!0),T(p,{to:"/checkout"},{default:I((()=>[ne])),_:1})])])])])):k("",!0),s.isCredit?(g(),f("div",oe,[P("div",ce,[P("div",null,[P("div",le,[P("div",pe,[P("div",de,[T(o,{class:"h-12 w-12",src:r.companyConfig.logo_image_url,alt:"Logo"},null,8,["src"])]),P("div",ue,[i.time>0?(g(),B(c,{key:0,time:i.time,interval:1e3,transform:s.transform},{default:I((e=>[P("h6",me," è³¼ç©è»ä¿çæéï¼"+S(e.minutes)+" : "+S(e.seconds),1)])),_:1},8,["time","transform"])):(g(),f("h6",ye," è³¼ç©è»å·²éæã "))])]),he,P("div",null,[ge,P("div",{id:"cc-payment",readonly:"",name:"cc-payment",type:"text",class:"form-control bg-gray-300","aria-required":"true","aria-invalid":"false",required:"",textContent:S(a.orderAmount)},null,8,fe)]),P("div",null,[Pe,P("div",{ref:"card-number",class:O
1(["form-control cc-number identified",i.cardType])},null,2),i.error.number?(g(),f("span",be,S(i.error.number),1)):k("",!0)]),P("div",we,[P("div",xe,[Ae,P("div",ve,null,512),i.error.expiry?(g(),f("span",Ce,S(i.error.expiry),1)):k("",!0)]),P("div",Be,[P("div",ke,[Te,P("div",Ie,[Se,P("div",Re,[P("div",Ee,null,512)]),i.error.cvc?(g(),f("span",Oe,S(i.error.cvc),1)):k("",!0)])])])]),P("div",Le,[P("button",{type:"button",class:"h-12 w-full rounded font-medium bg-blue-500 text-white",disabled:!i.canGetPrime||i.isLoading,onKeypress:t[1]||(t[1]=L(F((()=>{}),["prevent"]),["enter"])),onClick:t[2]||(t[2]=(...e)=>s.getPrime&&s.getPrime(...e))},[R(T(l,{class:"inline-block"},null,512),[[E,i.isLoading]]),De],40,Fe),T(p,{to:"/checkout"},{default:I((()=>[je])),_:1})]),qe])])])])):k("",!0)])},U.__scopeId="data-v-2013c094";const Je={name:"Stripe",components:{countdown:h,BaseImage:n,Spinner:J,PaymentRedirecting:W},props:{expiredInMinutes:{type:[String,Number],default:20},orderId:{type:[String,Number],default:""},orderAmount:{type:[String,Number],default:0}},async setup(){const e=c(),t=await l.getStripeClientSecret(),a=Stripe(t.publishableKey),r=a.elements({clientSecret:t.clientSecret});return{companyConfig:e.config,stripe:a,elements:r}},data(){return{error:{number:"",expiry:"",cvc:""},cardType:"",isLoading:!1,counting:!0,time:60*Number(this.expiredInMinutes)*1e3,isRedirecting:!0}},computed:s({},w(p,["isRegionPaymentsHasCod"])),mounted(){this.elements.create("payment",{layout:"tabs"}).mount("#stripe-payment"),setTimeout((()=>{this.isRedirecting=!1}),1e3)},methods:{async submit(){this.isLoading=!0;const{error:e,paymentIntent:t}=await this.stripe.confirmPayment({elements:this.elements,confirmParams:{return_url:`${location.protocol}//${location.hostname}/api/orders/stripe-payment-intent?order_id=${this.orderId}`},redirect:"if_required"});if(e)return d("è«ç¢ºèªä»æ¬¾è³è¨"),void(this.isLoading=!1);await this.checkPaymentStatus(t)},async checkPaymentStatus(e){try{const t=await l.checkPaymentIntent(this.orderId,e.id,e.client_secret);return"processing"===(null==t?void 0:t.payment_status)?setTimeout((()=>{this.checkPaymentStatus(e)}),1e3):this.$router.push({name:"thankyou"})}catch(t){if(this.isLoading=!1,!this.isRegionPaymentsHasCod)return await x.fire({type:"error",title:"å·å¡å¤±æ",confirmButtonText:"ä¿®æ¹å·å¡è³è¨"});const{value:e}=await x.fire({type:"error",title:"å·å¡å¤±æ",showCancelButton:!0,confirmButtonText:"æ¹ç¨è²¨å°ä»æ¬¾",cancelButtonText:"ä¿®æ¹å·å¡è³è¨"});e&&await this.payByCod()}},async payByCod(){return this.isLoading=!0,await l.payByCod(this.orderId),this.$router.push("/thankyou")},transform:e=>(Object.entries(e).forEach((([t,a])=>{const r=a<10?`0${a}`:a;e[t]=`${r}`})),e)}};A("data-v-51823cb8");const Ke={class:"bg-gray-300 min-h-screen"},We={class:"p-3 space-y-3 mx-auto max-w-screen-md"},Ne={class:"max-w-md mx-auto bg-white shadow-lg rounded-lg"},He={class:"w-full p-4 px-5 py-5 space-y-3"},Qe={class:"flex justify-between items-center"},Ve={class:"flex flex-row"},Me={class:"flex flex-row pt-2 text-sm pt-6 pb-5"},Ue={class:"d-inline-block mb-0 mr-1"},Ze={key:1,class:"d-inline-block mb-0 mr-1 hidden"},Ge=P("h3",{class:"flex justify-center"},[P("img",{class:"mr-2",width:"32",src:Q,alt:""}),P("span",{class:"text-2xl"},"ç·ä¸å®å
¨å·å¡")],-1),ze=P("label",{for:"cc-payment",class:"mb-1"},"仿¬¾éé¡",-1),Ye=["textContent"],Xe=P("div",{id:"stripe-payment"},null,-1),_e={class:"flex flex-col justify-between items-center pt-2"},$e=["disabled"],et=b(" 確èªä»æ¬¾ "),tt=P("button",{type:"button",class:"h-12 w-24 text-blue-500 text-xs font-medium"}," åæ¶åä¸ä¸é ",-1),at=P("div",null,[P("img",{alt:"",class:"m-0",src:V}),P("img",{alt:"",class:"m-0",src:M})],-1);v(),Je.render=function(e,t,a,r,i,s){const n=C("PaymentRedirecting"),o=C("BaseImage"),c=C("countdown"),l=C("Spinner"),p=C("router-link");return g(),f("div",Ke,[i.isRedirecting?(g(),B(n,{key:0})):k("",!0),P("div",We,[P("div",Ne,[P("div",null,[P("div",He,[P("div",Qe,[P("div",Ve,[T(o,{class:"h-12 w-12",src:r.companyConfig.logo_image_url,alt:"Logo"},null,8,["src"])]),P("div",Me,[i.time>0?(g(),B(c,{key:0,time:i.time,interval:1e3,transform:s.transform},{default:I((e=>[P("h6",Ue," è³¼ç©è»ä¿çæéï¼"+S(e.minutes)+" : "+S(e.seconds),1)])),_:1},8,["time","transform"])):(g(),f("h6",Ze," è³¼ç©è»å·²éæã "))])]),Ge,P("div",null,[ze,P("div",{id:"cc-payment",readonly:"",name:"cc-payment",type:"text",class:"form-control bg-gray-300","aria-required":"true","aria-invalid":"false",required:"",textContent:S(a.orderAmount)},null,8,Ye)]),Xe,P("div",_e,[P("button",{type:"button",class:"h-12 w-full rounded font-medium bg-blue-500 text-white",disabled:i.isLoading,onKeypress:t[0]||(t[0]=L(F((()=>{}),["prevent"]),["enter"])),onClick:t[1]||(t[1]=(...e)=>s.submit&&s.submit(...e))},[R(T(l,{class:"inline-block"},null,512),[[E,i.isLoading]]),et],40,$e),T(p,{to:"/checkout"},{default:I((()=>[tt])),_:1})]),at])])])])])},Je.__scopeId="data-v-51823cb8";var rt={};const it={name:"Payment",components:{Tappay:U,Stripe:Je,PaymentForm:K,PaymentRedirecting:W},async beforeRouteEnter(e,t,a){const r=u(),i=r.lastOrder.is_tappay||r.lastOrder.is_stripe;if("checkout"!==t.name&&!i)return a("/checkout");try{const{order:e}=await m.getOrderById(r.lastOrder.order_id);if(e&&r.$patch({lastOrder:e}),e.is_finished)return a({name:"thankyou"})}catch(s){return a({name:"contact"})}a()},inheritAttrs:!1,async setup(){const e=D(""),t=u();return y().title="確èªä»æ¬¾ä¸...",j((()=>t.lastOrder.is_tappay?e.value="Tappay":t.lastOrder.is_stripe?e.value="Stripe":void(e.value="PaymentForm"))),{componentName:e,order:t.lastOrder}}};"function"==typeof rt&&rt(it),it.render=function(e,t,a,r,i,s){const n=C("PaymentRedirecting"),o=C("ClientOnly");return g(),f("div",null,[r.componentName?(g(),B(o,{key:1},{default:I((()=>[(g(),B(q(r.componentName),{"order-id":r.order.order_id,"order-amount":r.order.order_total,"tappay-option":r.order.tappay_option},null,8,["order-id","order-amount","tappay-option"]))])),_:1})):(g(),B(n,{key:0}))])};export{it 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.