@everymatrix/pam-logout 0.0.13 → 1.77.23

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.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const pamLogout = require('./pam-logout-f179c4f1.js');
5
+ const pamLogout = require('./pam-logout-b7c77f21.js');
6
6
  require('./index-e376310b.js');
7
7
 
8
8
 
@@ -186,14 +186,7 @@ const PamLogout = class {
186
186
  }
187
187
  catch (error) {
188
188
  console.error('Logout error:', error);
189
- window.postMessage({
190
- type: 'WidgetNotification',
191
- data: {
192
- type: 'error',
193
- message: 'Logout failed. Please try again.',
194
- error
195
- }
196
- }, window.location.href);
189
+ window.postMessage({ type: 'LogoutFailed' }, window.location.href);
197
190
  }
198
191
  };
199
192
  this.endpoint = undefined;
@@ -246,11 +239,11 @@ const PamLogout = class {
246
239
  }
247
240
  }
248
241
  render() {
249
- return (index.h("div", { key: 'fd28f2abf2ac49d499193091ead03c6770bc2610', class: "LogoutContainer", ref: el => this.stylingContainer = el }, index.h("p", { key: '0c0fe4e0a6e1928215d2dc607412d419c33ae319', class: {
242
+ return (index.h("div", { key: '032ff9b49abe238915c9e09ee188b55ec0905fe5', class: "LogoutContainer", ref: el => this.stylingContainer = el }, index.h("p", { key: '9e104e85c9fc882b19c1ae2aeb7c73fe92f81b59', class: {
250
243
  'PlayerAccountMenuItemBox': true,
251
244
  'PlayerAccountMenuItemBoxMobile': this.device === 'mobile',
252
245
  'PlayerAccountMenuItemBoxTablet': this.device === 'tablet'
253
- }, onClick: this.handleLogout }, index.h("span", { key: '602622ac17b77524716c2acffc1939b2926c3436', style: { width: this.device === 'tablet' ? '24px' : '20px' } }, index.h("svg", { key: 'ee293dcd05d15d60db596e82975ee0aaea1764f0', id: "bbfaf345-72af-4296-bf4b-2fd41fc03d5d", "data-name": "Layer 1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 150", width: "100%", height: "100%" }, index.h("path", { key: 'eda0097f7b1ea557e30b459581b733295fd02480', class: "icon-path", d: "M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z" }), index.h("path", { key: 'cfc27c506086165b71de92fc2064ebd7c7d9eb21', class: "icon-path", d: "M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z" }))), this.device !== 'mobile' && (index.h("span", { key: '0c65abb764174563c9e87fbadf3eef7cfb5339ea', class: "PlayerLogoutText" }, translate('logoutButton', this.language))))));
246
+ }, onClick: this.handleLogout }, index.h("span", { key: '589c875ecf47d7f2a47ca0601939666a77c01f5f', style: { width: this.device === 'tablet' ? '24px' : '20px' } }, index.h("svg", { key: 'd8d1231b4d5372c96cdd6d046d7c6e2cab668e47', id: "bbfaf345-72af-4296-bf4b-2fd41fc03d5d", "data-name": "Layer 1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 150", width: "100%", height: "100%" }, index.h("path", { key: 'e165df55c8ce1d39765190c9614ce0546f9ecc8f', class: "icon-path", d: "M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z" }), index.h("path", { key: 'bb8da160d694fd29a6e19a4a9376987abcbafa76', class: "icon-path", d: "M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z" }))), this.device !== 'mobile' && (index.h("span", { key: '5851825f4c5dc7b96268806cd19dcc4ae3687eaa', class: "PlayerLogoutText" }, translate('logoutButton', this.language))))));
254
247
  }
255
248
  static get watchers() { return {
256
249
  "clientStyling": ["handleClientStylingChange"],
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const pamLogout = require('./pam-logout-f179c4f1.js');
5
+ const pamLogout = require('./pam-logout-b7c77f21.js');
6
6
  require('./index-e376310b.js');
7
7
 
8
8
 
@@ -29,14 +29,7 @@ export class PamLogout {
29
29
  }
30
30
  catch (error) {
31
31
  console.error('Logout error:', error);
32
- window.postMessage({
33
- type: 'WidgetNotification',
34
- data: {
35
- type: 'error',
36
- message: 'Logout failed. Please try again.',
37
- error
38
- }
39
- }, window.location.href);
32
+ window.postMessage({ type: 'LogoutFailed' }, window.location.href);
40
33
  }
41
34
  };
42
35
  this.endpoint = undefined;
@@ -89,11 +82,11 @@ export class PamLogout {
89
82
  }
90
83
  }
