@everymatrix/user-login 1.87.26 → 1.87.28

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,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-f1feab1e.js';
1
+ import { r as registerInstance, h } from './index-13692399.js';
2
2
 
3
3
  const DEFAULT_LANGUAGE = 'en';
4
4
  const TRANSLATIONS = {
@@ -28,7 +28,8 @@ const TRANSLATIONS = {
28
28
  "Forbidden_UserAccount_SELFEXCLUDED": "It’s not possible to access your account due to an active self-exclusion. Please contact Customer Services for more information.",
29
29
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "It’s not possible to access your account due to an active self-exclusion. Please contact Customer Services for more information.",
30
30
  "GmErr_Forbidden_UserAccount_NotActive": "It appears that you have not yet confirmed your email address. To complete your registration and access your account, please check your email inbox for a confirmation message. If you haven't received the email, please also check your spam folder. If you need assistance, you can request help via the customer service.",
31
- "Forbidden_UserAccount_NotActive": "It appears that you have not yet confirmed your email address. To complete your registration and access your account, please check your email inbox for a confirmation message. If you haven't received the email, please also check your spam folder. If you need assistance, you can request help via the customer service."
31
+ "Forbidden_UserAccount_NotActive": "It appears that you have not yet confirmed your email address. To complete your registration and access your account, please check your email inbox for a confirmation message. If you haven't received the email, please also check your spam folder. If you need assistance, you can request help via the customer service.",
32
+ "biometricLogin": "Login with FaceID/Fingerprint",
32
33
  },
33
34
  "tr": {
34
35
  "invalidField": "Üzgünüz, bu kullanıcı adı/e-posta adresi ve/veya şifre tanınmadı.",
@@ -56,7 +57,8 @@ const TRANSLATIONS = {
56
57
  "Forbidden_UserAccount_SELFEXCLUDED": "Aktif bir kendini dışlama nedeniyle hesabınıza erişim mümkün değil. Daha fazla bilgi için lütfen Müşteri Hizmetleri ile iletişime geçin.",
57
58
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Aktif bir kendini dışlama nedeniyle hesabınıza erişim mümkün değil. Daha fazla bilgi için lütfen Müşteri Hizmetleri ile iletişime geçin.",
58
59
  "GmErr_Forbidden_UserAccount_NotActive": "E-posta adresinizi henüz onaylamadığınız anlaşılıyor. Kayıt işleminizi tamamlamak ve hesabınıza erişmek için lütfen e-posta gelen kutunuzu onay mesajı için kontrol edin. E-postayı almadıysanız, lütfen spam klasörünüzü de kontrol edin. Yardıma ihtiyacınız olursa, müşteri hizmetleri aracılığıyla destek talep edebilirsiniz.",
59
- "Forbidden_UserAccount_NotActive": "E-posta adresinizi henüz onaylamadığınız anlaşılıyor. Kayıt işleminizi tamamlamak ve hesabınıza erişmek için lütfen e-posta gelen kutunuzu onay mesajı için kontrol edin. E-postayı almadıysanız, lütfen spam klasörünüzü de kontrol edin. Yardıma ihtiyacınız olursa, müşteri hizmetleri aracılığıyla destek talep edebilirsiniz."
60
+ "Forbidden_UserAccount_NotActive": "E-posta adresinizi henüz onaylamadığınız anlaşılıyor. Kayıt işleminizi tamamlamak ve hesabınıza erişmek için lütfen e-posta gelen kutunuzu onay mesajı için kontrol edin. E-postayı almadıysanız, lütfen spam klasörünüzü de kontrol edin. Yardıma ihtiyacınız olursa, müşteri hizmetleri aracılığıyla destek talep edebilirsiniz.",
61
+ "biometricLogin": "Login with FaceID/Fingerprint",
60
62
  },
61
63
  "en-us": {
62
64
  "invalidField": "Sorry, that username/email address and/or password has not been recognized.",
@@ -84,7 +86,8 @@ const TRANSLATIONS = {
84
86
  "Forbidden_UserAccount_SELFEXCLUDED": "It’s not possible to access your account due to an active self-exclusion. Please contact Customer Services for more information.",
85
87
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "It’s not possible to access your account due to an active self-exclusion. Please contact Customer Services for more information.",
86
88
  "GmErr_Forbidden_UserAccount_NotActive": "It appears that you have not yet confirmed your email address. To complete your registration and access your account, please check your email inbox for a confirmation message. If you haven't received the email, please also check your spam folder. If you need assistance, you can request help via the customer service.",
87
- "Forbidden_UserAccount_NotActive": "It appears that you have not yet confirmed your email address. To complete your registration and access your account, please check your email inbox for a confirmation message. If you haven't received the email, please also check your spam folder. If you need assistance, you can request help via the customer service."
89
+ "Forbidden_UserAccount_NotActive": "It appears that you have not yet confirmed your email address. To complete your registration and access your account, please check your email inbox for a confirmation message. If you haven't received the email, please also check your spam folder. If you need assistance, you can request help via the customer service.",
90
+ "biometricLogin": "Login with FaceID/Fingerprint",
88
91
  },
89
92
  "ro": {
90
93
  "invalidField": "Ne pare rău, acest nume de utilizator/adresă de e-mail și/sau parolă nu a fost recunoscut.",
@@ -112,7 +115,8 @@ const TRANSLATIONS = {
112
115
  "Forbidden_UserAccount_SELFEXCLUDED": "Accesul la contul dumneavoastră nu este posibil din cauza unei autoexcluderi active. Vă rugăm să contactați Serviciul Clienți pentru mai multe informații.",
113
116
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Accesul la contul dumneavoastră nu este posibil din cauza unei autoexcluderi active. Vă rugăm să contactați Serviciul Clienți pentru mai multe informații.",
114
117
  "GmErr_Forbidden_UserAccount_NotActive": "Se pare că nu v-ați confirmat încă adresa de email. Pentru a finaliza înregistrarea și a accesa contul, vă rugăm să verificați inbox-ul de email pentru un mesaj de confirmare. Dacă nu ați primit emailul, verificați și folderul de spam. Dacă aveți nevoie de asistență, puteți solicita ajutor prin serviciul clienți.",
115
- "Forbidden_UserAccount_NotActive": "Se pare că nu v-ați confirmat încă adresa de email. Pentru a finaliza înregistrarea și a accesa contul, vă rugăm să verificați inbox-ul de email pentru un mesaj de confirmare. Dacă nu ați primit emailul, verificați și folderul de spam. Dacă aveți nevoie de asistență, puteți solicita ajutor prin serviciul clienți."
118
+ "Forbidden_UserAccount_NotActive": "Se pare că nu v-ați confirmat încă adresa de email. Pentru a finaliza înregistrarea și a accesa contul, vă rugăm să verificați inbox-ul de email pentru un mesaj de confirmare. Dacă nu ați primit emailul, verificați și folderul de spam. Dacă aveți nevoie de asistență, puteți solicita ajutor prin serviciul clienți.",
119
+ "biometricLogin": "Login with FaceID/Fingerprint",
116
120
  },
117
121
  "hr": {
118
122
  "invalidField": "Žao nam je, to korisničko ime/adresa e-pošte i/ili lozinka nisu prepoznati.",
@@ -140,7 +144,8 @@ const TRANSLATIONS = {
140
144
  "Forbidden_UserAccount_SELFEXCLUDED": "Nije moguće pristupiti vašem računu zbog aktivne samoisključenosti. Za više informacija kontaktirajte Službu za korisnike.",
141
145
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Nije moguće pristupiti vašem računu zbog aktivne samoisključenosti. Za više informacija kontaktirajte Službu za korisnike.",
142
146
  "GmErr_Forbidden_UserAccount_NotActive": "Čini se da još niste potvrdili svoju e-mail adresu. Za dovršetak registracije i pristup vašem računu, molimo provjerite svoj inbox za poruku za potvrdu. Ako niste primili e-mail, provjerite i mapu neželjene pošte. Ako trebate pomoć, možete zatražiti podršku putem korisničke službe.",
143
- "Forbidden_UserAccount_NotActive": "Čini se da još niste potvrdili svoju e-mail adresu. Za dovršetak registracije i pristup vašem računu, molimo provjerite svoj inbox za poruku za potvrdu. Ako niste primili e-mail, provjerite i mapu neželjene pošte. Ako trebate pomoć, možete zatražiti podršku putem korisničke službe."
147
+ "Forbidden_UserAccount_NotActive": "Čini se da još niste potvrdili svoju e-mail adresu. Za dovršetak registracije i pristup vašem računu, molimo provjerite svoj inbox za poruku za potvrdu. Ako niste primili e-mail, provjerite i mapu neželjene pošte. Ako trebate pomoć, možete zatražiti podršku putem korisničke službe.",
148
+ "biometricLogin": "Login with FaceID/Fingerprint",
144
149
  },
145
150
  "fr": {
146
151
  "invalidField": "Désolé, ce nom d'utilisateur/adresse e-mail et/ou mot de passe n'a pas été reconnu.",
@@ -168,7 +173,8 @@ const TRANSLATIONS = {
168
173
  "Forbidden_UserAccount_SELFEXCLUDED": "Il n'est pas possible d'accéder à votre compte en raison d'une auto-exclusion active. Veuillez contacter le service client pour plus d'informations.",
169
174
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Il n'est pas possible d'accéder à votre compte en raison d'une auto-exclusion active. Veuillez contacter le service client pour plus d'informations.",
170
175
  "GmErr_Forbidden_UserAccount_NotActive": "Il semble que vous n’ayez pas encore confirmé votre adresse e-mail. Pour finaliser votre inscription et accéder à votre compte, veuillez vérifier votre boîte de réception pour un message de confirmation. Si vous n’avez pas reçu l’e-mail, veuillez également vérifier votre dossier spam. Si vous avez besoin d’assistance, vous pouvez demander de l’aide via le service client.",
171
- "Forbidden_UserAccount_NotActive": "Il semble que vous n’ayez pas encore confirmé votre adresse e-mail. Pour finaliser votre inscription et accéder à votre compte, veuillez vérifier votre boîte de réception pour un message de confirmation. Si vous n’avez pas reçu l’e-mail, veuillez également vérifier votre dossier spam. Si vous avez besoin d’assistance, vous pouvez demander de l’aide via le service client."
176
+ "Forbidden_UserAccount_NotActive": "Il semble que vous n’ayez pas encore confirmé votre adresse e-mail. Pour finaliser votre inscription et accéder à votre compte, veuillez vérifier votre boîte de réception pour un message de confirmation. Si vous n’avez pas reçu l’e-mail, veuillez également vérifier votre dossier spam. Si vous avez besoin d’assistance, vous pouvez demander de l’aide via le service client.",
177
+ "biometricLogin": "Login with FaceID/Fingerprint",
172
178
  },
173
179
  "cs": {
174
180
  "invalidField": "Omlouváme se, toto uživatelské jméno/e-mailová adresa a/nebo heslo nebyly rozpoznány.",
@@ -196,7 +202,8 @@ const TRANSLATIONS = {
196
202
  "Forbidden_UserAccount_SELFEXCLUDED": "Váš účet není přístupný kvůli aktivní sebevyloučení. Pro více informací kontaktujte zákaznický servis.",
197
203
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Váš účet není přístupný kvůli aktivní sebevyloučení. Pro více informací kontaktujte zákaznický servis.",
198
204
  "GmErr_Forbidden_UserAccount_NotActive": "Zdá se, že jste dosud nepotvrdili svou e-mailovou adresu. Chcete-li dokončit registraci a získat přístup ke svému účtu, zkontrolujte prosím svoji e-mailovou schránku pro potvrzovací zprávu. Pokud e-mail nedorazil, zkontrolujte také složku se spamem. Pokud potřebujete pomoc, můžete požádat o podporu prostřednictvím zákaznického servisu.",
199
- "Forbidden_UserAccount_NotActive": "Zdá se, že jste dosud nepotvrdili svou e-mailovou adresu. Chcete-li dokončit registraci a získat přístup ke svému účtu, zkontrolujte prosím svoji e-mailovou schránku pro potvrzovací zprávu. Pokud e-mail nedorazil, zkontrolujte také složku se spamem. Pokud potřebujete pomoc, můžete požádat o podporu prostřednictvím zákaznického servisu."
205
+ "Forbidden_UserAccount_NotActive": "Zdá se, že jste dosud nepotvrdili svou e-mailovou adresu. Chcete-li dokončit registraci a získat přístup ke svému účtu, zkontrolujte prosím svoji e-mailovou schránku pro potvrzovací zprávu. Pokud e-mail nedorazil, zkontrolujte také složku se spamem. Pokud potřebujete pomoc, můžete požádat o podporu prostřednictvím zákaznického servisu.",
206
+ "biometricLogin": "Login with FaceID/Fingerprint",
200
207
  },
201
208
  "de": {
202
209
  "invalidField": "Entschuldigung, dieser Benutzername/diese E-Mail-Adresse und/oder dieses Passwort wurde nicht erkannt.",
@@ -224,7 +231,8 @@ const TRANSLATIONS = {
224
231
  "Forbidden_UserAccount_SELFEXCLUDED": "Der Zugriff auf Ihr Konto ist aufgrund einer aktiven Selbstausschlussregelung nicht möglich. Bitte wenden Sie sich für weitere Informationen an den Kundenservice.",
225
232
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Der Zugriff auf Ihr Konto ist aufgrund einer aktiven Selbstausschlussregelung nicht möglich. Bitte wenden Sie sich für weitere Informationen an den Kundenservice.",
226
233
  "GmErr_Forbidden_UserAccount_NotActive": "Es scheint, dass Sie Ihre E-Mail-Adresse noch nicht bestätigt haben. Um Ihre Registrierung abzuschließen und auf Ihr Konto zuzugreifen, überprüfen Sie bitte Ihren E-Mail-Posteingang auf eine Bestätigungsnachricht. Falls Sie die E-Mail nicht erhalten haben, prüfen Sie bitte auch Ihren Spam-Ordner. Wenn Sie Hilfe benötigen, können Sie den Kundendienst um Unterstützung bitten.",
227
- "Forbidden_UserAccount_NotActive": "Es scheint, dass Sie Ihre E-Mail-Adresse noch nicht bestätigt haben. Um Ihre Registrierung abzuschließen und auf Ihr Konto zuzugreifen, überprüfen Sie bitte Ihren E-Mail-Posteingang auf eine Bestätigungsnachricht. Falls Sie die E-Mail nicht erhalten haben, prüfen Sie bitte auch Ihren Spam-Ordner. Wenn Sie Hilfe benötigen, können Sie den Kundendienst um Unterstützung bitten."
234
+ "Forbidden_UserAccount_NotActive": "Es scheint, dass Sie Ihre E-Mail-Adresse noch nicht bestätigt haben. Um Ihre Registrierung abzuschließen und auf Ihr Konto zuzugreifen, überprüfen Sie bitte Ihren E-Mail-Posteingang auf eine Bestätigungsnachricht. Falls Sie die E-Mail nicht erhalten haben, prüfen Sie bitte auch Ihren Spam-Ordner. Wenn Sie Hilfe benötigen, können Sie den Kundendienst um Unterstützung bitten.",
235
+ "biometricLogin": "Login with FaceID/Fingerprint",
228
236
  },
229
237
  "pt-br": {
230
238
  "invalidField": "Desculpe, esse nome de usuário/endereço de e-mail e/ou senha não foram reconhecidos.",
@@ -252,7 +260,8 @@ const TRANSLATIONS = {
252
260
  "Forbidden_UserAccount_SELFEXCLUDED": "Não é possível acessar sua conta devido a uma autoexclusão ativa. Por favor, entre em contato com o Atendimento ao Cliente para mais informações.",
253
261
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Não é possível acessar sua conta devido a uma autoexclusão ativa. Por favor, entre em contato com o Atendimento ao Cliente para mais informações.",
254
262
  "GmErr_Forbidden_UserAccount_NotActive": "Parece que você ainda não confirmou seu endereço de e-mail. Para concluir seu cadastro e acessar sua conta, verifique a caixa de entrada do seu e-mail para uma mensagem de confirmação. Se você não recebeu o e-mail, verifique também a pasta de spam. Se precisar de ajuda, você pode solicitar suporte através do atendimento ao cliente.",
255
- "Forbidden_UserAccount_NotActive": "Parece que você ainda não confirmou seu endereço de e-mail. Para concluir seu cadastro e acessar sua conta, verifique a caixa de entrada do seu e-mail para uma mensagem de confirmação. Se você não recebeu o e-mail, verifique também a pasta de spam. Se precisar de ajuda, você pode solicitar suporte através do atendimento ao cliente."
263
+ "Forbidden_UserAccount_NotActive": "Parece que você ainda não confirmou seu endereço de e-mail. Para concluir seu cadastro e acessar sua conta, verifique a caixa de entrada do seu e-mail para uma mensagem de confirmação. Se você não recebeu o e-mail, verifique também a pasta de spam. Se precisar de ajuda, você pode solicitar suporte através do atendimento ao cliente.",
264
+ "biometricLogin": "Login with FaceID/Fingerprint",
256
265
  },
257
266
  "es-mx": {
258
267
  "invalidField": "Lo siento, ese nombre de usuario/dirección de correo electrónico y/o contraseña no ha sido reconocido.",
@@ -280,7 +289,8 @@ const TRANSLATIONS = {
280
289
  "Forbidden_UserAccount_SELFEXCLUDED": "No es posible acceder a tu cuenta debido a una autoexclusión activa. Por favor, contacta al Servicio al Cliente para más información.",
281
290
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "No es posible acceder a tu cuenta debido a una autoexclusión activa. Por favor, contacta al Servicio al Cliente para más información.",
282
291
  "GmErr_Forbidden_UserAccount_NotActive": "Parece que aún no has confirmado tu dirección de correo electrónico. Para completar tu registro y acceder a tu cuenta, revisa tu bandeja de entrada en busca de un mensaje de confirmación. Si no has recibido el correo electrónico, también revisa la carpeta de spam. Si necesitas ayuda, puedes solicitar asistencia a través del servicio al cliente.",
283
- "Forbidden_UserAccount_NotActive": "Parece que aún no has confirmado tu dirección de correo electrónico. Para completar tu registro y acceder a tu cuenta, revisa tu bandeja de entrada en busca de un mensaje de confirmación. Si no has recibido el correo electrónico, también revisa la carpeta de spam. Si necesitas ayuda, puedes solicitar asistencia a través del servicio al cliente."
292
+ "Forbidden_UserAccount_NotActive": "Parece que aún no has confirmado tu dirección de correo electrónico. Para completar tu registro y acceder a tu cuenta, revisa tu bandeja de entrada en busca de un mensaje de confirmación. Si no has recibido el correo electrónico, también revisa la carpeta de spam. Si necesitas ayuda, puedes solicitar asistencia a través del servicio al cliente.",
293
+ "biometricLogin": "Login with FaceID/Fingerprint",
284
294
  },
285
295
  "es": {
286
296
  "invalidField": "Lo siento, ese nombre de usuario/dirección de correo electrónico y/o contraseña no ha sido reconocido.",
@@ -308,7 +318,8 @@ const TRANSLATIONS = {
308
318
  "Forbidden_UserAccount_SELFEXCLUDED": "No es posible acceder a tu cuenta debido a una autoexclusión activa. Por favor, contacta con el Servicio de Atención al Cliente para más información.",
309
319
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "No es posible acceder a tu cuenta debido a una autoexclusión activa. Por favor, contacta con el Servicio de Atención al Cliente para más información.",
310
320
  "GmErr_Forbidden_UserAccount_NotActive": "Parece que aún no has confirmado tu dirección de correo electrónico. Para completar tu registro y acceder a tu cuenta, revisa tu bandeja de entrada en busca de un mensaje de confirmación. Si no has recibido el correo electrónico, también revisa la carpeta de spam. Si necesitas ayuda, puedes solicitar asistencia a través del servicio al cliente.",
311
- "Forbidden_UserAccount_NotActive": "Parece que aún no has confirmado tu dirección de correo electrónico. Para completar tu registro y acceder a tu cuenta, revisa tu bandeja de entrada en busca de un mensaje de confirmación. Si no has recibido el correo electrónico, también revisa la carpeta de spam. Si necesitas ayuda, puedes solicitar asistencia a través del servicio al cliente."
321
+ "Forbidden_UserAccount_NotActive": "Parece que aún no has confirmado tu dirección de correo electrónico. Para completar tu registro y acceder a tu cuenta, revisa tu bandeja de entrada en busca de un mensaje de confirmación. Si no has recibido el correo electrónico, también revisa la carpeta de spam. Si necesitas ayuda, puedes solicitar asistencia a través del servicio al cliente.",
322
+ "biometricLogin": "Login with FaceID/Fingerprint",
312
323
  },
313
324
  "pt": {
314
325
  "invalidField": "Desculpe, esse nome de usuário/endereço de e-mail e/ou senha não foram reconhecidos.",
@@ -336,7 +347,8 @@ const TRANSLATIONS = {
336
347
  "Forbidden_UserAccount_SELFEXCLUDED": "Não é possível aceder à sua conta devido a uma autoexclusão ativa. Por favor, contacte o Serviço de Apoio ao Cliente para mais informações.",
337
348
  "GmErr_Forbidden_UserAccount_SELFEXCLUDED": "Não é possível aceder à sua conta devido a uma autoexclusão ativa. Por favor, contacte o Serviço de Apoio ao Cliente para mais informações.",
338
349
  "GmErr_Forbidden_UserAccount_NotActive": "Parece que ainda não confirmou o seu endereço de e-mail. Para concluir o seu registo e aceder à sua conta, verifique a caixa de entrada do seu e-mail para uma mensagem de confirmação. Se não recebeu o e-mail, verifique também a pasta de spam. Se precisar de ajuda, pode solicitar assistência através do serviço de apoio ao cliente.",
339
- "Forbidden_UserAccount_NotActive": "Parece que ainda não confirmou o seu endereço de e-mail. Para concluir o seu registo e aceder à sua conta, verifique a caixa de entrada do seu e-mail para uma mensagem de confirmação. Se não recebeu o e-mail, verifique também a pasta de spam. Se precisar de ajuda, pode solicitar assistência através do serviço de apoio ao cliente."
350
+ "Forbidden_UserAccount_NotActive": "Parece que ainda não confirmou o seu endereço de e-mail. Para concluir o seu registo e aceder à sua conta, verifique a caixa de entrada do seu e-mail para uma mensagem de confirmação. Se não recebeu o e-mail, verifique também a pasta de spam. Se precisar de ajuda, pode solicitar assistência através do serviço de apoio ao cliente.",
351
+ "biometricLogin": "Login with FaceID/Fingerprint",
340
352
  }
341
353
  };
342
354
  const getTranslations = (url) => {
@@ -368,6 +380,8 @@ const translate = (key, customLang, values) => {
368
380
  return translation;
369
381
  };
370
382
 
383
+ const StyleCacheKey = '__WIDGET_GLOBAL_STYLE_CACHE__';
384
+
371
385
  /**
372
386
  * @name setClientStyling
373
387
  * @description Method used to create and append to the passed element of the widget a style element with the content received
@@ -413,18 +427,75 @@ function setClientStylingURL(stylingContainer, clientStylingUrl) {
413
427
  * @param {HTMLElement} stylingContainer The highest element of the widget
414
428
  * @param {string} domain The domain from where the content should be fetched (e.g. 'Casino.Style', 'App.Style', 'casino-footer.style', etc.)
415
429
  * @param {ref} subscription A reference to a variable where the subscription should be saved for unsubscribing when no longer needed
430
+ * @param {boolean} useAdoptedStyleSheets A flag to gradually enable testing of adoptedStyleSheets
416
431
  */
417
- function setStreamStyling(stylingContainer, domain, subscription) {
418
- if (window.emMessageBus) {
419
- const sheet = document.createElement('style');
432
+ function setStreamStyling(stylingContainer, domain, subscription, useAdoptedStyleSheets = false) {
433
+ if (!window.emMessageBus) return;
420
434
 
421
- window.emMessageBus.subscribe(domain, (data) => {
422
- sheet.innerHTML = data;
423
- if (stylingContainer) {
424
- stylingContainer.appendChild(sheet);
425
- }
426
- });
435
+ const supportAdoptStyle = 'adoptedStyleSheets' in Document.prototype;
436
+
437
+ if (!supportAdoptStyle || !useAdoptedStyleSheets) {
438
+ subscription = getStyleTagSubscription(stylingContainer, domain);
439
+
440
+ return subscription;
427
441
  }
442
+
443
+ if (!window[StyleCacheKey]) {
444
+ window[StyleCacheKey] = {};
445
+ }
446
+ subscription = getAdoptStyleSubscription(stylingContainer, domain);
447
+
448
+ const originalUnsubscribe = subscription.unsubscribe.bind(subscription);
449
+ const wrappedUnsubscribe = () => {
450
+ if (window[StyleCacheKey][domain]) {
451
+ const cachedObject = window[StyleCacheKey][domain];
452
+ cachedObject.refCount > 1
453
+ ? (cachedObject.refCount = cachedObject.refCount - 1)
454
+ : delete window[StyleCacheKey][domain];
455
+ }
456
+
457
+ originalUnsubscribe();
458
+ };
459
+ subscription.unsubscribe = wrappedUnsubscribe;
460
+
461
+ return subscription;
462
+ }
463
+
464
+ function getStyleTagSubscription(stylingContainer, domain) {
465
+ const sheet = document.createElement('style');
466
+
467
+ return window.emMessageBus.subscribe(domain, (data) => {
468
+ if (stylingContainer) {
469
+ sheet.innerHTML = data;
470
+ stylingContainer.appendChild(sheet);
471
+ }
472
+ });
473
+ }
474
+
475
+ function getAdoptStyleSubscription(stylingContainer, domain) {
476
+ return window.emMessageBus.subscribe(domain, (data) => {
477
+ if (!stylingContainer) return;
478
+
479
+ const shadowRoot = stylingContainer.getRootNode();
480
+ const cacheStyleObject = window[StyleCacheKey];
481
+ let cachedStyle = cacheStyleObject[domain]?.sheet;
482
+
483
+ if (!cachedStyle) {
484
+ cachedStyle = new CSSStyleSheet();
485
+ cachedStyle.replaceSync(data);
486
+ cacheStyleObject[domain] = {
487
+ sheet: cachedStyle,
488
+ refCount: 1
489
+ };
490
+ } else {
491
+ cacheStyleObject[domain].refCount = cacheStyleObject[domain].refCount + 1;
492
+ }
493
+
494
+ const currentSheets = shadowRoot.adoptedStyleSheets || [];
495
+ if (!currentSheets.includes(cachedStyle)) {
496
+ shadowRoot.adoptedStyleSheets = [...currentSheets, cachedStyle];
497
+ }
498
+ });
428
499
  }
429
500
 
430
501
  /**
@@ -7106,13 +7177,26 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
7106
7177
  <div on-click="_scrollForward" part="forward-button" aria-hidden="true"></div>
7107
7178
  `}static get is(){return "vaadin-tabs"}}v(vh);
7108
7179
 
7109
- const userLoginCss = ":host{display:block;font-family:\"Roboto\", sans-serif}section{height:100%;width:100%;background-position:center;background-size:cover}.FormValue{width:100%}.FormBox{height:100%;display:flex;position:relative;background:none;border:none;justify-content:center;align-items:center}.InputBox{position:relative;margin:30px 0;width:100%;border-bottom:2px solid var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E))}.InputBox .PhoneInputBox{display:flex;flex-direction:row}.InputBox .PhoneInputBox .PhoneBox{position:relative;width:100%}.InputBox .PhoneInputBox .PrefixBox{position:relative;width:fit-content}.InputBox .PhoneInputBox .PrefixBox .UneditablePrefix{height:100%;width:100px;padding:0 0 0 5px;align-content:center;background:var(--emw--color-gray-100, #e6e6e6);border-radius:var(--emw--border-radius-medium, 10px)}.InputBox.InputInvalidBox .PasswordVisibilityIcon{fill:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.InputBox.InputInvalidBox input{color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.InputBox.InputInvalidBox::after{content:\"\";height:2px;width:100%;transition:width 0.6s linear;background:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.InputBox::after{content:\"\";display:block;width:0;height:2px;position:relative;top:2px}.InputBox .PasswordVisibilityIcon{fill:var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E))}.InputBox .InputIcon .TogglePasswordVisibility{cursor:pointer;position:absolute;top:18px;right:0}.InputBox .InputIcon .TogglePasswordVisibility.PasswordVisible{top:19.5px}.InputBox label{position:absolute;top:50%;left:5px;transform:translateY(-50%);color:var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E));font-size:var(--emw--font-size-medium, 16px);pointer-events:none;transition:0.5s}.InputBox label.FieldInvalid{color:#C23135}.InputBox input{width:100%;height:50px;background:transparent;border:none;outline:none;font-size:var(--emw--font-size-medium, 16px);padding:0 35px 0 5px;color:var(--emw--registration-typography, var(--emw--color-typography, #000000));box-sizing:border-box}input:focus~label,label.FieldFilledIn{top:-10px;font-size:var(--emw--font-size-x-small, 16px)}vaadin-combo-box:focus-within~label,label.FieldFilledIn{top:-10px;font-size:var(--emw--font-size-x-small, 16px)}.ForgotPassword button{margin:-10px 0 17px;font-size:var(--emw--font-size-medium, 16px);color:var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E));display:flex;justify-content:space-between;background-color:transparent;padding:0;height:unset;border:0;cursor:pointer}.SubmitCredentials{display:block;margin:0 auto;outline:none;cursor:pointer;background:var(--emw--color-primary, #0E5924);border-radius:var(--emw--button-border-radius, 10px);padding:10px 20px;font-size:var(--emw--font-size-large, 20px);font-family:var(--emw--button-typography);color:var(--emw--button-text-color, #FFFFFF)}.SubmitCredentials:disabled{background:var(--emw--color-primary, #0E5924);opacity:0.4;cursor:default}.Register{font-size:var(--emw--font-size-medium, 16px);color:var(--emw--registration-typography, var(--emw--color-typography, #FFFFFF));text-align:center;margin:25px 0 10px}.Register p a{text-decoration:none;font-weight:600}.Register p a:hover{text-decoration:underline}.InvalidField{position:absolute;color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839));font-size:var(--emw--font-size-x-small, 12px)}.SubmitCredentials{margin-bottom:20px}.CredentialsError{color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839));font-size:var(--emw--font-size-x-small, 12px);padding:0 0 20px 0;margin:0}.CredentialsError input{color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}@media screen and (max-width: 480px){.FormBox{width:100%;border-radius:0px}}";
7180
+ const userLoginCss = ":host{display:block;font-family:\"Roboto\", sans-serif}section{height:100%;width:100%;background-position:center;background-size:cover}.FormValue{width:100%}.FormBox{height:100%;display:flex;position:relative;background:none;border:none;justify-content:center;align-items:center}.InputBox{position:relative;margin:30px 0;width:100%;border-bottom:2px solid var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E))}.InputBox .PhoneInputBox{display:flex;flex-direction:row}.InputBox .PhoneInputBox .PhoneBox{position:relative;width:100%}.InputBox .PhoneInputBox .PrefixBox{position:relative;width:fit-content}.InputBox .PhoneInputBox .PrefixBox .UneditablePrefix{height:100%;width:100px;padding:0 0 0 5px;align-content:center;background:var(--emw--color-gray-100, #e6e6e6);border-radius:var(--emw--border-radius-medium, 10px)}.InputBox.InputInvalidBox .PasswordVisibilityIcon{fill:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.InputBox.InputInvalidBox input{color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.InputBox.InputInvalidBox::after{content:\"\";height:2px;width:100%;transition:width 0.6s linear;background:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.InputBox::after{content:\"\";display:block;width:0;height:2px;position:relative;top:2px}.InputBox .PasswordVisibilityIcon{fill:var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E))}.InputBox .InputIcon .TogglePasswordVisibility{cursor:pointer;position:absolute;top:18px;right:0}.InputBox .InputIcon .TogglePasswordVisibility.PasswordVisible{top:19.5px}.InputBox label{position:absolute;top:50%;left:5px;transform:translateY(-50%);color:var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E));font-size:var(--emw--font-size-medium, 16px);pointer-events:none;transition:0.5s}.InputBox label.FieldInvalid{color:#C23135}.InputBox input{width:100%;height:50px;background:transparent;border:none;outline:none;font-size:var(--emw--font-size-medium, 16px);padding:0 35px 0 5px;color:var(--emw--registration-typography, var(--emw--color-typography, #000000));box-sizing:border-box}input:focus~label,label.FieldFilledIn{top:-10px;font-size:var(--emw--font-size-x-small, 16px)}vaadin-combo-box:focus-within~label,label.FieldFilledIn{top:-10px;font-size:var(--emw--font-size-x-small, 16px)}.ForgotPassword button{margin:-10px 0 17px;font-size:var(--emw--font-size-medium, 16px);color:var(--emw--registration-color-primary, var(--emw--color-primary, #22B04E));display:flex;justify-content:space-between;background-color:transparent;padding:0;height:unset;border:0;cursor:pointer}.SubmitCredentials{display:block;margin:0 auto;outline:none;cursor:pointer;background:var(--emw--color-primary, #0E5924);border-radius:var(--emw--button-border-radius, 10px);padding:10px 20px;font-size:var(--emw--font-size-large, 20px);font-family:var(--emw--button-typography);color:var(--emw--button-text-color, #FFFFFF)}.SubmitCredentials:disabled{background:var(--emw--color-primary, #0E5924);opacity:0.4;cursor:default}.Register{font-size:var(--emw--font-size-medium, 16px);color:var(--emw--registration-typography, var(--emw--color-typography, #FFFFFF));text-align:center;margin:25px 0 10px}.Register p a{text-decoration:none;font-weight:600}.Register p a:hover{text-decoration:underline}.InvalidField{position:absolute;color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839));font-size:var(--emw--font-size-x-small, 12px)}.SubmitCredentials{margin-bottom:20px}.CredentialsError{color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839));font-size:var(--emw--font-size-x-small, 12px);padding:0 0 20px 0;margin:0}.CredentialsError input{color:var(--emfw-w-color-error, var(--emw--color-red, #FD2839))}.PlayerBiometricsContainer .PlayerBiometrics{margin:30px 0 40px;font-size:var(--emw--font-size-medium, 16px);color:var(--emw--registration-typography, var(--emw--color-typography, #000));display:flex;justify-content:space-between;background-color:transparent}@media screen and (max-width: 480px){.FormBox{width:100%;border-radius:0px}}";
7110
7181
  const UserLoginStyle0 = userLoginCss;
7111
7182
 
7112
7183
  const UserLogin = class {
7113
7184
  constructor(hostRef) {
7114
7185
  registerInstance(this, hostRef);
7115
7186
  this.errorCode = '';
7187
+ this.messageHandler = async (e) => {
7188
+ var _a;
7189
+ if (((_a = e.data) === null || _a === void 0 ? void 0 : _a.type) === 'NativeAppReady') {
7190
+ this.isNativeApp = true;
7191
+ if (!this.biometricsLoaded) {
7192
+ await import('./player-account-biometrics-action-62384811.js');
7193
+ this.biometricsLoaded = true;
7194
+ }
7195
+ }
7196
+ };
7197
+ this.checkNativeApp = () => {
7198
+ window.postMessage({ type: 'CheckNativeApp' });
7199
+ };
7116
7200
  /**
7117
7201
  * Fetch phone prefixes from the API
7118
7202
  */
@@ -7410,6 +7494,9 @@ const UserLogin = class {
7410
7494
  this.defaultPrefix = undefined;
7411
7495
  this.isPrefixEditable = 'true';
7412
7496
  this.mbSource = undefined;
7497
+ this.biometricEnabled = 'false';
7498
+ this.biometricactionmode = 'switch';
7499
+ this.isFromLogin = true;
7413
7500
  this.userNameEmail = '';
7414
7501
  this.userPassword = '';
7415
7502
  this.isValidUserEmail = true;
@@ -7429,6 +7516,8 @@ const UserLogin = class {
7429
7516
  provider: '',
7430
7517
  siteKey: ''
7431
7518
  };
7519
+ this.isNativeApp = false;
7520
+ this.biometricsLoaded = false;
7432
7521
  }
7433
7522
  /**
7434
7523
  * Watch for changes in the translation URL and fetch new translations
@@ -7506,6 +7595,11 @@ const UserLogin = class {
7506
7595
  this.sendErrorNotification(this.errorMessage);
7507
7596
  });
7508
7597
  }
7598
+ // If biometric login is enabled, start listening for native app messages
7599
+ if (this.biometricEnabled === 'true') {
7600
+ window.addEventListener('message', this.messageHandler);
7601
+ this.checkNativeApp();
7602
+ }
7509
7603
  }
7510
7604
  /**
7511
7605
  * Lifecycle method: Set up event listeners after the component is rendered
@@ -7513,7 +7607,7 @@ const UserLogin = class {
7513
7607
  componentDidLoad() {
7514
7608
  if (this.stylingContainer) {
7515
7609
  if (window.emMessageBus != undefined) {
7516
- setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`);
7610
+ setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`, this.stylingSubscription);
7517
7611
  }
7518
7612
  else {
7519
7613
  if (this.clientStyling)
@@ -7617,6 +7711,7 @@ const UserLogin = class {
7617
7711
  disconnectedCallback() {
7618
7712
  this.stylingSubscription && this.stylingSubscription.unsubscribe();
7619
7713
  window.removeEventListener('LoginCredentials', this.autofillCredentialsHandler);
7714
+ window.removeEventListener('message', this.messageHandler);
7620
7715
  }
7621
7716
  /**
7622
7717
  * Send error notification as a post message
@@ -7686,7 +7781,8 @@ const UserLogin = class {
7686
7781
  h("p", { class: "CredentialsError" }, translate('userPhoneError', this.lang)))))
7687
7782
  : h("div", { class: (!this.isValidUserEmail && this.errorForFields['user']) ? 'InputBox InputInvalidBox' : 'InputBox' }, h("input", { type: "text", placeholder: '', value: this.userNameEmail, onInput: this.handleInputChangePartial('user'), autocapitalize: "none", required: true }), h("label", { class: (this.userNameEmail ? 'FieldFilledIn' : '') + ' ' + (!this.isValidUserEmail && this.errorForFields['user'] ? 'FieldInvalid' : '') }, translate('userEmail', this.lang)), !this.isValidUserEmail && this.errorForFields['user'] &&
7688
7783
  h("p", { class: "CredentialsError" }, translate('userEmailError', this.lang))), h("div", { class: (!this.isValidPassword && this.errorForFields['password']) ? 'InputBox InputInvalidBox' : 'InputBox' }, this.renderVisibilityIcon(), h("input", { type: this.isPasswordVisible ? "text" : "password", placeholder: '', value: this.userPassword, onInput: this.handleInputChangePartial('password'), autocapitalize: "none", required: true }), h("label", { class: (this.userPassword ? 'FieldFilledIn' : '') + ' ' + (!this.isValidPassword && this.errorForFields['password'] ? 'FieldInvalid' : '') }, translate('password', this.lang)), !this.isValidPassword && this.errorForFields['password'] &&
7689
- h("p", { class: "CredentialsError" }, translate('userPasswordError', this.lang))), this.passwordReset == 'true' &&
7784
+ h("p", { class: "CredentialsError" }, translate('userPasswordError', this.lang))), this.biometricEnabled === 'true' && this.isNativeApp &&
7785
+ h("div", { class: "PlayerBiometricsContainer" }, h("div", { class: "PlayerBiometrics" }, h("span", null, translate('biometricLogin')), h("player-account-biometrics-action", { mode: this.biometricactionmode, isFromLogin: this.isFromLogin, isNativeApp: this.isNativeApp, lang: this.lang, translationurl: this.translationUrl, clientstyling: this.clientStyling, clientstylingurl: this.clientStylingUrl, mbsource: this.mbSource, isLoading: this.isLoginLoading }))), this.passwordReset == 'true' &&
7690
7786
  h("div", { class: "ForgotPassword" }, h("button", { onClick: this.resetPassword }, translate('forgotPassword', this.lang))), this.captchaData.isEnabled && this.captchaData.provider === 'cloudflare' &&
7691
7787
  h("slot", { name: "turnstile" }), this.captchaData.isEnabled && this.captchaData.provider === 'google' &&
7692
7788
  h("slot", { name: "google" }), h("button", { disabled: this.checkIsDisabled(), class: "SubmitCredentials", onClick: this.handleLogin }, translate('login', this.lang)), this.hasError &&
@@ -7696,7 +7792,7 @@ const UserLogin = class {
7696
7792
  * Render function
7697
7793
  */
7698
7794
  render() {
7699
- return h("section", { key: '7ac7aaee8d984d1d70c59dd32d05d27468167415', ref: el => this.stylingContainer = el }, this.renderUserIdentification());
7795
+ return h("section", { key: 'b60d626ea01f0804e83efba865234667b9828090', ref: el => this.stylingContainer = el }, this.renderUserIdentification());
7700
7796
  }
7701
7797
  static get watchers() { return {
7702
7798
  "translationUrl": ["handleNewTranslations"],
@@ -1,5 +1,5 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-f1feab1e.js';
2
- export { s as setNonce } from './index-f1feab1e.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-13692399.js';
2
+ export { s as setNonce } from './index-13692399.js';
3
3
  import { g as globalScripts } from './app-globals-0f993ce5.js';
4
4
 
5
5
  /*
@@ -16,5 +16,5 @@ var patchBrowser = () => {
16
16
 
17
17
  patchBrowser().then(async (options) => {
18
18
  await globalScripts();
19
- return bootstrapLazy([["user-login",[[1,"user-login",{"endpoint":[513],"minPassLength":[514,"min-pass-length"],"lang":[1537],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"passwordReset":[513,"password-reset"],"userEmailRegex":[513,"user-email-regex"],"userEmailRegexOptions":[513,"user-email-regex-options"],"userPhoneRegex":[513,"user-phone-regex"],"userPhoneRegexOptions":[513,"user-phone-regex-options"],"passwordRegex":[513,"password-regex"],"passwordRegexOptions":[513,"password-regex-options"],"version":[513],"loginByPhoneNumber":[513,"login-by-phone-number"],"defaultPrefix":[513,"default-prefix"],"isPrefixEditable":[513,"is-prefix-editable"],"mbSource":[513,"mb-source"],"userNameEmail":[32],"userPassword":[32],"isValidUserEmail":[32],"userPhone":[32],"userPrefix":[32],"isValidPassword":[32],"isValidUserPhone":[32],"isPasswordVisible":[32],"errorMessage":[32],"errorForFields":[32],"hasError":[32],"phoneCodes":[32],"isLoginLoading":[32],"captchaData":[32],"autofillCredentials":[64]},null,{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
19
+ return bootstrapLazy([["user-login",[[1,"user-login",{"endpoint":[513],"minPassLength":[514,"min-pass-length"],"lang":[1537],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"passwordReset":[513,"password-reset"],"userEmailRegex":[513,"user-email-regex"],"userEmailRegexOptions":[513,"user-email-regex-options"],"userPhoneRegex":[513,"user-phone-regex"],"userPhoneRegexOptions":[513,"user-phone-regex-options"],"passwordRegex":[513,"password-regex"],"passwordRegexOptions":[513,"password-regex-options"],"version":[513],"loginByPhoneNumber":[513,"login-by-phone-number"],"defaultPrefix":[513,"default-prefix"],"isPrefixEditable":[513,"is-prefix-editable"],"mbSource":[513,"mb-source"],"biometricEnabled":[513,"biometric-enabled"],"biometricactionmode":[1],"isFromLogin":[4,"is-from-login"],"userNameEmail":[32],"userPassword":[32],"isValidUserEmail":[32],"userPhone":[32],"userPrefix":[32],"isValidPassword":[32],"isValidUserPhone":[32],"isPasswordVisible":[32],"errorMessage":[32],"errorForFields":[32],"hasError":[32],"phoneCodes":[32],"isLoginLoading":[32],"captchaData":[32],"isNativeApp":[32],"biometricsLoaded":[32],"autofillCredentials":[64]},null,{"translationUrl":["handleNewTranslations"],"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"]}]]]], options);
20
20
  });
@@ -74,6 +74,18 @@ export declare class UserLogin {
74
74
  * This is used to apply styles dynamically from a stream.
75
75
  */
76
76
  mbSource: string;
77
+ /**
78
+ * Flag for enabling biometric login on native apps only.
79
+ */
80
+ biometricEnabled: string;
81
+ /**
82
+ * Display mode for biometric toggle.
83
+ */
84
+ biometricactionmode: 'button' | 'switch';
85
+ /**
86
+ * Flag indicating whether the component is rendered from the login flow
87
+ */
88
+ isFromLogin: boolean;
77
89
  userNameEmail: string;
78
90
  userPassword: string;
79
91
  isValidUserEmail: boolean;
@@ -91,6 +103,8 @@ export declare class UserLogin {
91
103
  }[];
92
104
  isLoginLoading: boolean;
93
105
  captchaData: CaptchaData;
106
+ isNativeApp: boolean;
107
+ biometricsLoaded: boolean;
94
108
  private errorCode;
95
109
  private stylingContainer;
96
110
  private stylingSubscription;
@@ -148,6 +162,8 @@ export declare class UserLogin {
148
162
  * @param captcha - The CAPTCHA configuration.
149
163
  */
150
164
  appendCaptchaScript(): void;
165
+ private messageHandler;
166
+ private checkNativeApp;
151
167
  /**
152
168
  * Lifecycle method: Clean up event listeners when the component is removed
153
169
  */
@@ -13,6 +13,14 @@ export namespace Components {
13
13
  * Populate login credentials from an external caller and trigger the login process
14
14
  */
15
15
  "autofillCredentials": (credentials: Credentials) => Promise<void>;
16
+ /**
17
+ * Flag for enabling biometric login on native apps only.
18
+ */
19
+ "biometricEnabled": string;
20
+ /**
21
+ * Display mode for biometric toggle.
22
+ */
23
+ "biometricactionmode": 'button' | 'switch';
16
24
  /**
17
25
  * Inline CSS styling provided by the client
18
26
  */
@@ -29,6 +37,10 @@ export namespace Components {
29
37
  * API endpoint URL for login requests
30
38
  */
31
39
  "endpoint": string;
40
+ /**
41
+ * Flag indicating whether the component is rendered from the login flow
42
+ */
43
+ "isFromLogin": boolean;
32
44
  /**
33
45
  * Flag to determine if prefix is editable
34
46
  */
@@ -100,6 +112,14 @@ declare global {
100
112
  }
101
113
  declare namespace LocalJSX {
102
114
  interface UserLogin {
115
+ /**
116
+ * Flag for enabling biometric login on native apps only.
117
+ */
118
+ "biometricEnabled"?: string;
119
+ /**
120
+ * Display mode for biometric toggle.
121
+ */
122
+ "biometricactionmode"?: 'button' | 'switch';
103
123
  /**
104
124
  * Inline CSS styling provided by the client
105
125
  */
@@ -116,6 +136,10 @@ declare namespace LocalJSX {
116
136
  * API endpoint URL for login requests
117
137
  */
118
138
  "endpoint"?: string;
139
+ /**
140
+ * Flag indicating whether the component is rendered from the login flow
141
+ */
142
+ "isFromLogin"?: boolean;
119
143
  /**
120
144
  * Flag to determine if prefix is editable
121
145
  */
@@ -1,2 +1,2 @@
1
- var e=Object.defineProperty,t=new WeakMap,n=e=>t.get(e),l=(e,n)=>t.set(n.t=e,n),o=(e,t)=>t in e,s=(e,t)=>(0,console.error)(e,t),r=new Map,i=new Map,c="slot-fb{display:contents}slot-fb[hidden]{display:none}",u="undefined"!=typeof window?window:{},a=u.document||{head:{}},f={l:0,o:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},h=e=>Promise.resolve(e),d=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),p=!1,m=[],v=[],w=(e,t)=>n=>{e.push(n),p||(p=!0,t&&4&f.l?b($):f.raf($))},y=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){s(e)}e.length=0},$=()=>{y(m),y(v),(p=m.length>0)&&f.raf($)},b=e=>h().then(e),g=w(v,!0),S={},j=e=>"object"==(e=typeof e)||"function"===e;function O(e){var t,n,l;return null!=(l=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?l:void 0}((t,n)=>{for(var l in n)e(t,l,{get:n[l],enumerable:!0})})({},{err:()=>E,map:()=>C,ok:()=>k,unwrap:()=>P,unwrapErr:()=>L});var k=e=>({isOk:!0,isErr:!1,value:e}),E=e=>({isOk:!1,isErr:!0,value:e});function C(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>k(e))):k(n)}if(e.isErr)return E(e.value);throw"should never get here"}var M,x,P=e=>{if(e.isOk)return e.value;throw e.value},L=e=>{if(e.isErr)return e.value;throw e.value},R=(e,t,...n)=>{let l=null,o=null,s=!1,r=!1;const i=[],c=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?c(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof e&&!j(l))&&(l+=""),s&&r?i[i.length-1].i+=l:i.push(s?T(null,l):l),r=s)};if(c(n),t){t.key&&(o=t.key);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}const u=T(e,null);return u.u=t,i.length>0&&(u.h=i),u.p=o,u},T=(e,t)=>({l:0,m:e,i:t,v:null,h:null,u:null,p:null}),A={},F=new WeakMap,N=e=>"sc-"+e.$,U=(e,t,n,l,s,r)=>{if(n!==l){let i=o(e,t),c=t.toLowerCase();if("class"===t){const t=e.classList,o=D(n),s=D(l);t.remove(...o.filter((e=>e&&!s.includes(e)))),t.add(...s.filter((e=>e&&!o.includes(e))))}else if("key"===t);else if("ref"===t)l&&l(e);else if(i||"o"!==t[0]||"n"!==t[1]){const o=j(l);if((i||o&&null!==l)&&!s)try{if(e.tagName.includes("-"))e[t]=l;else{const o=null==l?"":l;"list"===t?i=!1:null!=n&&e[t]==o||(e[t]=o)}}catch(e){}null==l||!1===l?!1===l&&""!==e.getAttribute(t)||e.removeAttribute(t):(!i||4&r||s)&&!o&&e.setAttribute(t,l=!0===l?"":l)}else if(t="-"===t[2]?t.slice(3):o(u,c)?c.slice(2):c[2]+t.slice(3),n||l){const o=t.endsWith(H);t=t.replace(q,""),n&&f.rel(e,t,n,o),l&&f.ael(e,t,l,o)}}},W=/\s/,D=e=>e?e.split(W):[],H="Capture",q=RegExp(H+"$"),G=(e,t,n)=>{const l=11===t.v.nodeType&&t.v.host?t.v.host:t.v,o=e&&e.u||S,s=t.u||S;for(const e of V(Object.keys(o)))e in s||U(l,e,o[e],void 0,n,t.l);for(const e of V(Object.keys(s)))U(l,e,o[e],s[e],n,t.l)};function V(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var _=!1,z=!1,B=(e,t,n)=>{const l=t.h[n];let o,s,r=0;if(null!==l.i)o=l.v=a.createTextNode(l.i);else{if(z||(z="svg"===l.m),o=l.v=a.createElementNS(z?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",l.m),z&&"foreignObject"===l.m&&(z=!1),G(null,l,z),null!=M&&o["s-si"]!==M&&o.classList.add(o["s-si"]=M),l.h)for(r=0;r<l.h.length;++r)s=B(e,l,r),s&&o.appendChild(s);"svg"===l.m?z=!1:"foreignObject"===o.tagName&&(z=!0)}return o["s-hn"]=x,o},I=(e,t,n,l,o,s)=>{let r,i=e;for(i.shadowRoot&&i.tagName===x&&(i=i.shadowRoot);o<=s;++o)l[o]&&(r=B(null,n,o),r&&(l[o].v=r,Y(i,r,t)))},J=(e,t,n)=>{for(let l=t;l<=n;++l){const t=e[l];if(t){const e=t.v;X(t),e&&e.remove()}}},K=(e,t,n=!1)=>e.m===t.m&&(!!n||e.p===t.p),Q=(e,t,n=!1)=>{const l=t.v=e.v,o=e.h,s=t.h,r=t.m,i=t.i;null===i?(z="svg"===r||"foreignObject"!==r&&z,("slot"!==r||_)&&G(e,t,z),null!==o&&null!==s?((e,t,n,l,o=!1)=>{let s,r,i=0,c=0,u=0,a=0,f=t.length-1,h=t[0],d=t[f],p=l.length-1,m=l[0],v=l[p];for(;i<=f&&c<=p;)if(null==h)h=t[++i];else if(null==d)d=t[--f];else if(null==m)m=l[++c];else if(null==v)v=l[--p];else if(K(h,m,o))Q(h,m,o),h=t[++i],m=l[++c];else if(K(d,v,o))Q(d,v,o),d=t[--f],v=l[--p];else if(K(h,v,o))Q(h,v,o),Y(e,h.v,d.v.nextSibling),h=t[++i],v=l[--p];else if(K(d,m,o))Q(d,m,o),Y(e,d.v,h.v),d=t[--f],m=l[++c];else{for(u=-1,a=i;a<=f;++a)if(t[a]&&null!==t[a].p&&t[a].p===m.p){u=a;break}u>=0?(r=t[u],r.m!==m.m?s=B(t&&t[c],n,u):(Q(r,m,o),t[u]=void 0,s=r.v),m=l[++c]):(s=B(t&&t[c],n,c),m=l[++c]),s&&Y(h.v.parentNode,s,h.v)}i>f?I(e,null==l[p+1]?null:l[p+1].v,n,l,c,p):c>p&&J(t,i,f)})(l,o,t,s,n):null!==s?(null!==e.i&&(l.textContent=""),I(l,null,t,s,0,s.length-1)):null!==o&&J(o,0,o.length-1),z&&"svg"===r&&(z=!1)):e.i!==i&&(l.data=i)},X=e=>{e.u&&e.u.ref&&e.u.ref(null),e.h&&e.h.map(X)},Y=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),Z=(e,t)=>{t&&!e.S&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.S=t)))},ee=(e,t)=>{if(e.l|=16,!(4&e.l))return Z(e,e.j),g((()=>te(e,t)));e.l|=512},te=(e,t)=>{const n=e.t;if(!n)throw Error(`Can't render component <${e.$hostElement$.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let l;return t&&(l=ce(n,"componentWillLoad")),ne(l,(()=>oe(e,n,t)))},ne=(e,t)=>le(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),le=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,oe=async(e,t,n)=>{var l;const o=e.$hostElement$,s=o["s-rc"];n&&(e=>{const t=e.O,n=e.$hostElement$,l=t.l,o=((e,t)=>{var n;const l=N(t),o=i.get(l);if(e=11===e.nodeType?e:a,o)if("string"==typeof o){let s,r=F.get(e=e.head||e);if(r||F.set(e,r=new Set),!r.has(l)){{s=a.createElement("style"),s.innerHTML=o;const t=null!=(n=f.k)?n:O(a);null!=t&&s.setAttribute("nonce",t),e.insertBefore(s,e.querySelector("link"))}4&t.l&&(s.innerHTML+=c),r&&r.add(l)}}else e.adoptedStyleSheets.includes(o)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,o]);return l})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(e);se(e,t,o,n),s&&(s.map((e=>e())),o["s-rc"]=void 0);{const t=null!=(l=o["s-p"])?l:[],n=()=>re(e);0===t.length?n():(Promise.all(t).then(n),e.l|=4,t.length=0)}},se=(e,t,n,l)=>{try{t=t.render(),e.l&=-17,e.l|=2,((e,t,n=!1)=>{const l=e.$hostElement$,o=e.O,s=e.C||T(null,null),r=(e=>e&&e.m===A)(t)?t:R(null,null,t);if(x=l.tagName,o.M&&(r.u=r.u||{},o.M.map((([e,t])=>r.u[t]=l[e]))),n&&r.u)for(const e of Object.keys(r.u))l.hasAttribute(e)&&!["key","ref","style","class"].includes(e)&&(r.u[e]=l[e]);r.m=null,r.l|=4,e.C=r,r.v=s.v=l.shadowRoot||l,M=l["s-sc"],_=!!(1&o.l),Q(s,r,n)})(e,t,l)}catch(t){s(t,e.$hostElement$)}return null},re=e=>{const t=e.$hostElement$,n=e.t,l=e.j;64&e.l||(e.l|=64,ue(t),ce(n,"componentDidLoad"),e.P(t),l||ie()),e.L(t),e.S&&(e.S(),e.S=void 0),512&e.l&&b((()=>ee(e,!1))),e.l&=-517},ie=()=>{ue(a.documentElement),b((()=>(e=>{const t=f.ce("appload",{detail:{namespace:"user-login"}});return e.dispatchEvent(t),t})(u)))},ce=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){s(e)}},ue=e=>e.classList.add("hydrated"),ae=(e,t,l)=>{var o,r;const i=e.prototype;if(t.R||t.T||e.watchers){e.watchers&&!t.T&&(t.T=e.watchers);const c=Object.entries(null!=(o=t.R)?o:{});if(c.map((([e,[o]])=>{31&o||2&l&&32&o?Object.defineProperty(i,e,{get(){return((e,t)=>n(this).A.get(t))(0,e)},set(l){((e,t,l,o)=>{const r=n(e);if(!r)throw Error(`Couldn't find host element for "${o.$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const i=r.$hostElement$,c=r.A.get(t),u=r.l,a=r.t;if(l=((e,t)=>null==e||j(e)?e:2&t?parseFloat(e):1&t?e+"":e)(l,o.R[t][0]),(!(8&u)||void 0===c)&&l!==c&&(!Number.isNaN(c)||!Number.isNaN(l))&&(r.A.set(t,l),a)){if(o.T&&128&u){const e=o.T[t];e&&e.map((e=>{try{a[e](l,c,t)}catch(e){s(e,i)}}))}2==(18&u)&&ee(r,!1)}})(this,e,l,t)},configurable:!0,enumerable:!0}):1&l&&64&o&&Object.defineProperty(i,e,{value(...t){var l;const o=n(this);return null==(l=null==o?void 0:o.F)?void 0:l.then((()=>{var n;return null==(n=o.t)?void 0:n[e](...t)}))}})})),1&l){const l=new Map;i.attributeChangedCallback=function(e,o,s){f.jmp((()=>{var r;const c=l.get(e);if(this.hasOwnProperty(c))s=this[c],delete this[c];else{if(i.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==s)return;if(null==c){const l=n(this),i=null==l?void 0:l.l;if(i&&!(8&i)&&128&i&&s!==o){const n=l.t,i=null==(r=t.T)?void 0:r[e];null==i||i.forEach((t=>{null!=n[t]&&n[t].call(n,s,o,e)}))}return}}this[c]=(null!==s||"boolean"!=typeof this[c])&&s}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(r=t.T)?r:{}),...c.filter((([e,t])=>15&t[0])).map((([e,n])=>{var o;const s=n[1]||e;return l.set(s,e),512&n[0]&&(null==(o=t.M)||o.push([e,s])),s}))]))}}return e},fe=e=>{ce(e,"disconnectedCallback")},he=(e,l={})=>{var o;const h=[],p=l.exclude||[],m=u.customElements,v=a.head,w=v.querySelector("meta[charset]"),y=a.createElement("style"),$=[];let b,g=!0;Object.assign(f,l),f.o=new URL(l.resourcesUrl||"./",a.baseURI).href;let S=!1;if(e.map((e=>{e[1].map((l=>{var o;const c={l:l[0],$:l[1],R:l[2],N:l[3]};4&c.l&&(S=!0),c.R=l[2],c.M=[],c.T=null!=(o=l[4])?o:{};const u=c.$,a=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,n)=>{const l={l:0,$hostElement$:e,O:n,A:new Map};l.F=new Promise((e=>l.L=e)),l.U=new Promise((e=>l.P=e)),e["s-p"]=[],e["s-rc"]=[],t.set(e,l)})(e=this,c),1&c.l)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${c.$}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else e.attachShadow({mode:"open"})}connectedCallback(){this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),b&&(clearTimeout(b),b=null),g?$.push(this):f.jmp((()=>(e=>{if(!(1&f.l)){const t=n(e),l=t.O,o=()=>{};if(1&t.l)(null==t?void 0:t.t)||(null==t?void 0:t.U)&&t.U.then((()=>{}));else{t.l|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){Z(t,t.j=n);break}}l.R&&Object.entries(l.R).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n)=>{let l;if(!(32&t.l)){if(t.l|=32,n.W){const e=(e=>{const t=e.$.replace(/-/g,"_"),n=e.W;if(!n)return;const l=r.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(r.set(n,e),e[t])),s)
1
+ var e=Object.defineProperty,t=new WeakMap,n=e=>t.get(e),l=(e,n)=>t.set(n.t=e,n),o=(e,t)=>t in e,s=(e,t)=>(0,console.error)(e,t),r=new Map,i=new Map,c="slot-fb{display:contents}slot-fb[hidden]{display:none}",u="undefined"!=typeof window?window:{},a=u.document||{head:{}},f={l:0,o:"",jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,l)=>e.addEventListener(t,n,l),rel:(e,t,n,l)=>e.removeEventListener(t,n,l),ce:(e,t)=>new CustomEvent(e,t)},h=e=>Promise.resolve(e),d=(()=>{try{return new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync}catch(e){}return!1})(),p=!1,m=[],v=[],w=(e,t)=>n=>{e.push(n),p||(p=!0,t&&4&f.l?b($):f.raf($))},y=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){s(e)}e.length=0},$=()=>{y(m),y(v),(p=m.length>0)&&f.raf($)},b=e=>h().then(e),g=w(v,!0),S={},j=e=>"object"==(e=typeof e)||"function"===e;function O(e){var t,n,l;return null!=(l=null==(n=null==(t=e.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:n.getAttribute("content"))?l:void 0}((t,n)=>{for(var l in n)e(t,l,{get:n[l],enumerable:!0})})({},{err:()=>E,map:()=>C,ok:()=>k,unwrap:()=>P,unwrapErr:()=>L});var k=e=>({isOk:!0,isErr:!1,value:e}),E=e=>({isOk:!1,isErr:!0,value:e});function C(e,t){if(e.isOk){const n=t(e.value);return n instanceof Promise?n.then((e=>k(e))):k(n)}if(e.isErr)return E(e.value);throw"should never get here"}var M,x,P=e=>{if(e.isOk)return e.value;throw e.value},L=e=>{if(e.isErr)return e.value;throw e.value},R=(e,t,...n)=>{let l=null,o=null,s=!1,r=!1;const i=[],c=t=>{for(let n=0;n<t.length;n++)l=t[n],Array.isArray(l)?c(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof e&&!j(l))&&(l+=""),s&&r?i[i.length-1].i+=l:i.push(s?T(null,l):l),r=s)};if(c(n),t){t.key&&(o=t.key);{const e=t.className||t.class;e&&(t.class="object"!=typeof e?e:Object.keys(e).filter((t=>e[t])).join(" "))}}const u=T(e,null);return u.u=t,i.length>0&&(u.h=i),u.p=o,u},T=(e,t)=>({l:0,m:e,i:t,v:null,h:null,u:null,p:null}),A={},F=new WeakMap,N=e=>"sc-"+e.$,U=(e,t,n,l,s,r)=>{if(n!==l){let i=o(e,t),c=t.toLowerCase();if("class"===t){const t=e.classList,o=D(n),s=D(l);t.remove(...o.filter((e=>e&&!s.includes(e)))),t.add(...s.filter((e=>e&&!o.includes(e))))}else if("key"===t);else if("ref"===t)l&&l(e);else if(i||"o"!==t[0]||"n"!==t[1]){const o=j(l);if((i||o&&null!==l)&&!s)try{if(e.tagName.includes("-"))e[t]=l;else{const o=null==l?"":l;"list"===t?i=!1:null!=n&&e[t]==o||(e[t]=o)}}catch(e){}null==l||!1===l?!1===l&&""!==e.getAttribute(t)||e.removeAttribute(t):(!i||4&r||s)&&!o&&e.setAttribute(t,l=!0===l?"":l)}else if(t="-"===t[2]?t.slice(3):o(u,c)?c.slice(2):c[2]+t.slice(3),n||l){const o=t.endsWith(H);t=t.replace(q,""),n&&f.rel(e,t,n,o),l&&f.ael(e,t,l,o)}}},W=/\s/,D=e=>e?e.split(W):[],H="Capture",q=RegExp(H+"$"),G=(e,t,n)=>{const l=11===t.v.nodeType&&t.v.host?t.v.host:t.v,o=e&&e.u||S,s=t.u||S;for(const e of V(Object.keys(o)))e in s||U(l,e,o[e],void 0,n,t.l);for(const e of V(Object.keys(s)))U(l,e,o[e],s[e],n,t.l)};function V(e){return e.includes("ref")?[...e.filter((e=>"ref"!==e)),"ref"]:e}var _=!1,z=!1,B=(e,t,n)=>{const l=t.h[n];let o,s,r=0;if(null!==l.i)o=l.v=a.createTextNode(l.i);else{if(z||(z="svg"===l.m),o=l.v=a.createElementNS(z?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",l.m),z&&"foreignObject"===l.m&&(z=!1),G(null,l,z),null!=M&&o["s-si"]!==M&&o.classList.add(o["s-si"]=M),l.h)for(r=0;r<l.h.length;++r)s=B(e,l,r),s&&o.appendChild(s);"svg"===l.m?z=!1:"foreignObject"===o.tagName&&(z=!0)}return o["s-hn"]=x,o},I=(e,t,n,l,o,s)=>{let r,i=e;for(i.shadowRoot&&i.tagName===x&&(i=i.shadowRoot);o<=s;++o)l[o]&&(r=B(null,n,o),r&&(l[o].v=r,Y(i,r,t)))},J=(e,t,n)=>{for(let l=t;l<=n;++l){const t=e[l];if(t){const e=t.v;X(t),e&&e.remove()}}},K=(e,t,n=!1)=>e.m===t.m&&(!!n||e.p===t.p),Q=(e,t,n=!1)=>{const l=t.v=e.v,o=e.h,s=t.h,r=t.m,i=t.i;null===i?(z="svg"===r||"foreignObject"!==r&&z,("slot"!==r||_)&&G(e,t,z),null!==o&&null!==s?((e,t,n,l,o=!1)=>{let s,r,i=0,c=0,u=0,a=0,f=t.length-1,h=t[0],d=t[f],p=l.length-1,m=l[0],v=l[p];for(;i<=f&&c<=p;)if(null==h)h=t[++i];else if(null==d)d=t[--f];else if(null==m)m=l[++c];else if(null==v)v=l[--p];else if(K(h,m,o))Q(h,m,o),h=t[++i],m=l[++c];else if(K(d,v,o))Q(d,v,o),d=t[--f],v=l[--p];else if(K(h,v,o))Q(h,v,o),Y(e,h.v,d.v.nextSibling),h=t[++i],v=l[--p];else if(K(d,m,o))Q(d,m,o),Y(e,d.v,h.v),d=t[--f],m=l[++c];else{for(u=-1,a=i;a<=f;++a)if(t[a]&&null!==t[a].p&&t[a].p===m.p){u=a;break}u>=0?(r=t[u],r.m!==m.m?s=B(t&&t[c],n,u):(Q(r,m,o),t[u]=void 0,s=r.v),m=l[++c]):(s=B(t&&t[c],n,c),m=l[++c]),s&&Y(h.v.parentNode,s,h.v)}i>f?I(e,null==l[p+1]?null:l[p+1].v,n,l,c,p):c>p&&J(t,i,f)})(l,o,t,s,n):null!==s?(null!==e.i&&(l.textContent=""),I(l,null,t,s,0,s.length-1)):null!==o&&J(o,0,o.length-1),z&&"svg"===r&&(z=!1)):e.i!==i&&(l.data=i)},X=e=>{e.u&&e.u.ref&&e.u.ref(null),e.h&&e.h.map(X)},Y=(e,t,n)=>null==e?void 0:e.insertBefore(t,n),Z=(e,t)=>{t&&!e.S&&t["s-p"]&&t["s-p"].push(new Promise((t=>e.S=t)))},ee=(e,t)=>{if(e.l|=16,!(4&e.l))return Z(e,e.j),g((()=>te(e,t)));e.l|=512},te=(e,t)=>{const n=e.t;if(!n)throw Error(`Can't render component <${e.$hostElement$.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let l;return t&&(l=ce(n,"componentWillLoad")),ne(l,(()=>oe(e,n,t)))},ne=(e,t)=>le(e)?e.then(t).catch((e=>{console.error(e),t()})):t(),le=e=>e instanceof Promise||e&&e.then&&"function"==typeof e.then,oe=async(e,t,n)=>{var l;const o=e.$hostElement$,s=o["s-rc"];n&&(e=>{const t=e.O,n=e.$hostElement$,l=t.l,o=((e,t)=>{var n;const l=N(t),o=i.get(l);if(e=11===e.nodeType?e:a,o)if("string"==typeof o){let s,r=F.get(e=e.head||e);if(r||F.set(e,r=new Set),!r.has(l)){{s=a.createElement("style"),s.innerHTML=o;const t=null!=(n=f.k)?n:O(a);null!=t&&s.setAttribute("nonce",t),e.insertBefore(s,e.querySelector("link"))}4&t.l&&(s.innerHTML+=c),r&&r.add(l)}}else e.adoptedStyleSheets.includes(o)||(e.adoptedStyleSheets=[...e.adoptedStyleSheets,o]);return l})(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(e);se(e,t,o,n),s&&(s.map((e=>e())),o["s-rc"]=void 0);{const t=null!=(l=o["s-p"])?l:[],n=()=>re(e);0===t.length?n():(Promise.all(t).then(n),e.l|=4,t.length=0)}},se=(e,t,n,l)=>{try{t=t.render(),e.l&=-17,e.l|=2,((e,t,n=!1)=>{const l=e.$hostElement$,o=e.O,s=e.C||T(null,null),r=(e=>e&&e.m===A)(t)?t:R(null,null,t);if(x=l.tagName,o.M&&(r.u=r.u||{},o.M.map((([e,t])=>r.u[t]=l[e]))),n&&r.u)for(const e of Object.keys(r.u))l.hasAttribute(e)&&!["key","ref","style","class"].includes(e)&&(r.u[e]=l[e]);r.m=null,r.l|=4,e.C=r,r.v=s.v=l.shadowRoot||l,M=l["s-sc"],_=!!(1&o.l),Q(s,r,n)})(e,t,l)}catch(t){s(t,e.$hostElement$)}return null},re=e=>{const t=e.$hostElement$,n=e.t,l=e.j;64&e.l||(e.l|=64,ue(t),ce(n,"componentDidLoad"),e.P(t),l||ie()),e.L(t),e.S&&(e.S(),e.S=void 0),512&e.l&&b((()=>ee(e,!1))),e.l&=-517},ie=()=>{ue(a.documentElement),b((()=>(e=>{const t=f.ce("appload",{detail:{namespace:"user-login"}});return e.dispatchEvent(t),t})(u)))},ce=(e,t,n)=>{if(e&&e[t])try{return e[t](n)}catch(e){s(e)}},ue=e=>e.classList.add("hydrated"),ae=(e,t,l)=>{var o,r;const i=e.prototype;if(t.R||t.T||e.watchers){e.watchers&&!t.T&&(t.T=e.watchers);const c=Object.entries(null!=(o=t.R)?o:{});if(c.map((([e,[o]])=>{31&o||2&l&&32&o?Object.defineProperty(i,e,{get(){return((e,t)=>n(this).A.get(t))(0,e)},set(l){((e,t,l,o)=>{const r=n(e);if(!r)throw Error(`Couldn't find host element for "${o.$}" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/ionic-team/stencil/issues/5457).`);const i=r.$hostElement$,c=r.A.get(t),u=r.l,a=r.t;if(l=((e,t)=>null==e||j(e)?e:4&t?"false"!==e&&(""===e||!!e):2&t?parseFloat(e):1&t?e+"":e)(l,o.R[t][0]),(!(8&u)||void 0===c)&&l!==c&&(!Number.isNaN(c)||!Number.isNaN(l))&&(r.A.set(t,l),a)){if(o.T&&128&u){const e=o.T[t];e&&e.map((e=>{try{a[e](l,c,t)}catch(e){s(e,i)}}))}2==(18&u)&&ee(r,!1)}})(this,e,l,t)},configurable:!0,enumerable:!0}):1&l&&64&o&&Object.defineProperty(i,e,{value(...t){var l;const o=n(this);return null==(l=null==o?void 0:o.F)?void 0:l.then((()=>{var n;return null==(n=o.t)?void 0:n[e](...t)}))}})})),1&l){const l=new Map;i.attributeChangedCallback=function(e,o,s){f.jmp((()=>{var r;const c=l.get(e);if(this.hasOwnProperty(c))s=this[c],delete this[c];else{if(i.hasOwnProperty(c)&&"number"==typeof this[c]&&this[c]==s)return;if(null==c){const l=n(this),i=null==l?void 0:l.l;if(i&&!(8&i)&&128&i&&s!==o){const n=l.t,i=null==(r=t.T)?void 0:r[e];null==i||i.forEach((t=>{null!=n[t]&&n[t].call(n,s,o,e)}))}return}}this[c]=(null!==s||"boolean"!=typeof this[c])&&s}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(r=t.T)?r:{}),...c.filter((([e,t])=>15&t[0])).map((([e,n])=>{var o;const s=n[1]||e;return l.set(s,e),512&n[0]&&(null==(o=t.M)||o.push([e,s])),s}))]))}}return e},fe=e=>{ce(e,"disconnectedCallback")},he=(e,l={})=>{var o;const h=[],p=l.exclude||[],m=u.customElements,v=a.head,w=v.querySelector("meta[charset]"),y=a.createElement("style"),$=[];let b,g=!0;Object.assign(f,l),f.o=new URL(l.resourcesUrl||"./",a.baseURI).href;let S=!1;if(e.map((e=>{e[1].map((l=>{var o;const c={l:l[0],$:l[1],R:l[2],N:l[3]};4&c.l&&(S=!0),c.R=l[2],c.M=[],c.T=null!=(o=l[4])?o:{};const u=c.$,a=class extends HTMLElement{constructor(e){if(super(e),this.hasRegisteredEventListeners=!1,((e,n)=>{const l={l:0,$hostElement$:e,O:n,A:new Map};l.F=new Promise((e=>l.L=e)),l.U=new Promise((e=>l.P=e)),e["s-p"]=[],e["s-rc"]=[],t.set(e,l)})(e=this,c),1&c.l)if(e.shadowRoot){if("open"!==e.shadowRoot.mode)throw Error(`Unable to re-use existing shadow root for ${c.$}! Mode is set to ${e.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else e.attachShadow({mode:"open"})}connectedCallback(){this.hasRegisteredEventListeners||(this.hasRegisteredEventListeners=!0),b&&(clearTimeout(b),b=null),g?$.push(this):f.jmp((()=>(e=>{if(!(1&f.l)){const t=n(e),l=t.O,o=()=>{};if(1&t.l)(null==t?void 0:t.t)||(null==t?void 0:t.U)&&t.U.then((()=>{}));else{t.l|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n["s-p"]){Z(t,t.j=n);break}}l.R&&Object.entries(l.R).map((([t,[n]])=>{if(31&n&&e.hasOwnProperty(t)){const n=e[t];delete e[t],e[t]=n}})),(async(e,t,n)=>{let l;if(!(32&t.l)){if(t.l|=32,n.W){const e=(e=>{const t=e.$.replace(/-/g,"_"),n=e.W;if(!n)return;const l=r.get(n);return l?l[t]:import(`./${n}.entry.js`).then((e=>(r.set(n,e),e[t])),s)
2
2
  /*!__STENCIL_STATIC_IMPORT_SWITCH__*/})(n);if(e&&"then"in e){const t=()=>{};l=await e,t()}else l=e;if(!l)throw Error(`Constructor for "${n.$}#${t.D}" was not found`);l.isProxied||(n.T=l.watchers,ae(l,n,2),l.isProxied=!0);const o=()=>{};t.l|=8;try{new l(t)}catch(e){s(e)}t.l&=-9,t.l|=128,o()}else l=e.constructor,customElements.whenDefined(e.localName).then((()=>t.l|=128));if(l&&l.style){let e;"string"==typeof l.style&&(e=l.style);const t=N(n);if(!i.has(t)){const l=()=>{};((e,t,n)=>{let l=i.get(e);d&&n?(l=l||new CSSStyleSheet,"string"==typeof l?l=t:l.replaceSync(t)):l=t,i.set(e,l)})(t,e,!!(1&n.l)),l()}}}const o=t.j,c=()=>ee(t,!0);o&&o["s-rc"]?o["s-rc"].push(c):c()})(e,t,l)}o()}})(this)))}disconnectedCallback(){f.jmp((()=>(async()=>{if(!(1&f.l)){const e=n(this);(null==e?void 0:e.t)?fe(e.t):(null==e?void 0:e.U)&&e.U.then((()=>fe(e.t)))}})()))}componentOnReady(){return n(this).U}};c.W=e[0],p.includes(u)||m.get(u)||(h.push(u),m.define(u,ae(a,c,1)))}))})),h.length>0&&(S&&(y.textContent+=c),y.textContent+=h.sort()+"{visibility:hidden}.hydrated{visibility:inherit}",y.innerHTML.length)){y.setAttribute("data-styles","");const e=null!=(o=f.k)?o:O(a);null!=e&&y.setAttribute("nonce",e),v.insertBefore(y,w?w.nextSibling:v.firstChild)}g=!1,$.length?$.map((e=>e.connectedCallback())):f.jmp((()=>b=setTimeout(ie,30)))},de=e=>f.k=e;export{he as b,R as h,h as p,l as r,de as s}