@tempots/beatui 1.4.0 → 1.5.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.
- package/dist/auth/index.cjs.js +1 -1
- package/dist/auth/index.es.js +1 -1
- package/dist/{auth-divider-D_3gKZ6g.js → auth-divider-BIATan1F.js} +3 -3
- package/dist/{auth-divider-itm5-j5G.cjs → auth-divider-CVKfA8Cp.cjs} +1 -1
- package/dist/beatui.css +393 -36
- package/dist/beatui.tailwind.css +393 -36
- package/dist/better-auth/index.cjs.js +1 -1
- package/dist/better-auth/index.es.js +2 -2
- package/dist/deep-merge-B33Qtlmw.cjs +1 -0
- package/dist/{deep-merge-CzZVsVF-.js → deep-merge-BUsrE2v4.js} +130 -130
- package/dist/{duration-input-BrYLC1js.cjs → duration-input-C5il_E0F.cjs} +1 -1
- package/dist/{duration-input-CFu6vq-y.js → duration-input-DoCCrqOG.js} +1 -1
- package/dist/index.cjs.js +4 -4
- package/dist/index.es.js +5609 -5130
- package/dist/json-schema/index.cjs.js +1 -1
- package/dist/json-schema/index.es.js +107 -107
- package/dist/json-structure/index.cjs.js +1 -1
- package/dist/json-structure/index.es.js +3 -3
- package/dist/{modal-YKqlh4Dk.js → modal-BHlp4QeT.js} +1 -1
- package/dist/{modal-DCxNGrzk.cjs → modal-BmpfNL48.cjs} +1 -1
- package/dist/{notice-Q0A1gIho.cjs → notice-BBnSXYUc.cjs} +1 -1
- package/dist/{notice-Du3tWJTW.js → notice-BXKtBEiC.js} +1 -1
- package/dist/types/components/data/data-table-context.d.ts +9 -1
- package/dist/types/components/data/data-table-row-details.d.ts +21 -0
- package/dist/types/components/data/data-table-types.d.ts +23 -0
- package/dist/types/components/data/index.d.ts +1 -0
- package/dist/types/components/form/control/control.d.ts +5 -5
- package/dist/types/components/form/control/list-control.d.ts +11 -11
- package/dist/types/components/form/fieldset/fieldset.d.ts +60 -0
- package/dist/types/components/form/fieldset/index.d.ts +1 -0
- package/dist/types/components/form/index.d.ts +1 -0
- package/dist/types/components/form/input/combobox-input.d.ts +2 -2
- package/dist/types/components/form/input/combobox-tags-input.d.ts +1 -1
- package/dist/types/components/form/input/date-time-input.d.ts +1 -1
- package/dist/types/components/form/input/dropdown-input.d.ts +2 -2
- package/dist/types/components/form/input/field-layout.d.ts +64 -0
- package/dist/types/components/form/input/{input-wrapper.d.ts → field.d.ts} +23 -14
- package/dist/types/components/form/input/index.d.ts +2 -1
- package/dist/types/components/form/input/multi-select.d.ts +2 -2
- package/dist/types/components/form/input/native-select.d.ts +1 -1
- package/dist/types/components/form/input/range-slider.d.ts +19 -2
- package/dist/types/components/form/input/select-tags-input.d.ts +1 -1
- package/dist/types/components/format/format-bigint.d.ts +64 -0
- package/dist/types/components/format/format-date-time.d.ts +54 -0
- package/dist/types/components/format/format-date.d.ts +82 -0
- package/dist/types/components/format/format-display-name.d.ts +70 -0
- package/dist/types/components/format/format-file-size.d.ts +30 -0
- package/dist/types/components/format/format-list.d.ts +61 -0
- package/dist/types/components/format/format-number.d.ts +88 -0
- package/dist/types/components/format/format-plural.d.ts +96 -0
- package/dist/types/components/format/format-relative-time.d.ts +62 -0
- package/dist/types/components/format/format-time.d.ts +66 -0
- package/dist/types/components/format/index.d.ts +11 -0
- package/dist/types/components/i18n/locale-selector.d.ts +1 -1
- package/dist/types/components/json-schema/controls/composition-shared.d.ts +1 -1
- package/dist/types/components/json-schema/controls/shared-utils.d.ts +3 -3
- package/dist/types/components/json-schema/widgets/string-controls.d.ts +2 -2
- package/dist/types/components/json-schema-display/display-wrapper.d.ts +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/use-form-CP6nftVl.cjs +2 -0
- package/dist/{use-form-D_TJyZhP.js → use-form-CmQdxpOi.js} +474 -434
- package/dist/{widget-customization-DELy3SMQ.cjs → widget-customization-B0y-eesp.cjs} +1 -1
- package/dist/{widget-customization-BAchyOUo.js → widget-customization-CKbR4Dsg.js} +2 -2
- package/package.json +1 -1
- package/dist/deep-merge-Bydz6jLt.cjs +0 -1
- package/dist/use-form-BvBkVEKi.cjs +0 -2
package/dist/auth/index.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../auth-divider-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../auth-divider-CVKfA8Cp.cjs");exports.AmazonLoginButton=o.AmazonLoginButton;exports.AppleLoginButton=o.AppleLoginButton;exports.AuthContainer=o.AuthContainer;exports.AuthDivider=o.AuthDivider;exports.AuthModal=o.AuthModal;exports.DiscordLoginButton=o.DiscordLoginButton;exports.EpicLoginButton=o.EpicLoginButton;exports.FacebookLoginButton=o.FacebookLoginButton;exports.GitHubLoginButton=o.GitHubLoginButton;exports.GoogleLoginButton=o.GoogleLoginButton;exports.InstagramLoginButton=o.InstagramLoginButton;exports.LinkedInLoginButton=o.LinkedInLoginButton;exports.MicrosoftLoginButton=o.MicrosoftLoginButton;exports.PasswordStrengthBar=o.PasswordStrengthBar;exports.PasswordStrengthIndicator=o.PasswordStrengthIndicator;exports.PasswordStrengthText=o.PasswordStrengthText;exports.PayPalLoginButton=o.PayPalLoginButton;exports.PinterestLoginButton=o.PinterestLoginButton;exports.PlayStationLoginButton=o.PlayStationLoginButton;exports.RedditLoginButton=o.RedditLoginButton;exports.ResetPasswordForm=o.ResetPasswordForm;exports.SignInForm=o.SignInForm;exports.SignUpForm=o.SignUpForm;exports.SnapchatLoginButton=o.SnapchatLoginButton;exports.SocialLoginButton=o.SocialLoginButton;exports.SocialLoginButtons=o.SocialLoginButtons;exports.SocialProviders=o.SocialProviders;exports.SteamLoginButton=o.SteamLoginButton;exports.TiktokLoginButton=o.TiktokLoginButton;exports.TwitchLoginButton=o.TwitchLoginButton;exports.TwitterLoginButton=o.TwitterLoginButton;exports.WeChatLoginButton=o.WeChatLoginButton;exports.WhatsAppLoginButton=o.WhatsAppLoginButton;exports.XLoginButtin=o.XLoginButtin;exports.XboxLoginButton=o.XboxLoginButton;exports.YahooLoginButton=o.YahooLoginButton;exports.authSchemas=o.authSchemas;exports.calculatePasswordStrength=o.calculatePasswordStrength;exports.createEmailSchema=o.createEmailSchema;exports.createPasswordSchema=o.createPasswordSchema;exports.createSignInSchema=o.createSignInSchema;exports.createSignUpSchema=o.createSignUpSchema;exports.createSocialLoginUrl=o.createSocialLoginUrl;exports.defaultPasswordRules=o.defaultPasswordRules;exports.defaultSignInSchema=o.defaultSignInSchema;exports.defaultSignUpSchema=o.defaultSignUpSchema;exports.emailSchema=o.emailSchema;exports.formatAuthError=o.formatAuthError;exports.formatProviderName=o.formatProviderName;exports.formatSocialLoginText=o.formatSocialLoginText;exports.generateRandomString=o.generateRandomString;exports.getProviderColor=o.getProviderColor;exports.getProviderIcon=o.getProviderIcon;exports.isBrowser=o.isBrowser;exports.isValidEmail=o.isValidEmail;exports.openSocialLoginPopup=o.openSocialLoginPopup;exports.providerInfo=o.providerInfo;exports.requestToControllerValidation=o.requestToControllerValidation;exports.resetPasswordSchema=o.resetPasswordSchema;exports.socialProviderInfo=o.socialProviderInfo;exports.useAuthEmailProp=o.useAuthEmailProp;exports.validateEmail=o.validateEmail;exports.validatePassword=o.validatePassword;
|
package/dist/auth/index.es.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as t, a as s, b as n, c as i, d as e, D as r, E as g, F as u, G as c, e as l, I as d, L, M as S, P as B, f as m, g as h, h as P, i as p, j as w, R as f, k as v, S as I, l as A, m as E, n as T, o as k, p as x, q as C, T as F, r as R, s as U, W as b, t as y, X as D, u as G, Y as M, v as V, w as W, x as X, y as q, z, B as H, C as N, H as Y, J as j, K as J, N as K, O, Q, U as Z, V as _, Z as $, _ as aa, $ as oa, a0 as ta, a1 as sa, a2 as na, a3 as ia, a4 as ea, a5 as ra, a6 as ga, a7 as ua, a8 as ca } from "../auth-divider-
|
|
1
|
+
import { A as t, a as s, b as n, c as i, d as e, D as r, E as g, F as u, G as c, e as l, I as d, L, M as S, P as B, f as m, g as h, h as P, i as p, j as w, R as f, k as v, S as I, l as A, m as E, n as T, o as k, p as x, q as C, T as F, r as R, s as U, W as b, t as y, X as D, u as G, Y as M, v as V, w as W, x as X, y as q, z, B as H, C as N, H as Y, J as j, K as J, N as K, O, Q, U as Z, V as _, Z as $, _ as aa, $ as oa, a0 as ta, a1 as sa, a2 as na, a3 as ia, a4 as ea, a5 as ra, a6 as ga, a7 as ua, a8 as ca } from "../auth-divider-BIATan1F.js";
|
|
2
2
|
export {
|
|
3
3
|
t as AmazonLoginButton,
|
|
4
4
|
s as AppleLoginButton,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { localStorageProp as pe, prop as M, Use as x, html as m, attr as t, on as C, When as _, coalesce as g, Ensure as j, computedOf as b, bind as de, ForEach as he, Value as se, OneOfValue as ge, Fragment as U } from "@tempots/dom";
|
|
2
2
|
import { S as $ } from "./stack-BLMteGTn.js";
|
|
3
|
-
import { t as fe, u as X, a as ce, b as z } from "./use-form-
|
|
4
|
-
import { o as Y, b as G, s as A, M as be } from "./modal-
|
|
3
|
+
import { t as fe, u as X, a as ce, b as z } from "./use-form-CmQdxpOi.js";
|
|
4
|
+
import { o as Y, b as G, s as A, M as be } from "./modal-BHlp4QeT.js";
|
|
5
5
|
import { Validation as ne } from "@tempots/std";
|
|
6
6
|
import { d as f, A as B } from "./translations-CxDUnbXn.js";
|
|
7
|
-
import { P as H, E as Z, N as J } from "./notice-
|
|
7
|
+
import { P as H, E as Z, N as J } from "./notice-BXKtBEiC.js";
|
|
8
8
|
import { B as N } from "./input-container-CO3DNqpp.js";
|
|
9
9
|
import { T as we } from "./text-input-BAn02BzO.js";
|
|
10
10
|
import { I as _e } from "./translations-DT5QQ4WO.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=require("@tempots/dom"),q=require("./stack-dwLevGa2.cjs"),_=require("./use-form-BvBkVEKi.cjs"),f=require("./modal-DCxNGrzk.cjs"),X=require("@tempots/std"),m=require("./translations-C_-cObaF.cjs"),y=require("./notice-Q0A1gIho.cjs"),T=require("./input-container-BkPcNDaZ.cjs"),ae=require("./text-input-D_IxFd0M.cjs"),ne=require("./translations-qefRsdGi.cjs"),re=require("@tempots/ui"),$={google:{name:"Google",icon:"logos:google-icon",color:"#4285f4"},github:{name:"GitHub",icon:"logos:github-icon",color:"#333"},apple:{name:"Apple",icon:"logos:apple",color:"#000"},facebook:{name:"Facebook",icon:"logos:facebook",color:"#1877f2"},twitter:{name:"Twitter",icon:"logos:twitter",color:"#1da1f2"},microsoft:{name:"Microsoft",icon:"logos:microsoft-icon",color:"#00a4ef"},discord:{name:"Discord",icon:"logos:discord-icon",color:"#5865f2"},linkedin:{name:"LinkedIn",icon:"logos:linkedin-icon",color:"#0077b5"},instagram:{name:"Instagram",icon:"logos:instagram-icon",color:"#e4405f"},tiktok:{name:"TikTok",icon:"logos:tiktok-icon",color:"#000"},snapchat:{name:"Snapchat",icon:"logos:snapchat-icon",color:"#fffc00"},reddit:{name:"Reddit",icon:"logos:reddit-icon",color:"#ff4500"},pinterest:{name:"Pinterest",icon:"logos:pinterest-icon",color:"#bd081c"},twitch:{name:"Twitch",icon:"logos:twitch",color:"#9146ff"},steam:{name:"Steam",icon:"logos:steam-icon",color:"#000"},epic:{name:"Epic Games",icon:"simple-icons:epicgames",color:"#313131"},playstation:{name:"PlayStation",icon:"logos:playstation-icon",color:"#003791"},xbox:{name:"Xbox",icon:"logos:xbox-icon",color:"#107c10"},whatsapp:{name:"WhatsApp",icon:"logos:whatsapp-icon",color:"#25d366"},wechat:{name:"WeChat",icon:"logos:wechat-icon",color:"#1aad19"},amazon:{name:"Amazon",icon:"logos:amazon-icon",color:"#ff9900"},yahoo:{name:"Yahoo",icon:"logos:yahoo-icon",color:"#720e9e"},paypal:{name:"PayPal",icon:"logos:paypal",color:"#0070ba"},x:{name:"X",icon:"simple-icons:x",color:"#000"}};function Y(t){return $[t]?.name||t}function se(t){return $[t]?.icon||"mdi:account"}function ie(t){return $[t]?.color||"#666"}function ce(t,o="Continue with {provider}"){return o.replace("{provider}",Y(t))}const B={minLength:8,requireUppercase:!0,requireLowercase:!0,requireNumbers:!0,requireSymbols:!1};function le(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)}function Z(t=32){const o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let r="";for(let a=0;a<t;a++)r+=o.charAt(Math.floor(Math.random()*o.length));return r}function ue(t,o,r,a=[],c={}){const s={google:"https://accounts.google.com/oauth/authorize",github:"https://github.com/login/oauth/authorize",apple:"https://appleid.apple.com/auth/authorize",facebook:"https://www.facebook.com/v18.0/dialog/oauth",twitter:"https://twitter.com/i/oauth2/authorize",microsoft:"https://login.microsoftonline.com/common/oauth2/v2.0/authorize",discord:"https://discord.com/api/oauth2/authorize",linkedin:"https://www.linkedin.com/oauth/v2/authorization",instagram:"https://api.instagram.com/oauth/authorize",tiktok:"https://www.tiktok.com/v2/auth/authorize",snapchat:"https://accounts.snapchat.com/accounts/oauth2/authorize",reddit:"https://www.reddit.com/api/v1/authorize",pinterest:"https://api.pinterest.com/oauth/",twitch:"https://id.twitch.tv/oauth2/authorize",steam:"https://steamcommunity.com/oauth/authorize",epic:"https://auth.epicgames.com/authorize",playstation:"https://auth.api.sonyentertainmentnetwork.com/oauth/authorize",xbox:"https://login.live.com/oauth20_authorize.srf",whatsapp:"https://web.whatsapp.com/oauth/authorize",wechat:"https://open.weixin.qq.com/connect/qrconnect",amazon:"https://www.amazon.com/ap/oa",yahoo:"https://api.login.yahoo.com/oauth2/request_auth",paypal:"https://www.paypal.com/signin/authorize",x:"https://api.twitter.com/oauth2/authorize"},u={google:["openid","email","profile"],github:["user:email"],apple:["email","name"],facebook:["email"],twitter:["users.read"],microsoft:["openid","email","profile"],discord:["identify","email"],linkedin:["r_liteprofile","r_emailaddress"],instagram:["user_profile","user_media"],tiktok:["user.info.basic","user.external.id"],snapchat:["user.info.basic","user.external.id"],reddit:["identity","email"],pinterest:["read_public","read_relationships"],twitch:["openid","email","profile"],steam:["openid","email","profile"],epic:["openid","email","profile"],playstation:["openid","email","profile"],xbox:["openid","email","profile"],whatsapp:["openid","email","profile"],wechat:["openid","email","profile"],amazon:["openid","email","profile"],yahoo:["openid","email","profile"],paypal:["openid","email","profile"],x:["openid","email","profile"]},n=s[t];if(!n)throw new Error(`Unsupported provider: ${t}`);const l=a.length>0?a:u[t],i=Z(),h=new URLSearchParams({client_id:o,redirect_uri:r,scope:l.join(" "),state:i,response_type:"code",...c});return`${n}?${h.toString()}`}function me(t,o,r,a){const c=window.open(t,`${o}_login`,"width=500,height=600,scrollbars=yes,resizable=yes");if(!c){a?.(new Error("Failed to open popup window"));return}const s=setInterval(()=>{c.closed&&(clearInterval(s),a?.(new Error("Login cancelled")))},1e3),u=n=>{n.origin===window.location.origin&&(n.data.type==="SOCIAL_LOGIN_SUCCESS"?(clearInterval(s),c.close(),window.removeEventListener("message",u),r?.(n.data.result)):n.data.type==="SOCIAL_LOGIN_ERROR"&&(clearInterval(s),c.close(),window.removeEventListener("message",u),a?.(new Error(n.data.error))))};window.addEventListener("message",u)}function de(t){return t instanceof Error?t.message:typeof t=="string"?t:t&&typeof t=="object"&&"message"in t?String(t.message):"An unexpected error occurred"}function pe(){return typeof window<"u"&&typeof document<"u"}function E({task:t,message:o,onStart:r,onEnd:a}){return async c=>{r?.();const s=await _.taskToValidation({task:t!=null?()=>t(c):async()=>null,errorMessage:o,errorPath:["root"],validation:u=>u!=null?X.Validation.invalid({message:u}):X.Validation.valid});return a?.(),s}}function M(t=B,o){const r=o??m.defaultMessages;let a=f.string();return t.minLength&&(a=a.min(t.minLength,(r.passwordMinLength??m.defaultMessages.passwordMinLength)(t.minLength))),t.requireUppercase&&(a=a.regex(/[A-Z]/,r.passwordRequireUppercase??m.defaultMessages.passwordRequireUppercase)),t.requireLowercase&&(a=a.regex(/[a-z]/,r.passwordRequireLowercase??m.defaultMessages.passwordRequireLowercase)),t.requireNumbers&&(a=a.regex(/[0-9]/,r.passwordRequireNumber??m.defaultMessages.passwordRequireNumber)),t.requireSymbols&&(a=a.regex(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,r.passwordRequireSpecialChar??m.defaultMessages.passwordRequireSpecialChar)),t.customValidation&&(a=a.refine(c=>t.customValidation(c))),a}function C(t){const o=t??m.defaultMessages;return f.string().min(1,o.emailRequired??m.defaultMessages.emailRequired).email(o.invalidEmail??m.defaultMessages.invalidEmail)}const G=C();function z(t,o){const r=o??m.defaultMessages,a=t?M(t,o):f.string().refine(c=>c.length>0?null:r.passwordRequired??m.defaultMessages.passwordRequired);return f.object({email:C(o),password:a,rememberMe:f.boolean().default(!1)}).schema()}function U(t=B,o,r){const a=r??m.defaultMessages,c=M(t,r),s=o?.showNameField!==!1,u=o?.showConfirmPassword!==!1,n=o?.showAcceptTermsAndConditions!==!1,l={name:s?f.string().min(1,a.nameRequired??m.defaultMessages.nameRequired).optional():f.string().optional(),email:C(r),password:c,confirmPassword:u?f.string().min(1,a.confirmPasswordRequired??m.defaultMessages.confirmPasswordRequired):f.string(),acceptTerms:n?f.boolean().refine(h=>h===!0,a.acceptTermsRequired??m.defaultMessages.acceptTermsRequired):f.boolean().default(!0)},i=f.object(l);return u?i.refine(h=>h.password===h.confirmPassword?null:a.passwordsDoNotMatch??m.defaultMessages.passwordsDoNotMatch,{path:["confirmPassword"]}).schema():i.schema()}const j=f.object({email:G}).schema(),he=z(),ge=U(),fe={signIn:z,signUp:U,resetPassword:()=>j};function be(t,o){const r=o??m.defaultMessages,c=(o?C(o):G).validate(t);return c.success?null:c.errors[0]?.message||(r.invalidEmailAddress??m.defaultMessages.invalidEmailAddress)}function we(t,o=B,r){const a=r??m.defaultMessages,s=M(o,r).validate(t);return s.success?null:s.errors[0]?.message||(a.invalidPassword??m.defaultMessages.invalidPassword)}function R(t,o=B){const r={length:t.length>=(o.minLength||8),uppercase:/[A-Z]/.test(t),lowercase:/[a-z]/.test(t),numbers:/[0-9]/.test(t),symbols:/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/.test(t),custom:o.customValidation?o.customValidation(t)===null:t.length>0},a=[!0,o.requireUppercase,o.requireLowercase,o.requireNumbers,o.requireSymbols,!!o.customValidation].filter(Boolean).length,c=[r.length,o.requireUppercase?r.uppercase:null,o.requireLowercase?r.lowercase:null,o.requireNumbers?r.numbers:null,o.requireSymbols?r.symbols:null,o.customValidation?r.custom:null].filter(n=>n===!0).length,s=a>0?Math.round(c/a*100):0;let u;return s<40?u="weak":s<60?u="fair":s<80?u="good":u="strong",{strength:u,score:s,checks:r}}const H=()=>e.localStorageProp({key:"bui_auth_email",defaultValue:null});function J({onSignIn:t,passwordRules:o,labels:r,showRememberMe:a}){const c=e.prop(!1),s=H(),u=z(o),n=_.useForm({schema:u,onSubmit:E({task:t,message:"Sign in failed",onStart:()=>{c.set(!0),n.controller.disable()},onEnd:()=>{c.set(!1),n.controller.enable()}}),initialValue:{email:"",password:""}}),{controller:l,submit:i}=n;c.on(l.setDisabled);const h=l.field("email"),b=l.field("password");return s.on(w=>{w!=null&&h.change(w)}),h.signal.on(w=>{s.value!=null&&(s.value=w)}),e.Use(m.AuthI18n,w=>e.html.form(e.attr.class("bc-auth-form__form"),e.on.submit(i),q.Stack(e.attr.class("bc-auth-form__fields"),e.Ensure(l.error,v=>y.Notice({variant:"danger",tone:"prominent",role:"alert"},e.html.div(v))),_.Control(y.EmailInput,{controller:h,label:e.coalesce(r?.emailLabel,w.$.emailLabel)}),_.Control(y.PasswordInput,{controller:b,label:e.coalesce(r?.passwordLabel,w.$.passwordLabel)}),e.When(a??!0,()=>e.html.div(e.attr.class("bc-auth-form__remember-me"),e.html.label(e.attr.class("bc-auth-form__checkbox-label"),_.CheckboxInput({value:s.map(v=>v!=null),after:e.html.span(e.coalesce(r?.rememberMeLabel,w.$.rememberMeLabel)),onChange:v=>{v?s.value=h.signal.value??"":s.value=null}}))))),T.Button({type:"submit",variant:"filled",color:"primary",loading:c,disabled:l.disabledOrHasErrors},e.attr.class("bc-auth-form__submit"),e.coalesce(r?.signInButton,w.$.signInButton))))}function K({password:t,rules:o=B,showLabel:r=!0,className:a}){const c=e.computedOf(t)(i=>!i||i.length===0?{strength:"weak",score:0,checks:{length:!1,uppercase:!1,lowercase:!1,numbers:!1,symbols:!1,custom:!1}}:R(i,o)),s=c.map(i=>i.strength),u=c.map(i=>i.score),n=c.map(i=>i.checks),l=e.computedOf(s,a)((i,h)=>["bc-password-strength",`bc-password-strength--${i}`,h].filter(Boolean).join(" "));return e.html.div(e.attr.class(l),e.html.div(e.attr.class("bc-password-strength__bar"),e.html.div(e.attr.class("bc-password-strength__fill"),e.attr.style(u.map(i=>`width: ${i}%`)))),e.When(r,()=>e.Use(m.AuthI18n,i=>e.html.div(e.attr.class("bc-password-strength__label"),e.computedOf(s,i)((h,b)=>{switch(h){case"weak":return b.passwordStrengthWeak;case"fair":return b.passwordStrengthFair;case"good":return b.passwordStrengthGood;case"strong":return b.passwordStrengthStrong;default:return b.passwordStrengthWeak}})))),e.html.div(e.attr.class("bc-password-strength__requirements"),e.When(o.minLength!==void 0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.length?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.length?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),`At least ${o.minLength} characters`))),e.When(o.requireUppercase===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.uppercase?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.uppercase?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One uppercase letter"))),e.When(o.requireLowercase===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.lowercase?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.lowercase?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One lowercase letter"))),e.When(o.requireNumbers===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.numbers?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.numbers?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One number"))),e.When(o.requireSymbols===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.symbols?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.symbols?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One special character")))))}function Le({password:t,rules:o=B,className:r}){const a=e.computedOf(t)(n=>!n||n.length===0?{strength:"weak",score:0}:R(n,o)),c=a.map(n=>n.strength),s=a.map(n=>n.score),u=e.computedOf(c,r)((n,l)=>["bc-password-strength-bar",`bc-password-strength-bar--${n}`,l].filter(Boolean).join(" "));return e.html.div(e.attr.class(u),e.html.div(e.attr.class("bc-password-strength-bar__fill"),e.attr.style(s.map(n=>`width: ${n}%`))))}function _e({password:t,rules:o=B,className:r}){const a=e.computedOf(t)(s=>!s||s.length===0?"weak":R(s,o).strength),c=e.computedOf(a,r)((s,u)=>["bc-password-strength-text",`bc-password-strength-text--${s}`,u].filter(Boolean).join(" "));return e.Use(m.AuthI18n,s=>e.html.span(e.attr.class(c),e.computedOf(a,s)((u,n)=>{switch(u){case"weak":return n.passwordStrengthWeak;case"fair":return n.passwordStrengthFair;case"good":return n.passwordStrengthGood;case"strong":return n.passwordStrengthStrong;default:return n.passwordStrengthWeak}})))}function Q({passwordRules:t,labels:o,initialEmail:r,initialName:a,showPasswordStrength:c,onSignUp:s,showNameField:u,showConfirmPassword:n,showAcceptTermsAndConditions:l,termsAndConditions:i}){const h=e.prop(!1),b=t||B,w=typeof n=="boolean"?n:n!=null?n.value:!1,v=typeof l=="boolean"?l:l!=null?l.value:!1,O=U(b,{showNameField:u!==!1,showConfirmPassword:w,showAcceptTermsAndConditions:v}),x=_.useForm({schema:O,onSubmit:E({task:s!=null?L=>s({email:L.email,password:L.password,name:L.name,acceptTerms:L.acceptTerms}):void 0,message:"Sign up failed",onStart:()=>{h.set(!0),x.controller.disable()},onEnd:()=>{h.set(!1),x.controller.enable()}}),initialValue:{name:a??"",email:r??"",password:"",confirmPassword:"",acceptTerms:!1}}),{controller:k,submit:W}=x;h.on(k.setDisabled);const F=k.field("name"),V=k.field("email"),P=k.field("password"),S=k.field("confirmPassword"),I=k.field("acceptTerms");return e.Use(m.AuthI18n,L=>e.html.form(e.attr.class("bc-auth-form__form"),e.on.submit(W),q.Stack(e.attr.class("bc-auth-form__fields"),e.Ensure(k.error,g=>y.Notice({variant:"danger",tone:"prominent",role:"alert"},e.html.div(g))),e.When(u!==!1,()=>_.Control(ae.TextInput,{controller:F.transform(g=>g??"",g=>g===""?void 0:g),label:e.coalesce(o?.nameLabel,L.$.nameLabel)})),_.Control(y.EmailInput,{controller:V,label:e.coalesce(o?.emailLabel,L.$.emailLabel)}),_.Control(y.PasswordInput,{controller:P,label:e.coalesce(o?.passwordLabel,L.$.passwordLabel)}),e.When(c??!1,()=>K({password:P.signal,rules:b,showLabel:!0})),e.When(n??!1,()=>_.Control(y.PasswordInput,{controller:S,label:e.coalesce(o?.confirmPasswordLabel,L.$.confirmPasswordLabel)})),e.When(l??!1,()=>e.html.div(e.attr.class("bc-auth-form__terms"),e.html.label(e.attr.class("bc-auth-form__checkbox-label"),_.CheckboxInput({value:I.signal.map(g=>g??!1),onChange:g=>I.change(g)}),e.html.span(i||e.coalesce(o?.acceptTermsLabel,L.$.acceptTermsLabel))),e.When(I.errorVisible,()=>e.html.div(e.attr.class("bc-auth-form__field-error"),I.error.map(g=>g||"")))))),T.Button({type:"submit",variant:"filled",color:"primary",loading:h,disabled:k.disabledOrHasErrors},e.attr.class("bc-auth-form__submit"),e.coalesce(o?.signUpButton,L.$.signUpButton))))}function ee({onResetPassword:t,labels:o={}}){const r=H(),a=e.prop(!1),c=_.useForm({schema:j,onSubmit:E({task:t,message:"Reset password failed",onStart:()=>{a.set(!0),c.controller.disable()},onEnd:()=>{a.set(!1),c.controller.enable()}}),initialValue:{email:""}}),{controller:s,submit:u}=c;a.on(s.setDisabled);const n=s.field("email");return r.on(l=>{l!=null&&n.change(l)}),e.Use(m.AuthI18n,l=>e.html.form(e.attr.class("bc-auth-form__form"),e.Ensure(s.error,i=>y.Notice({variant:"danger",tone:"prominent",role:"alert"},e.html.div(i))),e.html.p(e.attr.class("bc-auth-form__description"),e.coalesce(o?.resetPasswordDescription,l.$.resetPasswordDescription)),e.on.submit(u),q.Stack(e.attr.class("bc-auth-form__fields"),_.Control(y.EmailInput,{controller:n,label:e.coalesce(o?.emailLabel,l.$.emailLabel)})),T.Button({loading:a,type:"submit",variant:"filled",color:"primary",disabled:s.disabledOrHasErrors},e.attr.class("bc-auth-form__submit"),e.coalesce(o?.resetPasswordButton,l.$.resetPasswordButton))))}function p({provider:t,onClick:o,size:r="md",name:a,icon:c,color:s,flow:u,labels:n}){const l=async()=>{if(o)try{u==="popup"?await o():await o()}catch(i){console.error(`Social login error for ${t} (${u||"redirect"} flow):`,i)}};return T.Button({type:"button",variant:"filled",size:r,color:s,onClick:l,roundedness:"full"},e.attr.class("bc-social-login-button"),e.attr.class(e.computedOf(t)(i=>`bc-social-login-button--${i}`)),e.html.span(e.attr.class("bc-social-login-button__inner"),e.html.span(e.attr.class("bc-social-login-button__icon"),ne.Icon({icon:c,size:r},e.attr.class("bc-social-login-button__icon-inner"))),e.Use(m.AuthI18n,i=>e.html.span(e.attr.class("bc-social-login-button__label"),e.bind(e.coalesce(n?.continueWithProvider,i.$.continueWithProvider))(a)))))}function te({providers:t,onProviderClick:o,size:r="md",className:a}){return q.Stack(e.attr.class("bc-social-login-buttons"),e.attr.class(a),e.ForEach(t,c=>p({provider:c.$.provider,flow:c.$.flow,color:c.map(({provider:s})=>d[s].color),name:c.map(({provider:s})=>d[s].name),icon:c.map(({provider:s})=>d[s].icon),onClick:async()=>{o&&await o(c.$.provider.value)},size:r})))}const d={google:{name:"Google",icon:"logos:google-icon",color:"red"},github:{name:"GitHub",icon:"logos:github-icon",color:"black"},apple:{name:"Apple",icon:"logos:apple",color:"stone"},facebook:{name:"Facebook",icon:"logos:facebook",color:"blue"},twitter:{name:"Twitter",icon:"logos:twitter",color:"sky"},x:{name:"X",icon:"logos:x",color:"zinc"},microsoft:{name:"Microsoft",icon:"logos:microsoft-icon",color:"amber"},discord:{name:"Discord",icon:"logos:discord-icon",color:"indigo"},linkedin:{name:"LinkedIn",icon:"logos:linkedin-icon",color:"cyan"},instagram:{name:"Instagram",icon:"logos:instagram-icon",color:"fuchsia"},tiktok:{name:"TikTok",icon:"logos:tiktok-icon",color:"teal"},snapchat:{name:"Snapchat",icon:"simple-icons:snapchat",color:"yellow"},reddit:{name:"Reddit",icon:"logos:reddit-icon",color:"orange"},pinterest:{name:"Pinterest",icon:"logos:pinterest",color:"rose"},twitch:{name:"Twitch",icon:"logos:twitch",color:"purple"},steam:{name:"Steam",icon:"logos:steam",color:"slate"},epic:{name:"Epic Games",icon:"simple-icons:epicgames",color:"neutral"},playstation:{name:"PlayStation",icon:"simple-icons:playstation",color:"violet"},xbox:{name:"Xbox",icon:"simple-icons:xbox",color:"green"},whatsapp:{name:"WhatsApp",icon:"logos:whatsapp-icon",color:"emerald"},wechat:{name:"WeChat",icon:"simple-icons:wechat",color:"lime"},amazon:{name:"Amazon",icon:"simple-icons:amazon",color:"red"},yahoo:{name:"Yahoo",icon:"logos:yahoo",color:"rose"},paypal:{name:"PayPal",icon:"logos:paypal",color:"blue"}},ve=t=>p({...t,...d.google,provider:"google"}),ke=t=>p({...t,...d.github,provider:"github"}),Se=t=>p({...t,...d.apple,provider:"apple"}),Pe=t=>p({...t,...d.facebook,provider:"facebook"}),ye=t=>p({...t,...d.x,provider:"x"}),Be=t=>p({...t,...d.twitter,provider:"twitter"}),qe=t=>p({...t,...d.microsoft,provider:"microsoft"}),Ie=t=>p({...t,...d.discord,provider:"discord"}),xe=t=>p({...t,...d.linkedin,provider:"linkedin"}),Ae=t=>p({...t,...d.instagram,provider:"instagram"}),Ce=t=>p({...t,...d.tiktok,provider:"tiktok"}),Te=t=>p({...t,...d.snapchat,provider:"snapchat"}),$e=t=>p({...t,...d.reddit,provider:"reddit"}),Ee=t=>p({...t,...d.pinterest,provider:"pinterest"}),Me=t=>p({...t,...d.twitch,provider:"twitch"}),ze=t=>p({...t,...d.steam,provider:"steam"}),Ue=t=>p({...t,...d.epic,provider:"epic"}),Re=t=>p({...t,...d.playstation,provider:"playstation"}),Oe=t=>p({...t,...d.xbox,provider:"xbox"}),We=t=>p({...t,...d.whatsapp,provider:"whatsapp"}),Fe=t=>p({...t,...d.wechat,provider:"wechat"}),Ve=t=>p({...t,...d.amazon,provider:"amazon"}),Ne=t=>p({...t,...d.yahoo,provider:"yahoo"}),De=t=>p({...t,...d.paypal,provider:"paypal"});function N({providers:t,onSocialLogin:o}){return q.Stack(te({providers:t,onProviderClick:o}))}function oe({mode:t,socialProviders:o,initialName:r,initialEmail:a,passwordRules:c,showRememberMe:s,showSocialDivider:u,showPasswordStrength:n,labels:l,onSignIn:i,onSignUp:h,onResetPassword:b,onModeChange:w,onSocialLogin:v,showContainer:O,showNameField:x,showConfirmPassword:k,showAcceptTermsAndConditions:W,termsAndConditions:F},...V){const P=t!=null?e.Value.deriveProp(t):e.prop("signin");return P.on(S=>w?.(S)),e.Use(m.AuthI18n,S=>{function I(){const A=e.coalesce(l?.hasAccountLink,S.$.hasAccountLink);return e.html.button(e.attr.type("button"),e.attr.class("bc-auth-form__link"),e.on.click(()=>P.set("signin")),A)}function L(){return e.html.button(e.attr.type("button"),e.attr.class("bc-auth-form__link"),e.on.click(()=>P.set("signup")),e.coalesce(l?.noAccountLink,S.$.noAccountLink))}function g(){return e.html.button(e.attr.type("button"),e.attr.class("bc-auth-form__link"),e.on.click(()=>P.set("reset-password")),e.coalesce(l?.forgotPasswordLink,S.$.forgotPasswordLink))}return e.html.div(re.classes({"bc-auth-container":!0,"bc-auth-container--styled":e.Value.map(O??!0,A=>A)}),e.attr.class(P.map(A=>`bc-auth-container--${A}`)),e.attr.class("bc-auth-form"),e.OneOfValue(P,{signin:()=>e.Fragment(e.html.h2(e.attr.class("bc-auth-form__title"),e.coalesce(l?.signInTitle,S.$.signInTitle)),o!=null?e.Fragment(N({providers:o,onSocialLogin:v}),e.When(u??!1,D)):null,J({onSignIn:i,showRememberMe:s,passwordRules:c,labels:{emailLabel:l?.emailLabel,passwordLabel:l?.passwordLabel,rememberMeLabel:l?.rememberMeLabel,signInButton:l?.signInButton,forgotPasswordLink:l?.forgotPasswordLink,noAccountLink:l?.noAccountLink}}),q.Stack(e.attr.class("bc-auth-form__footer"),L(),g())),signup:()=>e.Fragment(e.html.h2(e.attr.class("bc-auth-form__title"),e.coalesce(l?.signUpTitle,S.$.signUpTitle)),o!=null?e.Fragment(N({providers:o,onSocialLogin:v}),e.When(u??!1,D)):null,Q({labels:{nameLabel:l?.nameLabel,emailLabel:l?.emailLabel,passwordLabel:l?.passwordLabel,confirmPasswordLabel:l?.confirmPasswordLabel,acceptTermsLabel:l?.acceptTermsLabel,signUpButton:l?.signUpButton,hasAccountLink:l?.hasAccountLink},initialEmail:a,initialName:r,onSignUp:h,passwordRules:c,showPasswordStrength:n,showNameField:x,showConfirmPassword:k,showAcceptTermsAndConditions:W,termsAndConditions:F}),q.Stack(e.attr.class("bc-auth-form__footer"),I())),"reset-password":()=>e.Fragment(e.html.h2(e.attr.class("bc-auth-form__title"),e.coalesce(l?.resetPasswordTitle,S.$.resetPasswordTitle)),ee({labels:{backToSignInLink:l?.backToSignInLink,emailLabel:l?.emailLabel,resetPasswordButton:l?.resetPasswordButton,resetPasswordDescription:l?.resetPasswordDescription},onResetPassword:b}),q.Stack(e.attr.class("bc-auth-form__footer"),I()))}),...V)})}function Ge(t){return f.Modal({size:"sm",dismissable:!0,showCloseButton:!0},(o,r)=>t(a=>o({body:oe({showContainer:!1,...a}),header:e.Use(m.AuthI18n,c=>e.coalesce(a.modalTitle,c.$.authenticationTitle))})))}function D({labels:t,className:o}={}){return e.html.div(e.attr.class("bc-auth-divider"),e.attr.class(o),e.html.div(e.attr.class("bc-auth-divider__line")),e.Use(m.AuthI18n,r=>e.html.span(e.attr.class("bc-auth-divider__text"),e.coalesce(t?.text,r.$.orDivider))),e.html.div(e.attr.class("bc-auth-divider__line")))}exports.AmazonLoginButton=Ve;exports.AppleLoginButton=Se;exports.AuthContainer=oe;exports.AuthDivider=D;exports.AuthModal=Ge;exports.DiscordLoginButton=Ie;exports.EpicLoginButton=Ue;exports.FacebookLoginButton=Pe;exports.GitHubLoginButton=ke;exports.GoogleLoginButton=ve;exports.InstagramLoginButton=Ae;exports.LinkedInLoginButton=xe;exports.MicrosoftLoginButton=qe;exports.PasswordStrengthBar=Le;exports.PasswordStrengthIndicator=K;exports.PasswordStrengthText=_e;exports.PayPalLoginButton=De;exports.PinterestLoginButton=Ee;exports.PlayStationLoginButton=Re;exports.RedditLoginButton=$e;exports.ResetPasswordForm=ee;exports.SignInForm=J;exports.SignUpForm=Q;exports.SnapchatLoginButton=Te;exports.SocialLoginButton=p;exports.SocialLoginButtons=te;exports.SocialProviders=N;exports.SteamLoginButton=ze;exports.TiktokLoginButton=Ce;exports.TwitchLoginButton=Me;exports.TwitterLoginButton=Be;exports.WeChatLoginButton=Fe;exports.WhatsAppLoginButton=We;exports.XLoginButtin=ye;exports.XboxLoginButton=Oe;exports.YahooLoginButton=Ne;exports.authSchemas=fe;exports.calculatePasswordStrength=R;exports.createEmailSchema=C;exports.createPasswordSchema=M;exports.createSignInSchema=z;exports.createSignUpSchema=U;exports.createSocialLoginUrl=ue;exports.defaultPasswordRules=B;exports.defaultSignInSchema=he;exports.defaultSignUpSchema=ge;exports.emailSchema=G;exports.formatAuthError=de;exports.formatProviderName=Y;exports.formatSocialLoginText=ce;exports.generateRandomString=Z;exports.getProviderColor=ie;exports.getProviderIcon=se;exports.isBrowser=pe;exports.isValidEmail=le;exports.openSocialLoginPopup=me;exports.providerInfo=$;exports.requestToControllerValidation=E;exports.resetPasswordSchema=j;exports.socialProviderInfo=d;exports.useAuthEmailProp=H;exports.validateEmail=be;exports.validatePassword=we;
|
|
1
|
+
"use strict";const e=require("@tempots/dom"),q=require("./stack-dwLevGa2.cjs"),_=require("./use-form-CP6nftVl.cjs"),f=require("./modal-BmpfNL48.cjs"),X=require("@tempots/std"),m=require("./translations-C_-cObaF.cjs"),y=require("./notice-BBnSXYUc.cjs"),T=require("./input-container-BkPcNDaZ.cjs"),ae=require("./text-input-D_IxFd0M.cjs"),ne=require("./translations-qefRsdGi.cjs"),re=require("@tempots/ui"),$={google:{name:"Google",icon:"logos:google-icon",color:"#4285f4"},github:{name:"GitHub",icon:"logos:github-icon",color:"#333"},apple:{name:"Apple",icon:"logos:apple",color:"#000"},facebook:{name:"Facebook",icon:"logos:facebook",color:"#1877f2"},twitter:{name:"Twitter",icon:"logos:twitter",color:"#1da1f2"},microsoft:{name:"Microsoft",icon:"logos:microsoft-icon",color:"#00a4ef"},discord:{name:"Discord",icon:"logos:discord-icon",color:"#5865f2"},linkedin:{name:"LinkedIn",icon:"logos:linkedin-icon",color:"#0077b5"},instagram:{name:"Instagram",icon:"logos:instagram-icon",color:"#e4405f"},tiktok:{name:"TikTok",icon:"logos:tiktok-icon",color:"#000"},snapchat:{name:"Snapchat",icon:"logos:snapchat-icon",color:"#fffc00"},reddit:{name:"Reddit",icon:"logos:reddit-icon",color:"#ff4500"},pinterest:{name:"Pinterest",icon:"logos:pinterest-icon",color:"#bd081c"},twitch:{name:"Twitch",icon:"logos:twitch",color:"#9146ff"},steam:{name:"Steam",icon:"logos:steam-icon",color:"#000"},epic:{name:"Epic Games",icon:"simple-icons:epicgames",color:"#313131"},playstation:{name:"PlayStation",icon:"logos:playstation-icon",color:"#003791"},xbox:{name:"Xbox",icon:"logos:xbox-icon",color:"#107c10"},whatsapp:{name:"WhatsApp",icon:"logos:whatsapp-icon",color:"#25d366"},wechat:{name:"WeChat",icon:"logos:wechat-icon",color:"#1aad19"},amazon:{name:"Amazon",icon:"logos:amazon-icon",color:"#ff9900"},yahoo:{name:"Yahoo",icon:"logos:yahoo-icon",color:"#720e9e"},paypal:{name:"PayPal",icon:"logos:paypal",color:"#0070ba"},x:{name:"X",icon:"simple-icons:x",color:"#000"}};function Y(t){return $[t]?.name||t}function se(t){return $[t]?.icon||"mdi:account"}function ie(t){return $[t]?.color||"#666"}function ce(t,o="Continue with {provider}"){return o.replace("{provider}",Y(t))}const B={minLength:8,requireUppercase:!0,requireLowercase:!0,requireNumbers:!0,requireSymbols:!1};function le(t){return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t)}function Z(t=32){const o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let r="";for(let a=0;a<t;a++)r+=o.charAt(Math.floor(Math.random()*o.length));return r}function ue(t,o,r,a=[],c={}){const s={google:"https://accounts.google.com/oauth/authorize",github:"https://github.com/login/oauth/authorize",apple:"https://appleid.apple.com/auth/authorize",facebook:"https://www.facebook.com/v18.0/dialog/oauth",twitter:"https://twitter.com/i/oauth2/authorize",microsoft:"https://login.microsoftonline.com/common/oauth2/v2.0/authorize",discord:"https://discord.com/api/oauth2/authorize",linkedin:"https://www.linkedin.com/oauth/v2/authorization",instagram:"https://api.instagram.com/oauth/authorize",tiktok:"https://www.tiktok.com/v2/auth/authorize",snapchat:"https://accounts.snapchat.com/accounts/oauth2/authorize",reddit:"https://www.reddit.com/api/v1/authorize",pinterest:"https://api.pinterest.com/oauth/",twitch:"https://id.twitch.tv/oauth2/authorize",steam:"https://steamcommunity.com/oauth/authorize",epic:"https://auth.epicgames.com/authorize",playstation:"https://auth.api.sonyentertainmentnetwork.com/oauth/authorize",xbox:"https://login.live.com/oauth20_authorize.srf",whatsapp:"https://web.whatsapp.com/oauth/authorize",wechat:"https://open.weixin.qq.com/connect/qrconnect",amazon:"https://www.amazon.com/ap/oa",yahoo:"https://api.login.yahoo.com/oauth2/request_auth",paypal:"https://www.paypal.com/signin/authorize",x:"https://api.twitter.com/oauth2/authorize"},u={google:["openid","email","profile"],github:["user:email"],apple:["email","name"],facebook:["email"],twitter:["users.read"],microsoft:["openid","email","profile"],discord:["identify","email"],linkedin:["r_liteprofile","r_emailaddress"],instagram:["user_profile","user_media"],tiktok:["user.info.basic","user.external.id"],snapchat:["user.info.basic","user.external.id"],reddit:["identity","email"],pinterest:["read_public","read_relationships"],twitch:["openid","email","profile"],steam:["openid","email","profile"],epic:["openid","email","profile"],playstation:["openid","email","profile"],xbox:["openid","email","profile"],whatsapp:["openid","email","profile"],wechat:["openid","email","profile"],amazon:["openid","email","profile"],yahoo:["openid","email","profile"],paypal:["openid","email","profile"],x:["openid","email","profile"]},n=s[t];if(!n)throw new Error(`Unsupported provider: ${t}`);const l=a.length>0?a:u[t],i=Z(),h=new URLSearchParams({client_id:o,redirect_uri:r,scope:l.join(" "),state:i,response_type:"code",...c});return`${n}?${h.toString()}`}function me(t,o,r,a){const c=window.open(t,`${o}_login`,"width=500,height=600,scrollbars=yes,resizable=yes");if(!c){a?.(new Error("Failed to open popup window"));return}const s=setInterval(()=>{c.closed&&(clearInterval(s),a?.(new Error("Login cancelled")))},1e3),u=n=>{n.origin===window.location.origin&&(n.data.type==="SOCIAL_LOGIN_SUCCESS"?(clearInterval(s),c.close(),window.removeEventListener("message",u),r?.(n.data.result)):n.data.type==="SOCIAL_LOGIN_ERROR"&&(clearInterval(s),c.close(),window.removeEventListener("message",u),a?.(new Error(n.data.error))))};window.addEventListener("message",u)}function de(t){return t instanceof Error?t.message:typeof t=="string"?t:t&&typeof t=="object"&&"message"in t?String(t.message):"An unexpected error occurred"}function pe(){return typeof window<"u"&&typeof document<"u"}function E({task:t,message:o,onStart:r,onEnd:a}){return async c=>{r?.();const s=await _.taskToValidation({task:t!=null?()=>t(c):async()=>null,errorMessage:o,errorPath:["root"],validation:u=>u!=null?X.Validation.invalid({message:u}):X.Validation.valid});return a?.(),s}}function M(t=B,o){const r=o??m.defaultMessages;let a=f.string();return t.minLength&&(a=a.min(t.minLength,(r.passwordMinLength??m.defaultMessages.passwordMinLength)(t.minLength))),t.requireUppercase&&(a=a.regex(/[A-Z]/,r.passwordRequireUppercase??m.defaultMessages.passwordRequireUppercase)),t.requireLowercase&&(a=a.regex(/[a-z]/,r.passwordRequireLowercase??m.defaultMessages.passwordRequireLowercase)),t.requireNumbers&&(a=a.regex(/[0-9]/,r.passwordRequireNumber??m.defaultMessages.passwordRequireNumber)),t.requireSymbols&&(a=a.regex(/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/,r.passwordRequireSpecialChar??m.defaultMessages.passwordRequireSpecialChar)),t.customValidation&&(a=a.refine(c=>t.customValidation(c))),a}function C(t){const o=t??m.defaultMessages;return f.string().min(1,o.emailRequired??m.defaultMessages.emailRequired).email(o.invalidEmail??m.defaultMessages.invalidEmail)}const G=C();function z(t,o){const r=o??m.defaultMessages,a=t?M(t,o):f.string().refine(c=>c.length>0?null:r.passwordRequired??m.defaultMessages.passwordRequired);return f.object({email:C(o),password:a,rememberMe:f.boolean().default(!1)}).schema()}function U(t=B,o,r){const a=r??m.defaultMessages,c=M(t,r),s=o?.showNameField!==!1,u=o?.showConfirmPassword!==!1,n=o?.showAcceptTermsAndConditions!==!1,l={name:s?f.string().min(1,a.nameRequired??m.defaultMessages.nameRequired).optional():f.string().optional(),email:C(r),password:c,confirmPassword:u?f.string().min(1,a.confirmPasswordRequired??m.defaultMessages.confirmPasswordRequired):f.string(),acceptTerms:n?f.boolean().refine(h=>h===!0,a.acceptTermsRequired??m.defaultMessages.acceptTermsRequired):f.boolean().default(!0)},i=f.object(l);return u?i.refine(h=>h.password===h.confirmPassword?null:a.passwordsDoNotMatch??m.defaultMessages.passwordsDoNotMatch,{path:["confirmPassword"]}).schema():i.schema()}const j=f.object({email:G}).schema(),he=z(),ge=U(),fe={signIn:z,signUp:U,resetPassword:()=>j};function be(t,o){const r=o??m.defaultMessages,c=(o?C(o):G).validate(t);return c.success?null:c.errors[0]?.message||(r.invalidEmailAddress??m.defaultMessages.invalidEmailAddress)}function we(t,o=B,r){const a=r??m.defaultMessages,s=M(o,r).validate(t);return s.success?null:s.errors[0]?.message||(a.invalidPassword??m.defaultMessages.invalidPassword)}function R(t,o=B){const r={length:t.length>=(o.minLength||8),uppercase:/[A-Z]/.test(t),lowercase:/[a-z]/.test(t),numbers:/[0-9]/.test(t),symbols:/[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/.test(t),custom:o.customValidation?o.customValidation(t)===null:t.length>0},a=[!0,o.requireUppercase,o.requireLowercase,o.requireNumbers,o.requireSymbols,!!o.customValidation].filter(Boolean).length,c=[r.length,o.requireUppercase?r.uppercase:null,o.requireLowercase?r.lowercase:null,o.requireNumbers?r.numbers:null,o.requireSymbols?r.symbols:null,o.customValidation?r.custom:null].filter(n=>n===!0).length,s=a>0?Math.round(c/a*100):0;let u;return s<40?u="weak":s<60?u="fair":s<80?u="good":u="strong",{strength:u,score:s,checks:r}}const H=()=>e.localStorageProp({key:"bui_auth_email",defaultValue:null});function J({onSignIn:t,passwordRules:o,labels:r,showRememberMe:a}){const c=e.prop(!1),s=H(),u=z(o),n=_.useForm({schema:u,onSubmit:E({task:t,message:"Sign in failed",onStart:()=>{c.set(!0),n.controller.disable()},onEnd:()=>{c.set(!1),n.controller.enable()}}),initialValue:{email:"",password:""}}),{controller:l,submit:i}=n;c.on(l.setDisabled);const h=l.field("email"),b=l.field("password");return s.on(w=>{w!=null&&h.change(w)}),h.signal.on(w=>{s.value!=null&&(s.value=w)}),e.Use(m.AuthI18n,w=>e.html.form(e.attr.class("bc-auth-form__form"),e.on.submit(i),q.Stack(e.attr.class("bc-auth-form__fields"),e.Ensure(l.error,v=>y.Notice({variant:"danger",tone:"prominent",role:"alert"},e.html.div(v))),_.Control(y.EmailInput,{controller:h,label:e.coalesce(r?.emailLabel,w.$.emailLabel)}),_.Control(y.PasswordInput,{controller:b,label:e.coalesce(r?.passwordLabel,w.$.passwordLabel)}),e.When(a??!0,()=>e.html.div(e.attr.class("bc-auth-form__remember-me"),e.html.label(e.attr.class("bc-auth-form__checkbox-label"),_.CheckboxInput({value:s.map(v=>v!=null),after:e.html.span(e.coalesce(r?.rememberMeLabel,w.$.rememberMeLabel)),onChange:v=>{v?s.value=h.signal.value??"":s.value=null}}))))),T.Button({type:"submit",variant:"filled",color:"primary",loading:c,disabled:l.disabledOrHasErrors},e.attr.class("bc-auth-form__submit"),e.coalesce(r?.signInButton,w.$.signInButton))))}function K({password:t,rules:o=B,showLabel:r=!0,className:a}){const c=e.computedOf(t)(i=>!i||i.length===0?{strength:"weak",score:0,checks:{length:!1,uppercase:!1,lowercase:!1,numbers:!1,symbols:!1,custom:!1}}:R(i,o)),s=c.map(i=>i.strength),u=c.map(i=>i.score),n=c.map(i=>i.checks),l=e.computedOf(s,a)((i,h)=>["bc-password-strength",`bc-password-strength--${i}`,h].filter(Boolean).join(" "));return e.html.div(e.attr.class(l),e.html.div(e.attr.class("bc-password-strength__bar"),e.html.div(e.attr.class("bc-password-strength__fill"),e.attr.style(u.map(i=>`width: ${i}%`)))),e.When(r,()=>e.Use(m.AuthI18n,i=>e.html.div(e.attr.class("bc-password-strength__label"),e.computedOf(s,i)((h,b)=>{switch(h){case"weak":return b.passwordStrengthWeak;case"fair":return b.passwordStrengthFair;case"good":return b.passwordStrengthGood;case"strong":return b.passwordStrengthStrong;default:return b.passwordStrengthWeak}})))),e.html.div(e.attr.class("bc-password-strength__requirements"),e.When(o.minLength!==void 0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.length?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.length?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),`At least ${o.minLength} characters`))),e.When(o.requireUppercase===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.uppercase?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.uppercase?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One uppercase letter"))),e.When(o.requireLowercase===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.lowercase?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.lowercase?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One lowercase letter"))),e.When(o.requireNumbers===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.numbers?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.numbers?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One number"))),e.When(o.requireSymbols===!0,()=>e.html.div(e.attr.class("bc-password-strength__requirement"),e.attr.class(e.computedOf(n)(i=>i.symbols?"bc-password-strength__requirement--met":"")),e.html.span(e.attr.class("bc-password-strength__requirement-icon"),e.computedOf(n)(i=>i.symbols?"✓":"○")),e.html.span(e.attr.class("bc-password-strength__requirement-text"),"One special character")))))}function Le({password:t,rules:o=B,className:r}){const a=e.computedOf(t)(n=>!n||n.length===0?{strength:"weak",score:0}:R(n,o)),c=a.map(n=>n.strength),s=a.map(n=>n.score),u=e.computedOf(c,r)((n,l)=>["bc-password-strength-bar",`bc-password-strength-bar--${n}`,l].filter(Boolean).join(" "));return e.html.div(e.attr.class(u),e.html.div(e.attr.class("bc-password-strength-bar__fill"),e.attr.style(s.map(n=>`width: ${n}%`))))}function _e({password:t,rules:o=B,className:r}){const a=e.computedOf(t)(s=>!s||s.length===0?"weak":R(s,o).strength),c=e.computedOf(a,r)((s,u)=>["bc-password-strength-text",`bc-password-strength-text--${s}`,u].filter(Boolean).join(" "));return e.Use(m.AuthI18n,s=>e.html.span(e.attr.class(c),e.computedOf(a,s)((u,n)=>{switch(u){case"weak":return n.passwordStrengthWeak;case"fair":return n.passwordStrengthFair;case"good":return n.passwordStrengthGood;case"strong":return n.passwordStrengthStrong;default:return n.passwordStrengthWeak}})))}function Q({passwordRules:t,labels:o,initialEmail:r,initialName:a,showPasswordStrength:c,onSignUp:s,showNameField:u,showConfirmPassword:n,showAcceptTermsAndConditions:l,termsAndConditions:i}){const h=e.prop(!1),b=t||B,w=typeof n=="boolean"?n:n!=null?n.value:!1,v=typeof l=="boolean"?l:l!=null?l.value:!1,O=U(b,{showNameField:u!==!1,showConfirmPassword:w,showAcceptTermsAndConditions:v}),x=_.useForm({schema:O,onSubmit:E({task:s!=null?L=>s({email:L.email,password:L.password,name:L.name,acceptTerms:L.acceptTerms}):void 0,message:"Sign up failed",onStart:()=>{h.set(!0),x.controller.disable()},onEnd:()=>{h.set(!1),x.controller.enable()}}),initialValue:{name:a??"",email:r??"",password:"",confirmPassword:"",acceptTerms:!1}}),{controller:k,submit:W}=x;h.on(k.setDisabled);const F=k.field("name"),V=k.field("email"),P=k.field("password"),S=k.field("confirmPassword"),I=k.field("acceptTerms");return e.Use(m.AuthI18n,L=>e.html.form(e.attr.class("bc-auth-form__form"),e.on.submit(W),q.Stack(e.attr.class("bc-auth-form__fields"),e.Ensure(k.error,g=>y.Notice({variant:"danger",tone:"prominent",role:"alert"},e.html.div(g))),e.When(u!==!1,()=>_.Control(ae.TextInput,{controller:F.transform(g=>g??"",g=>g===""?void 0:g),label:e.coalesce(o?.nameLabel,L.$.nameLabel)})),_.Control(y.EmailInput,{controller:V,label:e.coalesce(o?.emailLabel,L.$.emailLabel)}),_.Control(y.PasswordInput,{controller:P,label:e.coalesce(o?.passwordLabel,L.$.passwordLabel)}),e.When(c??!1,()=>K({password:P.signal,rules:b,showLabel:!0})),e.When(n??!1,()=>_.Control(y.PasswordInput,{controller:S,label:e.coalesce(o?.confirmPasswordLabel,L.$.confirmPasswordLabel)})),e.When(l??!1,()=>e.html.div(e.attr.class("bc-auth-form__terms"),e.html.label(e.attr.class("bc-auth-form__checkbox-label"),_.CheckboxInput({value:I.signal.map(g=>g??!1),onChange:g=>I.change(g)}),e.html.span(i||e.coalesce(o?.acceptTermsLabel,L.$.acceptTermsLabel))),e.When(I.errorVisible,()=>e.html.div(e.attr.class("bc-auth-form__field-error"),I.error.map(g=>g||"")))))),T.Button({type:"submit",variant:"filled",color:"primary",loading:h,disabled:k.disabledOrHasErrors},e.attr.class("bc-auth-form__submit"),e.coalesce(o?.signUpButton,L.$.signUpButton))))}function ee({onResetPassword:t,labels:o={}}){const r=H(),a=e.prop(!1),c=_.useForm({schema:j,onSubmit:E({task:t,message:"Reset password failed",onStart:()=>{a.set(!0),c.controller.disable()},onEnd:()=>{a.set(!1),c.controller.enable()}}),initialValue:{email:""}}),{controller:s,submit:u}=c;a.on(s.setDisabled);const n=s.field("email");return r.on(l=>{l!=null&&n.change(l)}),e.Use(m.AuthI18n,l=>e.html.form(e.attr.class("bc-auth-form__form"),e.Ensure(s.error,i=>y.Notice({variant:"danger",tone:"prominent",role:"alert"},e.html.div(i))),e.html.p(e.attr.class("bc-auth-form__description"),e.coalesce(o?.resetPasswordDescription,l.$.resetPasswordDescription)),e.on.submit(u),q.Stack(e.attr.class("bc-auth-form__fields"),_.Control(y.EmailInput,{controller:n,label:e.coalesce(o?.emailLabel,l.$.emailLabel)})),T.Button({loading:a,type:"submit",variant:"filled",color:"primary",disabled:s.disabledOrHasErrors},e.attr.class("bc-auth-form__submit"),e.coalesce(o?.resetPasswordButton,l.$.resetPasswordButton))))}function p({provider:t,onClick:o,size:r="md",name:a,icon:c,color:s,flow:u,labels:n}){const l=async()=>{if(o)try{u==="popup"?await o():await o()}catch(i){console.error(`Social login error for ${t} (${u||"redirect"} flow):`,i)}};return T.Button({type:"button",variant:"filled",size:r,color:s,onClick:l,roundedness:"full"},e.attr.class("bc-social-login-button"),e.attr.class(e.computedOf(t)(i=>`bc-social-login-button--${i}`)),e.html.span(e.attr.class("bc-social-login-button__inner"),e.html.span(e.attr.class("bc-social-login-button__icon"),ne.Icon({icon:c,size:r},e.attr.class("bc-social-login-button__icon-inner"))),e.Use(m.AuthI18n,i=>e.html.span(e.attr.class("bc-social-login-button__label"),e.bind(e.coalesce(n?.continueWithProvider,i.$.continueWithProvider))(a)))))}function te({providers:t,onProviderClick:o,size:r="md",className:a}){return q.Stack(e.attr.class("bc-social-login-buttons"),e.attr.class(a),e.ForEach(t,c=>p({provider:c.$.provider,flow:c.$.flow,color:c.map(({provider:s})=>d[s].color),name:c.map(({provider:s})=>d[s].name),icon:c.map(({provider:s})=>d[s].icon),onClick:async()=>{o&&await o(c.$.provider.value)},size:r})))}const d={google:{name:"Google",icon:"logos:google-icon",color:"red"},github:{name:"GitHub",icon:"logos:github-icon",color:"black"},apple:{name:"Apple",icon:"logos:apple",color:"stone"},facebook:{name:"Facebook",icon:"logos:facebook",color:"blue"},twitter:{name:"Twitter",icon:"logos:twitter",color:"sky"},x:{name:"X",icon:"logos:x",color:"zinc"},microsoft:{name:"Microsoft",icon:"logos:microsoft-icon",color:"amber"},discord:{name:"Discord",icon:"logos:discord-icon",color:"indigo"},linkedin:{name:"LinkedIn",icon:"logos:linkedin-icon",color:"cyan"},instagram:{name:"Instagram",icon:"logos:instagram-icon",color:"fuchsia"},tiktok:{name:"TikTok",icon:"logos:tiktok-icon",color:"teal"},snapchat:{name:"Snapchat",icon:"simple-icons:snapchat",color:"yellow"},reddit:{name:"Reddit",icon:"logos:reddit-icon",color:"orange"},pinterest:{name:"Pinterest",icon:"logos:pinterest",color:"rose"},twitch:{name:"Twitch",icon:"logos:twitch",color:"purple"},steam:{name:"Steam",icon:"logos:steam",color:"slate"},epic:{name:"Epic Games",icon:"simple-icons:epicgames",color:"neutral"},playstation:{name:"PlayStation",icon:"simple-icons:playstation",color:"violet"},xbox:{name:"Xbox",icon:"simple-icons:xbox",color:"green"},whatsapp:{name:"WhatsApp",icon:"logos:whatsapp-icon",color:"emerald"},wechat:{name:"WeChat",icon:"simple-icons:wechat",color:"lime"},amazon:{name:"Amazon",icon:"simple-icons:amazon",color:"red"},yahoo:{name:"Yahoo",icon:"logos:yahoo",color:"rose"},paypal:{name:"PayPal",icon:"logos:paypal",color:"blue"}},ve=t=>p({...t,...d.google,provider:"google"}),ke=t=>p({...t,...d.github,provider:"github"}),Se=t=>p({...t,...d.apple,provider:"apple"}),Pe=t=>p({...t,...d.facebook,provider:"facebook"}),ye=t=>p({...t,...d.x,provider:"x"}),Be=t=>p({...t,...d.twitter,provider:"twitter"}),qe=t=>p({...t,...d.microsoft,provider:"microsoft"}),Ie=t=>p({...t,...d.discord,provider:"discord"}),xe=t=>p({...t,...d.linkedin,provider:"linkedin"}),Ae=t=>p({...t,...d.instagram,provider:"instagram"}),Ce=t=>p({...t,...d.tiktok,provider:"tiktok"}),Te=t=>p({...t,...d.snapchat,provider:"snapchat"}),$e=t=>p({...t,...d.reddit,provider:"reddit"}),Ee=t=>p({...t,...d.pinterest,provider:"pinterest"}),Me=t=>p({...t,...d.twitch,provider:"twitch"}),ze=t=>p({...t,...d.steam,provider:"steam"}),Ue=t=>p({...t,...d.epic,provider:"epic"}),Re=t=>p({...t,...d.playstation,provider:"playstation"}),Oe=t=>p({...t,...d.xbox,provider:"xbox"}),We=t=>p({...t,...d.whatsapp,provider:"whatsapp"}),Fe=t=>p({...t,...d.wechat,provider:"wechat"}),Ve=t=>p({...t,...d.amazon,provider:"amazon"}),Ne=t=>p({...t,...d.yahoo,provider:"yahoo"}),De=t=>p({...t,...d.paypal,provider:"paypal"});function N({providers:t,onSocialLogin:o}){return q.Stack(te({providers:t,onProviderClick:o}))}function oe({mode:t,socialProviders:o,initialName:r,initialEmail:a,passwordRules:c,showRememberMe:s,showSocialDivider:u,showPasswordStrength:n,labels:l,onSignIn:i,onSignUp:h,onResetPassword:b,onModeChange:w,onSocialLogin:v,showContainer:O,showNameField:x,showConfirmPassword:k,showAcceptTermsAndConditions:W,termsAndConditions:F},...V){const P=t!=null?e.Value.deriveProp(t):e.prop("signin");return P.on(S=>w?.(S)),e.Use(m.AuthI18n,S=>{function I(){const A=e.coalesce(l?.hasAccountLink,S.$.hasAccountLink);return e.html.button(e.attr.type("button"),e.attr.class("bc-auth-form__link"),e.on.click(()=>P.set("signin")),A)}function L(){return e.html.button(e.attr.type("button"),e.attr.class("bc-auth-form__link"),e.on.click(()=>P.set("signup")),e.coalesce(l?.noAccountLink,S.$.noAccountLink))}function g(){return e.html.button(e.attr.type("button"),e.attr.class("bc-auth-form__link"),e.on.click(()=>P.set("reset-password")),e.coalesce(l?.forgotPasswordLink,S.$.forgotPasswordLink))}return e.html.div(re.classes({"bc-auth-container":!0,"bc-auth-container--styled":e.Value.map(O??!0,A=>A)}),e.attr.class(P.map(A=>`bc-auth-container--${A}`)),e.attr.class("bc-auth-form"),e.OneOfValue(P,{signin:()=>e.Fragment(e.html.h2(e.attr.class("bc-auth-form__title"),e.coalesce(l?.signInTitle,S.$.signInTitle)),o!=null?e.Fragment(N({providers:o,onSocialLogin:v}),e.When(u??!1,D)):null,J({onSignIn:i,showRememberMe:s,passwordRules:c,labels:{emailLabel:l?.emailLabel,passwordLabel:l?.passwordLabel,rememberMeLabel:l?.rememberMeLabel,signInButton:l?.signInButton,forgotPasswordLink:l?.forgotPasswordLink,noAccountLink:l?.noAccountLink}}),q.Stack(e.attr.class("bc-auth-form__footer"),L(),g())),signup:()=>e.Fragment(e.html.h2(e.attr.class("bc-auth-form__title"),e.coalesce(l?.signUpTitle,S.$.signUpTitle)),o!=null?e.Fragment(N({providers:o,onSocialLogin:v}),e.When(u??!1,D)):null,Q({labels:{nameLabel:l?.nameLabel,emailLabel:l?.emailLabel,passwordLabel:l?.passwordLabel,confirmPasswordLabel:l?.confirmPasswordLabel,acceptTermsLabel:l?.acceptTermsLabel,signUpButton:l?.signUpButton,hasAccountLink:l?.hasAccountLink},initialEmail:a,initialName:r,onSignUp:h,passwordRules:c,showPasswordStrength:n,showNameField:x,showConfirmPassword:k,showAcceptTermsAndConditions:W,termsAndConditions:F}),q.Stack(e.attr.class("bc-auth-form__footer"),I())),"reset-password":()=>e.Fragment(e.html.h2(e.attr.class("bc-auth-form__title"),e.coalesce(l?.resetPasswordTitle,S.$.resetPasswordTitle)),ee({labels:{backToSignInLink:l?.backToSignInLink,emailLabel:l?.emailLabel,resetPasswordButton:l?.resetPasswordButton,resetPasswordDescription:l?.resetPasswordDescription},onResetPassword:b}),q.Stack(e.attr.class("bc-auth-form__footer"),I()))}),...V)})}function Ge(t){return f.Modal({size:"sm",dismissable:!0,showCloseButton:!0},(o,r)=>t(a=>o({body:oe({showContainer:!1,...a}),header:e.Use(m.AuthI18n,c=>e.coalesce(a.modalTitle,c.$.authenticationTitle))})))}function D({labels:t,className:o}={}){return e.html.div(e.attr.class("bc-auth-divider"),e.attr.class(o),e.html.div(e.attr.class("bc-auth-divider__line")),e.Use(m.AuthI18n,r=>e.html.span(e.attr.class("bc-auth-divider__text"),e.coalesce(t?.text,r.$.orDivider))),e.html.div(e.attr.class("bc-auth-divider__line")))}exports.AmazonLoginButton=Ve;exports.AppleLoginButton=Se;exports.AuthContainer=oe;exports.AuthDivider=D;exports.AuthModal=Ge;exports.DiscordLoginButton=Ie;exports.EpicLoginButton=Ue;exports.FacebookLoginButton=Pe;exports.GitHubLoginButton=ke;exports.GoogleLoginButton=ve;exports.InstagramLoginButton=Ae;exports.LinkedInLoginButton=xe;exports.MicrosoftLoginButton=qe;exports.PasswordStrengthBar=Le;exports.PasswordStrengthIndicator=K;exports.PasswordStrengthText=_e;exports.PayPalLoginButton=De;exports.PinterestLoginButton=Ee;exports.PlayStationLoginButton=Re;exports.RedditLoginButton=$e;exports.ResetPasswordForm=ee;exports.SignInForm=J;exports.SignUpForm=Q;exports.SnapchatLoginButton=Te;exports.SocialLoginButton=p;exports.SocialLoginButtons=te;exports.SocialProviders=N;exports.SteamLoginButton=ze;exports.TiktokLoginButton=Ce;exports.TwitchLoginButton=Me;exports.TwitterLoginButton=Be;exports.WeChatLoginButton=Fe;exports.WhatsAppLoginButton=We;exports.XLoginButtin=ye;exports.XboxLoginButton=Oe;exports.YahooLoginButton=Ne;exports.authSchemas=fe;exports.calculatePasswordStrength=R;exports.createEmailSchema=C;exports.createPasswordSchema=M;exports.createSignInSchema=z;exports.createSignUpSchema=U;exports.createSocialLoginUrl=ue;exports.defaultPasswordRules=B;exports.defaultSignInSchema=he;exports.defaultSignUpSchema=ge;exports.emailSchema=G;exports.formatAuthError=de;exports.formatProviderName=Y;exports.formatSocialLoginText=ce;exports.generateRandomString=Z;exports.getProviderColor=ie;exports.getProviderIcon=se;exports.isBrowser=pe;exports.isValidEmail=le;exports.openSocialLoginPopup=me;exports.providerInfo=$;exports.requestToControllerValidation=E;exports.resetPasswordSchema=j;exports.socialProviderInfo=d;exports.useAuthEmailProp=H;exports.validateEmail=be;exports.validatePassword=we;
|