91
84
  render() {
92
- return (h("div", { key: 'fd28f2abf2ac49d499193091ead03c6770bc2610', class: "LogoutContainer", ref: el => this.stylingContainer = el }, h("p", { key: '0c0fe4e0a6e1928215d2dc607412d419c33ae319', class: {
85
+ return (h("div", { key: '032ff9b49abe238915c9e09ee188b55ec0905fe5', class: "LogoutContainer", ref: el => this.stylingContainer = el }, h("p", { key: '9e104e85c9fc882b19c1ae2aeb7c73fe92f81b59', class: {
93
86
  'PlayerAccountMenuItemBox': true,
94
87
  'PlayerAccountMenuItemBoxMobile': this.device === 'mobile',
95
88
  'PlayerAccountMenuItemBoxTablet': this.device === 'tablet'
96
- }, onClick: this.handleLogout }, h("span", { key: '602622ac17b77524716c2acffc1939b2926c3436', style: { width: this.device === 'tablet' ? '24px' : '20px' } }, h("svg", { key: 'ee293dcd05d15d60db596e82975ee0aaea1764f0', id: "bbfaf345-72af-4296-bf4b-2fd41fc03d5d", "data-name": "Layer 1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 150", width: "100%", height: "100%" }, h("path", { key: 'eda0097f7b1ea557e30b459581b733295fd02480', class: "icon-path", d: "M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z" }), h("path", { key: 'cfc27c506086165b71de92fc2064ebd7c7d9eb21', class: "icon-path", d: "M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z" }))), this.device !== 'mobile' && (h("span", { key: '0c65abb764174563c9e87fbadf3eef7cfb5339ea', class: "PlayerLogoutText" }, translate('logoutButton', this.language))))));
89
+ }, onClick: this.handleLogout }, h("span", { key: '589c875ecf47d7f2a47ca0601939666a77c01f5f', style: { width: this.device === 'tablet' ? '24px' : '20px' } }, h("svg", { key: 'd8d1231b4d5372c96cdd6d046d7c6e2cab668e47', id: "bbfaf345-72af-4296-bf4b-2fd41fc03d5d", "data-name": "Layer 1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 150", width: "100%", height: "100%" }, h("path", { key: 'e165df55c8ce1d39765190c9614ce0546f9ecc8f', class: "icon-path", d: "M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z" }), h("path", { key: 'bb8da160d694fd29a6e19a4a9376987abcbafa76', class: "icon-path", d: "M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z" }))), this.device !== 'mobile' && (h("span", { key: '5851825f4c5dc7b96268806cd19dcc4ae3687eaa', class: "PlayerLogoutText" }, translate('logoutButton', this.language))))));
97
90
  }
98
91
  static get is() { return "pam-logout"; }
99
92
  static get encapsulation() { return "shadow"; }
package/dist/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { P as PamLogout } from './pam-logout-b28be36e.js';
1
+ export { P as PamLogout } from './pam-logout-e2463ce5.js';
2
2
  import './index-1abc369e.js';
@@ -184,14 +184,7 @@ const PamLogout = class {
184
184
  }
185
185
  catch (error) {
186
186
  console.error('Logout error:', error);
187
- window.postMessage({
188
- type: 'WidgetNotification',
189
- data: {
190
- type: 'error',
191
- message: 'Logout failed. Please try again.',
192
- error
193
- }
194
- }, window.location.href);
187
+ window.postMessage({ type: 'LogoutFailed' }, window.location.href);
195
188
  }
196
189
  };
197
190
  this.endpoint = undefined;
@@ -244,11 +237,11 @@ const PamLogout = class {
244
237
  }
245
238
  }
