@imtbl/passport 2.5.0-alpha.0 → 2.6.0-alpha.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.
@@ -351,7 +351,8 @@ function _e(n){throw new Error("Node.js process "+n+" is not supported by JSPM c
351
351
  align-items: center !important;
352
352
  z-index: 2147483647 !important;
353
353
  background: rgba(247, 247, 247, 0.24) !important;
354
- opacity: 1 !important;
354
+ animation-name: passportEmbeddedLoginPromptOverlayFadeIn;
355
+ animation-duration: 0.8s;
355
356
  "
356
357
  >
357
358
  <div
@@ -373,14 +374,14 @@ function _e(n){throw new Error("Node.js process "+n+" is not supported by JSPM c
373
374
  `);if(!s)throw new Error("Failed to open confirmation screen");return s.focus(),s};var ke="Confirm this transaction",xe=720,Me=480,Pt=1e3;var B=class{config;confirmationWindow;popupOptions;overlay;overlayClosed;timer;constructor(e){this.config=e,this.overlayClosed=!1;}getHref(e,t){let r=`${this.config.passportDomain}/transaction-confirmation/${e}`;if(t){let i=t?Object.keys(t).map(a=>`${a}=${t[a]}`).join("&"):"";r=`${r}?${i}`;}return r}requestConfirmation(e,t,r,i){return new Promise((a,s)=>{let o=({data:d,origin:p})=>{if(!(p!==this.config.passportDomain||d.eventType!==Z))switch(d.messageType){case"confirmation_window_ready":{this.confirmationWindow?.postMessage({eventType:Z,messageType:"confirmation_start"},this.config.passportDomain);break}case"transaction_confirmed":{this.closeWindow(),a({confirmed:!0});break}case"transaction_rejected":{this.closeWindow(),a({confirmed:!1});break}case"transaction_error":{this.closeWindow(),s(new Error("Error during transaction confirmation"));break}default:this.closeWindow(),s(new Error("Unsupported message type"));}},c="";r===He.mr.TransactionApprovalRequestChainTypeEnum.Starkex?c=this.getHref("transaction",{transactionId:e,etherAddress:t,chainType:r}):c=this.getHref("zkevm/transaction",{transactionID:e,etherAddress:t,chainType:r,chainID:i}),window.addEventListener("message",o),this.showConfirmationScreen(c,o,a);})}requestMessageConfirmation(e,t,r){return new Promise((i,a)=>{let s=({data:c,origin:d})=>{if(!(d!==this.config.passportDomain||c.eventType!==Z))switch(c.messageType){case"confirmation_window_ready":{this.confirmationWindow?.postMessage({eventType:Z,messageType:"confirmation_start"},this.config.passportDomain);break}case"message_confirmed":{this.closeWindow(),i({confirmed:!0});break}case"message_rejected":{this.closeWindow(),i({confirmed:!1});break}case"message_error":{this.closeWindow(),a(new Error("Error during message confirmation"));break}default:this.closeWindow(),a(new Error("Unsupported message type"));}};window.addEventListener("message",s);let o=this.getHref("zkevm/message",{messageID:e,etherAddress:t,...r?{messageType:r}:{}});this.showConfirmationScreen(o,s,i);})}showServiceUnavailable(){return new Promise((e,t)=>{this.showConfirmationScreen(this.getHref("unavailable"),()=>{},()=>{this.closeWindow(),t(new Error("Service unavailable"));});})}loading(e){if(!this.config.crossSdkBridgeEnabled){this.popupOptions=e;try{this.confirmationWindow=ae({url:this.getHref("loading"),title:ke,width:e?.width||Me,height:e?.height||xe}),this.overlay=new b(this.config.popupOverlayOptions);}catch(t){let r=t instanceof Error?t.message:String(t);trackError("passport","confirmationPopupDenied",new Error(r)),this.overlay=new b(this.config.popupOverlayOptions,!0);}this.overlay.append(()=>{try{this.confirmationWindow?.close(),this.confirmationWindow=ae({url:this.getHref("loading"),title:ke,width:this.popupOptions?.width||Me,height:this.popupOptions?.height||xe});}catch{}},()=>{this.overlayClosed=!0,this.closeWindow();});}}closeWindow(){this.confirmationWindow?.close(),this.overlay?.remove(),this.overlay=void 0;}showConfirmationScreen(e,t,r){if(this.confirmationWindow&&(this.confirmationWindow.location.href=e),!this.overlay){this.overlayClosed=!1,r({confirmed:!1});return}let i=()=>{(this.confirmationWindow?.closed||this.overlayClosed)&&(clearInterval(this.timer),window.removeEventListener("message",t),r({confirmed:!1}),this.overlayClosed=!1,this.confirmationWindow=void 0);};this.timer=setInterval(i,Pt),this.overlay.update(()=>this.recreateConfirmationWindow(e,i));}recreateConfirmationWindow(e,t){try{clearInterval(this.timer),this.confirmationWindow?.close(),this.confirmationWindow=ae({url:e,title:ke,width:this.popupOptions?.width||Me,height:this.popupOptions?.height||xe}),this.timer=setInterval(t,Pt);}catch{}}};var P=class{static overlay;static onCloseListener;static closeButton;static remove(){this.onCloseListener&&this.closeButton?.removeEventListener?.("click",this.onCloseListener),this.overlay?.remove(),this.closeButton=void 0,this.onCloseListener=void 0,this.overlay=void 0;}static appendOverlay(e,t){if(!this.overlay){let r=document.createElement("div");r.innerHTML=it(),document.body.insertAdjacentElement("beforeend",r);let i=document.querySelector(`#${W}`);i&&i.appendChild(e),r.addEventListener("click",t),this.overlay=r;}}};var li=560,pi=440,mi="16px",It="passport-embedded-login-keyframes",St="passport-embedded-login-iframe",H=class n{config;constructor(e){this.config=e;}getHref=()=>`${this.config.authenticationDomain}/im-embedded-login-prompt?client_id=${this.config.oidcConfiguration.clientId}`;static appendIFrameStylesIfNeeded=()=>{if(document.getElementById(It))return;let e=document.createElement("style");e.id=It,e.textContent=`
374
375
  @keyframes passportEmbeddedLoginPromptPopBounceIn {
375
376
  0% {
376
- opacity: 0;
377
+ opacity: 0.5;
377
378
  transform: scale(0.9);
378
379
  }
379
380
  50% {
380
381
  opacity: 1;
381
382
  transform: scale(1.05);
382
383
  }
383
- 70% {
384
+ 75% {
384
385
  transform: scale(0.98);
385
386
  }
386
387
  100% {
@@ -395,7 +396,16 @@ function _e(n){throw new Error("Node.js process "+n+" is not supported by JSPM c
395
396
  max-width: none !important;
396
397
  }
397
398
  }
398
- `,document.head.appendChild(e);};getEmbeddedLoginIFrame=()=>{let e=document.createElement("iframe");return e.id=St,e.src=this.getHref(),e.style.height="100vh",e.style.width="100vw",e.style.maxHeight=`${li}px`,e.style.maxWidth=`${pi}px`,e.style.borderRadius=mi,e.style.opacity="0",e.style.transform="scale(0.9)",e.style.animation="passportEmbeddedLoginPromptPopBounceIn 0.6s ease-out 0.2s forwards",n.appendIFrameStylesIfNeeded(),e};displayEmbeddedLoginPrompt(){return new Promise((e,t)=>{let r=this.getEmbeddedLoginIFrame(),i=({data:a,origin:s})=>{if(!(s!==this.config.authenticationDomain||a.eventType!==wt))switch(a.messageType){case"login_method_selected":{let o=a.payload,c;o.directLoginMethod==="email"?c={directLoginMethod:"email",marketingConsentStatus:o.marketingConsentStatus,email:o.email}:c={directLoginMethod:o.directLoginMethod,marketingConsentStatus:o.marketingConsentStatus},window.removeEventListener("message",i),P.remove(),e(c);break}case"login_prompt_error":{window.removeEventListener("message",i),P.remove(),t(new Error("Error during embedded login prompt",{cause:a.payload}));break}case"login_prompt_closed":{window.removeEventListener("message",i),P.remove(),t(new Error("Popup closed by user"));break}default:window.removeEventListener("message",i),P.remove(),t(new Error("Unsupported message type"));break}};window.addEventListener("message",i),P.appendOverlay(r,()=>{window.removeEventListener("message",i),P.remove(),t(new Error("Popup closed by user"));});})}};var Ne=(e=>(e.ACCOUNTS_CHANGED="accountsChanged",e))(Ne||{});var U=class{emitter=new EventEmitter;emit(e,...t){this.emitter.emit(e,...t);}on(e,t){this.emitter.on(e,t);}removeListener(e,t){this.emitter.removeListener(e,t);}};var xt=1,Ri=1,Ti=2,Mt="02",_i="",Nt=`tuple(
399
+
400
+ @keyframes passportEmbeddedLoginPromptOverlayFadeIn {
401
+ from {
402
+ opacity: 0;
403
+ }
404
+ to {
405
+ opacity: 1;
406
+ }
407
+ }
408
+ `,document.head.appendChild(e);};getEmbeddedLoginIFrame=()=>{let e=document.createElement("iframe");return e.id=St,e.src=this.getHref(),e.style.height="100vh",e.style.width="100vw",e.style.maxHeight=`${li}px`,e.style.maxWidth=`${pi}px`,e.style.borderRadius=mi,e.style.opacity="0",e.style.transform="scale(0.9)",e.style.animation="passportEmbeddedLoginPromptPopBounceIn 0.8s ease 0.2s forwards",n.appendIFrameStylesIfNeeded(),e};displayEmbeddedLoginPrompt(){return new Promise((e,t)=>{let r=this.getEmbeddedLoginIFrame(),i=({data:a,origin:s})=>{if(!(s!==this.config.authenticationDomain||a.eventType!==wt))switch(a.messageType){case"login_method_selected":{let o=a.payload,c;o.directLoginMethod==="email"?c={directLoginMethod:"email",marketingConsentStatus:o.marketingConsentStatus,email:o.email}:c={directLoginMethod:o.directLoginMethod,marketingConsentStatus:o.marketingConsentStatus},window.removeEventListener("message",i),P.remove(),e(c);break}case"login_prompt_error":{window.removeEventListener("message",i),P.remove(),t(new Error("Error during embedded login prompt",{cause:a.payload}));break}case"login_prompt_closed":{window.removeEventListener("message",i),P.remove(),t(new Error("Popup closed by user"));break}default:window.removeEventListener("message",i),P.remove(),t(new Error("Unsupported message type"));break}};window.addEventListener("message",i),P.appendOverlay(r,()=>{window.removeEventListener("message",i),P.remove(),t(new Error("Popup closed by user"));});})}};var Ne=(e=>(e.ACCOUNTS_CHANGED="accountsChanged",e))(Ne||{});var U=class{emitter=new EventEmitter;emit(e,...t){this.emitter.emit(e,...t);}on(e,t){this.emitter.on(e,t);}removeListener(e,t){this.emitter.removeListener(e,t);}};var xt=1,Ri=1,Ti=2,Mt="02",_i="",Nt=`tuple(
399
409
  bool delegateCall,
400
410
  bool revertOnError,
401
411
  uint256 gasLimit,
@@ -377,7 +377,8 @@ function pe(i){return "code"in i&&"message"in i}var g=class extends Error{type;c
377
377
  align-items: center !important;
378
378
  z-index: 2147483647 !important;
379
379
  background: rgba(247, 247, 247, 0.24) !important;
380
- opacity: 1 !important;
380
+ animation-name: passportEmbeddedLoginPromptOverlayFadeIn;
381
+ animation-duration: 0.8s;
381
382
  "
382
383
  >
383
384
  <div
@@ -399,14 +400,14 @@ function pe(i){return "code"in i&&"message"in i}var g=class extends Error{type;c
399
400
  `);if(!s)throw new Error("Failed to open confirmation screen");return s.focus(),s};var Ee="Confirm this transaction",ye=720,Re=480,dt=1e3;var x=class{config;confirmationWindow;popupOptions;overlay;overlayClosed;timer;constructor(e){this.config=e,this.overlayClosed=!1;}getHref(e,t){let r=`${this.config.passportDomain}/transaction-confirmation/${e}`;if(t){let n=t?Object.keys(t).map(a=>`${a}=${t[a]}`).join("&"):"";r=`${r}?${n}`;}return r}requestConfirmation(e,t,r,n){return new Promise((a,s)=>{let o=({data:d,origin:l})=>{if(!(l!==this.config.passportDomain||d.eventType!==G))switch(d.messageType){case"confirmation_window_ready":{this.confirmationWindow?.postMessage({eventType:G,messageType:"confirmation_start"},this.config.passportDomain);break}case"transaction_confirmed":{this.closeWindow(),a({confirmed:!0});break}case"transaction_rejected":{this.closeWindow(),a({confirmed:!1});break}case"transaction_error":{this.closeWindow(),s(new Error("Error during transaction confirmation"));break}default:this.closeWindow(),s(new Error("Unsupported message type"));}},c="";r===Ie__namespace.mr.TransactionApprovalRequestChainTypeEnum.Starkex?c=this.getHref("transaction",{transactionId:e,etherAddress:t,chainType:r}):c=this.getHref("zkevm/transaction",{transactionID:e,etherAddress:t,chainType:r,chainID:n}),window.addEventListener("message",o),this.showConfirmationScreen(c,o,a);})}requestMessageConfirmation(e,t,r){return new Promise((n,a)=>{let s=({data:c,origin:d})=>{if(!(d!==this.config.passportDomain||c.eventType!==G))switch(c.messageType){case"confirmation_window_ready":{this.confirmationWindow?.postMessage({eventType:G,messageType:"confirmation_start"},this.config.passportDomain);break}case"message_confirmed":{this.closeWindow(),n({confirmed:!0});break}case"message_rejected":{this.closeWindow(),n({confirmed:!1});break}case"message_error":{this.closeWindow(),a(new Error("Error during message confirmation"));break}default:this.closeWindow(),a(new Error("Unsupported message type"));}};window.addEventListener("message",s);let o=this.getHref("zkevm/message",{messageID:e,etherAddress:t,...r?{messageType:r}:{}});this.showConfirmationScreen(o,s,n);})}showServiceUnavailable(){return new Promise((e,t)=>{this.showConfirmationScreen(this.getHref("unavailable"),()=>{},()=>{this.closeWindow(),t(new Error("Service unavailable"));});})}loading(e){if(!this.config.crossSdkBridgeEnabled){this.popupOptions=e;try{this.confirmationWindow=z({url:this.getHref("loading"),title:Ee,width:e?.width||Re,height:e?.height||ye}),this.overlay=new _(this.config.popupOverlayOptions);}catch(t){let r=t instanceof Error?t.message:String(t);metrics.trackError("passport","confirmationPopupDenied",new Error(r)),this.overlay=new _(this.config.popupOverlayOptions,!0);}this.overlay.append(()=>{try{this.confirmationWindow?.close(),this.confirmationWindow=z({url:this.getHref("loading"),title:Ee,width:this.popupOptions?.width||Re,height:this.popupOptions?.height||ye});}catch{}},()=>{this.overlayClosed=!0,this.closeWindow();});}}closeWindow(){this.confirmationWindow?.close(),this.overlay?.remove(),this.overlay=void 0;}showConfirmationScreen(e,t,r){if(this.confirmationWindow&&(this.confirmationWindow.location.href=e),!this.overlay){this.overlayClosed=!1,r({confirmed:!1});return}let n=()=>{(this.confirmationWindow?.closed||this.overlayClosed)&&(clearInterval(this.timer),window.removeEventListener("message",t),r({confirmed:!1}),this.overlayClosed=!1,this.confirmationWindow=void 0);};this.timer=setInterval(n,dt),this.overlay.update(()=>this.recreateConfirmationWindow(e,n));}recreateConfirmationWindow(e,t){try{clearInterval(this.timer),this.confirmationWindow?.close(),this.confirmationWindow=z({url:e,title:Ee,width:this.popupOptions?.width||Re,height:this.popupOptions?.height||ye}),this.timer=setInterval(t,dt);}catch{}}};var T=class{static overlay;static onCloseListener;static closeButton;static remove(){this.onCloseListener&&this.closeButton?.removeEventListener?.("click",this.onCloseListener),this.overlay?.remove(),this.closeButton=void 0,this.onCloseListener=void 0,this.overlay=void 0;}static appendOverlay(e,t){if(!this.overlay){let r=document.createElement("div");r.innerHTML=Ve(),document.body.insertAdjacentElement("beforeend",r);let n=document.querySelector(`#${L}`);n&&n.appendChild(e),r.addEventListener("click",t),this.overlay=r;}}};var Nr=560,Lr=440,Dr="16px",pt="passport-embedded-login-keyframes",mt="passport-embedded-login-iframe",M=class i{config;constructor(e){this.config=e;}getHref=()=>`${this.config.authenticationDomain}/im-embedded-login-prompt?client_id=${this.config.oidcConfiguration.clientId}`;static appendIFrameStylesIfNeeded=()=>{if(document.getElementById(pt))return;let e=document.createElement("style");e.id=pt,e.textContent=`
400
401
  @keyframes passportEmbeddedLoginPromptPopBounceIn {
401
402
  0% {
402
- opacity: 0;
403
+ opacity: 0.5;
403
404
  transform: scale(0.9);
404
405
  }
405
406
  50% {
406
407
  opacity: 1;
407
408
  transform: scale(1.05);
408
409
  }
409
- 70% {
410
+ 75% {
410
411
  transform: scale(0.98);
411
412
  }
412
413
  100% {
@@ -421,7 +422,16 @@ function pe(i){return "code"in i&&"message"in i}var g=class extends Error{type;c
421
422
  max-width: none !important;
422
423
  }
423
424
  }
424
- `,document.head.appendChild(e);};getEmbeddedLoginIFrame=()=>{let e=document.createElement("iframe");return e.id=mt,e.src=this.getHref(),e.style.height="100vh",e.style.width="100vw",e.style.maxHeight=`${Nr}px`,e.style.maxWidth=`${Lr}px`,e.style.borderRadius=Dr,e.style.opacity="0",e.style.transform="scale(0.9)",e.style.animation="passportEmbeddedLoginPromptPopBounceIn 0.6s ease-out 0.2s forwards",i.appendIFrameStylesIfNeeded(),e};displayEmbeddedLoginPrompt(){return new Promise((e,t)=>{let r=this.getEmbeddedLoginIFrame(),n=({data:a,origin:s})=>{if(!(s!==this.config.authenticationDomain||a.eventType!==ct))switch(a.messageType){case"login_method_selected":{let o=a.payload,c;o.directLoginMethod==="email"?c={directLoginMethod:"email",marketingConsentStatus:o.marketingConsentStatus,email:o.email}:c={directLoginMethod:o.directLoginMethod,marketingConsentStatus:o.marketingConsentStatus},window.removeEventListener("message",n),T.remove(),e(c);break}case"login_prompt_error":{window.removeEventListener("message",n),T.remove(),t(new Error("Error during embedded login prompt",{cause:a.payload}));break}case"login_prompt_closed":{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));break}default:window.removeEventListener("message",n),T.remove(),t(new Error("Unsupported message type"));break}};window.addEventListener("message",n),T.appendOverlay(r,()=>{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));});})}};var Ce=(e=>(e.ACCOUNTS_CHANGED="accountsChanged",e))(Ce||{});var b=class{emitter=new events.EventEmitter;emit(e,...t){this.emitter.emit(e,...t);}on(e,t){this.emitter.on(e,t);}removeListener(e,t){this.emitter.removeListener(e,t);}};var ft=1,qr=1,Zr=2,Et="02",Kr="",yt=`tuple(
425
+
426
+ @keyframes passportEmbeddedLoginPromptOverlayFadeIn {
427
+ from {
428
+ opacity: 0;
429
+ }
430
+ to {
431
+ opacity: 1;
432
+ }
433
+ }
434
+ `,document.head.appendChild(e);};getEmbeddedLoginIFrame=()=>{let e=document.createElement("iframe");return e.id=mt,e.src=this.getHref(),e.style.height="100vh",e.style.width="100vw",e.style.maxHeight=`${Nr}px`,e.style.maxWidth=`${Lr}px`,e.style.borderRadius=Dr,e.style.opacity="0",e.style.transform="scale(0.9)",e.style.animation="passportEmbeddedLoginPromptPopBounceIn 0.8s ease 0.2s forwards",i.appendIFrameStylesIfNeeded(),e};displayEmbeddedLoginPrompt(){return new Promise((e,t)=>{let r=this.getEmbeddedLoginIFrame(),n=({data:a,origin:s})=>{if(!(s!==this.config.authenticationDomain||a.eventType!==ct))switch(a.messageType){case"login_method_selected":{let o=a.payload,c;o.directLoginMethod==="email"?c={directLoginMethod:"email",marketingConsentStatus:o.marketingConsentStatus,email:o.email}:c={directLoginMethod:o.directLoginMethod,marketingConsentStatus:o.marketingConsentStatus},window.removeEventListener("message",n),T.remove(),e(c);break}case"login_prompt_error":{window.removeEventListener("message",n),T.remove(),t(new Error("Error during embedded login prompt",{cause:a.payload}));break}case"login_prompt_closed":{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));break}default:window.removeEventListener("message",n),T.remove(),t(new Error("Unsupported message type"));break}};window.addEventListener("message",n),T.appendOverlay(r,()=>{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));});})}};var Ce=(e=>(e.ACCOUNTS_CHANGED="accountsChanged",e))(Ce||{});var b=class{emitter=new events.EventEmitter;emit(e,...t){this.emitter.emit(e,...t);}on(e,t){this.emitter.on(e,t);}removeListener(e,t){this.emitter.removeListener(e,t);}};var ft=1,qr=1,Zr=2,Et="02",Kr="",yt=`tuple(
425
435
  bool delegateCall,
426
436
  bool revertOnError,
427
437
  uint256 gasLimit,
@@ -351,7 +351,8 @@ function pe(i){return "code"in i&&"message"in i}var g=class extends Error{type;c
351
351
  align-items: center !important;
352
352
  z-index: 2147483647 !important;
353
353
  background: rgba(247, 247, 247, 0.24) !important;
354
- opacity: 1 !important;
354
+ animation-name: passportEmbeddedLoginPromptOverlayFadeIn;
355
+ animation-duration: 0.8s;
355
356
  "
356
357
  >
357
358
  <div
@@ -373,14 +374,14 @@ function pe(i){return "code"in i&&"message"in i}var g=class extends Error{type;c
373
374
  `);if(!s)throw new Error("Failed to open confirmation screen");return s.focus(),s};var Ee="Confirm this transaction",ye=720,Re=480,dt=1e3;var x=class{config;confirmationWindow;popupOptions;overlay;overlayClosed;timer;constructor(e){this.config=e,this.overlayClosed=!1;}getHref(e,t){let r=`${this.config.passportDomain}/transaction-confirmation/${e}`;if(t){let n=t?Object.keys(t).map(a=>`${a}=${t[a]}`).join("&"):"";r=`${r}?${n}`;}return r}requestConfirmation(e,t,r,n){return new Promise((a,s)=>{let o=({data:d,origin:l})=>{if(!(l!==this.config.passportDomain||d.eventType!==G))switch(d.messageType){case"confirmation_window_ready":{this.confirmationWindow?.postMessage({eventType:G,messageType:"confirmation_start"},this.config.passportDomain);break}case"transaction_confirmed":{this.closeWindow(),a({confirmed:!0});break}case"transaction_rejected":{this.closeWindow(),a({confirmed:!1});break}case"transaction_error":{this.closeWindow(),s(new Error("Error during transaction confirmation"));break}default:this.closeWindow(),s(new Error("Unsupported message type"));}},c="";r===Ie.mr.TransactionApprovalRequestChainTypeEnum.Starkex?c=this.getHref("transaction",{transactionId:e,etherAddress:t,chainType:r}):c=this.getHref("zkevm/transaction",{transactionID:e,etherAddress:t,chainType:r,chainID:n}),window.addEventListener("message",o),this.showConfirmationScreen(c,o,a);})}requestMessageConfirmation(e,t,r){return new Promise((n,a)=>{let s=({data:c,origin:d})=>{if(!(d!==this.config.passportDomain||c.eventType!==G))switch(c.messageType){case"confirmation_window_ready":{this.confirmationWindow?.postMessage({eventType:G,messageType:"confirmation_start"},this.config.passportDomain);break}case"message_confirmed":{this.closeWindow(),n({confirmed:!0});break}case"message_rejected":{this.closeWindow(),n({confirmed:!1});break}case"message_error":{this.closeWindow(),a(new Error("Error during message confirmation"));break}default:this.closeWindow(),a(new Error("Unsupported message type"));}};window.addEventListener("message",s);let o=this.getHref("zkevm/message",{messageID:e,etherAddress:t,...r?{messageType:r}:{}});this.showConfirmationScreen(o,s,n);})}showServiceUnavailable(){return new Promise((e,t)=>{this.showConfirmationScreen(this.getHref("unavailable"),()=>{},()=>{this.closeWindow(),t(new Error("Service unavailable"));});})}loading(e){if(!this.config.crossSdkBridgeEnabled){this.popupOptions=e;try{this.confirmationWindow=z({url:this.getHref("loading"),title:Ee,width:e?.width||Re,height:e?.height||ye}),this.overlay=new _(this.config.popupOverlayOptions);}catch(t){let r=t instanceof Error?t.message:String(t);trackError("passport","confirmationPopupDenied",new Error(r)),this.overlay=new _(this.config.popupOverlayOptions,!0);}this.overlay.append(()=>{try{this.confirmationWindow?.close(),this.confirmationWindow=z({url:this.getHref("loading"),title:Ee,width:this.popupOptions?.width||Re,height:this.popupOptions?.height||ye});}catch{}},()=>{this.overlayClosed=!0,this.closeWindow();});}}closeWindow(){this.confirmationWindow?.close(),this.overlay?.remove(),this.overlay=void 0;}showConfirmationScreen(e,t,r){if(this.confirmationWindow&&(this.confirmationWindow.location.href=e),!this.overlay){this.overlayClosed=!1,r({confirmed:!1});return}let n=()=>{(this.confirmationWindow?.closed||this.overlayClosed)&&(clearInterval(this.timer),window.removeEventListener("message",t),r({confirmed:!1}),this.overlayClosed=!1,this.confirmationWindow=void 0);};this.timer=setInterval(n,dt),this.overlay.update(()=>this.recreateConfirmationWindow(e,n));}recreateConfirmationWindow(e,t){try{clearInterval(this.timer),this.confirmationWindow?.close(),this.confirmationWindow=z({url:e,title:Ee,width:this.popupOptions?.width||Re,height:this.popupOptions?.height||ye}),this.timer=setInterval(t,dt);}catch{}}};var T=class{static overlay;static onCloseListener;static closeButton;static remove(){this.onCloseListener&&this.closeButton?.removeEventListener?.("click",this.onCloseListener),this.overlay?.remove(),this.closeButton=void 0,this.onCloseListener=void 0,this.overlay=void 0;}static appendOverlay(e,t){if(!this.overlay){let r=document.createElement("div");r.innerHTML=Ve(),document.body.insertAdjacentElement("beforeend",r);let n=document.querySelector(`#${L}`);n&&n.appendChild(e),r.addEventListener("click",t),this.overlay=r;}}};var Nr=560,Lr=440,Dr="16px",pt="passport-embedded-login-keyframes",mt="passport-embedded-login-iframe",M=class i{config;constructor(e){this.config=e;}getHref=()=>`${this.config.authenticationDomain}/im-embedded-login-prompt?client_id=${this.config.oidcConfiguration.clientId}`;static appendIFrameStylesIfNeeded=()=>{if(document.getElementById(pt))return;let e=document.createElement("style");e.id=pt,e.textContent=`
374
375
  @keyframes passportEmbeddedLoginPromptPopBounceIn {
375
376
  0% {
376
- opacity: 0;
377
+ opacity: 0.5;
377
378
  transform: scale(0.9);
378
379
  }
379
380
  50% {
380
381
  opacity: 1;
381
382
  transform: scale(1.05);
382
383
  }
383
- 70% {
384
+ 75% {
384
385
  transform: scale(0.98);
385
386
  }
386
387
  100% {
@@ -395,7 +396,16 @@ function pe(i){return "code"in i&&"message"in i}var g=class extends Error{type;c
395
396
  max-width: none !important;
396
397
  }
397
398
  }
398
- `,document.head.appendChild(e);};getEmbeddedLoginIFrame=()=>{let e=document.createElement("iframe");return e.id=mt,e.src=this.getHref(),e.style.height="100vh",e.style.width="100vw",e.style.maxHeight=`${Nr}px`,e.style.maxWidth=`${Lr}px`,e.style.borderRadius=Dr,e.style.opacity="0",e.style.transform="scale(0.9)",e.style.animation="passportEmbeddedLoginPromptPopBounceIn 0.6s ease-out 0.2s forwards",i.appendIFrameStylesIfNeeded(),e};displayEmbeddedLoginPrompt(){return new Promise((e,t)=>{let r=this.getEmbeddedLoginIFrame(),n=({data:a,origin:s})=>{if(!(s!==this.config.authenticationDomain||a.eventType!==ct))switch(a.messageType){case"login_method_selected":{let o=a.payload,c;o.directLoginMethod==="email"?c={directLoginMethod:"email",marketingConsentStatus:o.marketingConsentStatus,email:o.email}:c={directLoginMethod:o.directLoginMethod,marketingConsentStatus:o.marketingConsentStatus},window.removeEventListener("message",n),T.remove(),e(c);break}case"login_prompt_error":{window.removeEventListener("message",n),T.remove(),t(new Error("Error during embedded login prompt",{cause:a.payload}));break}case"login_prompt_closed":{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));break}default:window.removeEventListener("message",n),T.remove(),t(new Error("Unsupported message type"));break}};window.addEventListener("message",n),T.appendOverlay(r,()=>{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));});})}};var Ce=(e=>(e.ACCOUNTS_CHANGED="accountsChanged",e))(Ce||{});var b=class{emitter=new EventEmitter;emit(e,...t){this.emitter.emit(e,...t);}on(e,t){this.emitter.on(e,t);}removeListener(e,t){this.emitter.removeListener(e,t);}};var ft=1,qr=1,Zr=2,Et="02",Kr="",yt=`tuple(
399
+
400
+ @keyframes passportEmbeddedLoginPromptOverlayFadeIn {
401
+ from {
402
+ opacity: 0;
403
+ }
404
+ to {
405
+ opacity: 1;
406
+ }
407
+ }
408
+ `,document.head.appendChild(e);};getEmbeddedLoginIFrame=()=>{let e=document.createElement("iframe");return e.id=mt,e.src=this.getHref(),e.style.height="100vh",e.style.width="100vw",e.style.maxHeight=`${Nr}px`,e.style.maxWidth=`${Lr}px`,e.style.borderRadius=Dr,e.style.opacity="0",e.style.transform="scale(0.9)",e.style.animation="passportEmbeddedLoginPromptPopBounceIn 0.8s ease 0.2s forwards",i.appendIFrameStylesIfNeeded(),e};displayEmbeddedLoginPrompt(){return new Promise((e,t)=>{let r=this.getEmbeddedLoginIFrame(),n=({data:a,origin:s})=>{if(!(s!==this.config.authenticationDomain||a.eventType!==ct))switch(a.messageType){case"login_method_selected":{let o=a.payload,c;o.directLoginMethod==="email"?c={directLoginMethod:"email",marketingConsentStatus:o.marketingConsentStatus,email:o.email}:c={directLoginMethod:o.directLoginMethod,marketingConsentStatus:o.marketingConsentStatus},window.removeEventListener("message",n),T.remove(),e(c);break}case"login_prompt_error":{window.removeEventListener("message",n),T.remove(),t(new Error("Error during embedded login prompt",{cause:a.payload}));break}case"login_prompt_closed":{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));break}default:window.removeEventListener("message",n),T.remove(),t(new Error("Unsupported message type"));break}};window.addEventListener("message",n),T.appendOverlay(r,()=>{window.removeEventListener("message",n),T.remove(),t(new Error("Popup closed by user"));});})}};var Ce=(e=>(e.ACCOUNTS_CHANGED="accountsChanged",e))(Ce||{});var b=class{emitter=new EventEmitter;emit(e,...t){this.emitter.emit(e,...t);}on(e,t){this.emitter.on(e,t);}removeListener(e,t){this.emitter.removeListener(e,t);}};var ft=1,qr=1,Zr=2,Et="02",Kr="",yt=`tuple(
399
409
  bool delegateCall,
400
410
  bool revertOnError,
401
411
  uint256 gasLimit,
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "@imtbl/passport",
3
3
  "description": "Passport module for Immutable SDK",
4
- "version": "2.5.0-alpha.0",
4
+ "version": "2.6.0-alpha.0",
5
5
  "author": "Immutable",
6
6
  "bugs": "https://github.com/immutable/ts-immutable-sdk/issues",
7
7
  "dependencies": {
8
8
  "@0xsequence/abi": "^2.0.25",
9
9
  "@0xsequence/core": "^2.0.25",
10
- "@imtbl/config": "2.5.0-alpha.0",
11
- "@imtbl/generated-clients": "2.5.0-alpha.0",
12
- "@imtbl/metrics": "2.5.0-alpha.0",
13
- "@imtbl/toolkit": "2.5.0-alpha.0",
14
- "@imtbl/x-client": "2.5.0-alpha.0",
15
- "@imtbl/x-provider": "2.5.0-alpha.0",
10
+ "@imtbl/config": "2.6.0-alpha.0",
11
+ "@imtbl/generated-clients": "2.6.0-alpha.0",
12
+ "@imtbl/metrics": "2.6.0-alpha.0",
13
+ "@imtbl/toolkit": "2.6.0-alpha.0",
14
+ "@imtbl/x-client": "2.6.0-alpha.0",
15
+ "@imtbl/x-provider": "2.6.0-alpha.0",
16
16
  "@magic-ext/oidc": "12.0.5",
17
17
  "@magic-sdk/provider": "^29.0.5",
18
18
  "@metamask/detect-provider": "^2.0.0",