masks-server 0.8.0 → 0.9.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.
- checksums.yaml +4 -4
- data/app/controllers/concerns/masks/server/client_authentication.rb +1 -1
- data/app/controllers/concerns/masks/server/resource_token.rb +12 -3
- data/app/controllers/masks/server/application_controller.rb +8 -6
- data/app/controllers/masks/server/authorize_controller.rb +1 -1
- data/app/controllers/masks/server/logins_controller.rb +2 -1
- data/app/controllers/masks/server/registrations_controller.rb +9 -1
- data/app/controllers/masks/server/scim/metadata_controller.rb +1 -1
- data/app/controllers/masks/server/tokens_controller.rb +1 -1
- data/app/graphql/masks/server/manage/mutations/add_app.rb +1 -1
- data/app/helpers/masks/server/account_helper.rb +1 -1
- data/app/models/masks/server/actor.rb +3 -3
- data/app/models/masks/server/client.rb +46 -6
- data/app/models/masks/server/handshake.rb +12 -6
- data/app/models/masks/server/login.rb +3 -6
- data/app/models/masks/server/pending_handshake.rb +2 -1
- data/app/models/masks/server/session.rb +7 -5
- data/app/policies/masks/server/exchange_policy.rb +1 -1
- data/app/policies/masks/server/grant_checks.rb +1 -1
- data/app/views/masks/server/account/_info.html.erb +1 -1
- data/app/views/masks/server/account/_organizations.html.erb +4 -4
- data/app/views/masks/server/application/_actor.html.erb +27 -0
- data/app/views/masks/server/handshakes/refused.html.erb +1 -1
- data/app/views/masks/server/handshakes/show.html.erb +1 -1
- data/app/views/masks/server/logins/_choose_organization.html.erb +1 -1
- data/app/views/masks/server/logins/_consent.html.erb +1 -1
- data/app/views/masks/server/sessions/confirm.html.erb +1 -1
- data/config/locales/de/account.yml +2 -2
- data/config/locales/de/application.yml +1 -1
- data/config/locales/de/events.yml +5 -5
- data/config/locales/de/manage/groups.yml +1 -1
- data/config/locales/de/manage/organization.yml +1 -1
- data/config/locales/en/account.yml +2 -2
- data/config/locales/en/application.yml +1 -1
- data/config/locales/en/events.yml +5 -5
- data/config/locales/en/manage/groups.yml +1 -1
- data/config/locales/en/manage/organization.yml +1 -1
- data/config/locales/es/account.yml +2 -2
- data/config/locales/es/application.yml +1 -1
- data/config/locales/es/events.yml +5 -5
- data/config/locales/es/manage/groups.yml +1 -1
- data/config/locales/es/manage/organization.yml +1 -1
- data/config/locales/fr/account.yml +2 -2
- data/config/locales/fr/application.yml +1 -1
- data/config/locales/fr/events.yml +5 -5
- data/config/locales/fr/manage/groups.yml +1 -1
- data/config/locales/fr/manage/organization.yml +1 -1
- data/db/migrate/20261013010000_add_handshake_return_to_to_clients.rb +5 -0
- data/lib/generators/masks/server/install/install_generator.rb +2 -2
- data/lib/masks/server/browser_access.rb +35 -0
- data/lib/masks/server/configuration.rb +3 -3
- data/lib/masks/server/engine.rb +1 -0
- data/lib/masks/server/schema_reference.rb +17 -4
- data/lib/masks/server.rb +1 -0
- data/public/masks-assets/.vite/manifest.json +7 -7
- data/public/masks-assets/assets/app-B27oPUll.css +2 -0
- data/public/masks-assets/assets/{initial-D99AzFOd.js → initial-C1GpCiEh.js} +2 -2
- data/public/masks-assets/assets/{initial-D99AzFOd.js.map → initial-C1GpCiEh.js.map} +1 -1
- data/public/masks-assets/assets/login-C_6igRZ3.js +4 -0
- data/public/masks-assets/assets/login-C_6igRZ3.js.map +1 -0
- data/public/masks-assets/assets/manage-Dbfiy3Mj.js +567 -0
- data/public/masks-assets/assets/manage-Dbfiy3Mj.js.map +1 -0
- data/version.txt +1 -1
- metadata +11 -9
- data/app/views/masks/server/application/_person.html.erb +0 -27
- data/public/masks-assets/assets/app-DoQZrM_J.css +0 -2
- data/public/masks-assets/assets/login-CNs1UpxJ.js +0 -4
- data/public/masks-assets/assets/login-CNs1UpxJ.js.map +0 -1
- data/public/masks-assets/assets/manage-isLCrWiU.js +0 -567
- data/public/masks-assets/assets/manage-isLCrWiU.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"login-CNs1UpxJ.js","names":["root","root","$.state","$.proxy","$.get","root","$.from_html","root_1","$.prop","$.derived","$.child","$.sibling","$.clsx","$.get","$.delegate","root","$.from_html","root_1","root_2","root_3","$.prop","$.derived","$.child","$.sibling","$.only_child","$.set_text","$.first_child","$.set_class","$.get","root","$.from_html","root_1","root_2","$.derived","$.first_child","$.get","$.only_child","$.clsx","$.sibling","$.child","$.delegate","root","$.from_html","root_1","$.prop","$.derived","$.comment","$.first_child","$.only_child","$.set_text","$.get","root","$.from_html","root_1","$.state","$.derived","$.get","$.first_child","$.sibling","$.child","$.only_child","$.set","root","$.from_html","$.child","$.only_child","$.sibling","$.delegate","root","$.from_html","root_1","$.comment","$.first_child","$.set_attribute","$.only_child","$.set_text","root","$.from_html","root_1","$.prop","$.derived","$.get","$.only_child","$.set_class","$.set_attribute","root","$.from_html","root_1","$.prop","$.derived","$.first_child","$.child","$.only_child","$.sibling","$.get","$.set_class","root","$.from_html","root_1","root_2","$.prop","$.state","$.derived","$.comment","$.first_child","$.child","$.get","$.sibling","$.only_child","$.set_text","root","$.from_html","root_1","root_2","root_3","root_4","root_5","root_6","root_7","root_8","root_9","root_10","root_11","root_12","$.noop","$.child","$.sibling","$.derived","$.get","$.proxy","$.state","$.first_child","$.only_child","$.set_text","$.set_class","$.to_array","$.set","$.delegate","root","$.from_html","$.state","$.derived","$.get","$.first_child","$.sibling","$.child","$.only_child","$.set","root_1","$.from_html","root_2","root_3","root_4","root_5","$.prop","$.child","$.sibling","$.only_child","$.set_text","root","root","$.from_html","root_1","$.state","$.derived","$.first_child","$.get","$.sibling","$.child","$.only_child","$.set_attribute","$.delegate","root","$.from_html","root_1","$.comment","$.first_child","$.set_attribute","$.only_child","$.set_text","root","$.from_html","root_1","root_2","root_3","root_4","root_5","root_6","root_7","root_8","root_9","root_10","$.derived","$.get","$.first_child","$.child","$.sibling","$.only_child","$.set_text","$.to_array","$.index","root","$.from_html","$.state","$.derived","$.get","$.child","$.only_child","$.sibling","$.set","$.prop","$.state","$.derived","$.get","root","$.from_html","$.first_child","$.derived","$.get","$.sibling","root","$.from_html","$.derived","$.comment","$.first_child","$.get","root","$.from_html","$.derived","$.comment","$.first_child","$.child","$.only_child","$.sibling","$.set_text","$.get","root","$.from_html","root_1","$.state","$.derived","$.get","$.first_child","$.sibling","$.child","$.only_child","$.set","$.delegate","$.prop","$.derived","$.get","root","$.from_html","root_1","root_2","$.state","$.derived","$.get","$.first_child","$.sibling","$.child","$.only_child","$.set_text","$.set","root","$.from_html","root_1","root_2","$.derived","$.first_child","$.get","$.sibling","$.only_child","$.set_text","root","$.from_html","$.state","reset","$.derived","$.get","$.first_child","$.sibling","$.child","$.only_child","$.set","root","$.from_html","root_1","root_2","root_3","root_4","root_5","root_6","root_7","$.comment","$.first_child","$.only_child","$.set_text","$.derived","$.get","$.child","$.sibling","$.set","$.state","$.to_array","root","$.from_html","root_1","$.derived","$.get","$.child","$.sibling","root","$.from_html","root_1","root_2","$.prop","$.comment","$.first_child","$.derived","$.get","$.sibling","$.child","$.only_child","$.set_text","root","$.from_html","$.state","$.derived","$.get","$.first_child","$.sibling","$.child","$.only_child","$.set","root","$.from_html","$.first_child","$.derived","$.get","$.sibling","$.only_child","$.set_text","root","$.from_html","root_1","root_2","$.derived","$.get","$.first_child","$.sibling","$.only_child","$.set_text","root","$.from_html","root_1","root_2","$.derived","$.first_child","$.get","$.sibling","$.only_child","$.set_text","root","$.from_html","root_1","root_2","root_3","root_4","root_5","root_6","root_7","root_8","$.derived","$.get","$.state","$.proxy","$.child","$.sibling","$.only_child","$.set_class","$.set","$.set_text","$.delegate","root","$.from_html","root_1","$.derived","$.get","$.state","$.child","$.sibling","$.to_array","$.only_child","$.set","$.set_text","$.first_child","$.set_class","$.delegate","root","$.from_html","root_1","$.derived","$.state","$.proxy","$.get","$.child","$.sibling","$.only_child","$.set_class","$.set","$.from_html","SignupCredentials","SetupConfigure","AcceptInvitation","ProveEmail","ResetPassword","FirstFactor","EmailCode","SecondFactor","BackupCode","ConfirmEmail","ConfirmPhone","AddPhone","AwaitingApproval","ChooseOrganization","$.derived","$.state","$.get","$.first_child","$.sibling","$.child","$.comment","$.set","$.set_class","enrol","available","refused","autofillable","settle","assert","append","get","html","if_block","key","child","template_effect","delegate","sibling","first_child","delegated","from_html","mount","event","index","user_effect","untrack","user_pre_effect","set","proxy","state","push","clsx","remove_input_defaults","noop","user_derived","set_attribute","to_array","prop","pop","comment","set_text","bind_value","reset","set_value","initials","bind_this","only_child","onMount","bind_checked","initial","autofocus","each","component","set_class","PLACEHOLDER","interpolate","values","text","name","whole","translator","found","source","root$34","UNNAVIGABLE","navigable","location","csrf","send","response","url","body","createLogin","options","auth","loading","failed","last","dispatch","quiet","method","held","updates","root$33","root_1$25","Action","$$props","busy","ready","working","plain","fit","grow","onclick","type","shown","classes","button","node","consequent","span","$$anchor","$$render","$$args","root$32","root_1$24","root_2$13","root_3$6","Head","lede","cap","tone","running","div","span_1","h1","text_1","node_1","consequent_1","fragment","em","text_2","node_2","consequent_2","p","text_3","root$31","root_1$23","root_2$12","Warnings","messages","message","div_1","$0","$1","root$30","root_1$22","Hint","hint","root$29","root_1$21","Accept_invitation","password","invitation","minimum","valid","onsubmit","form","label","input","label_1","input_1","label_2","span_2","input_2","node_3","$$value","root$28","Identified","root$27","root_1$20","TenantMark","img","alternate","root$26","root_1$19","Steps","steps","nav","step","place","root$25","root_1$18","SignupHead","mark","tenant","signingUp","alternate_1","root$24","root_1$17","root_2$11","PasskeyButton","enrolling","params","unusable","offered","start","asked","offer","credential","error","p_1","root$23","root_1$16","root_2$10","root_3$5","root_4$5","root_5$5","root_6$4","root_7$4","root_8$3","root_9$2","root_10$2","root_11$1","root_12$1","Enrol","codeForm","complete","turnOn","submitted","entered","enrolment","otp","passkeys","codes","offers","secured","issued","sendable","passkeyable","kept","copied","anything","row","code","origin","host","saved","lines","copy","done","fragment_1","node_5","div_2","classes_1","node_6","fragment_2","div_3","a","div_4","span_3","text_4","node_7","node_8","consequent_3","div_5","classes_2","span_4","text_5","span_5","text_6","node_9","node_10","factor","$$array","$$item","div_6","classes_3","span_6","text_7","node_11","consequent_4","span_7","text_8","consequent_5","fragment_3","span_8","text_9","node_12","alternate_2","fragment_4","span_9","text_10","node_13","node_14","consequent_8","div_7","classes_4","span_10","text_11","node_15","consequent_6","fragment_5","ol","li","text_12","span_11","text_13","div_8","text_14","a_1","text_15","$2","consequent_7","span_12","text_16","alternate_3","span_13","text_17","form_1","node_16","consequent_9","span_14","text_18","node_17","root$22","Backup_code","token","root_1$15","root_2$9","root_3$4","root_4$4","root_5$4","Person","signOut","root$21","root_1$14","Choose_organization","chosen","organizations","client","choose","organization","ul","root$20","root_1$13","ClientMark","CONSEQUENTIAL","consequential","scope","ranked","hot","rest","entry","scopes","root$19","root_1$12","root_2$8","root_3$3","root_4$3","root_5$3","root_6$3","root_7$3","root_8$2","root_9$1","root_10$1","root_11","root_12","root_13","Consent","audience","details","links","node_4","description","li_1","$$array_1","li_2","resource","ul_1","li_3","dl","detail","value","$$array_2","dt","dd","$$array_3","root$18","CodeForm","submit","Resend","sent","resend","root$17","Email_code","root$16","ProviderButtons","providers","provider","root$15","Otherwise","passkey","root$14","root_1$11","First_factor","offersPassword","emailing","PromptHeader","title","root$13","root_1$10","root_2$7","Identify","identifier","live","autofill","root$12","root_1$9","root_2$6","Prove_email","inbox","root$11","Reset_password","reset$1","root$10","root_1$8","root_2$5","root_3$2","root_4$2","root_5$2","root_6$2","root_7$2","Second_factor","help","stuck","recovery","trust","remember","useApp","methods","codeFactors","approval","approving","passkeyReady","asking","why","timer","stopped","check","fragment_6","fragment_9","node_18","node_19","to","fragment_10","node_20","consequent_11","fragment_11","node_21","consequent_10","node_22","consequent_12","node_23","consequent_13","node_24","root$9","root_1$7","Settled","root$8","root_1$6","root_2$4","ConfirmHead","h2","root$7","Add_phone","phone","root$6","Awaiting_approval","root$5","root_1$5","root_2$3","Confirm_email","confirmation","linked","root$4","root_1$4","root_2$2","Confirm_phone","BATCH","encoder","solved","leadingZeros","bytes","digest","count","byte","search","nonce","offset","bits","solve","work","counter","root$3","root_1$3","root_2$1","root_3$1","root_4$1","root_5$1","root_6$1","root_7$1","root_8$1","Signup","signup","asks","fixed","firstRun","docs","nickname","email","person","proving","filled","needs","field","proof","label_3","input_3","label_4","classes_5","input_4","root$2","root_1$2","root_2","root_3","root_4","root_5","root_6","root_7","root_8","root_9","root_10","Signup_credentials","credentials","submitLabel","rows","way","choosing","typing","passkeying","creating","long","matched","createPasskey","button_1","p_2","p_3","p_4","root$1","root_1$1","Setup_configure","called","$3","root","root_1","Login","prompts","login","Prompt","frame","entering","leaving","still","height","surface","paired","column","from","Prompt_1","target"],"sources":["../../../../server/app/frontend/lib/copy.js","../../../../server/app/frontend/lib/root.js","../../../../server/app/frontend/lib/login.svelte.js","../../../../server/app/frontend/shared/Action.svelte","../../../../server/app/frontend/shared/Head.svelte","../../../../server/app/frontend/shared/Warnings.svelte","../../../../server/app/frontend/shared/Hint.svelte","../../../../server/app/frontend/prompts/accept-invitation.svelte","../../../../server/app/frontend/shared/Identified.svelte","../../../../server/app/frontend/shared/TenantMark.svelte","../../../../server/app/frontend/shared/Steps.svelte","../../../../server/app/frontend/shared/SignupHead.svelte","../../../../server/app/frontend/shared/PasskeyButton.svelte","../../../../server/app/frontend/prompts/enrol.svelte","../../../../server/app/frontend/prompts/backup-code.svelte","../../../../server/app/frontend/shared/Person.svelte","../../../../server/app/frontend/prompts/choose-organization.svelte","../../../../server/app/frontend/shared/ClientMark.svelte","../../../../server/app/frontend/lib/scopes.js","../../../../server/app/frontend/prompts/consent.svelte","../../../../server/app/frontend/shared/CodeForm.svelte","../../../../server/app/frontend/shared/Resend.svelte","../../../../server/app/frontend/prompts/email-code.svelte","../../../../server/app/frontend/shared/ProviderButtons.svelte","../../../../server/app/frontend/shared/Otherwise.svelte","../../../../server/app/frontend/prompts/first-factor.svelte","../../../../server/app/frontend/shared/PromptHeader.svelte","../../../../server/app/frontend/prompts/identify.svelte","../../../../server/app/frontend/prompts/prove-email.svelte","../../../../server/app/frontend/prompts/reset-password.svelte","../../../../server/app/frontend/prompts/second-factor.svelte","../../../../server/app/frontend/prompts/settled.svelte","../../../../server/app/frontend/shared/ConfirmHead.svelte","../../../../server/app/frontend/prompts/add-phone.svelte","../../../../server/app/frontend/prompts/awaiting-approval.svelte","../../../../server/app/frontend/prompts/confirm-email.svelte","../../../../server/app/frontend/prompts/confirm-phone.svelte","../../../../server/app/frontend/lib/work.js","../../../../server/app/frontend/prompts/signup.svelte","../../../../server/app/frontend/prompts/signup-credentials.svelte","../../../../server/app/frontend/prompts/setup-configure.svelte","../../../../server/app/frontend/Login.svelte","../../../../server/app/frontend/entrypoints/login.js"],"sourcesContent":["const PLACEHOLDER = /%\\{(\\w+)\\}/g;\n\nfunction interpolate(text, values) {\n if (!values) return text;\n\n return text.replace(PLACEHOLDER, (whole, name) =>\n Object.hasOwn(values, name) ? String(values[name]) : whole,\n );\n}\n\nexport function translator(source) {\n return (key, values) => {\n const found = source()?.[key];\n\n return typeof found === \"string\" ? interpolate(found, values) : \"\";\n };\n}\n","export const root =\n document.querySelector('meta[name=\"masks-root\"]')?.content ?? \"\";\n","import { translator } from \"./copy.js\";\nimport { root } from \"./root.js\";\n\nconst UNNAVIGABLE = new Set([\n \"javascript:\",\n \"data:\",\n \"vbscript:\",\n \"file:\",\n \"blob:\",\n]);\n\nconst navigable = (location) => {\n if (typeof location !== \"string\" || location === \"\") return false;\n\n try {\n return !UNNAVIGABLE.has(new URL(location, window.location.href).protocol);\n } catch {\n return false;\n }\n};\n\nconst csrf = () =>\n document.querySelector('meta[name=\"csrf-token\"]')?.content ?? \"\";\n\nasync function send(url, method, body) {\n const response = await fetch(url, {\n method,\n credentials: \"same-origin\",\n headers: {\n \"Content-Type\": \"application/json\",\n Accept: \"application/json\",\n \"X-CSRF-Token\": csrf(),\n },\n body: body ? JSON.stringify(body) : undefined,\n });\n\n if (!response.ok && response.status !== 422 && response.status !== 429) {\n throw new Error(`login failed: ${response.status}`);\n }\n\n return response.json();\n}\n\nexport function createLogin(initial, options = {}) {\n const url = options.url ?? `${root}/login`;\n\n let auth = $state(initial);\n let loading = $state(false);\n let failed = $state(false);\n let last = null;\n\n async function dispatch(method, body, { quiet = false } = {}) {\n if (quiet && loading) return auth;\n\n if (!quiet) {\n loading = true;\n failed = false;\n last = [method, body];\n }\n\n try {\n const held = await send(\n url,\n method,\n auth.rid ? { rid: auth.rid, ...body } : body,\n );\n\n if (quiet && loading) return auth;\n\n auth = held;\n\n if (navigable(auth.redirectTo)) {\n window.location.assign(auth.redirectTo);\n }\n\n return auth;\n } catch {\n if (!quiet) failed = true;\n\n return auth;\n } finally {\n if (!quiet) loading = false;\n }\n }\n\n const t = translator(() => auth.copy);\n\n return {\n t,\n get auth() {\n return auth;\n },\n get loading() {\n return loading;\n },\n get failed() {\n return failed;\n },\n get prompt() {\n return auth.prompt;\n },\n get backupCodes() {\n return auth.backupCodes;\n },\n get rememberable() {\n return auth.rememberable;\n },\n get consent() {\n return auth.consent;\n },\n get client() {\n return auth.client;\n },\n get actor() {\n return auth.actor;\n },\n warns(key) {\n return (auth.warnings ?? []).includes(key);\n },\n submit(event, updates = {}) {\n return dispatch(\"POST\", { event, ...updates });\n },\n startOver() {\n return dispatch(\"DELETE\");\n },\n poll(event, updates = {}) {\n return dispatch(\"POST\", { event, ...updates }, { quiet: true });\n },\n retry() {\n return last ? dispatch(...last) : Promise.resolve(auth);\n },\n };\n}\n","<script>\nlet {\n login,\n busy = false,\n ready = true,\n label,\n working = null,\n quiet = false,\n plain = false,\n fit = false,\n grow = false,\n onclick = null,\n type = \"button\",\n} = $props();\n\nconst held = $derived(busy || login.loading);\nconst shown = $derived(busy && working ? working : label);\n\nconst classes = $derived(\n [\n \"action\",\n quiet && \"action-quiet\",\n plain && \"action-plain\",\n fit && \"action-fit\",\n grow && \"action-grow\",\n busy && \"action-busy\",\n ]\n .filter(Boolean)\n .join(\" \"),\n);\n</script>\n\n<button\n {type}\n {onclick}\n class={classes}\n disabled={!ready || held}\n aria-busy={busy || undefined}\n>\n {#if busy}\n <span class=\"spinner action-mark\"></span>\n {/if}\n {shown}\n</button>\n","<script>\nlet {\n login,\n title,\n name = null,\n lede = null,\n cap = null,\n tone = null,\n busy = false,\n} = $props();\n\nconst running = $derived(tone === null && (busy || login.loading));\n</script>\n\n<div class=\"prompt-head\">\n <span\n class=\"pulse\"\n class:pulse-on={running}\n class:pulse-done={tone === \"done\"}\n class:pulse-bad={tone === \"bad\"}\n aria-hidden=\"true\"\n ></span>\n\n {#if cap}\n <span class=\"record-cap\">{cap}</span>\n {/if}\n\n <h1 class=\"prompt-title\">\n {title}{#if name} <em>{name}</em>{/if}\n </h1>\n\n {#if lede}\n <p class=\"prompt-lede\">{lede}</p>\n {/if}\n</div>\n","<script>\nlet { login } = $props();\n\nconst messages = $derived((login.auth.messages ?? []).filter((message) => !message.field));\n</script>\n\n{#each messages as message (message.key)}\n <div class={message.tone} role=\"alert\">{message.text}</div>\n{/each}\n\n{#if login.failed}\n <div class=\"note note-warn recover\" role=\"alert\">\n <span>{login.t(\"unreachable\")}</span>\n\n <button\n type=\"button\"\n class=\"textlink\"\n disabled={login.loading}\n onclick={() => login.retry()}\n >\n {login.loading ? login.t(\"checking\") : login.t(\"try_again\")}\n </button>\n </div>\n{/if}\n","<script>\nlet { login, field, hint = null } = $props();\n\nconst message = $derived((login.auth.messages ?? []).find((held) => held.field === field));\n</script>\n\n{#if message}\n <span class=\"field-hint field-hint-bad\" role=\"alert\">{message.text}</span>\n{:else if hint}\n <span class=\"field-hint\">{hint}</span>\n{/if}\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Hint from \"../shared/Hint.svelte\";\nimport Head from \"../shared/Head.svelte\";\n\nlet { login } = $props();\n\nlet password = $state(\"\");\n\nconst invitation = $derived(login.auth.invitation ?? {});\nconst minimum = $derived(invitation.minimum ?? 8);\n\nconst valid = $derived(password.length >= minimum);\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (valid && !login.loading) {\n login.submit(\"accept-invitation\", { password });\n }\n}\n</script>\n\n<Head\n {login}\n title={login.t(\"title\")}\n lede={invitation.invitedBy\n ? login.t(\"invited_by\", { nickname: invitation.invitedBy })\n : null}\n/>\n\n<form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"account\")}</span>\n <input\n type=\"text\"\n class=\"control\"\n autocomplete=\"username\"\n value={invitation.nickname ?? \"\"}\n readonly\n />\n </label>\n\n {#if invitation.email}\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"email\")}</span>\n <input type=\"email\" class=\"control\" value={invitation.email} readonly />\n </label>\n {/if}\n\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"password\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"password\"\n name=\"password\"\n class=\"control\"\n autocomplete=\"new-password\"\n autofocus\n bind:value={password}\n />\n <Hint {login} field=\"password\" hint={login.t(\"hint\", { minimum })} />\n </label>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"working\")}\n />\n</form>\n","<script>\nlet { login } = $props();\n</script>\n\n<div class=\"whom\">\n <span class=\"whom-name\">{login.auth.identifier}</span>\n\n <button\n type=\"button\"\n class=\"textlink\"\n disabled={login.loading}\n onclick={() => login.startOver()}\n >\n {login.t(\"not_you\")}\n </button>\n</div>\n","<script>\nimport { initial } from \"../lib/initial.js\";\n\nlet { tenant } = $props();\n</script>\n\n{#if tenant?.logo}\n <img src={tenant.logo} alt=\"\" class=\"auth-mark auth-mark-logo\" />\n{:else}\n <span class=\"auth-mark\" aria-hidden=\"true\">{initial(tenant?.name ?? \"\")}</span>\n{/if}\n","<script>\nlet { login, steps = [], at } = $props();\n</script>\n\n<nav class=\"tabset\" aria-label={login.t(\"tabs\")}>\n {#each steps as step, index (step)}\n {@const place = index + 1}\n <span\n class=\"tabset-tab\"\n class:tabset-done={place < at}\n class:tabset-now={place === at}\n aria-current={place === at ? \"step\" : undefined}>\n {login.t(`tab_${step}`)}\n </span>\n {/each}\n</nav>\n","<script>\nimport TenantMark from \"./TenantMark.svelte\";\nimport { initial } from \"../lib/initial.js\";\nimport Head from \"./Head.svelte\";\nimport Steps from \"./Steps.svelte\";\n\nlet { login, at, mark = \"\" } = $props();\n\nconst tenant = $derived(login.auth.tenant?.name ?? \"\");\nconst signingUp = $derived(login.auth.signingUp ?? { steps: [] });\n\n</script>\n\n<div class=\"auth-pair\">\n <span class=\"auth-mark auth-mark-client\" class:auth-mark-pending={!mark.trim()} aria-hidden=\"true\"\n >{initial(mark)}</span>\n <span class=\"auth-wire\"></span>\n {#if signingUp.firstRun}\n <img src=\"/masks-public/icon.svg\" alt=\"\" class=\"auth-mark auth-mark-rose\" />\n {:else}\n <TenantMark tenant={login.auth.tenant} />\n {/if}\n</div>\n\n{#if signingUp.firstRun}\n <Head {login} title={login.t(\"setup_title\")} name={tenant} cap={login.t(\"setup_cap\")} />\n{:else}\n <Head {login} title={login.t(\"signup_title\")} name={tenant} />\n{/if}\n\n<Steps {login} steps={signingUp.steps} at={at ?? signingUp.steps.length} />\n","<script>\nimport Action from \"./Action.svelte\";\nimport { assert, available, enrol, refused } from \"../lib/passkey.js\";\n\nlet { login, enrolling = false, label = null, params = {} } = $props();\n\nconst DELIBERATE = 500;\n\nlet busy = $state(false);\nlet unusable = $state(null);\n\nconst offered = $derived((enrolling || Boolean(login.auth.passkey?.offered)) && available());\n\nasync function start() {\n busy = true;\n unusable = null;\n\n let asked = null;\n\n try {\n const offer = await login.submit(enrolling ? \"enrol:passkey-challenge\" : \"passkey:challenge\", {});\n const options = enrolling ? offer.enrolment?.passkeys?.options : offer.passkey?.options;\n\n if (!options) {\n unusable = login.t(\"passkey_unoffered\");\n return;\n }\n\n asked = performance.now();\n\n const credential = enrolling ? await enrol(options) : await assert(options);\n\n await login.submit(enrolling ? \"enrol:passkey\" : \"passkey:verify\", { ...params, passkey: credential });\n } catch (error) {\n if (!refused(error) || (asked !== null && performance.now() - asked < DELIBERATE)) {\n unusable = login.t(\"passkey_unusable\");\n }\n } finally {\n busy = false;\n }\n}\n</script>\n\n{#if offered}\n <div class=\"flow-tight\">\n <Action\n {login}\n quiet\n {busy}\n label={label ?? login.t(\"use_passkey\")}\n working={login.t(\"waiting_for_passkey\")}\n onclick={start}\n />\n\n {#if busy}\n <p class=\"aside\">{login.t(\"passkey_hint\")}</p>\n {/if}\n\n {#if unusable}\n <p class=\"aside aside-bad\" role=\"alert\">{unusable}</p>\n {/if}\n </div>\n{/if}\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Identified from \"../shared/Identified.svelte\";\nimport SignupHead from \"../shared/SignupHead.svelte\";\nimport PasskeyButton from \"../shared/PasskeyButton.svelte\";\nimport { available } from \"../lib/passkey.js\";\n\nlet { login } = $props();\n\nconst enrolment = $derived(login.auth.enrolment ?? {});\nconst otp = $derived(enrolment.otp ?? {});\nconst passkeys = $derived(enrolment.passkeys ?? { count: 0 });\nconst codes = $derived(enrolment.backupCodes ?? {});\nconst signingUp = $derived(Boolean(login.auth.signingUp));\nconst offers = $derived(enrolment.offers ?? { otp: true, passkey: true, backupCodes: true });\nconst secured = $derived(!enrolment.required);\nconst issued = $derived(codes.issued ?? []);\nconst sendable = $derived(Object.entries(enrolment.codes ?? {}));\n\nconst passkeyable = $derived(offers.passkey && available());\n\nlet entered = $state({ \"enrol:otp\": \"\", \"enrol:code\": \"\" });\nlet kept = $state(false);\nlet copied = $state(false);\n\nconst ready = $derived(secured && (issued.length === 0 || kept));\nconst anything = $derived(\n Boolean(otp.enabled || passkeys.count > 0 || sendable.some(([, row]) => row.enabled)),\n);\nconst lede = $derived(enrolment.required ? login.t(\"lede\") : login.t(\"lede_optional\"));\n\nconst complete = (name) => entered[name].replace(/\\D/g, \"\").length === 6;\n\nfunction turnOn(submitted, name) {\n submitted.preventDefault();\n\n if (!complete(name) || login.loading) return;\n\n const code = entered[name];\n entered[name] = \"\";\n\n login.submit(name, { code });\n}\n\nconst origin = typeof location === \"undefined\" ? \"\" : location.origin;\nconst host = typeof location === \"undefined\" ? \"masks\" : location.hostname;\n\nconst saved = $derived.by(() => {\n const lines = [\n login.t(\"backup_codes_file\", { account: login.actor?.identifier ?? \"\", origin }),\n login.t(\"backup_codes_hint\"),\n \"\",\n ...issued,\n \"\",\n ];\n\n return `data:text/plain;charset=utf-8,${encodeURIComponent(lines.join(\"\\n\"))}`;\n});\n\nasync function copy() {\n try {\n await navigator.clipboard.writeText(issued.join(\"\\n\"));\n copied = true;\n } catch {\n copied = false;\n }\n}\n\nfunction done(event) {\n event.preventDefault();\n\n if (ready && !login.loading) login.submit(\"enrol:done\", { kept });\n}\n</script>\n\n{#snippet codeForm(name)}\n <form class=\"flow-tight\" onsubmit={(submitted) => turnOn(submitted, name)} aria-busy={login.loading || undefined}>\n <input\n type=\"text\"\n name=\"code\"\n class=\"control control-code\"\n inputmode=\"numeric\"\n pattern=\"[0-9 ]*\"\n autocomplete=\"one-time-code\"\n maxlength=\"7\"\n spellcheck=\"false\"\n aria-label={login.t(\"code\")}\n placeholder={login.t(\"code\")}\n bind:value={entered[name]}\n />\n\n <Action {login} type=\"submit\" quiet ready={complete(name)} label={login.t(\"turn_on\")} />\n </form>\n{/snippet}\n\n<div class=\"flow\" class:setup={signingUp} class:setup-ready={signingUp && ready}>\n {#if signingUp}\n <SignupHead {login} at={2} mark={login.actor?.identifier ?? \"\"} />\n\n <p class=\"aside\">{lede}</p>\n {:else}\n <Head\n {login}\n title={login.t(\"title\")}\n {lede}\n />\n\n <Identified {login} />\n {/if}\n\n <div class=\"slab\">\n {#if offers.otp}\n <div class=\"ledger-row ledger-step\" class:ledger-step-done={otp.enabled}>\n <span class=\"ledger-label\">{login.t(\"otp\")}</span>\n\n {#if otp.enabled}\n <span class=\"ledger-value\">{login.t(\"otp_on\")}</span>\n {:else}\n <div class=\"enrol\">\n <a class=\"enrol-qr\" href={otp.uri} aria-label={login.t(\"open\")}>{@html otp.qr}</a>\n <div class=\"enrol-key\">\n <span class=\"field-hint\">{login.t(\"scan_hint\")}</span>\n <span class=\"aside-mono enrol-secret\">{otp.secret}</span>\n </div>\n </div>\n\n {@render codeForm(\"enrol:otp\")}\n {/if}\n </div>\n {/if}\n\n {#if passkeyable}\n <div class=\"ledger-row ledger-step\" class:ledger-step-done={passkeys.verified}>\n <span class=\"ledger-label\">{login.t(\"passkeys\")}</span>\n <span class=\"field-hint\">\n {passkeys.count > 0\n ? login.t(\"passkeys_some\", { count: passkeys.count })\n : login.t(\"passkeys_none\")}\n </span>\n\n <PasskeyButton\n {login}\n enrolling\n label={passkeys.count > 0 ? login.t(\"add_another_passkey\") : login.t(\"add_passkey\")}\n />\n </div>\n {/if}\n\n {#each sendable as [factor, row] (factor)}\n <div class=\"ledger-row ledger-step\" class:ledger-step-done={row.enabled}>\n <span class=\"ledger-label\">{login.t(`codes_${factor}`)}</span>\n\n {#if row.enabled}\n <span class=\"ledger-value\">{login.t(\"otp_on\")}</span>\n {:else if row.sent}\n <span class=\"field-hint\">{login.t(\"sent_to\", { to: row.to })}</span>\n\n {@render codeForm(\"enrol:code\")}\n {:else}\n <span class=\"field-hint\">{login.t(`codes_${factor}_hint`, { to: row.to })}</span>\n\n <Action\n {login}\n quiet\n label={login.t(\"send_code\")}\n onclick={() => login.submit(\"enrol:code-send\", { factor })}\n />\n {/if}\n </div>\n {/each}\n\n {#if offers.backupCodes}\n <div class=\"ledger-row ledger-step\" class:ledger-step-done={issued.length > 0 || codes.remaining > 0}>\n <span class=\"ledger-label\">{login.t(\"backup_codes\")}</span>\n\n {#if issued.length > 0}\n <ol class=\"codes\">\n {#each issued as held (held)}\n <li class=\"aside-mono\">{held}</li>\n {/each}\n </ol>\n <span class=\"field-hint\">{login.t(\"backup_codes_hint\")}</span>\n <div class=\"codes-actions\">\n <button type=\"button\" class=\"textlink\" onclick={copy}>\n {copied ? login.t(\"copied\") : login.t(\"copy\")}\n </button>\n <a class=\"textlink\" href={saved} download=\"backup-codes-{host}.txt\">{login.t(\"download\")}</a>\n </div>\n {:else if codes.remaining > 0}\n <span class=\"field-hint\">{login.t(\"backup_codes_left\", { count: codes.remaining })}</span>\n {:else}\n <span class=\"field-hint\">{login.t(\"backup_codes_waiting\")}</span>\n {/if}\n </div>\n {/if}\n </div>\n\n <form class=\"flow\" onsubmit={done}>\n {#if issued.length > 0}\n <label class=\"check\">\n <input type=\"checkbox\" name=\"kept\" required bind:checked={kept} />\n <span>{login.t(\"kept\")}</span>\n </label>\n {/if}\n\n <Action\n {login}\n type=\"submit\"\n {ready}\n busy={login.loading}\n label={anything || enrolment.required ? login.t(\"done\") : login.t(\"skip\")}\n working={login.t(\"working\")}\n />\n </form>\n</div>\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Identified from \"../shared/Identified.svelte\";\n\nlet { login } = $props();\n\nlet code = $state(\"\");\n\nconst valid = $derived(code.trim().length >= 8);\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (!valid || login.loading) return;\n\n const entered = code;\n code = \"\";\n\n login.submit(\"backup\", { backup_code: entered });\n}\n</script>\n\n<Head {login} title={login.t(\"title\")} />\n\n<Identified {login} />\n\n<form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"code\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"text\"\n name=\"backup_code\"\n class=\"control control-mono\"\n autocomplete=\"one-time-code\"\n spellcheck=\"false\"\n autocapitalize=\"off\"\n autofocus\n bind:value={code}\n />\n <span class=\"field-hint\">{login.t(\"hint\")}</span>\n </label>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"checking\")}\n />\n</form>\n\n<Action\n {login}\n plain\n label={login.t(\"use_authenticator\")}\n onclick={() => login.submit(\"use-authenticator\", {})}\n/>\n","<script module>\nimport { root } from \"../lib/root.js\";\n\nconst token = document.querySelector('meta[name=\"csrf-token\"]')?.content ?? \"\";\n</script>\n\n<script>\nlet { person, signOut = null } = $props();\n</script>\n\n<div class=\"person\">\n <img src={person.avatar} width=\"44\" height=\"44\" alt=\"\" class=\"avatar person-avatar\" />\n\n <div class=\"person-who\">\n <span class=\"person-name\">{person.name}</span>\n\n {#if person.details.length || person.note}\n <span class=\"person-sub\">\n {person.details.join(\" · \")}\n {#if person.note}\n <span class=\"person-note\">{person.note}</span>\n {/if}\n </span>\n {/if}\n\n {#if person.role}\n <span class=\"person-role\">{person.role}</span>\n {/if}\n </div>\n\n {#if signOut}\n <form class=\"signout\" method=\"post\" action={`${root}/logout`}>\n <input type=\"hidden\" name=\"authenticity_token\" value={token} />\n <button type=\"submit\" class=\"textlink\">{signOut}</button>\n </form>\n {/if}\n</div>\n","<script>\nimport { initials } from \"../lib/initial.js\";\nimport Head from \"../shared/Head.svelte\";\nimport Person from \"../shared/Person.svelte\";\n\nlet { login } = $props();\n\nlet chosen = $state(null);\n\nconst organizations = $derived(login.auth.organizations ?? []);\nconst client = $derived(login.client?.name ?? \"\");\n\nasync function choose(organization) {\n chosen = organization.key;\n\n try {\n await login.submit(\"organization\", { organization: organization.key });\n } finally {\n chosen = null;\n }\n}\n</script>\n\n<Head\n {login}\n title={client ? login.t(\"title_to\", { client }) : login.t(\"title\")}\n lede={login.t(\"lede\")}\n/>\n\n{#if login.auth.person}\n <Person person={login.auth.person} signOut={login.t(\"sign_out\")} />\n{/if}\n\n<ul class=\"org-picks\" aria-label={login.t(\"title\")}>\n {#each organizations as organization (organization.key)}\n <li>\n <button\n type=\"button\"\n class=\"org-pick\"\n disabled={login.loading}\n aria-busy={chosen === organization.key || undefined}\n aria-label={login.t(\"as\", { organization: organization.name, role: organization.role })}\n onclick={() => choose(organization)}\n >\n <span class=\"org-pick-mark\" aria-hidden=\"true\">{initials(organization.name)}</span>\n <span class=\"org-pick-name\">{organization.name}</span>\n <span class=\"org-pick-role\">{chosen === organization.key ? login.t(\"working\") : organization.role}</span>\n </button>\n </li>\n {/each}\n</ul>\n","<script>\nimport { initial } from \"../lib/initial.js\";\n\nlet { client } = $props();\n</script>\n\n{#if client?.logo}\n <img src={client.logo} alt=\"\" class=\"auth-mark auth-mark-client auth-mark-logo\" referrerpolicy=\"no-referrer\" />\n{:else}\n <span class=\"auth-mark auth-mark-client\" aria-hidden=\"true\">{initial(client?.name)}</span>\n{/if}\n","const CONSEQUENTIAL =\n /(:write|:command|:exec|:delete|:admin)$|^offline_access$|^masks:delegate:./;\n\nfunction consequential(scope) {\n return CONSEQUENTIAL.test(String(scope));\n}\n\nexport function ranked(scopes) {\n const hot = [];\n const rest = [];\n\n for (const entry of scopes ?? []) {\n (consequential(entry[0]) ? hot : rest).push(entry);\n }\n\n return { hot, rest };\n}\n","<script>\nimport TenantMark from \"../shared/TenantMark.svelte\";\nimport Action from \"../shared/Action.svelte\";\nimport ClientMark from \"../shared/ClientMark.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Person from \"../shared/Person.svelte\";\nimport { ranked } from \"../lib/scopes.js\";\n\nlet { login } = $props();\n\nconst scopes = $derived(ranked(login.consent?.scopes ?? []));\nconst audience = $derived(login.consent?.audience ?? []);\nconst details = $derived(login.consent?.details ?? []);\nconst client = $derived(login.client?.name ?? \"\");\nconst links = $derived(\n [\n [\"site\", login.t(\"site\", { client })],\n [\"terms\", login.t(\"terms\")],\n [\"privacy\", login.t(\"privacy\")],\n ].filter(([key]) => login.client?.[key]),\n);\n\n</script>\n\n<div class=\"auth-pair\">\n <ClientMark client={login.client} />\n <span class=\"auth-wire\"></span>\n <TenantMark tenant={login.auth.tenant} />\n</div>\n\n<Head {login} title={login.t(\"title\", { client })} />\n\n{#if login.auth.person}\n <Person person={login.auth.person} signOut={login.t(\"sign_out\")} />\n{/if}\n\n<div class=\"slab\">\n <div class=\"ledger-row\">\n <span class=\"ledger-label\">{login.t(\"access\")}</span>\n\n {#if !scopes.hot.length && !scopes.rest.length}\n <p class=\"empty\">{login.t(\"no_access\")}</p>\n {/if}\n\n <ul class=\"grant-scopes\">\n {#each scopes.hot as [scope, description] (scope)}\n <li class=\"grant-scope grant-scope-hot\">\n <span>{description}</span>\n <span class=\"chip-key\">{scope}</span>\n </li>\n {/each}\n\n {#if scopes.hot.length && scopes.rest.length}\n <li class=\"grant-scope-split\"></li>\n {/if}\n\n {#each scopes.rest as [scope, description] (scope)}\n <li class=\"grant-scope\">\n <span>{description}</span>\n <span class=\"chip-key\">{scope}</span>\n </li>\n {/each}\n </ul>\n </div>\n\n {#if audience.length}\n <div class=\"ledger-row\">\n <span class=\"ledger-label\">{login.t(\"audience\")}</span>\n {#each audience as resource (resource)}\n <span class=\"ledger-value aside-mono\">{resource}</span>\n {/each}\n </div>\n {/if}\n\n {#if details.length}\n <div class=\"ledger-row\">\n <span class=\"ledger-label\">{login.t(\"details\")}</span>\n <ul class=\"grant-scopes\">\n {#each details as detail, index (index)}\n <li class=\"grant-scope grant-scope-hot grant-detail\">\n <span>{detail.label}</span>\n <span class=\"chip-key\">{detail.type}</span>\n {#if detail.fields.length}\n <dl class=\"grant-fields\">\n {#each detail.fields as [name, value] (name)}\n <dt>{name}</dt>\n <dd class=\"aside-mono\">{value}</dd>\n {/each}\n </dl>\n {/if}\n </li>\n {/each}\n </ul>\n </div>\n {/if}\n\n {#if login.client?.returnsTo}\n <div class=\"ledger-row\">\n <span class=\"ledger-label\">{login.t(\"returns_to\")}</span>\n <span class=\"ledger-value aside-mono\">{login.client.returnsTo}</span>\n </div>\n {/if}\n</div>\n\n{#if links.length}\n <p class=\"aside client-links\">\n {#each links as [key, label] (key)}\n <a class=\"textlink\" href={login.client[key]} rel=\"noopener noreferrer\" target=\"_blank\">{label}</a>\n {/each}\n </p>\n{/if}\n\n<div class=\"action-row\">\n <Action\n {login}\n grow\n busy={login.loading}\n label={login.t(\"allow\")}\n working={login.t(\"working\")}\n onclick={() => login.submit(\"consent\", { approve: \"yes\" })}\n />\n\n <Action\n {login}\n quiet\n fit\n label={login.t(\"deny\")}\n onclick={() => login.submit(\"decline\", {})}\n />\n</div>\n","<script>\nimport Action from \"./Action.svelte\";\n\nlet { login, event } = $props();\n\nlet code = $state(\"\");\n\nconst valid = $derived(code.replace(/\\D/g, \"\").length === 6);\n\nfunction submit() {\n if (!valid || login.loading) return;\n\n const entered = code;\n code = \"\";\n\n login.submit(event, { code: entered });\n}\n\nfunction onsubmit(submitted) {\n submitted.preventDefault();\n submit();\n}\n\n$effect(() => {\n if (valid) submit();\n});\n</script>\n\n<form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"code\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"text\"\n name=\"code\"\n class=\"control control-code\"\n inputmode=\"numeric\"\n pattern=\"[0-9]*\"\n autocomplete=\"one-time-code\"\n maxlength=\"6\"\n spellcheck=\"false\"\n autofocus\n bind:value={code}\n />\n </label>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"checking\")}\n />\n</form>\n","<script>\nimport Action from \"./Action.svelte\";\n\nlet { login, event = \"confirm:resend\", ready = null } = $props();\n\nlet sent = $state(false);\n\nasync function resend() {\n await login.submit(event, {});\n sent = true;\n}\n</script>\n\n<Action\n {login}\n plain\n ready={ready ?? login.auth.confirmation?.resendable !== false}\n label={sent ? login.t(\"sent_again\") : login.t(\"send_again\")}\n onclick={resend}\n/>\n","<script>\nimport CodeForm from \"../shared/CodeForm.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Identified from \"../shared/Identified.svelte\";\nimport Resend from \"../shared/Resend.svelte\";\n\nlet { login } = $props();\n</script>\n\n<Head {login} title={login.t(\"title\")} lede={login.t(\"lede\", { identifier: login.identifier ?? \"\" })} />\n\n<Identified {login} />\n\n<CodeForm {login} event=\"email-code:verify\" />\n\n<Resend {login} event=\"email-code:send\" ready={login.auth.emailCode?.resendable !== false} />\n","<script>\nimport Action from \"./Action.svelte\";\n\nlet { login } = $props();\n\nconst providers = $derived(login.auth.providers ?? []);\n</script>\n\n{#if providers.length}\n <div class=\"providers\">\n {#each providers as provider (provider.key)}\n <Action\n {login}\n quiet\n label={login.t(\"continue_with\", { provider: provider.name })}\n onclick={() => login.submit(\"provider\", { provider: provider.key })}\n />\n {/each}\n </div>\n{/if}\n","<script>\nimport PasskeyButton from \"./PasskeyButton.svelte\";\nimport ProviderButtons from \"./ProviderButtons.svelte\";\nimport { available } from \"../lib/passkey.js\";\n\nlet { login } = $props();\n\nconst passkey = $derived(Boolean(login.auth.passkey?.offered) && available());\nconst providers = $derived((login.auth.providers ?? []).length > 0);\n</script>\n\n{#if passkey || providers}\n <div class=\"otherwise\">\n <span class=\"providers-rule\">{login.t(\"or\")}</span>\n\n <PasskeyButton {login} />\n\n <ProviderButtons {login} />\n </div>\n{/if}\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Identified from \"../shared/Identified.svelte\";\nimport Otherwise from \"../shared/Otherwise.svelte\";\n\nlet { login } = $props();\n\nlet password = $state(\"\");\n\nconst valid = $derived(password.length > 0);\nconst offersPassword = $derived(Boolean(login.auth.password?.offered));\nconst emailing = $derived(Boolean(login.auth.emailCode));\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (valid && !login.loading) {\n login.submit(\"password\", { password }).then(() => {\n password = \"\";\n });\n }\n}\n</script>\n\n<Head {login} title={offersPassword || !emailing ? login.t(\"title\") : login.t(\"title_code\")} />\n\n<Identified {login} />\n\n{#if offersPassword}\n<form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <div class=\"field\">\n <div class=\"field-line\">\n <label class=\"field-label\" for=\"password\">{login.t(\"password\")}</label>\n\n <button\n type=\"button\"\n class=\"textlink\"\n disabled={login.loading}\n onclick={() => login.submit(\"forgot-password\", {})}\n >\n {login.t(\"forgot\")}\n </button>\n </div>\n\n <!-- svelte-ignore a11y_autofocus -->\n <input\n id=\"password\"\n type=\"password\"\n name=\"password\"\n class=\"control\"\n autocomplete=\"current-password\"\n autofocus\n bind:value={password}\n />\n </div>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"checking\")}\n />\n</form>\n{/if}\n\n{#if emailing}\n <Action\n {login}\n quiet={offersPassword}\n label={offersPassword ? login.t(\"email_me\") : login.t(\"email_only\")}\n onclick={() => login.submit(\"email-code:send\", {})}\n />\n{/if}\n\n<Otherwise {login} />\n","<script>\nimport Head from \"./Head.svelte\";\n\nlet { login, tone = null } = $props();\n\nconst client = $derived(login.auth.client);\n\nconst title = $derived(\n client?.name\n ? login.t(\"heading_to\", { client: client.name })\n : login.t(\"heading\"),\n);\n</script>\n\n<Head {login} {title} {tone} />\n","<script>\nimport { onMount } from \"svelte\";\nimport { autofill, autofillable, settle } from \"../lib/passkey.js\";\nimport Action from \"../shared/Action.svelte\";\nimport Otherwise from \"../shared/Otherwise.svelte\";\nimport ProviderButtons from \"../shared/ProviderButtons.svelte\";\nimport PromptHeader from \"../shared/PromptHeader.svelte\";\n\nlet { login } = $props();\n\nlet identifier = $state(\"\");\n\nconst valid = $derived(identifier.trim().length > 0);\n\nonMount(() => {\n let live = true;\n\n (async () => {\n if (!login.auth.passkey?.offered || !(await autofillable()) || !live) return;\n\n const offer = await login.poll(\"passkey:challenge\");\n const options = offer.passkey?.options;\n if (!options || !live) return;\n\n const passkey = await autofill(options);\n if (live) await login.submit(\"passkey:verify\", { passkey });\n })().catch(() => {});\n\n return () => {\n live = false;\n settle();\n };\n});\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (valid && !login.loading) {\n login.submit(\"identify\", { identifier });\n }\n}\n</script>\n\n<PromptHeader {login} />\n\n{#if login.auth.identifies !== false}\n <form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"identifier\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"text\"\n name=\"identifier\"\n class=\"control\"\n autocomplete=\"username webauthn\"\n autocapitalize=\"none\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n autofocus\n bind:value={identifier}\n />\n {#if login.auth.signupOpen}\n <span class=\"field-hint\">{login.t(\"signup_hint\")}</span>\n {/if}\n </label>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"checking\")}\n />\n </form>\n\n <Otherwise {login} />\n{:else}\n <ProviderButtons {login} />\n{/if}\n","<script>\nimport CodeForm from \"../shared/CodeForm.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Identified from \"../shared/Identified.svelte\";\nimport Resend from \"../shared/Resend.svelte\";\n\nlet { login } = $props();\n\nconst inbox = $derived(login.auth.inbox ?? {});\n</script>\n\n<Head {login} title={login.t(\"title\")} lede={inbox.mails ? login.t(\"lede\", { email: inbox.email }) : null} />\n\n<Identified {login} />\n\n{#if inbox.mails}\n <CodeForm {login} event=\"inbox:verify\" />\n <Resend {login} event=\"inbox:resend\" ready={inbox.resendable !== false} />\n{:else}\n <p class=\"note note-warn\" role=\"alert\">{login.t(\"no_mailer\")}</p>\n{/if}\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Hint from \"../shared/Hint.svelte\";\nimport Head from \"../shared/Head.svelte\";\n\nlet { login } = $props();\n\nlet password = $state(\"\");\n\nconst reset = $derived(login.auth.reset ?? {});\nconst minimum = $derived(reset.minimum ?? 8);\n\nconst valid = $derived(password.length >= minimum);\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (valid && !login.loading) {\n login.submit(\"reset-password\", { password });\n }\n}\n</script>\n\n<Head {login} title={login.t(\"title\")} />\n\n<form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"account\")}</span>\n <input\n type=\"text\"\n class=\"control\"\n autocomplete=\"username\"\n value={reset.nickname ?? \"\"}\n readonly\n />\n </label>\n\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"password\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"password\"\n name=\"password\"\n class=\"control\"\n autocomplete=\"new-password\"\n autofocus\n bind:value={password}\n />\n <Hint {login} field=\"password\" hint={login.t(\"hint\", { minimum })} />\n </label>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"working\")}\n />\n</form>\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Head from \"../shared/Head.svelte\";\nimport Identified from \"../shared/Identified.svelte\";\nimport PasskeyButton from \"../shared/PasskeyButton.svelte\";\nimport { available } from \"../lib/passkey.js\";\n\nlet { login } = $props();\n\nlet code = $state(\"\");\nlet remember = $state(false);\nlet useApp = $state(false);\n\nconst methods = $derived(login.auth.secondFactors ?? { otp: true });\nconst codeFactors = $derived(login.auth.codeFactors ?? {});\nconst sendable = $derived(Object.keys(codeFactors).length > 0);\nconst approval = $derived(login.auth.approval);\nconst approving = $derived(approval?.state === \"waiting\");\nconst sent = $derived(useApp ? null : login.auth.codeSent);\nconst valid = $derived(code.replace(/\\D/g, \"\").length === 6);\nconst passkeyReady = $derived(\n Boolean(methods.passkey && login.auth.passkey?.offered) && available(),\n);\nconst asking = $derived(Boolean(sent) || methods.otp);\nconst stuck = $derived(\n !asking &&\n !passkeyReady &&\n !login.backupCodes &&\n !methods.trustedDevice &&\n !sendable,\n);\nconst recovery = $derived(login.auth.recovery ?? {});\nconst why = $derived.by(() => {\n if (login.auth.codesWithheld?.includes(\"email\")) return \"stuck_inbox\";\n if (!methods.passkey) return \"stuck_nothing\";\n\n return globalThis.isSecureContext ? \"stuck_unsupported\" : \"stuck_insecure\";\n});\n\nfunction submit() {\n if (!valid || login.loading) return;\n\n const entered = code;\n code = \"\";\n\n login.submit(sent ? \"code:verify\" : \"otp\", { code: entered, remember });\n}\n\nfunction onsubmit(event) {\n event.preventDefault();\n submit();\n}\n\nfunction send(factor) {\n useApp = false;\n login.submit(\"code:send\", { factor });\n}\n\n$effect(() => {\n if (valid) submit();\n});\n\n$effect(() => {\n if (!approving) return;\n\n const held = remember;\n let timer;\n let stopped = false;\n\n const check = async () => {\n if (!document.hidden) await login.poll(\"approval:check\", { remember: held });\n if (!stopped) timer = setTimeout(check, 2000);\n };\n\n timer = setTimeout(check, 2000);\n\n return () => {\n stopped = true;\n clearTimeout(timer);\n };\n});\n</script>\n\n{#snippet help()}\n {#if recovery.requested}\n <p class=\"aside\" role=\"status\">{login.t(\"recovery_requested\")}</p>\n {:else}\n <Action\n {login}\n plain\n label={login.t(stuck ? \"recovery_ask\" : \"recovery_request\")}\n onclick={() => login.submit(\"recovery:request\", {})}\n />\n {/if}\n{/snippet}\n\n{#snippet trust()}\n {#if login.rememberable}\n <label class=\"check\">\n <input type=\"checkbox\" bind:checked={remember} />\n <span>{login.t(\"trust\", { duration: login.auth.trustFor })}</span>\n </label>\n {/if}\n{/snippet}\n\n{#if stuck}\n <Head {login} tone=\"bad\" title={login.t(\"halted\")} lede={login.t(why)} />\n\n <Identified {login} />\n\n {@render help()}\n\n <Action\n {login}\n quiet\n label={login.t(\"start_over\")}\n working={login.t(\"working\")}\n busy={login.loading}\n onclick={() => login.startOver()}\n />\n{:else}\n <Head\n {login}\n title={login.t(asking ? \"title\" : \"title_passkey\")}\n lede={sent ? login.t(\"sent_to\", { to: sent.to }) : null}\n />\n\n <Identified {login} />\n\n {#if asking}\n <form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"code\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"text\"\n name=\"code\"\n class=\"control control-code\"\n inputmode=\"numeric\"\n pattern=\"[0-9 ]*\"\n autocomplete=\"one-time-code\"\n maxlength=\"7\"\n spellcheck=\"false\"\n autofocus\n bind:value={code}\n />\n </label>\n\n {@render trust()}\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"checking\")}\n />\n </form>\n {/if}\n\n {#if passkeyReady}\n {#if !asking}\n {@render trust()}\n {/if}\n\n <PasskeyButton {login} params={{ remember }} />\n {/if}\n\n {#if !asking && !passkeyReady && (approving || sendable)}\n {@render trust()}\n {/if}\n\n {#if approving}\n <div class=\"slab flow-tight\" aria-live=\"polite\">\n <span class=\"aside-mono approval-code\">{approval.code}</span>\n <span class=\"field-hint\">{login.t(\"approval_code\")}</span>\n <span class=\"aside\">{login.t(\"approval_waiting\")}</span>\n </div>\n {:else if methods.trustedDevice}\n {#if approval?.state === \"expired\"}\n <p class=\"aside aside-bad\" role=\"alert\">{login.t(\"approval_expired\")}</p>\n {/if}\n\n <Action\n {login}\n plain\n label={approval ? login.t(\"approval_again\") : login.t(\"use_trusted_device\")}\n onclick={() => login.submit(\"approval:request\", {})}\n />\n {/if}\n\n {#each Object.entries(codeFactors) as [factor, to] (factor)}\n {#if sent?.factor === factor}\n {#if sent.resendable}\n <Action {login} plain label={login.t(\"send_again\")} onclick={() => send(factor)} />\n {/if}\n {:else}\n <Action\n {login}\n plain\n label={login.t(`send_${factor}`, { to })}\n onclick={() => send(factor)}\n />\n {/if}\n {/each}\n\n {#if sent && methods.otp}\n <Action {login} plain label={login.t(\"use_app\")} onclick={() => (useApp = true)} />\n {/if}\n\n {#if login.backupCodes}\n <Action\n {login}\n plain\n label={login.t(\"use_backup_code\")}\n onclick={() => login.submit(\"use-backup-code\", {})}\n />\n {/if}\n\n {@render help()}\n{/if}\n","<script>\nimport TenantMark from \"../shared/TenantMark.svelte\";\nimport ClientMark from \"../shared/ClientMark.svelte\";\nimport Head from \"../shared/Head.svelte\";\n\nlet { login } = $props();\n\nconst client = $derived(login.client?.name ?? \"\");\n\nconst title = $derived(\n client ? login.t(\"heading_to\", { client }) : login.t(\"heading\"),\n);\n\n</script>\n\n<div class=\"over\">\n {#if client}\n <div class=\"auth-pair\">\n <TenantMark tenant={login.auth.tenant} />\n <span class=\"auth-wire auth-wire-live\"></span>\n <ClientMark client={login.client} />\n </div>\n {/if}\n\n <Head {login} {title} busy lede={login.t(\"waiting\")} />\n</div>\n","<script>\nimport Head from \"./Head.svelte\";\nimport Identified from \"./Identified.svelte\";\nimport SignupHead from \"./SignupHead.svelte\";\n\nlet { login, title, lede = null, tone = null } = $props();\n</script>\n\n{#if login.auth.signingUp}\n <SignupHead {login} mark={login.actor?.identifier ?? \"\"} />\n\n <div class=\"prompt-head\">\n <h2 class=\"prompt-title\">{title}</h2>\n {#if lede}<p class=\"prompt-lede\">{lede}</p>{/if}\n </div>\n{:else}\n <Head {login} {title} {lede} {tone} />\n\n <Identified {login} />\n{/if}\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport ConfirmHead from \"../shared/ConfirmHead.svelte\";\n\nlet { login } = $props();\n\nlet phone = $state(\"\");\n\nconst valid = $derived(/^\\+?[\\d\\s().-]{7,}$/.test(phone.trim()));\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (valid && !login.loading) login.submit(\"confirm:add-phone\", { phone });\n}\n</script>\n\n<ConfirmHead {login} title={login.t(\"title\")} lede={login.t(\"lede\")} />\n\n<form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <label class=\"field\">\n <span class=\"field-label\">{login.t(\"phone\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"tel\"\n name=\"phone\"\n class=\"control\"\n autocomplete=\"tel\"\n placeholder=\"+15551234567\"\n autofocus\n bind:value={phone}\n />\n <span class=\"field-hint\">{login.t(\"hint\")}</span>\n </label>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading}\n label={login.t(\"continue\")}\n working={login.t(\"working\")}\n />\n</form>\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport ConfirmHead from \"../shared/ConfirmHead.svelte\";\n\nlet { login } = $props();\n\n$effect(() => {\n const timer = setInterval(() => {\n if (!login.loading) login.submit(\"confirm:check\", {});\n }, 15000);\n\n return () => clearInterval(timer);\n});\n</script>\n\n<ConfirmHead {login} title={login.t(\"title\")} lede={login.t(\"lede\")} />\n\n<p class=\"waiting aside\">{login.t(\"waiting\")}</p>\n\n<Action {login} quiet label={login.t(\"check\")} busy={login.loading} onclick={() => login.submit(\"confirm:check\", {})} />\n","<script>\nimport CodeForm from \"../shared/CodeForm.svelte\";\nimport ConfirmHead from \"../shared/ConfirmHead.svelte\";\nimport Resend from \"../shared/Resend.svelte\";\n\nlet { login } = $props();\n\nconst confirmation = $derived(login.auth.confirmation ?? {});\nconst linked = $derived(confirmation.mode === \"link\");\n\n$effect(() => {\n if (!linked) return;\n\n const timer = setInterval(() => {\n if (!login.loading) login.submit(\"confirm:check\", {});\n }, 5000);\n\n return () => clearInterval(timer);\n});\n</script>\n\n<ConfirmHead\n {login}\n title={login.t(\"title\")}\n lede={login.t(linked ? \"lede_link\" : \"lede\", { email: confirmation.email })}\n/>\n\n{#if !confirmation.mails}\n <p class=\"note note-warn\" role=\"alert\">{login.t(\"no_mailer\")}</p>\n{:else if linked}\n <p class=\"waiting aside\">{login.t(\"waiting\")}</p>\n{:else}\n <CodeForm {login} event=\"confirm:email\" />\n{/if}\n\n{#if confirmation.mails}\n <Resend {login} />\n{/if}\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport CodeForm from \"../shared/CodeForm.svelte\";\nimport ConfirmHead from \"../shared/ConfirmHead.svelte\";\nimport Resend from \"../shared/Resend.svelte\";\n\nlet { login } = $props();\n\nconst confirmation = $derived(login.auth.confirmation ?? {});\n</script>\n\n<ConfirmHead {login} title={login.t(\"title\")} lede={login.t(\"lede\", { phone: confirmation.phone })} />\n\n{#if confirmation.texts}\n <CodeForm {login} event=\"confirm:phone\" />\n\n <Resend {login} />\n{:else}\n <p class=\"note note-warn\" role=\"alert\">{login.t(\"no_texts\")}</p>\n{/if}\n\n<Action {login} plain label={login.t(\"change_phone\")} onclick={() => login.submit(\"confirm:change-phone\", {})} />\n","const BATCH = 512;\nconst encoder = new TextEncoder();\nconst solved = new Map();\n\nfunction leadingZeros(digest) {\n const bytes = new Uint8Array(digest);\n let count = 0;\n\n for (const byte of bytes) {\n if (byte === 0) {\n count += 8;\n continue;\n }\n\n return count + Math.clz32(byte) - 24;\n }\n\n return count;\n}\n\nasync function search({ nonce, bits }) {\n for (let start = 0; ; start += BATCH) {\n const digests = await Promise.all(\n Array.from({ length: BATCH }, (_, offset) =>\n crypto.subtle.digest(\n \"SHA-256\",\n encoder.encode(`${nonce}${start + offset}`),\n ),\n ),\n );\n\n const found = digests.findIndex((digest) => leadingZeros(digest) >= bits);\n\n if (found >= 0) return String(start + found);\n }\n}\n\nexport function solve(work) {\n if (!work) return Promise.resolve(null);\n\n if (!solved.has(work.token)) {\n solved.set(\n work.token,\n search(work).then((counter) => ({\n work: work.token,\n work_counter: counter,\n })),\n );\n }\n\n return solved.get(work.token);\n}\n","<script>\nimport { untrack } from \"svelte\";\nimport Action from \"../shared/Action.svelte\";\nimport Hint from \"../shared/Hint.svelte\";\nimport SignupHead from \"../shared/SignupHead.svelte\";\nimport { solve } from \"../lib/work.js\";\n\nlet { login } = $props();\n\nconst signup = $derived(login.auth.signup ?? {});\nconst asks = $derived(signup.asks ?? {});\nconst fixed = $derived(new Set(signup.fixed ?? []));\nconst firstRun = $derived(Boolean(login.auth.signingUp?.firstRun));\nconst docs = $derived(login.auth.docs);\nconst origin = typeof location === \"undefined\" ? \"\" : location.origin;\n\nconst held = untrack(() => login.auth.signup ?? {});\n\nlet token = $state(\"\");\nlet nickname = $state(held.nickname ?? \"\");\nlet email = $state(held.email ?? \"\");\nlet person = $state(held.name ?? \"\");\nlet phone = $state(held.phone ?? \"\");\nlet proving = $state(false);\n\nconst filled = (value) => value.trim().length > 0;\nconst needs = (field, value) => asks[field] !== \"required\" || filled(value);\n\nconst valid = $derived(\n (!signup.token || filled(token)) &&\n needs(\"nickname\", nickname) &&\n needs(\"email\", email) &&\n needs(\"phone\", phone) &&\n (filled(nickname) || filled(email)),\n);\n\n$effect(() => {\n solve(signup.work).catch(() => null);\n});\n\nasync function proof() {\n proving = true;\n\n try {\n return (await solve(signup.work)) ?? {};\n } catch {\n return {};\n } finally {\n proving = false;\n }\n}\n\nasync function onsubmit(event) {\n event.preventDefault();\n\n if (valid && !login.loading && !proving) {\n const work = await proof();\n\n login.submit(\"signup\", { token, nickname, email, name: person, phone, ...work });\n }\n}\n</script>\n\n<div class=\"setup flow\" class:setup-ready={valid}>\n <SignupHead {login} at={1} mark={nickname || email} />\n\n <form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <div class=\"slab\">\n {#if signup.token}\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={filled(token)}>\n <span class=\"ledger-label\">{login.t(\"token\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input type=\"password\" name=\"token\" class=\"control\" autocomplete=\"off\" autofocus bind:value={token} />\n <Hint {login} field=\"token\" hint={login.t(\"token_hint\")} />\n </label>\n {/if}\n\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={filled(person)}>\n <span class=\"ledger-label\">{login.t(\"name\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input type=\"text\" name=\"name\" class=\"control\" autocomplete=\"name\" autofocus={!signup.token} bind:value={person} />\n </label>\n\n {#if asks.nickname !== \"off\"}\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={filled(nickname)}>\n <span class=\"ledger-label\">{login.t(\"nickname\")}</span>\n <input\n type=\"text\"\n name=\"nickname\"\n class=\"control\"\n autocomplete=\"username\"\n autocapitalize=\"none\"\n autocorrect=\"off\"\n spellcheck=\"false\"\n bind:value={nickname}\n />\n <Hint {login} field=\"nickname\" />\n </label>\n {/if}\n\n {#if asks.email !== \"off\"}\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={filled(email)}>\n <span class=\"ledger-label\">{login.t(\"email\")}</span>\n <input\n type=\"email\"\n name=\"email\"\n class=\"control\"\n autocomplete=\"email\"\n readonly={fixed.has(\"email\")}\n bind:value={email}\n />\n <Hint {login} field=\"email\" />\n </label>\n {/if}\n\n {#if asks.phone !== \"off\"}\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={filled(phone)}>\n <span class=\"ledger-label\">{login.t(\"phone\")}</span>\n <input\n type=\"tel\"\n name=\"phone\"\n class=\"control\"\n autocomplete=\"tel\"\n placeholder=\"+15551234567\"\n bind:value={phone}\n />\n <Hint {login} field=\"phone\" />\n </label>\n {/if}\n\n {#if firstRun}\n <div class=\"ledger-row\">\n <span class=\"ledger-label\">{login.t(\"origin\")}</span>\n <span class=\"ledger-value aside-mono\">{origin}</span>\n </div>\n {/if}\n </div>\n\n <Action\n {login}\n type=\"submit\"\n ready={valid}\n busy={login.loading || proving}\n label={login.t(\"continue\")}\n working={proving ? login.t(\"proving\") : login.t(\"working\")}\n />\n </form>\n\n {#if firstRun}\n <p class=\"aside\">\n {login.t(\"once\")}\n {#if docs}\n <a class=\"textlink\" href={docs} rel=\"noopener\" target=\"_blank\">{login.t(\"docs\")}</a>\n {/if}\n </p>\n {:else}\n <p class=\"aside\">\n {login.t(\"have_account\")}\n <button type=\"button\" class=\"textlink\" disabled={login.loading} onclick={() => login.startOver()}\n >{login.t(\"sign_in_instead\")}</button\n >\n </p>\n {/if}\n</div>\n","<script>\nimport Action from \"../shared/Action.svelte\";\nimport Hint from \"../shared/Hint.svelte\";\nimport SignupHead from \"../shared/SignupHead.svelte\";\nimport { available, enrol, refused } from \"../lib/passkey.js\";\n\nlet { login } = $props();\n\nconst signup = $derived(login.auth.signup ?? {});\nconst credentials = $derived(signup.credentials ?? { password: true, passkey: false });\nconst firstRun = $derived(Boolean(login.auth.signingUp?.firstRun));\nconst minimum = $derived(signup.minimum ?? 8);\nconst docs = $derived(login.auth.docs);\nconst passkeyable = $derived(Boolean(credentials.passkey) && available());\nconst submitLabel = $derived(firstRun ? login.t(\"submit_first_run\") : login.t(\"submit_signup\"));\n\nconst rows = $derived(\n [\n [\"name\", signup.name],\n [\"nickname\", signup.nickname],\n [\"email\", signup.email],\n [\"phone\", signup.phone],\n ].filter(([, value]) => value),\n);\n\nlet way = $state(null);\n\nconst chosen = $derived(way ?? (passkeyable ? \"passkey\" : \"password\"));\nconst choosing = $derived(Boolean(credentials.password) && passkeyable);\nconst typing = $derived(Boolean(credentials.password) && (!passkeyable || chosen === \"password\"));\nconst passkeying = $derived(passkeyable && (!credentials.password || chosen === \"passkey\"));\n\nlet password = $state(\"\");\nlet confirmation = $state(\"\");\nlet creating = $state(false);\nlet unusable = $state(null);\n\nconst long = $derived(password.length >= minimum);\nconst matched = $derived(long && confirmation === password);\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (matched && !login.loading) {\n login.submit(\"signup\", { password, password_confirmation: confirmation });\n }\n}\n\nasync function createPasskey() {\n creating = true;\n unusable = null;\n\n try {\n const offer = await login.submit(\"signup:passkey-challenge\", {});\n const options = offer.signup?.passkeyOptions;\n\n if (!options) {\n unusable = login.t(\"passkey_unoffered\");\n return;\n }\n\n await login.submit(\"signup:passkey\", { passkey: await enrol(options) });\n } catch (error) {\n if (!refused(error)) {\n unusable = login.t(\"passkey_unusable\");\n }\n } finally {\n creating = false;\n }\n}\n</script>\n\n<div class=\"setup flow\" class:setup-ready={typing ? matched : passkeying}>\n <SignupHead {login} at={2} mark={signup.nickname || signup.email || \"\"} />\n\n <form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <div class=\"slab\">\n {#each rows as [field, value] (field)}\n <div class=\"ledger-row ledger-row-aside\">\n <span class=\"ledger-label\">{login.t(field)}</span>\n <span class=\"ledger-value\">{value}</span>\n <button\n type=\"button\"\n class=\"textlink ledger-aside\"\n disabled={login.loading}\n onclick={() => login.submit(\"signup-edit\")}>{login.t(\"edit\")}</button>\n </div>\n {/each}\n\n {#if choosing}\n <div class=\"ledger-row\">\n <span class=\"ledger-label\" id=\"credential-way\">{login.t(\"way\")}</span>\n <div class=\"credential-ways\" role=\"radiogroup\" aria-labelledby=\"credential-way\">\n {#each [[\"passkey\", login.t(\"way_passkey\")], [\"password\", login.t(\"way_password\")]] as [value, label] (value)}\n <button\n type=\"button\"\n role=\"radio\"\n class=\"credential-way\"\n aria-checked={chosen === value}\n disabled={login.loading || creating}\n onclick={() => (way = value)}>{label}</button\n >\n {/each}\n </div>\n </div>\n {/if}\n\n {#if typing}\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={long}>\n <span class=\"ledger-label\">{login.t(\"password\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input\n type=\"password\"\n name=\"password\"\n class=\"control\"\n autocomplete=\"new-password\"\n autofocus={!choosing}\n bind:value={password}\n />\n <Hint {login} field=\"password\" hint={login.t(\"password_hint\", { minimum })} />\n </label>\n\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={matched}>\n <span class=\"ledger-label\">{login.t(\"confirm\")}</span>\n <input\n type=\"password\"\n name=\"password_confirmation\"\n class=\"control\"\n autocomplete=\"new-password\"\n bind:value={confirmation}\n />\n <Hint {login} field=\"password_confirmation\" />\n </label>\n {/if}\n </div>\n\n {#if typing}\n <Action\n {login}\n type=\"submit\"\n ready={matched}\n busy={login.loading && !creating}\n label={submitLabel}\n working={login.t(\"working\")}\n />\n {/if}\n </form>\n\n {#if passkeying}\n <div class=\"flow-tight\">\n <p class=\"aside\">{login.t(\"passkey_lede\")} {login.t(\"passkey_later\")}</p>\n\n <Action\n {login}\n busy={creating}\n label={login.t(\"create_passkey\")}\n working={login.t(\"waiting_for_passkey\")}\n onclick={createPasskey}\n />\n\n {#if creating}\n <p class=\"aside\">{login.t(\"passkey_hint\")}</p>\n {/if}\n\n {#if unusable}\n <p class=\"aside aside-bad\" role=\"alert\">{unusable}</p>\n {/if}\n </div>\n {:else if !credentials.password}\n <p class=\"note note-warn\" role=\"alert\">{login.t(\"no_passkeys\")}</p>\n {/if}\n\n {#if firstRun}\n <p class=\"aside\">\n {login.t(\"once\")}\n {#if docs}\n <a class=\"textlink\" href={docs} rel=\"noopener\" target=\"_blank\">{login.t(\"docs\")}</a>\n {/if}\n </p>\n {/if}\n</div>\n","<script>\nimport { untrack } from \"svelte\";\nimport Action from \"../shared/Action.svelte\";\nimport SignupHead from \"../shared/SignupHead.svelte\";\n\nlet { login } = $props();\n\nconst docs = $derived(login.auth.docs);\nconst origin = typeof location === \"undefined\" ? \"\" : location.origin;\n\nlet called = $state(untrack(() => login.auth.configure?.called ?? \"\"));\n\nconst ready = $derived(called.trim().length > 0);\n\nfunction onsubmit(event) {\n event.preventDefault();\n\n if (ready && !login.loading) {\n login.submit(\"setup-configure\", { called });\n }\n}\n</script>\n\n<div class=\"setup flow\" class:setup-ready={ready}>\n <SignupHead {login} at={3} mark={login.actor?.identifier ?? \"\"} />\n\n <form {onsubmit} class=\"flow\" aria-busy={login.loading || undefined}>\n <div class=\"slab\">\n <label class=\"ledger-row ledger-step\" class:ledger-step-done={ready}>\n <span class=\"ledger-label\">{login.t(\"called\")}</span>\n <!-- svelte-ignore a11y_autofocus -->\n <input type=\"text\" name=\"called\" class=\"control\" autofocus bind:value={called} />\n <span class=\"field-hint\">{login.t(\"called_hint\")}</span>\n </label>\n\n <div class=\"ledger-row\">\n <span class=\"ledger-label\">{login.t(\"origin\")}</span>\n <span class=\"ledger-value aside-mono\">{origin}</span>\n </div>\n </div>\n\n <Action\n {login}\n type=\"submit\"\n {ready}\n busy={login.loading}\n label={login.t(\"submit\")}\n working={login.t(\"working\")}\n />\n </form>\n\n <p class=\"aside\">\n {login.t(\"once\")}\n {#if docs}\n <a class=\"textlink\" href={docs} rel=\"noopener\" target=\"_blank\">{login.t(\"docs\")}</a>\n {/if}\n </p>\n</div>\n","<script>\nimport { untrack } from \"svelte\";\nimport { createLogin } from \"./lib/login.svelte.js\";\nimport Action from \"./shared/Action.svelte\";\nimport Head from \"./shared/Head.svelte\";\nimport Warnings from \"./shared/Warnings.svelte\";\nimport AcceptInvitation from \"./prompts/accept-invitation.svelte\";\nimport Enrol from \"./prompts/enrol.svelte\";\nimport BackupCode from \"./prompts/backup-code.svelte\";\nimport ChooseOrganization from \"./prompts/choose-organization.svelte\";\nimport Consent from \"./prompts/consent.svelte\";\nimport EmailCode from \"./prompts/email-code.svelte\";\nimport FirstFactor from \"./prompts/first-factor.svelte\";\nimport Identify from \"./prompts/identify.svelte\";\nimport ProveEmail from \"./prompts/prove-email.svelte\";\nimport ResetPassword from \"./prompts/reset-password.svelte\";\nimport SecondFactor from \"./prompts/second-factor.svelte\";\nimport Settled from \"./prompts/settled.svelte\";\nimport AddPhone from \"./prompts/add-phone.svelte\";\nimport AwaitingApproval from \"./prompts/awaiting-approval.svelte\";\nimport ConfirmEmail from \"./prompts/confirm-email.svelte\";\nimport ConfirmPhone from \"./prompts/confirm-phone.svelte\";\nimport Signup from \"./prompts/signup.svelte\";\nimport SignupCredentials from \"./prompts/signup-credentials.svelte\";\nimport SetupConfigure from \"./prompts/setup-configure.svelte\";\n\nconst prompts = {\n signup: Signup,\n \"signup-credentials\": SignupCredentials,\n \"setup-configure\": SetupConfigure,\n \"accept-invitation\": AcceptInvitation,\n identify: Identify,\n \"prove-email\": ProveEmail,\n \"reset-password\": ResetPassword,\n \"first-factor\": FirstFactor,\n \"email-code\": EmailCode,\n \"second-factor\": SecondFactor,\n \"backup-code\": BackupCode,\n enrol: Enrol,\n \"confirm-email\": ConfirmEmail,\n \"confirm-phone\": ConfirmPhone,\n \"add-phone\": AddPhone,\n \"awaiting-approval\": AwaitingApproval,\n \"choose-organization\": ChooseOrganization,\n consent: Consent,\n settled: Settled,\n};\n\nlet { auth } = $props();\n\nconst login = createLogin(untrack(() => auth));\nconst Prompt = $derived(prompts[login.prompt]);\n\nlet frame = $state(null);\nlet entering = $state(false);\nlet leaving = $state(0);\n\nconst still = () =>\n typeof matchMedia === \"function\" &&\n matchMedia(\"(prefers-reduced-motion: reduce)\").matches;\n\n$effect.pre(() => {\n login.prompt;\n\n const height = untrack(() => (still() ? 0 : (frame?.offsetHeight ?? 0)));\n\n leaving = height;\n entering = height > 0;\n});\n\n$effect(() => {\n const surface = login.auth.surface ?? \"challenge\";\n const paired = login.prompt === \"settled\" && Boolean(login.client?.name);\n const column = document.querySelector(\".auth-col\");\n\n if (!column) return;\n\n for (const name of [\"challenge\", \"grant\"]) {\n column.classList.toggle(`surface-${name}`, name === surface);\n }\n\n document\n .querySelector(\".auth-id\")\n ?.toggleAttribute(\"hidden\", surface !== \"challenge\" || paired);\n});\n\n$effect(() => {\n login.prompt;\n\n const node = frame;\n const from = untrack(() => leaving);\n\n if (!node || !from) return;\n\n const to = node.offsetHeight;\n\n if (to !== from) {\n node.classList.add(\"gate-moving\");\n\n const move = node.animate(\n [{ height: `${from}px` }, { height: `${to}px` }],\n { duration: 300, easing: \"cubic-bezier(0.2, 0.8, 0.2, 1)\" },\n );\n\n move.finished\n .catch(() => {})\n .then(() => node.classList.remove(\"gate-moving\"));\n }\n\n const timer = setTimeout(() => {\n entering = false;\n }, 500);\n\n return () => clearTimeout(timer);\n});\n</script>\n\n<Warnings {login} />\n\n<div class=\"gate\" class:gate-enter={entering} bind:this={frame}>\n {#key login.prompt}\n {#if Prompt}\n <Prompt {login} />\n {:else}\n <div class=\"over\">\n <Head\n {login}\n tone=\"bad\"\n title={login.t(\"halted\")}\n lede={login.t(\"halted_lede\")}\n />\n\n <Action\n {login}\n quiet\n label={login.t(\"start_over\")}\n working={login.t(\"working\")}\n busy={login.loading}\n onclick={() => login.startOver()}\n />\n </div>\n {/if}\n {/key}\n</div>\n","import { mount } from \"svelte\";\nimport Login from \"../Login.svelte\";\n\nconst target = document.getElementById(\"login\");\n\nif (target) {\n const auth = JSON.parse(target.dataset.auth);\n\n target.replaceChildren();\n\n mount(Login, { target, props: { auth } });\n}\n"],"mappings":"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"}
|