246
239
  render() {
247
- return (h("div", { key: 'fd28f2abf2ac49d499193091ead03c6770bc2610', class: "LogoutContainer", ref: el => this.stylingContainer = el }, h("p", { key: '0c0fe4e0a6e1928215d2dc607412d419c33ae319', class: {
240
+ return (h("div", { key: '032ff9b49abe238915c9e09ee188b55ec0905fe5', class: "LogoutContainer", ref: el => this.stylingContainer = el }, h("p", { key: '9e104e85c9fc882b19c1ae2aeb7c73fe92f81b59', class: {
248
241
  'PlayerAccountMenuItemBox': true,
249
242
  'PlayerAccountMenuItemBoxMobile': this.device === 'mobile',
250
243
  'PlayerAccountMenuItemBoxTablet': this.device === 'tablet'
251
- }, onClick: this.handleLogout }, h("span", { key: '602622ac17b77524716c2acffc1939b2926c3436', style: { width: this.device === 'tablet' ? '24px' : '20px' } }, h("svg", { key: 'ee293dcd05d15d60db596e82975ee0aaea1764f0', id: "bbfaf345-72af-4296-bf4b-2fd41fc03d5d", "data-name": "Layer 1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 150", width: "100%", height: "100%" }, h("path", { key: 'eda0097f7b1ea557e30b459581b733295fd02480', class: "icon-path", d: "M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z" }), h("path", { key: 'cfc27c506086165b71de92fc2064ebd7c7d9eb21', class: "icon-path", d: "M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z" }))), this.device !== 'mobile' && (h("span", { key: '0c65abb764174563c9e87fbadf3eef7cfb5339ea', class: "PlayerLogoutText" }, translate('logoutButton', this.language))))));
244
+ }, onClick: this.handleLogout }, h("span", { key: '589c875ecf47d7f2a47ca0601939666a77c01f5f', style: { width: this.device === 'tablet' ? '24px' : '20px' } }, h("svg", { key: 'd8d1231b4d5372c96cdd6d046d7c6e2cab668e47', id: "bbfaf345-72af-4296-bf4b-2fd41fc03d5d", "data-name": "Layer 1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 150", width: "100%", height: "100%" }, h("path", { key: 'e165df55c8ce1d39765190c9614ce0546f9ecc8f', class: "icon-path", d: "M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z" }), h("path", { key: 'bb8da160d694fd29a6e19a4a9376987abcbafa76', class: "icon-path", d: "M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z" }))), this.device !== 'mobile' && (h("span", { key: '5851825f4c5dc7b96268806cd19dcc4ae3687eaa', class: "PlayerLogoutText" }, translate('logoutButton', this.language))))));
252
245
  }
