@paypay/mini-app-js-sdk 2.64.2 → 2.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
!function(){"use strict";try{if("undefined"!=typeof document){var p=document.createElement("style");p.appendChild(document.createTextNode('.ppmna-reset-css{all:initial}.ppmna-reset-css *{text-align:unset;color:unset;background:initial;background-color:transparent;margin:revert;padding:revert;font-weight:revert;font-style:unset;font-size:unset;-webkit-user-select:none;user-select:none;border:unset;border-radius:revert;vertical-align:unset;word-break:unset;outline:none;box-sizing:content-box}.ppmna-reset-css * img{display:inline-block}.ppmna-reset-css * input,.ppmna-reset-css * select{-webkit-user-select:auto;user-select:auto}.ppmna-reset-css * li{list-style:none}.ppmna-reset-css * :where(*:not(svg,svg *)){all:revert}@font-face{font-family:Graphik;font-weight:400;font-display:swap;src:url(https://static.paypay.ne.jp/font/Graphik-Regular-Web.woff2) format("woff2"),url(https://static.paypay.ne.jp/font/Graphik-Regular-Web.woff) format("woff")}@font-face{font-family:Graphik;font-weight:600;font-display:swap;src:url(https://static.paypay.ne.jp/font/Graphik-Semibold-Web.woff2) format("woff2"),url(https://static.paypay.ne.jp/font/Graphik-Semibold-Web.woff) format("woff")}.pp-smartButtonWrapper .pp-smartBtn{display:flex;align-items:center;border-radius:8px;border:none;font-size:14px;font-weight:600;line-height:22px;color:#fff;padding:0;width:100%;height:44px;margin:auto;-webkit-tap-highlight-color:transparent;text-decoration:none;box-sizing:border-box}.pp-smartButtonWrapper .pp-smartBtn.pp-sm .pp-leftSection .pp-btnContent{flex-direction:column}.pp-smartButtonWrapper .pp-smartBtn.pp-light{background:#fff;color:#242323}.pp-smartButtonWrapper .pp-smartBtn.pp-dark{background:#000}.pp-smartButtonWrapper .pp-smartBtn.pp-red{background:#f03}.pp-smartButtonWrapper .pp-smartBtn.pp-login{min-width:180px}.pp-smartButtonWrapper .pp-smartBtn.pp-login.pp-sm{width:180px!important}.pp-smartButtonWrapper .pp-smartBtn.pp-login.pp-light{border:1px solid #e4e4e8}.pp-smartButtonWrapper .pp-smartBtn.pp-login.pp-light .pp-userProfile{margin-right:4px}.pp-smartButtonWrapper .pp-smartBtn.pp-login .pp-leftSection .pp-btnContent{display:grid}.pp-smartButtonWrapper .pp-smartBtn.pp-pay{min-width:160px}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-light{border:1px solid #dddddd}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-light .pp-cashbackInfo{color:#ff954c;background:#fff0e5}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-red .pp-cashbackInfo{color:#f03}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-ja .pp-cashbackInfo{padding:2px 16px}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-sm{width:160px!important}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-sm.pp-cashback{height:66px;flex-direction:column;justify-content:center}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-sm .pp-cashbackInfo{margin:8px 0 0}.pp-smartButtonWrapper .pp-smartBtn.pp-pay .pp-leftSection .pp-img{width:24px;height:24px}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-shortText{font-size:16px}.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-sm .pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-cashback .pp-leftSection .pp-btnContent,.pp-smartButtonWrapper .pp-smartBtn.pp-pay.pp-shortText .pp-leftSection .pp-btnContent{margin-left:4px}.pp-smartButtonWrapper .pp-smartBtn .pp-leftSection{display:flex;justify-content:center;align-items:center;width:100%;box-sizing:border-box;padding:0 8px}.pp-smartButtonWrapper .pp-smartBtn .pp-leftSection .pp-img{width:20px;height:20px;display:inline-block}.pp-smartButtonWrapper .pp-smartBtn .pp-leftSection .pp-btnContent{margin-left:8px}.pp-smartButtonWrapper .pp-smartBtn .pp-leftSection .pp-btnContent .pp-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pp-smartButtonWrapper .pp-smartBtn .pp-cashbackInfo{font-size:12px;color:#242323;background:#fff;line-height:14px;padding:2px 8px;border-radius:9px;margin-left:8px}.pp-smartButtonWrapper .pp-smartBtn .pp-userProfile{width:34px;height:34px;border-radius:50%;margin-right:5px}.pp-smartButtonWrapper.pp-button{padding:0;margin:0;background:none;border:none;width:100%;border-radius:8px;-webkit-tap-highlight-color:transparent;font-family:revert!important}.pp-smartButtonWrapper.pp-button *{font-family:revert!important}')),document.head.appendChild(p)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
|
|
2
|
-
var pp=function(){"use strict";var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,o=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable,a=(t,n,o)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o,i=(e,t)=>{for(var n in t||(t={}))r.call(t,n)&&a(e,n,t[n]);if(o)for(var n of o(t))s.call(t,n)&&a(e,n,t[n]);return e},l=(e,o)=>t(e,n(o)),c=(e,t,n)=>new Promise(((o,r)=>{var s=e=>{try{i(n.next(e))}catch(t){r(t)}},a=e=>{try{i(n.throw(e))}catch(t){r(t)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(s,a);i((n=n.apply(e,t)).next())}));function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}var u=function e(t,n){function o(e,o,r){if("undefined"!=typeof document){"number"==typeof(r=d({},n,r)).expires&&(r.expires=new Date(Date.now()+864e5*r.expires)),r.expires&&(r.expires=r.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in r)r[a]&&(s+="; "+a,!0!==r[a]&&(s+="="+r[a].split(";")[0]));return document.cookie=e+"="+t.write(o,e)+s}}return Object.create({set:o,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var n=document.cookie?document.cookie.split("; "):[],o={},r=0;r<n.length;r++){var s=n[r].split("="),a=s.slice(1).join("=");try{var i=decodeURIComponent(s[0]);if(o[i]=t.read(a,i),e===i)break}catch(l){}}return e?o[e]:o}},remove:function(e,t){o(e,"",d({},t,{expires:-1}))},withAttributes:function(t){return e(this.converter,d({},this.attributes,t))},withConverter:function(t){return e(d({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(t)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"});const g="_PayPayJsBridge",f=["init","openWebview","openMap","closeApp","makePayment","topup","setSessionData","getSessionData","setStorageData","getStorageData","removeStorageData","getPermissionStatus","scanCode","showAlert","showErrorSheet","getTopBarHeight","setTitle","showUpdateWarning","getPlatformInformation","openApp","share","getKycInformation","getUserLocation","checkPaymentMethod","registerKyc","startMultiFactorAuth","verifyMultiFactorAuthResult","getBankInfo","logout","getUserProfile","getBalance","getUserAddress","getUAID","copyToClipboard","registerUserInfo","setEnablePullDownRefresh","registerEmail","inputAddress","getDeviceInformation","request","requestInternal","registerPaymentFeatures","initKycPassport","getKycPassportInfo","shortcutExists","addShortcut","getAllUserAddresses","getUserPaymentFeatureSettings","getPaymentSettings","getTransactionInfo","getTransactions","getPayPayCardInfo","getExternalLinkageInformation","markAsReady","renderCoupons"],m=["init","createOrder","makePayment","render","logout","getAuthStatus","getUserProfile","getBalance","getUserAddress","getUAID","getCashbackInformation","renderCoupons","getLoginUrl","renderButton"],p="2.64.2",v=new URL("https://mini-app-sdk-core.paypay.ne.jp/"),h=v.origin,y=new URL(`./iframe.html?v=${p}&rev=b21dd99`,v).href,w=new URL(`./coupon/iframe.html?v=${p}`,v).href;new URL(`./button/iframe.html?v=${p}`,v).href;const b="BAD_REQUEST_INSUFFICIENT_PARAMETER",S="UNKNOWN",E="SDK_NOT_INITIALIZED",I="TOKEN_NOT_FOUND",k="TOKEN_EXPIRED",C="AUTHORIZATION_NEEDED",P="ppjssdk.refreshToken";class O extends Error{constructor(e,t){super(e),this.errorCode=t}}const _=Object.freeze(Object.defineProperty({__proto__:null,getCookie:function({name:e}){return u.get(e)},getLocalStorage:function({name:e}){return localStorage.getItem(e)},getSessionStorage:function({name:e}){return sessionStorage.getItem(e)},getUrl:function(){return window.location.href},insertIframe:function(e){var{containerSelector:t,attributes:n}=e,a=n,{styles:i}=a,l=((e,t)=>{var n={};for(var a in e)r.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&o)for(var a of o(e))t.indexOf(a)<0&&s.call(e,a)&&(n[a]=e[a]);return n})(a,["styles"]);return new Promise(((e,n)=>{const o=document.querySelector(t);if(!o)return void n(new O(`Container with selector "${t}" not found.`,b));const r=document.createElement("iframe");r.onload=()=>{e(!0)},r.onerror=()=>{n(new O("Failed to load iframe.","NOT_REACHABLE"))},Object.assign(r.style,i),Object.entries(l).forEach((([e,t])=>{r.setAttribute(e,t)})),o.innerHTML="",o.appendChild(r)}))},removeCookie:function({name:e,options:t}){return u.remove(e,t)},removeElement:function({selector:e}){const t=document.querySelector(e);return!!t&&(t.remove(),!0)},removeLocalStorage:function({name:e}){return localStorage.removeItem(e)},removeQueryParametersFromUrl:function(e){const t=new URL(window.location.href);e.forEach((e=>t.searchParams.delete(e)));const n=t.toString().replace(t.origin,"");history.replaceState(history.state,"",n)},removeSessionStorage:function({name:e}){return sessionStorage.removeItem(e)},setCookie:function({name:e,value:t,options:n}){return u.set(e,t,n)},setLocalStorage:function({name:e,value:t}){return localStorage.setItem(e,t)},setSessionStorage:function({name:e,value:t}){return sessionStorage.setItem(e,t)},updateElementStyle:function({selector:e,styles:t}){const n=document.querySelector(e);return!!n&&(Object.assign(n.style,t),!0)}},Symbol.toStringTag,{value:"Module"})),A="success",R="fail",T="complete";var L=(e=>(e.MiniApp="MiniApp",e.SmartPayment="SmartPayment",e))(L||{});function N(e=6){const t=new Uint8Array(e);return crypto.getRandomValues(t),Array.from(t,(e=>(e%36).toString(36))).join("")}const U=e=>"object"!=typeof e||null===e?e:JSON.parse(JSON.stringify(e)),D=e=>{var t;const n=null==(t=e[0])?void 0:t.callbacks;return"object"==typeof n&&null!==n},x=e=>Object.keys(e).reduce(((e,t)=>(e[t]=!0,e)),{});class M{constructor(e,t,n=[],o){this.deferredPromises={},this.functions=e,this.allowedOrigins=t,this.middlewares=n,this.registeredCallbacks={},this.messageEventHandler=this.messageEventHandler.bind(this),this.errorLogger=o,this.subscribeToMessageEvent()}subscribeToMessageEvent(){window.addEventListener("message",this.messageEventHandler)}unsubscribeToMessageEvent(){window.removeEventListener("message",this.messageEventHandler)}messageEventHandler(e){var t;if(null==(t=e.data)?void 0:t.forWindowBridge)return this.allowedOrigins&&"request"===e.data.type&&!this.allowedOrigins.includes(e.origin)?this.sendErrorResponse(e,`${e.origin} is not allowed to make requests`,"ORIGIN_NOT_ALLOWED"):void("request"===e.data.type?this.handleRequest(e):"response"===e.data.type?this.handleResponse(e):"callback"===e.data.type&&this.handleCallback(e))}handleRequest(e){return c(this,null,(function*(){var t;const n=e.data.functionName,o=this.functions[n];o||this.sendErrorResponse(e,`Function '${n}' does not exists on the target window`,"FUNCTION_NOT_FOUND");const r=U(e.data.params);D(r)&&(r[0].callbacks=Object.keys(r[0].callbacks).reduce(((t,n)=>(t[n]=(...t)=>{this.invokeCallback(e,n,t)},t)),{}));try{this.sendSuccessResponse(e,yield function(e,t,n,o){let r=-1;const s=o=>c(this,null,(function*(){if(++r,r<e.length){const n=e[r];return yield n(t,o,s)}return n(...o)}));return s(o)}([...this.middlewares,...null!=(t=o.middlewares)?t:[]],e,o,r))}catch(s){let t="Some error occurred while processing the request",n=S;s instanceof O?(t=s.message,n=s.errorCode):console.error(s),this.sendErrorResponse(e,t,n)}}))}handleResponse(e){if(!this.deferredPromises[e.data.key])return void console.warn(`Promise for ${e.data.functionName} not found`);const[t,n]=this.deferredPromises[e.data.key];delete this.deferredPromises[e.data.key],"success"===e.data.status?t(e.data.result):(delete this.registeredCallbacks[e.data.key],n(new O(e.data.message,e.data.errorCode)))}handleCallback(e){var t;const{key:n,callbackName:o,args:r}=e.data,s=null==(t=this.registeredCallbacks[n])?void 0:t[o];s?s(...r):console.warn(`Callback with key ${n} and name ${o} not found.`)}sendErrorResponse(e,t,n){this.errorLogger&&this.errorLogger(e.data.functionName,t,n),this.sendResponse(e,{status:"failure",message:t,errorCode:n})}sendSuccessResponse(e,t){this.sendResponse(e,{status:"success",result:t})}sendResponse(e,t){this.sendMessage(e.source,e.origin,i({type:"response",key:e.data.key,functionName:e.data.functionName},t))}invokeCallback(e,t,n){this.sendMessage(e.source,e.origin,{type:"callback",key:e.data.key,functionName:e.data.functionName,callbackName:t,args:n})}sendMessage(e,t,n){e.postMessage(i({forWindowBridge:!0},U(n)),t)}sendRequest(e,t,n,o){return new Promise(((r,s)=>c(this,null,(function*(){const a=`${n}--${N()}`;try{const c=yield e();if(!c)throw new Error("Target window is undefined");let d=o[0];if(D(o)){const e=o[0].callbacks;this.addFunctionCallbacks(a,e),d=l(i({},o[0]),{callbacks:x(e)})}this.deferredPromises[a]=[r,s],this.sendMessage(c,t,{type:"request",key:a,functionName:n,params:[d]})}catch(c){delete this.deferredPromises[a],delete this.registeredCallbacks[a],s(new O(c.message,"MESSAGE_SENDING_FAILED"))}}))))}addFunctionCallbacks(e,t){Object.keys(t).forEach((e=>{if("function"!=typeof t[e])throw new Error(`Callback ${e} is not a function`)})),this.registeredCallbacks[e]=i({},t)}static init(e,t,n=[],o){if(this._instance)throw new Error("WindowBridge already initialized, you can't call WindowBridge.init more than once");return this._instance=new this(e,t,n,o),this._instance}static destroy(){this._instance&&(this._instance.unsubscribeToMessageEvent(),this._instance=void 0)}static getBridge(){if(!this._instance)throw new Error("WindowBridge not initialized, please call WindowBridge.init before calling WindowBridge.getBridge");return this._instance}static getTargetWindowFunctionProxy(e,t){return M.getBridge().getTargetWindowFunctionProxy(e,t)}getTargetWindowFunctionProxy(e,t){return new Proxy(this,{get:(n,o)=>(...r)=>n.sendRequest(e,t,o.toString(),r)})}}const F="ppmna-iframe",B="ppsdk-container";let $;function j(){return $||($=function(){if(document.getElementById(F))return;const e=document.createElement("div");return document.createElement("div"),e.setAttribute("id",B),e.setAttribute("class",B),e.style.all="initial",e.style.display="none",e.style.position="fixed",e.style.width="100%",e.style.height="100%",e.style.top="0",e.style.left="0",e.style.zIndex="2147483637",document.body.appendChild(e),e}()),$}let W,q=!1,K=null;function H(e){const t=j();t&&(t.style.display=e?"initial":"none",e?null!==K||q||(K=document.body.style.overflow,document.body.style.overflow="hidden"):null!==K&&(document.body.style.overflow=K,K=null))}function J(){return W||(W=new Promise(((e,t)=>{function n(){const n=document.createElement("iframe");n.setAttribute("src",y),n.setAttribute("name",F),n.setAttribute("id",F),n.setAttribute("class",F),n.setAttribute("allow","geolocation"),n.onload=()=>{e(n),n.onerror=null},n.onerror=t,n.style.all="initial",n.style.width="100%",n.style.height="100%",n.style.border="none";const o=j();o&&(o.innerHTML="",o.append(n))}"loading"===document.readyState?document.addEventListener("DOMContentLoaded",(()=>{n()})):n()}))),W}M.init(_,[h]);const z=M.getTargetWindowFunctionProxy((function(){return J().then((e=>null==e?void 0:e.contentWindow)).catch((()=>null))}),h);function G(e,t,n){const o=N(),r=n=>{V(n.origin)&&n.data.name===e&&n.data.messageId===o&&function(e,t,n){var o,r,s;e.result===R&&(null==(o=null==t?void 0:t.fail)||o.call(t,e.data)),e.result===A&&(null==(r=null==t?void 0:t.success)||r.call(t,null==e?void 0:e.data)),e.result===T&&(null==(s=null==t?void 0:t.complete)||s.call(t),removeEventListener("message",n))}(n.data,t,r)};addEventListener("message",r),function(e){c(this,null,(function*(){var t;const n=yield J().catch((()=>{}));null==(t=null==n?void 0:n.contentWindow)||t.postMessage(JSON.parse(JSON.stringify(e)),h)}))}({name:e,params:n,messageId:o})}function V(e){return e===h}function Z(e){return f.includes(e)}function Q(e){return m.includes(e)}function X(e,t,n){return function(o={}){const r=null==n?void 0:n(o);z.logEvent(i({event_action:`pp_${e}_called`,event_category_suffix:e},r));const s=t(o);return s.then((t=>{var n;z.logEvent(i({event_action:`pp_${e}_success`,event_category_suffix:e},r)),null==(n=o.success)||n.call(o,t)})).catch((t=>{var n;console.error(t.message),z.logEvent(i({event_action:`pp_${e}_fail`,event_category_suffix:e,error_value:t.errorCode},r)),null==(n=o.fail)||n.call(o,{errorCode:t.errorCode})})).finally((()=>{var e;null==(e=o.complete)||e.call(o)})),s}}const Y={[E]:C,[I]:C,[k]:k};let ee,te;J(),te=Promise.resolve(!1);function ne(e){const t=function(e,t){if(t){const t=localStorage.getItem(`${P}.${e}`);if(t)return t}return u.get(`${P}.${e}`)||u.get(P)||""}(e.clientId,e.useLocalStorage),n=l(i({},e),{refreshToken:t,clientVersion:"2.64.2",clientSdkType:ee,clientUrl:window.location.href});var o;let r;null!=e.disableBackgroundScrollLock&&(o=!!e.disableBackgroundScrollLock,q=o);const s=new Promise((e=>r=e)),a=()=>{var t;r(!0),null==(t=e.complete)||t.call(e)};te.then((()=>J())).then((()=>{G("init",l(i({},e),{complete:a}),n)})).catch((()=>{var t;null==(t=e.fail)||t.call(e,{errorCode:E}),a()})),te=s}addEventListener("message",(e=>{var t;if(!(null==(t=e.data)?void 0:t.forWindowBridge)&&V(e.origin))if("reload"===e.data.name&&window.location.reload(),"makeVisible"!==e.data.name)if("showIframe"!==e.data.name)if("hideIframe"!==e.data.name){if("link"===e.data.name){const t=e.data.data;"_blank"===t.target?window.open(t.url,"_blank"):window.location.href=t.url}if("consoleDebugInfo"===e.data.name){const{params:t}=e.data.data;!function(e){console.debug(...e)}(t)}}else H(!1);else H(!0);else H(!0)})),addEventListener("popstate",(()=>{J().then((e=>{var t;const n={name:"clientPopState"};null==(t=null==e?void 0:e.contentWindow)||t.postMessage(n,h)})).catch((e=>console.warn(e)))}));var oe;oe={_handleMessageFromNative:e=>{J().then((t=>{var n;null==(n=null==t?void 0:t.contentWindow)||n.postMessage(JSON.parse(JSON.stringify({name:"handleMessageFromNative",params:{json:e}})),h)}))}},(!window.hasOwnProperty(g)||window[g]!==oe)&&(window[g]=oe);const re=["init","setTitle","copyToClipboard","getSessionData","setSessionData","getStorageData","setStorageData","removeStorageData","getLoginUrl"],se=["renderCoupons"];const ae={version:"2.64.2",revision:"b21dd99"};X("getLoginUrl",z.getLoginUrl);const ie=X("getPaymentSettings",z.getPaymentSettings),le=X("markAsReady",z.markAsReady);X("renderButton",z.renderButton);var ce=(e=>(e.validToken="TOKEN_VALID",e.initialized="INITIALIZED",e.emailRegistered="EMAIL_REGISTERED",e.emailNotVerified="EMAIL_NOT_VERIFIED",e.success="SUCCESS",e.loggedOut="LOGGED_OUT",e.connected="CONNECTED",e))(ce||{});const de=X("logout",(()=>c(this,null,(function*(){return yield z.logout(),{statusCode:ce.loggedOut}}))));const ue={verifyMultiFactorAuthResult:function(e){const t=new URL(window.location.href);G("verifyMultiFactorAuthResult",e,l(i({},e),{sessionId:t.searchParams.get("ppSessionId")}))},share:function(e){if(!(null==navigator?void 0:navigator.share))return void G("share",e,e);const t={text:null==e?void 0:e.text};navigator.share(t).then((()=>{var t,n;null==(t=null==e?void 0:e.success)||t.call(e),null==(n=null==e?void 0:e.complete)||n.call(e)})).catch((()=>{var t,n;null==(t=null==e?void 0:e.fail)||t.call(e,{errorCode:S}),null==(n=null==e?void 0:e.complete)||n.call(e)}))},setTitle:function(e){var t,n,o;document.title=null!=(t=null==e?void 0:e.title)?t:"",null==(n=null==e?void 0:e.success)||n.call(e),null==(o=null==e?void 0:e.complete)||o.call(e)},renderCoupons:X("renderCoupons",(e=>c(this,null,(function*(){const{merchant:t,couponId:n,containerId:o,postLoginRedirectUrl:r=window.location.href,postLoginRedirectType:s,locale:a}=e,i=document.getElementById(o);if(!i)throw new O("Invalid coupon container Id",b);const l=yield z.fetchCoupons({merchantId:t,couponId:n,postLoginRedirectUrl:r,postLoginRedirectType:s});try{const e=document.createElement("iframe");e.src=w,e.style.cssText="width:100%;height: 0;border: none;transition: height 300ms ease-in;display: block;",yield new Promise(((t,n)=>{e.onload=()=>t(!0),e.onerror=()=>n(new Error("Failed to load coupon iframe")),i.innerHTML="",i.append(e)})),e.onload=null,e.onerror=null,window.addEventListener("message",(({data:t,source:n})=>{"update-iframe-height"===(null==t?void 0:t.eventName)&&e.contentWindow===n&&(e.style.height=`${t.height}px`)}));const n=M.getTargetWindowFunctionProxy((()=>e.contentWindow),h);yield n.renderCoupons({coupons:l,merchantId:t,locale:a,postLoginRedirectUrl:r,postLoginRedirectType:s})}catch(c){throw new O(`An error occurred while displaying coupons, merchantId=${t}, couponId=${n}, error=${c}`,S)}}))),(e=>({event_label2:e.couponId,merchant_id:e.merchant}))),scanCode:function(e){var t;G("scanCode",e,l(i({},e),{redirectUrlOnCancel:null!=(t=null==e?void 0:e.redirectUrlOnCancel)?t:window.location.href}))},copyToClipboard:function(e){var t,n,o;const r=document.createElement("textarea");r.setAttribute("readonly","true"),r.setAttribute("contenteditable","true"),r.value=e.value,document.body.appendChild(r),r.select(),r.setSelectionRange(0,r.value.length);const s=document.execCommand("copy");document.body.removeChild(r),s?null==(t=null==e?void 0:e.success)||t.call(e):null==(n=null==e?void 0:e.fail)||n.call(e,{errorCode:"other"}),null==(o=e.complete)||o.call(e)},getSessionData:function(e){var t,n;const o=sessionStorage.getItem(null==e?void 0:e.key);null==(t=null==e?void 0:e.success)||t.call(e,{[null==e?void 0:e.key]:null!=o?o:""}),null==(n=null==e?void 0:e.complete)||n.call(e)},setSessionData:function(e){var t,n,o;sessionStorage.setItem(null==e?void 0:e.key,null!=(t=null==e?void 0:e.value)?t:""),null==(n=null==e?void 0:e.success)||n.call(e),null==(o=null==e?void 0:e.complete)||o.call(e)},getStorageData:function(e){var t,n;const o=localStorage.getItem(null==e?void 0:e.key);null==(t=null==e?void 0:e.success)||t.call(e,{[null==e?void 0:e.key]:null!=o?o:""}),null==(n=null==e?void 0:e.complete)||n.call(e)},setStorageData:function(e){var t,n,o;localStorage.setItem(null==e?void 0:e.key,null!=(t=null==e?void 0:e.value)?t:""),null==(n=null==e?void 0:e.success)||n.call(e),null==(o=null==e?void 0:e.complete)||o.call(e)},removeStorageData:function(e){var t,n;localStorage.removeItem(null==e?void 0:e.key),null==(t=null==e?void 0:e.success)||t.call(e),null==(n=null==e?void 0:e.complete)||n.call(e)},getKycPassportInfo:function(e){const t=window.location.href;G("getKycPassportInfo",e,l(i({},e),{url:t}))},logout:de,getPaymentSettings:ie,markAsReady:le};return function({sdkType:e,clientFunctions:t}){ee=e;const n=e===L.MiniApp?Z:Q,o=new Proxy(l(i({},t),{init:ne}),{get(t,o){if(o in ae)return ae[o];const r=o;if(!n(r))throw new Error(`${r} is not supported by ${e} JS SDK`);return function(e,t){return(n={})=>{const o=new Promise(((o,r)=>{let s,a;e(l(i({},n),{success:e=>{var t;a=e,null==(t=n.success)||t.call(n,e)},fail:e=>{var o;"init"===t&&Y[e.errorCode]?a={statusCode:Y[e.errorCode]}:s=e,null==(o=n.fail)||o.call(n,e)},complete:()=>{var e;s?r(s):o(a),null==(e=n.complete)||e.call(n)}}))}));return n.fail&&o.catch((()=>{})),o}}((function(e){return c(this,null,(function*(){var n,s;if(!re.includes(r)&&!(yield te)){if(!se.includes(r)||!function(e){return void 0!==e.clientId}(e))return null==(n=e.fail)||n.call(e,{errorCode:E}),void(null==(s=e.complete)||s.call(e));ne({clientId:e.clientId,env:e.env}),yield te}const a=t[r];if(a&&"function"==typeof a)return a(e);G(o,e,e)}))}),r)}});return window._pp=o,function(e){const t=window._ppcs;if(t){window._ppcs=void 0;for(const[n,o,r]of t){const t=e[n](o);r&&r(t)}}}(o),o}({sdkType:L.MiniApp,clientFunctions:ue})}();
|
|
2
|
+
var pp=function(){"use strict";var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,o=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable,a=(t,n,o)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o,i=(e,t)=>{for(var n in t||(t={}))r.call(t,n)&&a(e,n,t[n]);if(o)for(var n of o(t))s.call(t,n)&&a(e,n,t[n]);return e},l=(e,o)=>t(e,n(o)),c=(e,t,n)=>new Promise(((o,r)=>{var s=e=>{try{i(n.next(e))}catch(t){r(t)}},a=e=>{try{i(n.throw(e))}catch(t){r(t)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(s,a);i((n=n.apply(e,t)).next())}));function u(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)e[o]=n[o]}return e}var d=function e(t,n){function o(e,o,r){if("undefined"!=typeof document){"number"==typeof(r=u({},n,r)).expires&&(r.expires=new Date(Date.now()+864e5*r.expires)),r.expires&&(r.expires=r.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in r)r[a]&&(s+="; "+a,!0!==r[a]&&(s+="="+r[a].split(";")[0]));return document.cookie=e+"="+t.write(o,e)+s}}return Object.create({set:o,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var n=document.cookie?document.cookie.split("; "):[],o={},r=0;r<n.length;r++){var s=n[r].split("="),a=s.slice(1).join("=");try{var i=decodeURIComponent(s[0]);if(o[i]=t.read(a,i),e===i)break}catch(l){}}return e?o[e]:o}},remove:function(e,t){o(e,"",u({},t,{expires:-1}))},withAttributes:function(t){return e(this.converter,u({},this.attributes,t))},withConverter:function(t){return e(u({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(n)},converter:{value:Object.freeze(t)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"});const g="_PayPayJsBridge",f=["init","openWebview","openMap","closeApp","makePayment","topup","setSessionData","getSessionData","setStorageData","getStorageData","removeStorageData","getPermissionStatus","scanCode","showAlert","showErrorSheet","getTopBarHeight","setTitle","showUpdateWarning","getPlatformInformation","openApp","share","getKycInformation","getUserLocation","checkPaymentMethod","registerKyc","startMultiFactorAuth","verifyMultiFactorAuthResult","getBankInfo","logout","getUserProfile","getBalance","getUserAddress","getUAID","copyToClipboard","registerUserInfo","setEnablePullDownRefresh","registerEmail","inputAddress","getDeviceInformation","request","requestInternal","registerPaymentFeatures","initKycPassport","getKycPassportInfo","shortcutExists","addShortcut","getAllUserAddresses","getUserPaymentFeatureSettings","getPaymentSettings","getTransactionInfo","getTransactions","getPayPayCardInfo","getExternalLinkageInformation","markAsReady","renderCoupons"],m=["init","createOrder","makePayment","render","logout","getAuthStatus","getUserProfile","getBalance","getUserAddress","getUAID","getCashbackInformation","renderCoupons","getLoginUrl","renderButton"],p="2.65.0",v=new URL("https://mini-app-sdk-core.paypay.ne.jp/"),h=v.origin,y=new URL(`./iframe.html?v=${p}&rev=a90df13`,v).href,w=new URL(`./coupon/iframe.html?v=${p}`,v).href;new URL(`./button/iframe.html?v=${p}`,v).href;const b="BAD_REQUEST_INSUFFICIENT_PARAMETER",S="UNKNOWN",E="SDK_NOT_INITIALIZED",I="TOKEN_NOT_FOUND",k="TOKEN_EXPIRED",C="AUTHORIZATION_NEEDED",P="ppjssdk.refreshToken";class O extends Error{constructor(e,t){super(e),this.errorCode=t}}const _=Object.freeze(Object.defineProperty({__proto__:null,getCookie:function({name:e}){return d.get(e)},getLocalStorage:function({name:e}){return localStorage.getItem(e)},getSessionStorage:function({name:e}){return sessionStorage.getItem(e)},getUrl:function(){return window.location.href},insertIframe:function(e){var{containerSelector:t,attributes:n}=e,a=n,{styles:i}=a,l=((e,t)=>{var n={};for(var a in e)r.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&o)for(var a of o(e))t.indexOf(a)<0&&s.call(e,a)&&(n[a]=e[a]);return n})(a,["styles"]);return new Promise(((e,n)=>{const o=document.querySelector(t);if(!o)return void n(new O(`Container with selector "${t}" not found.`,b));const r=document.createElement("iframe");r.onload=()=>{e(!0)},r.onerror=()=>{n(new O("Failed to load iframe.","NOT_REACHABLE"))},Object.assign(r.style,i),Object.entries(l).forEach((([e,t])=>{r.setAttribute(e,t)})),o.innerHTML="",o.appendChild(r)}))},removeCookie:function({name:e,options:t}){return d.remove(e,t)},removeElement:function({selector:e}){const t=document.querySelector(e);return!!t&&(t.remove(),!0)},removeLocalStorage:function({name:e}){return localStorage.removeItem(e)},removeQueryParametersFromUrl:function(e){const t=new URL(window.location.href);e.forEach((e=>t.searchParams.delete(e)));const n=t.toString().replace(t.origin,"");history.replaceState(history.state,"",n)},removeSessionStorage:function({name:e}){return sessionStorage.removeItem(e)},setCookie:function({name:e,value:t,options:n}){return d.set(e,t,n)},setLocalStorage:function({name:e,value:t}){return localStorage.setItem(e,t)},setSessionStorage:function({name:e,value:t}){return sessionStorage.setItem(e,t)},updateElementStyle:function({selector:e,styles:t}){const n=document.querySelector(e);return!!n&&(Object.assign(n.style,t),!0)}},Symbol.toStringTag,{value:"Module"})),R="success",A="fail",T="complete";var L=(e=>(e.MiniApp="MiniApp",e.SmartPayment="SmartPayment",e))(L||{});function N(e=6){const t=new Uint8Array(e);return crypto.getRandomValues(t),Array.from(t,(e=>(e%36).toString(36))).join("")}const U=e=>"object"!=typeof e||null===e?e:JSON.parse(JSON.stringify(e)),D=e=>{var t;const n=null==(t=e[0])?void 0:t.callbacks;return"object"==typeof n&&null!==n},x=e=>Object.keys(e).reduce(((e,t)=>(e[t]=!0,e)),{});class M{constructor(e,t,n=[],o){this.deferredPromises={},this.functions=e,this.allowedOrigins=t,this.middlewares=n,this.registeredCallbacks={},this.messageEventHandler=this.messageEventHandler.bind(this),this.errorLogger=o,this.subscribeToMessageEvent()}subscribeToMessageEvent(){window.addEventListener("message",this.messageEventHandler)}unsubscribeToMessageEvent(){window.removeEventListener("message",this.messageEventHandler)}messageEventHandler(e){var t;if(null==(t=e.data)?void 0:t.forWindowBridge)return this.allowedOrigins&&"request"===e.data.type&&!this.allowedOrigins.includes(e.origin)?this.sendErrorResponse(e,`${e.origin} is not allowed to make requests`,"ORIGIN_NOT_ALLOWED"):void("request"===e.data.type?this.handleRequest(e):"response"===e.data.type?this.handleResponse(e):"callback"===e.data.type&&this.handleCallback(e))}handleRequest(e){return c(this,null,(function*(){var t;const n=e.data.functionName,o=this.functions[n];o||this.sendErrorResponse(e,`Function '${n}' does not exists on the target window`,"FUNCTION_NOT_FOUND");const r=U(e.data.params);D(r)&&(r[0].callbacks=Object.keys(r[0].callbacks).reduce(((t,n)=>(t[n]=(...t)=>{this.invokeCallback(e,n,t)},t)),{}));try{this.sendSuccessResponse(e,yield function(e,t,n,o){let r=-1;const s=o=>c(this,null,(function*(){if(++r,r<e.length){const n=e[r];return yield n(t,o,s)}return n(...o)}));return s(o)}([...this.middlewares,...null!=(t=o.middlewares)?t:[]],e,o,r))}catch(s){let t="Some error occurred while processing the request",n=S;s instanceof O?(t=s.message,n=s.errorCode):console.error(s),this.sendErrorResponse(e,t,n)}}))}handleResponse(e){if(!this.deferredPromises[e.data.key])return void console.warn(`Promise for ${e.data.functionName} not found`);const[t,n]=this.deferredPromises[e.data.key];delete this.deferredPromises[e.data.key],"success"===e.data.status?t(e.data.result):(delete this.registeredCallbacks[e.data.key],n(new O(e.data.message,e.data.errorCode)))}handleCallback(e){var t;const{key:n,callbackName:o,args:r}=e.data,s=null==(t=this.registeredCallbacks[n])?void 0:t[o];s?s(...r):console.warn(`Callback with key ${n} and name ${o} not found.`)}sendErrorResponse(e,t,n){this.errorLogger&&this.errorLogger(e.data.functionName,t,n),this.sendResponse(e,{status:"failure",message:t,errorCode:n})}sendSuccessResponse(e,t){this.sendResponse(e,{status:"success",result:t})}sendResponse(e,t){this.sendMessage(e.source,e.origin,i({type:"response",key:e.data.key,functionName:e.data.functionName},t))}invokeCallback(e,t,n){this.sendMessage(e.source,e.origin,{type:"callback",key:e.data.key,functionName:e.data.functionName,callbackName:t,args:n})}sendMessage(e,t,n){e.postMessage(i({forWindowBridge:!0},U(n)),t)}sendRequest(e,t,n,o){const r=`${n}--${N()}`;return new Promise(((s,a)=>{this.deferredPromises[r]=[s,a],this.setupRequest(e,t,n,o,r).catch((e=>{delete this.deferredPromises[r],delete this.registeredCallbacks[r],a(new O(e.message,"MESSAGE_SENDING_FAILED"))}))}))}setupRequest(e,t,n,o,r){return c(this,null,(function*(){const s=yield e();if(!s)throw new Error("Target window is undefined");let a=o[0];if(D(o)){const e=o[0].callbacks;this.addFunctionCallbacks(r,e),a=l(i({},o[0]),{callbacks:x(e)})}this.sendMessage(s,t,{type:"request",key:r,functionName:n,params:[a]})}))}addFunctionCallbacks(e,t){Object.keys(t).forEach((e=>{if("function"!=typeof t[e])throw new Error(`Callback ${e} is not a function`)})),this.registeredCallbacks[e]=i({},t)}static init(e,t,n=[],o){if(this._instance)throw new Error("WindowBridge already initialized, you can't call WindowBridge.init more than once");return this._instance=new this(e,t,n,o),this._instance}static destroy(){this._instance&&(this._instance.unsubscribeToMessageEvent(),this._instance=void 0)}static getBridge(){if(!this._instance)throw new Error("WindowBridge not initialized, please call WindowBridge.init before calling WindowBridge.getBridge");return this._instance}static getTargetWindowFunctionProxy(e,t){return M.getBridge().getTargetWindowFunctionProxy(e,t)}getTargetWindowFunctionProxy(e,t){return new Proxy(this,{get:(n,o)=>(...r)=>n.sendRequest(e,t,o.toString(),r)})}}const F="ppmna-iframe",B="ppsdk-container";let $;function j(){return $||($=function(){if(document.getElementById(F))return;const e=document.createElement("div");return document.createElement("div"),e.setAttribute("id",B),e.setAttribute("class",B),e.style.all="initial",e.style.display="none",e.style.position="fixed",e.style.width="100%",e.style.height="100%",e.style.top="0",e.style.left="0",e.style.zIndex="2147483637",document.body.appendChild(e),e}()),$}let W,q=!1,K=null;function H(e){const t=j();t&&(t.style.display=e?"initial":"none",e?null!==K||q||(K=document.body.style.overflow,document.body.style.overflow="hidden"):null!==K&&(document.body.style.overflow=K,K=null))}function J(){return W||(W=new Promise(((e,t)=>{function n(){const n=document.createElement("iframe");n.setAttribute("src",y),n.setAttribute("name",F),n.setAttribute("id",F),n.setAttribute("class",F),n.setAttribute("allow","geolocation"),n.onload=()=>{e(n),n.onerror=null},n.onerror=t,n.style.all="initial",n.style.width="100%",n.style.height="100%",n.style.border="none";const o=j();o&&(o.innerHTML="",o.append(n))}"loading"===document.readyState?document.addEventListener("DOMContentLoaded",(()=>{n()})):n()}))),W}M.init(_,[h]);const z=M.getTargetWindowFunctionProxy((function(){return J().then((e=>null==e?void 0:e.contentWindow)).catch((()=>null))}),h);function G(e,t,n){const o=N(),r=n=>{V(n.origin)&&n.data.name===e&&n.data.messageId===o&&function(e,t,n){var o,r,s;e.result===A&&(null==(o=null==t?void 0:t.fail)||o.call(t,e.data)),e.result===R&&(null==(r=null==t?void 0:t.success)||r.call(t,null==e?void 0:e.data)),e.result===T&&(null==(s=null==t?void 0:t.complete)||s.call(t),removeEventListener("message",n))}(n.data,t,r)};addEventListener("message",r),function(e){c(this,null,(function*(){var t;const n=yield J().catch((()=>{}));null==(t=null==n?void 0:n.contentWindow)||t.postMessage(JSON.parse(JSON.stringify(e)),h)}))}({name:e,params:n,messageId:o})}function V(e){return e===h}function Z(e){return f.includes(e)}function Q(e){return m.includes(e)}function X(e,t,n){return function(o={}){const r=null==n?void 0:n(o);z.logEvent(i({event_action:`pp_${e}_called`,event_category_suffix:e},r));const s=t(o);return s.then((t=>{var n;z.logEvent(i({event_action:`pp_${e}_success`,event_category_suffix:e},r)),null==(n=o.success)||n.call(o,t)})).catch((t=>{var n;console.error(t.message),z.logEvent(i({event_action:`pp_${e}_fail`,event_category_suffix:e,error_value:t.errorCode},r)),null==(n=o.fail)||n.call(o,{errorCode:t.errorCode})})).finally((()=>{var e;null==(e=o.complete)||e.call(o)})),s}}const Y={[E]:C,[I]:C,[k]:k};let ee,te;J(),te=Promise.resolve(!1);function ne(e){const t=function(e,t){if(t){const t=localStorage.getItem(`${P}.${e}`);if(t)return t}return d.get(`${P}.${e}`)||d.get(P)||""}(e.clientId,e.useLocalStorage),n=l(i({},e),{refreshToken:t,clientVersion:"2.65.0",clientSdkType:ee,clientUrl:window.location.href});var o;let r;null!=e.disableBackgroundScrollLock&&(o=!!e.disableBackgroundScrollLock,q=o);const s=new Promise((e=>r=e)),a=()=>{var t;r(!0),null==(t=e.complete)||t.call(e)};te.then((()=>J())).then((()=>{G("init",l(i({},e),{complete:a}),n)})).catch((()=>{var t;null==(t=e.fail)||t.call(e,{errorCode:E}),a()})),te=s}addEventListener("message",(e=>{var t;if(!(null==(t=e.data)?void 0:t.forWindowBridge)&&V(e.origin))if("reload"===e.data.name&&window.location.reload(),"makeVisible"!==e.data.name)if("showIframe"!==e.data.name)if("hideIframe"!==e.data.name){if("link"===e.data.name){const t=e.data.data;"_blank"===t.target?window.open(t.url,"_blank"):window.location.href=t.url}if("consoleDebugInfo"===e.data.name){const{params:t}=e.data.data;!function(e){console.debug(...e)}(t)}}else H(!1);else H(!0);else H(!0)})),addEventListener("popstate",(()=>{J().then((e=>{var t;const n={name:"clientPopState"};null==(t=null==e?void 0:e.contentWindow)||t.postMessage(n,h)})).catch((e=>console.warn(e)))}));var oe;oe={_handleMessageFromNative:e=>{J().then((t=>{var n;null==(n=null==t?void 0:t.contentWindow)||n.postMessage(JSON.parse(JSON.stringify({name:"handleMessageFromNative",params:{json:e}})),h)}))}},(!window.hasOwnProperty(g)||window[g]!==oe)&&(window[g]=oe);const re=["init","setTitle","copyToClipboard","getSessionData","setSessionData","getStorageData","setStorageData","removeStorageData","getLoginUrl"],se=["renderCoupons"];const ae={version:"2.65.0",revision:"a90df13"};X("getLoginUrl",z.getLoginUrl);const ie=X("getPaymentSettings",z.getPaymentSettings),le=X("markAsReady",z.markAsReady);X("renderButton",z.renderButton);var ce=(e=>(e.validToken="TOKEN_VALID",e.initialized="INITIALIZED",e.emailRegistered="EMAIL_REGISTERED",e.emailNotVerified="EMAIL_NOT_VERIFIED",e.success="SUCCESS",e.loggedOut="LOGGED_OUT",e.connected="CONNECTED",e))(ce||{});const ue=X("logout",(()=>c(this,null,(function*(){return yield z.logout(),{statusCode:ce.loggedOut}}))));const de={verifyMultiFactorAuthResult:function(e){const t=new URL(window.location.href);G("verifyMultiFactorAuthResult",e,l(i({},e),{sessionId:t.searchParams.get("ppSessionId")}))},share:function(e){if(!(null==navigator?void 0:navigator.share))return void G("share",e,e);const t={text:null==e?void 0:e.text};navigator.share(t).then((()=>{var t,n;null==(t=null==e?void 0:e.success)||t.call(e),null==(n=null==e?void 0:e.complete)||n.call(e)})).catch((()=>{var t,n;null==(t=null==e?void 0:e.fail)||t.call(e,{errorCode:S}),null==(n=null==e?void 0:e.complete)||n.call(e)}))},setTitle:function(e){var t,n,o;document.title=null!=(t=null==e?void 0:e.title)?t:"",null==(n=null==e?void 0:e.success)||n.call(e),null==(o=null==e?void 0:e.complete)||o.call(e)},renderCoupons:X("renderCoupons",(e=>c(this,null,(function*(){const{merchant:t,couponId:n,containerId:o,postLoginRedirectUrl:r=window.location.href,postLoginRedirectType:s,locale:a}=e,i=document.getElementById(o);if(!i)throw new O("Invalid coupon container Id",b);const l=yield z.fetchCoupons({merchantId:t,couponId:n,postLoginRedirectUrl:r,postLoginRedirectType:s});try{const e=document.createElement("iframe");e.src=w,e.style.cssText="width:100%;height: 0;border: none;transition: height 300ms ease-in;display: block;",yield new Promise(((t,n)=>{e.onload=()=>t(!0),e.onerror=()=>n(new Error("Failed to load coupon iframe")),i.innerHTML="",i.append(e)})),e.onload=null,e.onerror=null,window.addEventListener("message",(({data:t,source:n})=>{"update-iframe-height"===(null==t?void 0:t.eventName)&&e.contentWindow===n&&(e.style.height=`${t.height}px`)}));const n=M.getTargetWindowFunctionProxy((()=>e.contentWindow),h);yield n.renderCoupons({coupons:l,merchantId:t,locale:a,postLoginRedirectUrl:r,postLoginRedirectType:s})}catch(c){throw new O(`An error occurred while displaying coupons, merchantId=${t}, couponId=${n}, error=${c}`,S)}}))),(e=>({event_label2:e.couponId,merchant_id:e.merchant}))),scanCode:function(e){var t;G("scanCode",e,l(i({},e),{redirectUrlOnCancel:null!=(t=null==e?void 0:e.redirectUrlOnCancel)?t:window.location.href}))},copyToClipboard:function(e){var t,n,o;const r=document.createElement("textarea");r.setAttribute("readonly","true"),r.setAttribute("contenteditable","true"),r.value=e.value,document.body.appendChild(r),r.select(),r.setSelectionRange(0,r.value.length);const s=document.execCommand("copy");document.body.removeChild(r),s?null==(t=null==e?void 0:e.success)||t.call(e):null==(n=null==e?void 0:e.fail)||n.call(e,{errorCode:"other"}),null==(o=e.complete)||o.call(e)},getSessionData:function(e){var t,n;const o=sessionStorage.getItem(null==e?void 0:e.key);null==(t=null==e?void 0:e.success)||t.call(e,{[null==e?void 0:e.key]:null!=o?o:""}),null==(n=null==e?void 0:e.complete)||n.call(e)},setSessionData:function(e){var t,n,o;sessionStorage.setItem(null==e?void 0:e.key,null!=(t=null==e?void 0:e.value)?t:""),null==(n=null==e?void 0:e.success)||n.call(e),null==(o=null==e?void 0:e.complete)||o.call(e)},getStorageData:function(e){var t,n;const o=localStorage.getItem(null==e?void 0:e.key);null==(t=null==e?void 0:e.success)||t.call(e,{[null==e?void 0:e.key]:null!=o?o:""}),null==(n=null==e?void 0:e.complete)||n.call(e)},setStorageData:function(e){var t,n,o;localStorage.setItem(null==e?void 0:e.key,null!=(t=null==e?void 0:e.value)?t:""),null==(n=null==e?void 0:e.success)||n.call(e),null==(o=null==e?void 0:e.complete)||o.call(e)},removeStorageData:function(e){var t,n;localStorage.removeItem(null==e?void 0:e.key),null==(t=null==e?void 0:e.success)||t.call(e),null==(n=null==e?void 0:e.complete)||n.call(e)},getKycPassportInfo:function(e){const t=window.location.href;G("getKycPassportInfo",e,l(i({},e),{url:t}))},logout:ue,getPaymentSettings:ie,markAsReady:le};return function({sdkType:e,clientFunctions:t}){ee=e;const n=e===L.MiniApp?Z:Q,o=new Proxy(l(i({},t),{init:ne}),{get(t,o){if(o in ae)return ae[o];const r=o;if(!n(r))throw new Error(`${r} is not supported by ${e} JS SDK`);return function(e,t){return(n={})=>{const o=new Promise(((o,r)=>{let s,a;e(l(i({},n),{success:e=>{var t;a=e,null==(t=n.success)||t.call(n,e)},fail:e=>{var o;"init"===t&&Y[e.errorCode]?a={statusCode:Y[e.errorCode]}:s=e,null==(o=n.fail)||o.call(n,e)},complete:()=>{var e;s?r(s):o(a),null==(e=n.complete)||e.call(n)}}))}));return n.fail&&o.catch((()=>{})),o}}((function(e){return c(this,null,(function*(){var n,s;if(!re.includes(r)&&!(yield te)){if(!se.includes(r)||!function(e){return void 0!==e.clientId}(e))return null==(n=e.fail)||n.call(e,{errorCode:E}),void(null==(s=e.complete)||s.call(e));ne({clientId:e.clientId,env:e.env}),yield te}const a=t[r];if(a&&"function"==typeof a)return a(e);G(o,e,e)}))}),r)}});return window._pp=o,function(e){const t=window._ppcs;if(t){window._ppcs=void 0;for(const[n,o,r]of t){const t=e[n](o);r&&r(t)}}}(o),o}({sdkType:L.MiniApp,clientFunctions:de})}();
|
|
@@ -221,8 +221,8 @@ const smartPaymentSupportedFunctions = [
|
|
|
221
221
|
"getLoginUrl",
|
|
222
222
|
"renderButton"
|
|
223
223
|
];
|
|
224
|
-
const JS_SDK_VERSION = "2.
|
|
225
|
-
const REVISION = "
|
|
224
|
+
const JS_SDK_VERSION = "2.65.0";
|
|
225
|
+
const REVISION = "a90df13";
|
|
226
226
|
const coreBaseUrl = new URL("https://mini-app-sdk-core.paypay.ne.jp/");
|
|
227
227
|
const CORE_IFRAME_ORIGIN = coreBaseUrl.origin;
|
|
228
228
|
const CORE_IFRAME_URL = new URL(
|
|
@@ -591,37 +591,45 @@ class WindowBridge {
|
|
|
591
591
|
);
|
|
592
592
|
}
|
|
593
593
|
sendRequest(getTargetWindow, targetWindowOrigin, functionName, params) {
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
this.addFunctionCallbacks(key, callbacks);
|
|
605
|
-
messageParams = __spreadProps(__spreadValues({}, params[0]), {
|
|
606
|
-
// Convert callbacks to a format that can be sent over postMessage
|
|
607
|
-
callbacks: getCallbacksPlaceholder(callbacks)
|
|
608
|
-
});
|
|
609
|
-
}
|
|
610
|
-
this.deferredPromises[key] = [resolve, reject];
|
|
611
|
-
this.sendMessage(targetWindow, targetWindowOrigin, {
|
|
612
|
-
type: "request",
|
|
613
|
-
key,
|
|
614
|
-
functionName,
|
|
615
|
-
params: [messageParams]
|
|
616
|
-
});
|
|
617
|
-
} catch (error) {
|
|
594
|
+
const key = `${functionName}--${getRandomString()}`;
|
|
595
|
+
return new Promise((resolve, reject) => {
|
|
596
|
+
this.deferredPromises[key] = [resolve, reject];
|
|
597
|
+
this.setupRequest(
|
|
598
|
+
getTargetWindow,
|
|
599
|
+
targetWindowOrigin,
|
|
600
|
+
functionName,
|
|
601
|
+
params,
|
|
602
|
+
key
|
|
603
|
+
).catch((error) => {
|
|
618
604
|
delete this.deferredPromises[key];
|
|
619
605
|
delete this.registeredCallbacks[key];
|
|
620
606
|
reject(
|
|
621
607
|
new PPError(error.message, messageSendingFailed)
|
|
622
608
|
);
|
|
609
|
+
});
|
|
610
|
+
});
|
|
611
|
+
}
|
|
612
|
+
setupRequest(getTargetWindow, targetWindowOrigin, functionName, params, key) {
|
|
613
|
+
return __async(this, null, function* () {
|
|
614
|
+
const targetWindow = yield getTargetWindow();
|
|
615
|
+
if (!targetWindow) {
|
|
616
|
+
throw new Error("Target window is undefined");
|
|
623
617
|
}
|
|
624
|
-
|
|
618
|
+
let messageParams = params[0];
|
|
619
|
+
if (hasCallbacks(params)) {
|
|
620
|
+
const callbacks = params[0].callbacks;
|
|
621
|
+
this.addFunctionCallbacks(key, callbacks);
|
|
622
|
+
messageParams = __spreadProps(__spreadValues({}, params[0]), {
|
|
623
|
+
callbacks: getCallbacksPlaceholder(callbacks)
|
|
624
|
+
});
|
|
625
|
+
}
|
|
626
|
+
this.sendMessage(targetWindow, targetWindowOrigin, {
|
|
627
|
+
type: "request",
|
|
628
|
+
key,
|
|
629
|
+
functionName,
|
|
630
|
+
params: [messageParams]
|
|
631
|
+
});
|
|
632
|
+
});
|
|
625
633
|
}
|
|
626
634
|
addFunctionCallbacks(key, callbacks) {
|
|
627
635
|
Object.keys(callbacks).forEach((callbackName) => {
|
|
@@ -1013,7 +1021,7 @@ addEventListener("popstate", () => {
|
|
|
1013
1021
|
});
|
|
1014
1022
|
function init(params) {
|
|
1015
1023
|
const refreshToken2 = getRefreshToken(params.clientId, params.useLocalStorage);
|
|
1016
|
-
const clientVersion = "2.
|
|
1024
|
+
const clientVersion = "2.65.0";
|
|
1017
1025
|
const initParams = __spreadProps(__spreadValues({}, params), {
|
|
1018
1026
|
refreshToken: refreshToken2,
|
|
1019
1027
|
clientVersion,
|
|
@@ -1090,8 +1098,8 @@ function executePendingFunctionCalls(client2) {
|
|
|
1090
1098
|
}
|
|
1091
1099
|
}
|
|
1092
1100
|
const clientProperties = {
|
|
1093
|
-
version: "2.
|
|
1094
|
-
revision: "
|
|
1101
|
+
version: "2.65.0",
|
|
1102
|
+
revision: "a90df13"
|
|
1095
1103
|
};
|
|
1096
1104
|
function isInitClientParams(params) {
|
|
1097
1105
|
return params.clientId !== void 0;
|
package/dist/types.d.ts
CHANGED
|
@@ -387,7 +387,7 @@ export declare type SaveCodeVerifierOption = {
|
|
|
387
387
|
codeVerifier: string;
|
|
388
388
|
domain: string;
|
|
389
389
|
isSecure: boolean;
|
|
390
|
-
expires?: number | Date
|
|
390
|
+
expires?: number | Date;
|
|
391
391
|
};
|
|
392
392
|
export declare type ClientJsBridge = {
|
|
393
393
|
_handleMessageFromNative: (json: NativeResponse) => void;
|
|
@@ -36,11 +36,11 @@ export declare type WindowBridgeFunctions<T extends FunctionsCollection> = {
|
|
|
36
36
|
export declare class WindowBridge {
|
|
37
37
|
private static _instance?;
|
|
38
38
|
private deferredPromises;
|
|
39
|
-
private functions;
|
|
40
|
-
private allowedOrigins?;
|
|
41
|
-
private middlewares;
|
|
39
|
+
private readonly functions;
|
|
40
|
+
private readonly allowedOrigins?;
|
|
41
|
+
private readonly middlewares;
|
|
42
42
|
private registeredCallbacks;
|
|
43
|
-
private errorLogger?;
|
|
43
|
+
private readonly errorLogger?;
|
|
44
44
|
private constructor();
|
|
45
45
|
private subscribeToMessageEvent;
|
|
46
46
|
private unsubscribeToMessageEvent;
|
|
@@ -54,6 +54,7 @@ export declare class WindowBridge {
|
|
|
54
54
|
private invokeCallback;
|
|
55
55
|
private sendMessage;
|
|
56
56
|
private sendRequest;
|
|
57
|
+
private setupRequest;
|
|
57
58
|
private addFunctionCallbacks;
|
|
58
59
|
static init(functions: FunctionsCollection, allowedOrigins?: Array<string>, middlewares?: Array<Middleware>, errorLogger?: ErrorLogger): WindowBridge;
|
|
59
60
|
static destroy(): void;
|