253
246
  static get watchers() { return {
254
247
  "clientStyling": ["handleClientStylingChange"],
@@ -1,2 +1,2 @@
1
- export { P as pam_logout } from './pam-logout-b28be36e.js';
1
+ export { P as pam_logout } from './pam-logout-e2463ce5.js';
2
2
  import './index-1abc369e.js';
@@ -1 +1 @@
1
- export{P as PamLogout}from"./pam-logout-b28be36e.js";import"./index-1abc369e.js";
1
+ export{P as PamLogout}from"./pam-logout-e2463ce5.js";import"./index-1abc369e.js";
@@ -0,0 +1 @@
1
+ import{r as t,h as e}from"./index-1abc369e.js";function o(t,e){if(t){const o=document.createElement("style");o.innerHTML=e,t.appendChild(o)}}function n(t,e){const o=new URL(e);fetch(o.href).then((t=>t.text())).then((e=>{const o=document.createElement("style");o.innerHTML=e,t&&t.appendChild(o)})).catch((t=>{console.error("There was an error while trying to load client styling from URL",t)}))}function i(t,e){if(window.emMessageBus){const o=document.createElement("style");window.emMessageBus.subscribe(e,(e=>{o.innerHTML=e,t&&t.appendChild(o)}))}}const a={en:{logoutButton:"Logout"},hu:{logoutButton:"Logout"},ro:{logoutButton:"Logout"},fr:{logoutButton:"Déconnexion"},tr:{logoutButton:"Çıkış Yap"},hr:{logoutButton:"Logout"},"pt-br":{logoutButton:"Logout"},"es-mx":{logoutButton:"Logout"}},s=class{constructor(e){t(this,e),this.device=function(){const t=navigator.userAgent.toLowerCase(),e=screen.availWidth,o=screen.availHeight;if(t.includes("iphone"))return"mobile";if(t.includes("android")){if(o>e&&e<800)return"mobile";if(e>o&&o<800)return"tablet"}return"desktop"}(),this.handleLogout=async()=>{try{const t=new Headers;t.append("accept","text/plain"),t.append("X-SessionId",this.session);const e={method:"POST",headers:t},o=await fetch(`${this.endpoint}/api/v2/gm/sav2/sessions/terminate`,e);if(!o.ok)throw new Error(`Logout failed with status: ${o.status}`);"LOGGEDOFF"===(await o.json()).details.exitReason&&(window.postMessage({type:"LogoutSuccessfull"},window.location.href),((t,e={})=>{const o=new CustomEvent("track-custom-event",{detail:{type:"logged_out",data:e},bubbles:!0,composed:!0});document.dispatchEvent(o)})(0,{}))}catch(t){console.error("Logout error:",t),window.postMessage({type:"LogoutFailed"},window.location.href)}},this.endpoint=void 0,this.session=void 0,this.language="en",this.mbSource=void 0,this.clientStyling="",this.clientStylingUrl="",this.translationUrl=""}handleClientStylingChange(t,e){t!==e&&this.stylingContainer&&o(this.stylingContainer,this.clientStyling)}handleClientStylingUrlChange(t,e){t!==e&&this.stylingContainer&&n(this.stylingContainer,this.clientStylingUrl)}handleMbSourceChange(t,e){t!==e&&this.stylingContainer&&i(this.stylingContainer,`${this.mbSource}.Style`)}async componentWillLoad(){if(!this.endpoint||!this.session)throw new Error("endpoint and session props are required");var t;this.translationUrl&&this.translationUrl.length>2&&await(t=this.translationUrl,new Promise((e=>{fetch(t).then((t=>t.json())).then((t=>{Object.keys(t).forEach((e=>{for(let o in t[e])a[e][o]=t[e][o]})),e(!0)}))})))}componentDidLoad(){this.stylingContainer&&(this.mbSource&&i(this.stylingContainer,`${this.mbSource}.Style`),this.clientStyling&&o(this.stylingContainer,this.clientStyling),this.clientStylingUrl&&n(this.stylingContainer,this.clientStylingUrl))}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe()}render(){return e("div",{key:"032ff9b49abe238915c9e09ee188b55ec0905fe5",class:"LogoutContainer",ref:t=>this.stylingContainer=t},e("p",{key:"9e104e85c9fc882b19c1ae2aeb7c73fe92f81b59",class:{PlayerAccountMenuItemBox:!0,PlayerAccountMenuItemBoxMobile:"mobile"===this.device,PlayerAccountMenuItemBoxTablet:"tablet"===this.device},onClick:this.handleLogout},e("span",{key:"589c875ecf47d7f2a47ca0601939666a77c01f5f",style:{width:"tablet"===this.device?"24px":"20px"}},e("svg",{key:"d8d1231b4d5372c96cdd6d046d7c6e2cab668e47",id:"bbfaf345-72af-4296-bf4b-2fd41fc03d5d","data-name":"Layer 1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 150 150",width:"100%",height:"100%"},e("path",{key:"e165df55c8ce1d39765190c9614ce0546f9ecc8f",class:"icon-path",d:"M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z"}),e("path",{key:"bb8da160d694fd29a6e19a4a9376987abcbafa76",class:"icon-path",d:"M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z"}))),"mobile"!==this.device&&e("span",{key:"5851825f4c5dc7b96268806cd19dcc4ae3687eaa",class:"PlayerLogoutText"},((t,e)=>{let o=a[void 0!==e?e:"en"].logoutButton;return o})(0,this.language))))}static get watchers(){return{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}}};s.style=":host{display:block}:host *,:host *::before,:host *::after{margin:0;padding:0;list-style:none;text-decoration:none;outline:none;box-sizing:border-box}.PlayerAccountMenuItemBox{padding:20px;font-size:16px;display:inline-flex;width:100%;box-sizing:border-box;align-items:center;cursor:pointer}.PlayerAccountMenuItemBox .PlayerLogoutText{margin-left:20px}.PlayerAccountMenuItemBox svg{display:block;width:100%;height:100%}.PlayerAccountMenuItemBox svg .logout-icon-path{fill:var(--emw--pam-typography-color-nav-bg, var(--emw--color-white, #FFFFFF))}.PlayerAccountMenuItemBoxMobile.PlayerAccountMenuItemBox{height:auto;justify-content:center;position:relative;display:flex;width:unset;padding:0}.PlayerAccountMenuItemBoxMobile.PlayerAccountMenuItemBox svg .logout-icon-path{fill:var(--emw--pam-typography-color-nav-bg, var(--emw--color-white, #FFFFFF))}";export{s as P}
@@ -1 +1 @@
1
- export{P as pam_logout}from"./pam-logout-b28be36e.js";import"./index-1abc369e.js";
1
+ export{P as pam_logout}from"./pam-logout-e2463ce5.js";import"./index-1abc369e.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@everymatrix/pam-logout",
3
- "version": "0.0.13",
3
+ "version": "1.77.23",
4
4
  "main": "./dist/index.cjs.js",
5
5
  "module": "./dist/index.js",
6
6
  "es2015": "./dist/esm/index.mjs",
@@ -1 +0,0 @@
1
- import{r as t,h as e}from"./index-1abc369e.js";function o(t,e){if(t){const o=document.createElement("style");o.innerHTML=e,t.appendChild(o)}}function n(t,e){const o=new URL(e);fetch(o.href).then((t=>t.text())).then((e=>{const o=document.createElement("style");o.innerHTML=e,t&&t.appendChild(o)})).catch((t=>{console.error("There was an error while trying to load client styling from URL",t)}))}function i(t,e){if(window.emMessageBus){const o=document.createElement("style");window.emMessageBus.subscribe(e,(e=>{o.innerHTML=e,t&&t.appendChild(o)}))}}const a={en:{logoutButton:"Logout"},hu:{logoutButton:"Logout"},ro:{logoutButton:"Logout"},fr:{logoutButton:"Déconnexion"},tr:{logoutButton:"Çıkış Yap"},hr:{logoutButton:"Logout"},"pt-br":{logoutButton:"Logout"},"es-mx":{logoutButton:"Logout"}},s=class{constructor(e){t(this,e),this.device=function(){const t=navigator.userAgent.toLowerCase(),e=screen.availWidth,o=screen.availHeight;if(t.includes("iphone"))return"mobile";if(t.includes("android")){if(o>e&&e<800)return"mobile";if(e>o&&o<800)return"tablet"}return"desktop"}(),this.handleLogout=async()=>{try{const t=new Headers;t.append("accept","text/plain"),t.append("X-SessionId",this.session);const e={method:"POST",headers:t},o=await fetch(`${this.endpoint}/api/v2/gm/sav2/sessions/terminate`,e);if(!o.ok)throw new Error(`Logout failed with status: ${o.status}`);"LOGGEDOFF"===(await o.json()).details.exitReason&&(window.postMessage({type:"LogoutSuccessfull"},window.location.href),((t,e={})=>{const o=new CustomEvent("track-custom-event",{detail:{type:"logged_out",data:e},bubbles:!0,composed:!0});document.dispatchEvent(o)})(0,{}))}catch(t){console.error("Logout error:",t),window.postMessage({type:"WidgetNotification",data:{type:"error",message:"Logout failed. Please try again.",error:t}},window.location.href)}},this.endpoint=void 0,this.session=void 0,this.language="en",this.mbSource=void 0,this.clientStyling="",this.clientStylingUrl="",this.translationUrl=""}handleClientStylingChange(t,e){t!==e&&this.stylingContainer&&o(this.stylingContainer,this.clientStyling)}handleClientStylingUrlChange(t,e){t!==e&&this.stylingContainer&&n(this.stylingContainer,this.clientStylingUrl)}handleMbSourceChange(t,e){t!==e&&this.stylingContainer&&i(this.stylingContainer,`${this.mbSource}.Style`)}async componentWillLoad(){if(!this.endpoint||!this.session)throw new Error("endpoint and session props are required");var t;this.translationUrl&&this.translationUrl.length>2&&await(t=this.translationUrl,new Promise((e=>{fetch(t).then((t=>t.json())).then((t=>{Object.keys(t).forEach((e=>{for(let o in t[e])a[e][o]=t[e][o]})),e(!0)}))})))}componentDidLoad(){this.stylingContainer&&(this.mbSource&&i(this.stylingContainer,`${this.mbSource}.Style`),this.clientStyling&&o(this.stylingContainer,this.clientStyling),this.clientStylingUrl&&n(this.stylingContainer,this.clientStylingUrl))}disconnectedCallback(){this.stylingSubscription&&this.stylingSubscription.unsubscribe()}render(){return e("div",{key:"fd28f2abf2ac49d499193091ead03c6770bc2610",class:"LogoutContainer",ref:t=>this.stylingContainer=t},e("p",{key:"0c0fe4e0a6e1928215d2dc607412d419c33ae319",class:{PlayerAccountMenuItemBox:!0,PlayerAccountMenuItemBoxMobile:"mobile"===this.device,PlayerAccountMenuItemBoxTablet:"tablet"===this.device},onClick:this.handleLogout},e("span",{key:"602622ac17b77524716c2acffc1939b2926c3436",style:{width:"tablet"===this.device?"24px":"20px"}},e("svg",{key:"ee293dcd05d15d60db596e82975ee0aaea1764f0",id:"bbfaf345-72af-4296-bf4b-2fd41fc03d5d","data-name":"Layer 1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 150 150",width:"100%",height:"100%"},e("path",{key:"eda0097f7b1ea557e30b459581b733295fd02480",class:"icon-path",d:"M147.16,67.69,115.42,36a9.6,9.6,0,1,0-13.58,13.58l15.32,15.31H49.58a9.63,9.63,0,1,0,0,19.26h67.58L101.84,99.42a9.64,9.64,0,0,0,6.79,16.43,9.41,9.41,0,0,0,6.79-2.85l31.74-31.73a9.53,9.53,0,0,0,0-13.58Z"}),e("path",{key:"cfc27c506086165b71de92fc2064ebd7c7d9eb21",class:"icon-path",d:"M45.16,122.16H19.26V26.79H45.32a9.63,9.63,0,1,0,0-19.26H9.63A9.56,9.56,0,0,0,0,17.16V131.63a9.57,9.57,0,0,0,9.63,9.64H45.32A9.57,9.57,0,0,0,55,131.63a9.78,9.78,0,0,0-9.79-9.47Z"}))),"mobile"!==this.device&&e("span",{key:"0c65abb764174563c9e87fbadf3eef7cfb5339ea",class:"PlayerLogoutText"},((t,e)=>{let o=a[void 0!==e?e:"en"].logoutButton;return o})(0,this.language))))}static get watchers(){return{clientStyling:["handleClientStylingChange"],clientStylingUrl:["handleClientStylingUrlChange"],mbSource:["handleMbSourceChange"]}}};s.style=":host{display:block}:host *,:host *::before,:host *::after{margin:0;padding:0;list-style:none;text-decoration:none;outline:none;box-sizing:border-box}.PlayerAccountMenuItemBox{padding:20px;font-size:16px;display:inline-flex;width:100%;box-sizing:border-box;align-items:center;cursor:pointer}.PlayerAccountMenuItemBox .PlayerLogoutText{margin-left:20px}.PlayerAccountMenuItemBox svg{display:block;width:100%;height:100%}.PlayerAccountMenuItemBox svg .logout-icon-path{fill:var(--emw--pam-typography-color-nav-bg, var(--emw--color-white, #FFFFFF))}.PlayerAccountMenuItemBoxMobile.PlayerAccountMenuItemBox{height:auto;justify-content:center;position:relative;display:flex;width:unset;padding:0}.PlayerAccountMenuItemBoxMobile.PlayerAccountMenuItemBox svg .logout-icon-path{fill:var(--emw--pam-typography-color-nav-bg, var(--emw--color-white, #FFFFFF))}";export{s as P}