From f0c6247a67509aa8bee45c965e89630b218b6fc3 Mon Sep 17 00:00:00 2001 From: Irzhy Ranaivoarivony Date: Tue, 29 Sep 2026 21:33:15 +0300 Subject: [PATCH 01/44] feat(home): offer Create account on the lock face A first-time visitor on a registered Home saw only the clock and the passkey circle. The Create guest account action lived in the unlock card, which the lock face hides, so new people could not find sign-up. The lock face now shows Create account whenever guest registration is on. It opens the existing guest passkey enrollment. Sign-in with an existing passkey is unchanged. Part of #86. --- capsules/home/browser/index.html | 1 + capsules/home/browser/shell-auth.js | 15 ++++++++ capsules/home/browser/style.css | 38 +++++++++++++++++++++ scripts/home-passkey-virtual-auth-smoke.mjs | 8 +++-- scripts/home-shell-auth-gate-smoke.mjs | 38 ++++++++++++++++++++- 5 files changed, 96 insertions(+), 4 deletions(-) diff --git a/capsules/home/browser/index.html b/capsules/home/browser/index.html index 3860c269a..4fe326762 100644 --- a/capsules/home/browser/index.html +++ b/capsules/home/browser/index.html @@ -82,6 +82,7 @@

Home didn't open

+ diff --git a/capsules/home/browser/shell-auth.js b/capsules/home/browser/shell-auth.js index 608d7c9f6..e6d4a511f 100644 --- a/capsules/home/browser/shell-auth.js +++ b/capsules/home/browser/shell-auth.js @@ -20,6 +20,7 @@ const passkeyHintPanel = document.querySelector("#home-passkey-hint-panel"); const passkeyHintInput = document.querySelector("#home-passkey-hint"); const passkeyHintCancel = document.querySelector("#home-passkey-hint-cancel"); const unlockSecondary = document.querySelector("#home-unlock-secondary"); +const unlockCreate = document.querySelector("#home-unlock-create"); const unlockStatus = document.querySelector("#home-unlock-status"); const unlockName = document.querySelector("#home-unlock-name"); const ownerToken = document.querySelector("#home-owner-token"); @@ -204,6 +205,16 @@ export function bindHomeUnlock() { }; unlockPrimary?.addEventListener("click", startUnlock); unlockPerson?.addEventListener("click", startUnlock); + // First-visit entry on the lock face: the same guest enrollment the card's + // secondary action opens, reachable without first failing a passkey prompt. + unlockCreate?.addEventListener("click", () => { + if (busy || !guestRegistrationAvailable) return; + clearRecoverySelection(); + recoverySession = null; + recoveryTerminalToken = ""; + unlockMode = "create_guest"; + renderUnlockMode({ registered: true, guestRegistrationEnabled: true }); + }); unlockSecondary?.addEventListener("click", () => { clearRecoverySelection(); recoverySession = null; @@ -412,6 +423,10 @@ function renderUnlockMode({ registered, guestRegistrationEnabled }) { if (unlockFace) { unlockFace.hidden = !showFace; } + if (unlockCreate) { + unlockCreate.hidden = !(showFace && guestRegistrationEnabled); + unlockCreate.disabled = unlockMode === "unsupported"; + } if (unlockCard) { unlockCard.hidden = showFace; } diff --git a/capsules/home/browser/style.css b/capsules/home/browser/style.css index c26999252..ce846518e 100644 --- a/capsules/home/browser/style.css +++ b/capsules/home/browser/style.css @@ -327,6 +327,44 @@ img { line-height: 1.5; } +.home-unlock-create { + appearance: none; + margin-top: 18px; + padding: 9px 20px; + border: 1px solid rgba(255, 255, 255, 0.28); + border-radius: 999px; + background: rgba(16, 24, 32, 0.55); + color: #f5f5f7; + font: inherit; + font-size: 14px; + font-weight: 600; + letter-spacing: 0; + white-space: nowrap; + cursor: pointer; + backdrop-filter: blur(12px); + -webkit-backdrop-filter: blur(12px); + box-shadow: 0 6px 22px rgba(0, 0, 0, 0.28); +} + +.home-unlock-create:hover { + background: rgba(16, 24, 32, 0.75); + border-color: rgba(96, 165, 250, 0.7); +} + +.home-unlock-create:focus-visible { + outline: 2px solid var(--brand-focus); + outline-offset: 3px; +} + +.home-unlock-create:disabled { + cursor: default; + opacity: 0.55; +} + +.home-unlock-create[hidden] { + display: none; +} + .home-unlock-card { width: min(390px, 100%); max-height: 100%; diff --git a/scripts/home-passkey-virtual-auth-smoke.mjs b/scripts/home-passkey-virtual-auth-smoke.mjs index b80ad5cc7..4c2cdb777 100644 --- a/scripts/home-passkey-virtual-auth-smoke.mjs +++ b/scripts/home-passkey-virtual-auth-smoke.mjs @@ -4024,9 +4024,11 @@ async function ensureSignedWithVirtualPasskey(page, onCreated) { throw skip; } - const secondary = page.locator("#home-unlock-secondary"); - await secondary.waitFor({ state: "visible", timeout: 15_000 }); - await secondary.click(); + // The lock face offers "Create account" directly; the card's secondary + // action covers the neutral surface. + const createEntry = page.locator("#home-unlock-create:visible, #home-unlock-secondary:visible").first(); + await createEntry.waitFor({ state: "visible", timeout: 15_000 }); + await createEntry.click(); state = await homeState(page); assert( state.unlockTitle === "Create guest account" && state.unlockNameVisible, diff --git a/scripts/home-shell-auth-gate-smoke.mjs b/scripts/home-shell-auth-gate-smoke.mjs index 1e9385104..fb049c31b 100644 --- a/scripts/home-shell-auth-gate-smoke.mjs +++ b/scripts/home-shell-auth-gate-smoke.mjs @@ -50,6 +50,10 @@ class FakeEventSource { } } +// The guest-enabled variant runs in a child process (see the end of this file) +// because the shell modules bind to this fake DOM once per process. +const guestRegistrationEnabled = process.env.HOME_AUTH_GATE_GUEST_ENABLED === "1"; + class FakeClassList { constructor() { this.values = new Set(); @@ -344,7 +348,7 @@ globalThis.fetch = async (url, init = {}) => { }); } if (url === "/api/auth/passkey/status") { - return jsonResponse({ registered: true, guest_registration_enabled: false }); + return jsonResponse({ registered: true, guest_registration_enabled: guestRegistrationEnabled }); } if (url === "/api/auth/passkey/authenticate/begin") { return jsonResponse({ @@ -470,6 +474,31 @@ assert(activeShellFrame.src === "about:blank", "auth gate did not unload the sta assert(!requests.some((request) => request.url === "/api/apps/home/active-shell"), "auth gate tried to switch shells without a token", requests); assert(!requests.some((request) => request.url === "/api/apps/home/launch"), "auth gate tried to launch a shell while locked", requests); +const createAccount = elementForSelector("#home-unlock-create"); +if (guestRegistrationEnabled) { + assert(createAccount.hidden === false, "lock face hid Create account while guest registration is on"); + createAccount.click(); + for (let attempt = 0; attempt < 20 && elementForSelector(".home-unlock-card").hidden; attempt += 1) { + await new Promise((resolve) => setTimeout(resolve, 0)); + } + assert( + elementForSelector("#home-unlock-title").textContent === "Create guest account", + "Create account did not open guest enrollment", + elementForSelector("#home-unlock-title").textContent, + ); + assert(elementForSelector(".home-unlock-card").hidden === false, "Create account did not show the enrollment card"); + assert(elementForSelector(".home-unlock-face").hidden === true, "Create account left the lock face over the enrollment card"); + assert(createAccount.hidden === true, "Create account stayed visible during guest enrollment"); + assert( + requests.filter((request) => request.url === "/api/auth/passkey/authenticate/begin").length === 0, + "Create account started passkey sign-in instead of enrollment", + requests, + ); + console.log("[home-shell-auth-gate] PASS (guest registration on)"); + process.exit(0); +} +assert(createAccount.hidden === true, "lock face offered Create account while guest registration is off"); + elementForSelector("#home-unlock-person").click(); for ( let attempt = 0; @@ -919,3 +948,10 @@ assert(reconnectDeadlines.length > 0 && reconnectDeadlines.every(delay => delay assert(requestDeadlineTimers.size === 0, "closed event channel retained request deadlines"); console.log("[home-shell-auth-gate] PASS"); + +const { spawnSync } = await import("node:child_process"); +const guestVariant = spawnSync(process.execPath, [new URL(import.meta.url).pathname], { + env: { ...process.env, HOME_AUTH_GATE_GUEST_ENABLED: "1" }, + stdio: "inherit", +}); +if (guestVariant.status !== 0) process.exit(guestVariant.status ?? 1); From 83436de08d2aaa5d748099028411dc4eabe0db83 Mon Sep 17 00:00:00 2001 From: Irzhy Ranaivoarivony Date: Tue, 29 Sep 2026 21:33:29 +0300 Subject: [PATCH 02/44] fix(home): greet new accounts with a first Recovery Kit step The welcome sheet asked every account with a Profile to "save an updated Recovery Kit" and said "your Profile stays unchanged". A brand-new guest has never saved a kit, so that copy did not fit. Recovery readiness now carries a reason when setup is required: recovery_kit_missing when no kit was ever verified, and recovery_kit_outdated when the verified kit predates the Profile. Home shows first-kit copy for a new account and keeps the updated-kit copy for an outdated kit. Part of #86. --- .../home-gui/browser/shell-setup-sheet.js | 14 ++++++- .../src/api/gateway_home_system.rs | 17 ++++++--- .../elastos-server/src/api/gateway_models.rs | 14 ++++++- .../src/api/gateway_tests/home_system.rs | 38 ++++++++++++++++++- scripts/recovery-profile-setup-smoke.mjs | 8 ++++ 5 files changed, 80 insertions(+), 11 deletions(-) diff --git a/capsules/home-gui/browser/shell-setup-sheet.js b/capsules/home-gui/browser/shell-setup-sheet.js index af824ac24..3c13bf836 100644 --- a/capsules/home-gui/browser/shell-setup-sheet.js +++ b/capsules/home-gui/browser/shell-setup-sheet.js @@ -75,6 +75,13 @@ export function homeRecoveryStatus(summary) { return typedReadinessStatus(summary?.identity?.recovery_readiness, RECOVERY_READINESS_SCHEMA); } +// Only an explicit "recovery_kit_outdated" earns the updated-kit copy; any +// other setup_required reason reads as a first kit for a new account. +function homeRecoveryKitOutdated(summary) { + const readiness = summary?.identity?.recovery_readiness; + return homeRecoveryStatus(summary) === "setup_required" && readiness?.reason === "recovery_kit_outdated"; +} + function typedReadinessStatus(readiness, schema) { if (!readiness || readiness.schema !== schema) { return "unavailable"; @@ -204,17 +211,20 @@ function renderSetupSheet(summary) { const unavailable = homeSetupStatus(summary) === "unavailable" || homeRecoveryStatus(summary) === "unavailable"; const complete = setupFinished(summary); const profileReady = homeSetupStatus(summary) === "ready"; + const kitOutdated = homeRecoveryKitOutdated(summary); if (titleNode) titleNode.textContent = "Welcome to Home"; if (leadNode) leadNode.textContent = complete ? "Home is set up." : unavailable ? "Open System to check setup." - : profileReady ? "Save an updated Recovery Kit that includes your Profile." + : profileReady && kitOutdated ? "Save an updated Recovery Kit that includes your Profile." + : profileReady ? "Save a Recovery Kit so you can get back into your account." : "Create your Profile and save a complete Recovery Kit in System."; recoveryStep?.classList.toggle("is-complete", complete); recoveryStep?.classList.toggle("is-current", !complete && !unavailable); if (recoveryBody) recoveryBody.textContent = unavailable ? "Open System to check setup." : complete ? "Profile and Recovery Kit are ready." - : profileReady ? "Your Profile stays unchanged. Save the updated kit offline." + : profileReady && kitOutdated ? "Your Profile stays unchanged. Save the updated kit offline." + : profileReady ? "Keep the kit offline. It restores your account if you lose your passkey." : "Confirm your name and save the kit offline."; if (recoveryButton) { recoveryButton.textContent = complete ? "Ready" : unavailable ? "Open System" diff --git a/elastos/crates/elastos-server/src/api/gateway_home_system.rs b/elastos/crates/elastos-server/src/api/gateway_home_system.rs index f44293657..bb0f4e1da 100644 --- a/elastos/crates/elastos-server/src/api/gateway_home_system.rs +++ b/elastos/crates/elastos-server/src/api/gateway_home_system.rs @@ -5671,15 +5671,18 @@ pub(super) fn recovery_readiness_for_context( &home_browser_localhost_root(context), ) { Ok(recovery) => { + let kit_outdated = recovery + .required_actions + .iter() + .any(|action| action == "download_recovery_kit_with_profile"); if crate::api::auth_gateway::principal_root_recovery_is_ready(&recovery) - && !recovery - .required_actions - .iter() - .any(|action| action == "download_recovery_kit_with_profile") + && !kit_outdated { RecoveryReadinessSummary::ready() + } else if recovery.recovery_configured { + RecoveryReadinessSummary::setup_required(RECOVERY_READINESS_REASON_KIT_OUTDATED) } else { - RecoveryReadinessSummary::setup_required() + RecoveryReadinessSummary::setup_required(RECOVERY_READINESS_REASON_KIT_MISSING) } } Err(_) => RecoveryReadinessSummary::unavailable(), @@ -7992,7 +7995,9 @@ mod home_realtime_tests { let snapshot = HomeRealtimeSnapshot { principal_id: "person:local:test".to_string(), runtime_signature: String::new(), - recovery_readiness: RecoveryReadinessSummary::setup_required(), + recovery_readiness: RecoveryReadinessSummary::setup_required( + RECOVERY_READINESS_REASON_KIT_MISSING, + ), profile_readiness: ProfileReadinessSummary::setup_required(), notification_signature: Vec::new(), wallet_request_signature: Vec::new(), diff --git a/elastos/crates/elastos-server/src/api/gateway_models.rs b/elastos/crates/elastos-server/src/api/gateway_models.rs index 3e8de776f..842fce256 100644 --- a/elastos/crates/elastos-server/src/api/gateway_models.rs +++ b/elastos/crates/elastos-server/src/api/gateway_models.rs @@ -78,8 +78,17 @@ impl ProfileReadinessSummary { pub struct RecoveryReadinessSummary { schema: &'static str, status: &'static str, + /// Why setup is still required, so Home can greet a new account + /// differently from one whose Recovery Kit predates its Profile. + #[serde(skip_serializing_if = "Option::is_none")] + reason: Option<&'static str>, } +/// Recovery setup is required because no Recovery Kit was ever verified. +pub const RECOVERY_READINESS_REASON_KIT_MISSING: &str = "recovery_kit_missing"; +/// Recovery setup is required because the verified kit does not cover the Profile. +pub const RECOVERY_READINESS_REASON_KIT_OUTDATED: &str = "recovery_kit_outdated"; + impl RecoveryReadinessSummary { const SCHEMA: &'static str = "elastos.recovery.readiness/v1"; @@ -87,13 +96,15 @@ impl RecoveryReadinessSummary { Self { schema: Self::SCHEMA, status: "ready", + reason: None, } } - fn setup_required() -> Self { + fn setup_required(reason: &'static str) -> Self { Self { schema: Self::SCHEMA, status: "setup_required", + reason: Some(reason), } } @@ -101,6 +112,7 @@ impl RecoveryReadinessSummary { Self { schema: Self::SCHEMA, status: "unavailable", + reason: None, } } } diff --git a/elastos/crates/elastos-server/src/api/gateway_tests/home_system.rs b/elastos/crates/elastos-server/src/api/gateway_tests/home_system.rs index 444023029..fb9c8bdc2 100644 --- a/elastos/crates/elastos-server/src/api/gateway_tests/home_system.rs +++ b/elastos/crates/elastos-server/src/api/gateway_tests/home_system.rs @@ -4122,6 +4122,18 @@ fn assert_recovery_readiness_projection(payload: &Value, status: &str, path: &st ); } +fn assert_recovery_setup_required_projection(payload: &Value, reason: &str, path: &str) { + assert_eq!( + payload["identity"]["recovery_readiness"], + json!({ + "schema": "elastos.recovery.readiness/v1", + "status": "setup_required", + "reason": reason, + }), + "{path}" + ); +} + #[tokio::test] async fn existing_profile_setup_protects_root_without_claiming_recovery() { let dir = tempfile::tempdir().unwrap(); @@ -4256,7 +4268,11 @@ async fn existing_profile_setup_protects_root_without_claiming_recovery() { .await; assert_eq!(status, StatusCode::OK); assert_eq!(payload["identity"]["profile_readiness"]["status"], "ready"); - assert_recovery_readiness_projection(&payload, "setup_required", "profile without backup"); + assert_recovery_setup_required_projection( + &payload, + "recovery_kit_missing", + "profile without backup", + ); assert_eq!( payload["discovery"]["status"], "unconfigured", "Profile creation does not opt into discovery" @@ -4285,7 +4301,7 @@ async fn test_recovery_readiness_does_not_claim_profile_coverage() { ] { let (status, payload) = home_test_get_json(&app, path, token, origin).await; assert_eq!(status, StatusCode::OK, "{path}"); - assert_recovery_readiness_projection(&payload, "setup_required", path); + assert_recovery_setup_required_projection(&payload, "recovery_kit_missing", path); } assert_eq!(file_snapshot(dir.path()), before_summary); @@ -4321,6 +4337,24 @@ async fn test_recovery_readiness_does_not_claim_profile_coverage() { assert_eq!(status, StatusCode::OK); assert_eq!(payload["profile"]["display_name"], "Owner"); assert_eq!(payload["profile_readiness"]["status"], "ready"); + + // A verified kit that predates the Profile is outdated, not missing. + for (path, token, origin) in [ + ( + "/api/apps/home/summary", + authority.home_token.as_str(), + "http://localhost:61180", + ), + ( + "/api/apps/people/summary", + authority.people_token.as_str(), + "null", + ), + ] { + let (status, payload) = home_test_get_json(&app, path, token, origin).await; + assert_eq!(status, StatusCode::OK, "{path}"); + assert_recovery_setup_required_projection(&payload, "recovery_kit_outdated", path); + } } #[tokio::test] diff --git a/scripts/recovery-profile-setup-smoke.mjs b/scripts/recovery-profile-setup-smoke.mjs index 68b1e1805..b9d088f58 100644 --- a/scripts/recovery-profile-setup-smoke.mjs +++ b/scripts/recovery-profile-setup-smoke.mjs @@ -134,6 +134,14 @@ const summary = { authority: { signed_in: true }, identity: { recovery_readiness: { schema: "elastos.recovery.readiness/v1", status: "setup_required" }, } }; assert.equal(home.homeSetupNeedsAct(summary), true, "existing Profile still needs an exported kit covering it"); +vm.runInContext(functionSource(setup, "homeRecoveryKitOutdated"), home); +assert.equal(home.homeRecoveryKitOutdated(summary), false, "a kit without a stated reason reads as a first kit"); +summary.identity.recovery_readiness.reason = "recovery_kit_missing"; +assert.equal(home.homeRecoveryKitOutdated(summary), false, "a new account is greeted with a first-kit message"); +summary.identity.recovery_readiness.reason = "recovery_kit_outdated"; +assert.equal(home.homeRecoveryKitOutdated(summary), true, "a kit that predates the Profile reads as outdated"); +delete summary.identity.recovery_readiness.reason; +assert(setup.includes("Save a Recovery Kit so you can get back into your account."), "new accounts get first-kit copy"); let shown = 0; Object.assign(home, { SETUP_HOLD_TARGETS: new Set(["chat-room"]), shellState: { currentSummary: summary }, showSetupSheet: () => { shown += 1; } }); vm.runInContext(functionSource(setup, "holdHomeSetupAct"), home); From 2eb960c0f485ad8401e1f78c1bac1a4146680ef5 Mon Sep 17 00:00:00 2001 From: Irzhy Ranaivoarivony Date: Tue, 29 Sep 2026 21:33:29 +0300 Subject: [PATCH 03/44] fix(people): show Discovery as connecting and retry it promptly Turning Discovery on marked the relay unavailable before any attempt, so People said "temporarily unavailable" at once. A failed pass then backed off up to 60 seconds, and Refresh could not shorten that wait. People also refreshed only on a click, so it stayed stale after Discovery connected. - Discovery reports connecting until its first relay pass finishes. - While Discovery is on, a failed pass retries within 15 seconds. - Turn On and Refresh clear the backoff and retry on the next worker pass. - Home includes Discovery state in people.changed, and People refreshes on that event instead of polling. - Failed relay passes are traced at debug level. Part of #86. --- capsules/people/browser/people.js | 23 +++ .../src/api/gateway_home_system.rs | 74 +++++++- .../src/collaboration_discovery_runtime.rs | 160 +++++++++++++++++- 3 files changed, 246 insertions(+), 11 deletions(-) diff --git a/capsules/people/browser/people.js b/capsules/people/browser/people.js index 7aef60f97..7b1c58f53 100644 --- a/capsules/people/browser/people.js +++ b/capsules/people/browser/people.js @@ -109,6 +109,20 @@ function bindActions() { profileDraftDirty = true; profileDraftValue = profileInput.value; }); + // Home pushes people.changed when contacts or Discovery state change, so + // "Connecting…" and newly visible people update without a manual Refresh. + window.addEventListener("message", (event) => { + if (event.origin !== homeParentOrigin || event.source !== window.top) { + return; + } + const message = event.data || {}; + if (message.type !== "elastos:runtime-events" || !Array.isArray(message.events)) { + return; + } + if (message.events.some((item) => item?.scope === "people" || item?.kind === "people.changed")) { + refreshPeople({ quiet: true }).catch(() => {}); + } + }); window.addEventListener("message", (event) => { if (event.origin !== "null" || event.source !== window.parent) { return; @@ -375,6 +389,9 @@ function normalizeDiscoveryStatusMessage(status, runtimeMessage, remainingSecond if (status === "off") { return "Discovery is off."; } + if (status === "connecting") { + return "Discovery is connecting. People who are visible appear here in a few seconds."; + } return runtimeMessage || "Discovery is unavailable."; } @@ -397,6 +414,12 @@ function discoveryEmptyState(status, configured, enabled) { emptyCopy: "Your last visibility window is closing.", }; } + if (status === "connecting") { + return { + emptyTitle: "Connecting…", + emptyCopy: "Looking for people who are visible right now.", + }; + } if (status === "off") { return { emptyTitle: "Discovery is off", diff --git a/elastos/crates/elastos-server/src/api/gateway_home_system.rs b/elastos/crates/elastos-server/src/api/gateway_home_system.rs index bb0f4e1da..ecce4546d 100644 --- a/elastos/crates/elastos-server/src/api/gateway_home_system.rs +++ b/elastos/crates/elastos-server/src/api/gateway_home_system.rs @@ -587,7 +587,11 @@ pub(super) async fn people_discovery_update( now, ) .await?; - service.wake_registered_sync(authority.store.as_ref(), &authority.profile, now)?; + service.wake_registered_discovery_now( + authority.store.as_ref(), + &authority.profile, + now, + )?; service.local_status(authority.store.as_ref(), &authority.profile, now) }, ) @@ -608,7 +612,11 @@ pub(super) async fn people_discovery_refresh( &headers, false, |service, authority, now| async move { - service.wake_registered_sync(authority.store.as_ref(), &authority.profile, now)?; + service.wake_registered_discovery_now( + authority.store.as_ref(), + &authority.profile, + now, + )?; service.local_status(authority.store.as_ref(), &authority.profile, now) }, ) @@ -1056,6 +1064,12 @@ fn configured_people_discovery_summary( ) } else if !status.enabled() { ("off", "Discovery is off.".to_string()) + } else if status.connecting() { + ( + "connecting", + "Discovery is connecting. People who are visible appear here in a few seconds." + .to_string(), + ) } else if status.available() { ( "visible", @@ -1238,6 +1252,29 @@ mod discovery_summary_tests { assert!(json.get("remote_visibility_remaining_seconds").is_none()); } + #[test] + fn configured_discovery_summary_reports_connecting_before_first_relay_pass() { + let summary = configured_people_discovery_summary( + &crate::collaboration_discovery_runtime::CollaborationDiscoveryStatus::test_new( + false, + true, + None, + None, + Vec::new(), + Vec::new(), + ) + .with_connecting_for_test(), + 100, + ); + + let json = serde_json::to_value(&summary).unwrap(); + assert_eq!(json["status"], "connecting"); + assert_eq!( + json["status_message"], + "Discovery is connecting. People who are visible appear here in a few seconds." + ); + } + #[test] fn configured_discovery_summary_reports_runtime_retry_and_one_request_count() { let summary = configured_people_discovery_summary( @@ -5221,7 +5258,17 @@ async fn home_realtime_snapshot( .await; let recovery_readiness = recovery_readiness_for_context(&state.data_dir, context); let desktop_signature = home_desktop_events_signature(state, context).await; - let people_signature = home_people_realtime_signature(&home_state.people); + let mut people_signature = home_people_realtime_signature(&home_state.people); + if let (Some(service), Ok(Some(authority))) = ( + state.collaboration_discovery_service.as_ref(), + contact_authority.as_ref(), + ) { + if let Ok(status) = + service.read_only_status(authority.store.as_ref(), &authority.profile, now_ts()) + { + people_signature.push(home_discovery_realtime_signature(&status)); + } + } let services_signature = home_services_realtime_signature(&home_state.services); HomeRealtimeSnapshot { principal_id: context.principal_id.clone(), @@ -5347,6 +5394,27 @@ fn home_room_realtime_signature(room: &HomeRoomSummary) -> String { ) } +/// Discovery state that People shows. Countdown seconds stay out so the +/// signature changes only when what a person can act on changes. +fn home_discovery_realtime_signature( + status: &crate::collaboration_discovery_runtime::CollaborationDiscoveryStatus, +) -> String { + let mut visible = status + .visible_people() + .iter() + .map(|person| person.advertisement_id()) + .collect::>(); + visible.sort_unstable(); + format!( + "discovery:{}:{}:{}:{}:{}", + status.enabled(), + status.connecting(), + status.available(), + status.incoming_requests().len(), + visible.join(",") + ) +} + fn home_people_realtime_signature(people: &HomePeopleSummary) -> Vec { let mut signature = people .contacts diff --git a/elastos/crates/elastos-server/src/collaboration_discovery_runtime.rs b/elastos/crates/elastos-server/src/collaboration_discovery_runtime.rs index ca5e673b0..44e95ec1c 100644 --- a/elastos/crates/elastos-server/src/collaboration_discovery_runtime.rs +++ b/elastos/crates/elastos-server/src/collaboration_discovery_runtime.rs @@ -77,6 +77,9 @@ const DECLARED_CONTACT_REVOCATION_END_OF_LIFE: crate::collaboration_delivery::De crate::collaboration_delivery::DeliveryEndOfLife::RemintExact; const DISCOVERY_SYNC_BASE_BACKOFF_SECS: u64 = 5; const DISCOVERY_SYNC_MAX_BACKOFF_SECS: u64 = 60; +/// While a person has Discovery on and is waiting to see people, a failed +/// relay pass retries within this bound instead of the idle backoff ceiling. +const DISCOVERY_SYNC_ENABLED_MAX_BACKOFF_SECS: u64 = 15; const MAX_DISCOVERY_OUTBOX_SENDS_PER_SYNC: usize = 4; #[derive(Clone)] @@ -95,6 +98,7 @@ pub struct CollaborationDiscoveryService { #[derive(Debug, Clone, PartialEq, Eq)] pub(crate) struct CollaborationDiscoveryStatus { available: bool, + connecting: bool, enabled: bool, expires_at: Option, remote_visibility_may_remain_until: Option, @@ -199,6 +203,8 @@ struct DiscoveryClientState { observed_profile_heads: BTreeMap, remote_visibility_may_remain_until: Option, transport_available: bool, + /// Discovery was just turned on and no relay pass has finished since. + connecting: bool, } #[derive(Clone, PartialEq, Eq, PartialOrd, Ord)] @@ -233,6 +239,7 @@ impl Default for DiscoveryClientState { observed_profile_heads: BTreeMap::new(), remote_visibility_may_remain_until: None, transport_available: true, + connecting: false, } } } @@ -578,11 +585,36 @@ impl CollaborationDiscoveryService { anyhow::bail!("discovery sync context is not registered"); } + /// A person turned Discovery on or asked for a refresh. The next worker + /// pass retries Discovery at once, even after earlier failures; the worker + /// cadence still bounds how often the relay is reached. + pub(crate) fn wake_registered_discovery_now( + &self, + store: &CollaborationContactStore, + profile: &VerifiedCollaborationProfileDocument, + now: u64, + ) -> anyhow::Result<()> { + if self.wake_registered_sync_inner(store, profile, now, true)? { + return Ok(()); + } + anyhow::bail!("discovery sync context is not registered"); + } + pub(crate) fn wake_registered_sync_if_present( &self, store: &CollaborationContactStore, profile: &VerifiedCollaborationProfileDocument, now: u64, + ) -> anyhow::Result { + self.wake_registered_sync_inner(store, profile, now, false) + } + + fn wake_registered_sync_inner( + &self, + store: &CollaborationContactStore, + profile: &VerifiedCollaborationProfileDocument, + now: u64, + person_requested_discovery: bool, ) -> anyhow::Result { self.require_profile_store_match(store, profile)?; let key = DiscoverySyncContextKey { @@ -597,6 +629,9 @@ impl CollaborationDiscoveryService { let Some(context) = contexts.get_mut(&key) else { return Ok(false); }; + if person_requested_discovery { + context.discovery_failures = 0; + } if context.discovery_failures == 0 { context.discovery_next_wake_at = now; } @@ -710,11 +745,20 @@ impl CollaborationDiscoveryService { } }; let discovery_result = if context.discovery_next_wake_at <= now { - Some( - self.refresh(context.store.as_ref(), &context.profile, now) - .await - .is_ok(), - ) + match self + .refresh(context.store.as_ref(), &context.profile, now) + .await + { + Ok(_) => Some(true), + Err(err) => { + tracing::debug!( + failures = context.discovery_failures, + error = %format!("{err:#}"), + "discovery relay pass failed" + ); + Some(false) + } + } } else { None }; @@ -761,7 +805,8 @@ impl CollaborationDiscoveryService { continue; } if let Some(success) = discovery_result { - let cadence = match current.store.discovery_enabled() { + let enabled = current.store.discovery_enabled(); + let cadence = match enabled { Ok(true) => DISCOVERY_SYNC_ENABLED_CADENCE_SECS, Ok(false) => DISCOVERY_SYNC_IDLE_CADENCE_SECS, Err(_) => DISCOVERY_SYNC_MAX_BACKOFF_SECS, @@ -773,6 +818,11 @@ impl CollaborationDiscoveryService { cadence, now, ); + if !success && matches!(enabled, Ok(true)) { + current.discovery_next_wake_at = current + .discovery_next_wake_at + .min(now.saturating_add(DISCOVERY_SYNC_ENABLED_MAX_BACKOFF_SECS)); + } } if let Some(success) = direct_result { update_sync_schedule( @@ -881,6 +931,7 @@ impl CollaborationDiscoveryService { state.current_advertisement = None; state.remote_visibility_may_remain_until = None; state.transport_available = false; + state.connecting = true; } else { store.set_discovery_enabled(false, now)?; let current = { @@ -904,6 +955,7 @@ impl CollaborationDiscoveryService { let state = client_state_mut(&mut states, profile_did)?; state.remote_visibility_may_remain_until = remote_visibility_may_remain_until; state.transport_available = false; + state.connecting = false; } self.status_from_state(store, now) } @@ -996,6 +1048,7 @@ impl CollaborationDiscoveryService { let state = client_state_mut(&mut states, profile_did)?; state.current_advertisement = Some(cached); state.transport_available = false; + state.connecting = false; anyhow::bail!("discovery relay query failed"); } } @@ -1030,6 +1083,7 @@ impl CollaborationDiscoveryService { let state = client_state_mut(&mut states, profile_did)?; state.remote_visibility_may_remain_until = None; state.transport_available = true; + state.connecting = false; } Err(_) => { self.mark_withdrawal_unavailable(profile_did, ¤t)?; @@ -1376,7 +1430,9 @@ impl CollaborationDiscoveryService { .state .lock() .map_err(|_| anyhow::anyhow!("discovery client state lock is poisoned"))?; - client_state_mut(&mut states, profile_did)?.transport_available = available; + let state = client_state_mut(&mut states, profile_did)?; + state.transport_available = available; + state.connecting = false; Ok(()) } @@ -1392,6 +1448,7 @@ impl CollaborationDiscoveryService { let state = client_state_mut(&mut states, profile_did)?; state.current_advertisement = Some(current_advertisement); state.transport_available = false; + state.connecting = false; Ok(()) } @@ -1414,6 +1471,7 @@ impl CollaborationDiscoveryService { .expires_at, ); state.transport_available = false; + state.connecting = false; Ok(()) } @@ -1622,6 +1680,7 @@ fn project_discovery_status( }; Ok(CollaborationDiscoveryStatus { available: state.transport_available, + connecting: enabled && state.connecting, enabled, expires_at: state .current_advertisement @@ -1761,6 +1820,11 @@ impl CollaborationDiscoveryStatus { self.available } + /// Discovery is on and its first relay pass has not finished yet. + pub(crate) fn connecting(&self) -> bool { + self.connecting + } + pub(crate) fn enabled(&self) -> bool { self.enabled } @@ -1786,6 +1850,12 @@ impl CollaborationDiscoveryStatus { &self.incoming_requests } + #[cfg(test)] + pub(crate) fn with_connecting_for_test(mut self) -> Self { + self.connecting = true; + self + } + #[cfg(test)] pub(crate) fn test_new( available: bool, @@ -1797,6 +1867,7 @@ impl CollaborationDiscoveryStatus { ) -> Self { Self { available, + connecting: false, enabled, expires_at, remote_visibility_may_remain_until, @@ -2830,7 +2901,8 @@ fn client_state_mut<'a>( && state.visible_advertisements.is_empty() && state.observed_profile_heads.is_empty() && state.remote_visibility_may_remain_until.is_none() - && state.transport_available) + && state.transport_available + && !state.connecting) .then(|| candidate.clone()) }) { states.remove(&disposable_profile_did); @@ -2862,6 +2934,7 @@ fn apply_decoded_advertisements( state.observed_profile_heads = candidate_heads; state.visible_advertisements = candidate_visible; state.transport_available = transport_available; + state.connecting = false; Ok(()) } @@ -4487,6 +4560,10 @@ pub(crate) mod tests { .await .unwrap(); assert!(enabled.enabled()); + assert!( + enabled.connecting(), + "turning Discovery on reads as connecting until the first relay pass finishes" + ); let refreshed = wait_for_visible_peer( &local_service, local_store.as_ref(), @@ -4494,6 +4571,11 @@ pub(crate) mod tests { "Remote", ) .await; + assert!( + !refreshed.connecting(), + "a finished relay pass ends connecting" + ); + assert!(refreshed.available()); assert_eq!(refreshed.visible_people().len(), 1); assert_eq!(refreshed.visible_people()[0].display_name(), "Remote"); assert_eq!(refreshed.incoming_requests().len(), 0); @@ -4776,6 +4858,66 @@ pub(crate) mod tests { ); } + #[tokio::test] + async fn person_requested_discovery_wake_clears_backoff() { + let temp = tempfile::tempdir().unwrap(); + let pair = durable_profile_peer_pair(temp.path()).await; + let root_a = temp.path().join("a"); + let now = crate::auth::now_ts(); + let grant_a = + store_home_session_grant_for_test(&root_a, &pair.identity_a, "alice-home", now); + pair.service_a + .register_sync_context( + pair.store_a.clone(), + pair.identity_a.profile.clone(), + &grant_a.session_id, + Some(&pair.identity_a.proof_binding_id), + &grant_a.grant_id, + now, + ) + .unwrap(); + let backed_off_until = now + DISCOVERY_SYNC_MAX_BACKOFF_SECS; + let set_backoff = || { + for context in pair.service_a.sync_contexts.lock().unwrap().values_mut() { + context.discovery_failures = 4; + context.discovery_next_wake_at = backed_off_until; + } + }; + let discovery_schedule = || { + pair.service_a + .sync_contexts + .lock() + .unwrap() + .values() + .map(|context| (context.discovery_failures, context.discovery_next_wake_at)) + .collect::>() + }; + + set_backoff(); + assert!(pair + .service_a + .wake_registered_sync_if_present( + pair.store_a.as_ref(), + &pair.identity_a.profile, + now + 1 + ) + .unwrap()); + assert_eq!( + discovery_schedule(), + vec![(4, backed_off_until)], + "a background wake keeps the failure backoff" + ); + + pair.service_a + .wake_registered_discovery_now(pair.store_a.as_ref(), &pair.identity_a.profile, now + 1) + .unwrap(); + assert_eq!( + discovery_schedule(), + vec![(0, now + 1)], + "a person's Refresh or Turn On retries Discovery at once" + ); + } + #[tokio::test] async fn unilateral_contact_removal_propagates_after_sync_wake() { let temp = tempfile::tempdir().unwrap(); @@ -8543,6 +8685,7 @@ pub(crate) mod tests { observed_profile_heads: BTreeMap::new(), remote_visibility_may_remain_until: None, transport_available: false, + connecting: false, }; apply_decoded_advertisements(&mut state, vec![revision_two.clone()], true).unwrap(); @@ -8625,6 +8768,7 @@ pub(crate) mod tests { observed_profile_heads: BTreeMap::new(), remote_visibility_may_remain_until: None, transport_available: false, + connecting: false, }; let error = From c727bc11f96e0ef2a8fe97f357666d526b83d1dc Mon Sep 17 00:00:00 2001 From: Irzhy Ranaivoarivony Date: Tue, 6 Oct 2026 11:56:46 +0300 Subject: [PATCH 04/44] feat(chat): join Community by default and open profile cards Every Home now joins the shared Community room from the signed release, and any name in Community opens a profile card with one next step. Community network - components.json may pin `collaboration_network` (head CID, network ID and trusted signer set); the release ships the exact configuration as collaboration-network-release-v1.json beside it. - `elastos setup` installs the pinned configuration after checking the CID, the pin and the startup validator, and prints one line saying the Home joins Community and how to stay isolated. `elastos update` fetches it by CID and advances a Home only along the same signed chain; a configuration for another network is kept. - `elastos setup --isolated` and `install.sh --isolated` record an owner-only isolation choice before the first start. Source-home setup keeps its explicit ELASTOS_COLLABORATION_STARTUP_MODE. - publish-release.sh carries the file and refuses a mismatched pin. - A release without the pin changes nothing. The pin and file for the public network follow once the seed operator approves them. Discovery resilience - The outbox keeps retrying a refused request or decision without failing the whole pass, and stops resending a request once its advertisement expires, so a relay restart no longer turns Discovery unavailable. Profile cards - Configured Chat polls attach a card to each verified participant (an opaque participant_ref, relationship, direct conversation, whether the person can be added now) and a sender_ref to each verified message. No Profile or device DID reaches the browser. - A click or Enter on a name opens the card: Message opens the direct chat in the same Chat window, Add contact sends a request bound to the person's live Discovery advertisement through POST /api/apps/chat-room/contacts/request, Open Inbox answers a pending request, and Open People explains that both people need Discovery on. - Message times use the viewer's local time zone, and Today, Yesterday or a short date separates messages from different days. Chat basics - Home's chat-room.changed signal includes the room's latest message sequence and the newest direct-message notification time, so Chat inside Home shows new messages within about a second; a session that just became active loads its history at once. - Direct conversations with an unopened message show a dot in the Chat rail, from the same notification that drives the Home taskbar badge. - Community members show "active now" when they share presence (Discovery on) and otherwise the time of their last public message. Presence marks liveness only; it never names anyone. Network revisions - `elastos collaboration-config generate-revision` signs the next revision of a network file with a new bootstrap peer, keeping the network, signer set and grant, for when the bootstrap address changes. Home copy - The first-kit welcome line names a new device instead of the passkey, so passkey wording stays on the authentication surfaces. Docs and tooling - docs/COLLABORATION_NETWORK_PROFILE.md states the release default rule and a Carrier port tip; docs/TROUBLESHOOTING.md records Carrier connection failures. - scripts/build-and-setup-source-home.sh stages trusted local ffmpeg and ffprobe copies and runs setup-source-home.sh; docs/MAC.md describes it. Part of #86. --- .../chat-room-ui/.chat_room_ui_source.sha256 | 2 +- capsules/chat-room-ui/Cargo.toml | 1 + capsules/chat-room-ui/src/direct.rs | 4 + capsules/chat-room-ui/src/lib.rs | 638 ++++++++++++++++-- capsules/chat-room/browser/chat-room.js | 4 +- capsules/chat-room/browser/chat_room_ui.js | 105 ++- .../chat-room/browser/chat_room_ui_bg.wasm | Bin 675041 -> 714291 bytes capsules/chat-room/browser/index.html | 9 +- capsules/chat-room/browser/style.css | 116 ++++ .../home-gui/browser/shell-setup-sheet.js | 2 +- capsules/inbox/browser/inbox.js | 7 +- docs/COLLABORATION_NETWORK_PROFILE.md | 70 +- docs/MAC.md | 19 +- docs/TROUBLESHOOTING.md | 62 ++ .../crates/elastos-server/src/api/gateway.rs | 4 + .../src/api/gateway_home_runtime.rs | 1 + .../src/api/gateway_home_system.rs | 26 +- .../elastos-server/src/api/gateway_models.rs | 100 +++ .../elastos-server/src/api/gateway_room.rs | 179 ++++- .../src/api/gateway_tests/room.rs | 130 ++++ .../src/api/gateway_tests/room/direct.rs | 1 + .../src/collaboration_config.rs | 179 ++++- .../src/collaboration_contact_store.rs | 12 +- .../src/collaboration_direct_messages.rs | 4 + .../src/collaboration_discovery_runtime.rs | 66 +- .../src/collaboration_release_network.rs | 467 +++++++++++++ .../src/collaboration_startup.rs | 1 + elastos/crates/elastos-server/src/lib.rs | 1 + elastos/crates/elastos-server/src/main.rs | 9 + .../elastos-server/src/notifications.rs | 41 ++ .../crates/elastos-server/src/room_service.rs | 5 + elastos/crates/elastos-server/src/setup.rs | 41 ++ .../crates/elastos-server/src/supervisor.rs | 7 + elastos/crates/elastos-server/src/update.rs | 126 ++++ scripts/build-and-setup-source-home-test.py | 68 ++ scripts/build-and-setup-source-home.sh | 85 +++ scripts/install.sh | 9 +- scripts/publish-release.sh | 31 +- 38 files changed, 2487 insertions(+), 145 deletions(-) create mode 100644 docs/TROUBLESHOOTING.md create mode 100644 elastos/crates/elastos-server/src/collaboration_release_network.rs create mode 100644 scripts/build-and-setup-source-home-test.py create mode 100755 scripts/build-and-setup-source-home.sh diff --git a/capsules/chat-room-ui/.chat_room_ui_source.sha256 b/capsules/chat-room-ui/.chat_room_ui_source.sha256 index b50aac7c1..048db2dd3 100644 --- a/capsules/chat-room-ui/.chat_room_ui_source.sha256 +++ b/capsules/chat-room-ui/.chat_room_ui_source.sha256 @@ -1 +1 @@ -6654816bf80d5e89d51a00a92dc40d97ffc85ddb114119e5f7888008cc6c58bc +781295ce9503b856ec3e0d2d5edb49954dadb47f2c8c5f974fac9b8c87605042 diff --git a/capsules/chat-room-ui/Cargo.toml b/capsules/chat-room-ui/Cargo.toml index f04353785..8b0dea956 100644 --- a/capsules/chat-room-ui/Cargo.toml +++ b/capsules/chat-room-ui/Cargo.toml @@ -29,6 +29,7 @@ web-sys = { version = "=0.3.82", features = [ "HtmlFormElement", "HtmlInputElement", "HtmlTextAreaElement", + "KeyboardEvent", "Location", "Node", "RequestCredentials", diff --git a/capsules/chat-room-ui/src/direct.rs b/capsules/chat-room-ui/src/direct.rs index 391a0a7dd..fba525a97 100644 --- a/capsules/chat-room-ui/src/direct.rs +++ b/capsules/chat-room-ui/src/direct.rs @@ -25,6 +25,9 @@ pub(super) struct DirectConversationView { /// The relationship ended. History stays readable; composing stops. #[serde(default)] pub(super) removed: bool, + /// A message arrived that this person has not opened yet. + #[serde(default)] + pub(super) unread: bool, } #[derive(Debug, Clone, Deserialize, PartialEq, Eq)] @@ -232,6 +235,7 @@ mod tests { conversation_id: id.to_string(), display_name: name.to_string(), removed: false, + unread: false, } } diff --git a/capsules/chat-room-ui/src/lib.rs b/capsules/chat-room-ui/src/lib.rs index 142a45720..fa2907ec7 100644 --- a/capsules/chat-room-ui/src/lib.rs +++ b/capsules/chat-room-ui/src/lib.rs @@ -150,6 +150,12 @@ struct App { emoji_buttons: Vec, participant_count: HtmlElement, participant_list: HtmlElement, + participant_card: HtmlElement, + participant_card_avatar: HtmlElement, + participant_card_name: HtmlElement, + participant_card_state: HtmlElement, + participant_card_action: HtmlButtonElement, + participant_card_close: HtmlButtonElement, browser_access_section: HtmlElement, browser_access_count: HtmlElement, browser_access_list: HtmlElement, @@ -221,6 +227,9 @@ impl ShellSessionBootstrapFailure { struct ConversationObjectView { seq: u64, sender: String, + /// Opaque reference to the sender's profile card, when Runtime has one. + #[serde(default)] + sender_ref: Option, /// `Some(true)`: `sender` is the sender's verified Profile display name. /// `Some(false)`/`None`: configured shared Chat omits the row; other modes /// keep their existing server-stamped naming. @@ -264,8 +273,25 @@ struct AttachmentView { is_video: bool, } +/// A Community profile card. Runtime supplies only an opaque reference and +/// the relationship; it never sends a Profile or device DID. +#[derive(Debug, Clone, Deserialize, PartialEq, Eq)] +struct ParticipantCard { + participant_ref: String, + relationship: String, + #[serde(default)] + conversation_id: Option, + #[serde(default)] + can_add_contact: bool, + /// Shared presence (Discovery on) that has not expired. + #[serde(default)] + active_now: bool, +} + #[derive(Debug, Clone, Deserialize, PartialEq, Eq)] struct ParticipantView { + #[serde(default)] + card: Option, display_name: String, /// Same contract as `ConversationObjectView::sender_profile_verified`. #[serde(default)] @@ -552,6 +578,12 @@ pub fn start() -> Result<(), JsValue> { .collect::, _>>()?, participant_count: element_by_id(&document, "participant-count")?, participant_list: element_by_id(&document, "participant-list")?, + participant_card: element_by_id(&document, "participant-card")?, + participant_card_avatar: element_by_id(&document, "participant-card-avatar")?, + participant_card_name: element_by_id(&document, "participant-card-name")?, + participant_card_state: element_by_id(&document, "participant-card-state")?, + participant_card_action: button_by_id(&document, "participant-card-action")?, + participant_card_close: button_by_id(&document, "participant-card-close")?, browser_access_section: element_by_id(&document, "browser-access-section")?, browser_access_count: element_by_id(&document, "browser-access-count")?, browser_access_list: element_by_id(&document, "browser-access-list")?, @@ -616,7 +648,13 @@ impl App { let poll_app = Rc::clone(self); spawn_local(async move { loop { + let was_active = poll_app.state.borrow().session_active; poll_app.poll_and_render_once().await; + // A session that just became active loads its history at + // once instead of after one more poll interval. + if !was_active && poll_app.state.borrow().session_active { + continue; + } TimeoutFuture::new(poll_app.poll_interval_ms()).await; } }); @@ -1048,50 +1086,7 @@ impl App { let Some(choice) = choice else { return; }; - let selection_guard = { - let mut state = selector_app.state.borrow_mut(); - state.error_text = None; - state.error_transient = false; - if choice == "shared" { - commit_shared_selection(&mut state) - } else { - let Some(guard) = commit_direct_selection(&mut state, &choice) else { - return; - }; - guard - } - }; - let _ = selector_app.render(); - if choice == "shared" { - selector_app.publish_home_navigation(&selection_guard); - } - selector_app.start_poll_loop(); - let app = Rc::clone(&selector_app); - spawn_local(async move { - if choice == "shared" { - if let Err(error) = app.ensure_shell_session_for_guard(&selection_guard).await { - if app.selection_guard_is_current(&selection_guard) { - app.set_error(Some(error)); - } - } - } else if let Err(status) = app - .refresh_direct_messages_for_guard(&selection_guard) - .await - { - if app.selection_guard_is_current(&selection_guard) { - if status == 403 { - app.return_to_conversation_selector(Some(&choice)); - } else { - app.set_error(Some( - "Direct messages are temporarily unavailable.".to_string(), - )); - } - } - } - if app.selection_guard_is_current(&selection_guard) { - let _ = app.render(); - } - }); + selector_app.select_conversation(choice); })); self.conversation_selector .add_event_listener_with_callback("click", selector_click.as_ref().unchecked_ref())?; @@ -1200,6 +1195,7 @@ impl App { browser_access_click.as_ref().unchecked_ref(), )?; browser_access_click.forget(); + self.install_participant_card_listeners()?; let join_invite_app = Rc::clone(self); let join_invite_submit = @@ -1534,6 +1530,9 @@ impl App { } let app = Rc::clone(&runtime_events_app); spawn_local(async move { + // New direct messages and new contacts change the + // conversation list as well as the open thread. + let _ = app.refresh_direct_conversations().await; app.poll_and_render_once().await; }); })); @@ -2529,6 +2528,274 @@ impl App { Ok(true) } + /// Switches this Chat window to the shared room or one direct + /// conversation. The rail, the profile card and Home selection use it. + fn select_conversation(self: &Rc, choice: String) { + let selection_guard = { + let mut state = self.state.borrow_mut(); + state.error_text = None; + state.error_transient = false; + if choice == "shared" { + commit_shared_selection(&mut state) + } else { + let Some(guard) = commit_direct_selection(&mut state, &choice) else { + return; + }; + guard + } + }; + let _ = self.render(); + if choice == "shared" { + self.publish_home_navigation(&selection_guard); + } + self.start_poll_loop(); + let app = Rc::clone(self); + spawn_local(async move { + if choice == "shared" { + if let Err(error) = app.ensure_shell_session_for_guard(&selection_guard).await { + if app.selection_guard_is_current(&selection_guard) { + app.set_error(Some(error)); + } + } + } else if let Err(status) = app + .refresh_direct_messages_for_guard(&selection_guard) + .await + { + if app.selection_guard_is_current(&selection_guard) { + if status == 403 { + app.return_to_conversation_selector(Some(&choice)); + } else { + app.set_error(Some( + "Direct messages are temporarily unavailable.".to_string(), + )); + } + } + } + if app.selection_guard_is_current(&selection_guard) { + let _ = app.render(); + } + }); + } + + /// Opens a direct conversation named by a profile card, refreshing the + /// conversation list first when it is new to this window. + fn open_direct_conversation(self: &Rc, conversation_id: String) { + let known = self + .state + .borrow() + .direct + .conversations + .iter() + .any(|conversation| conversation.conversation_id == conversation_id); + if known { + self.select_conversation(conversation_id); + return; + } + let app = Rc::clone(self); + spawn_local(async move { + let _ = app.refresh_direct_conversations().await; + app.select_conversation(conversation_id); + }); + } + + fn participant_card_for(&self, participant_ref: &str) -> Option<(String, ParticipantCard)> { + let state = self.state.borrow(); + state.participants.iter().find_map(|participant| { + participant + .card + .as_ref() + .filter(|card| card.participant_ref == participant_ref) + .map(|card| { + ( + participant_shown_name(participant).to_string(), + card.clone(), + ) + }) + }) + } + + fn participant_activity_for(&self, participant_ref: &str) -> Option { + let state = self.state.borrow(); + let participant = state.participants.iter().find(|participant| { + participant + .card + .as_ref() + .is_some_and(|card| card.participant_ref == participant_ref) + })?; + let card = participant.card.as_ref()?; + if card.active_now { + Some("Active now".to_string()) + } else if participant.last_seen_at > 0 { + Some(last_message_text(participant.last_seen_at)) + } else { + None + } + } + + fn open_participant_card(&self, participant_ref: &str) { + let Some((name, card)) = self.participant_card_for(participant_ref) else { + return; + }; + let (state_text, action) = participant_card_copy(&card, self.config.home_token.is_some()); + let activity = self.participant_activity_for(participant_ref); + self.participant_card_avatar + .set_text_content(Some(&participant_initial(&name))); + self.participant_card_name.set_text_content(Some(&name)); + self.participant_card_state + .set_text_content(Some(&match activity { + Some(activity) if card.relationship != "you" => { + format!("{state_text} · {activity}") + } + _ => state_text.to_string(), + })); + match action { + Some((label, action)) => { + self.participant_card_action.set_text_content(Some(label)); + let _ = self + .participant_card_action + .set_attribute("data-card-action", action); + self.participant_card_action.set_disabled(false); + self.participant_card_action.set_hidden(false); + } + None => { + let _ = self + .participant_card_action + .remove_attribute("data-card-action"); + self.participant_card_action.set_hidden(true); + } + } + let _ = self + .participant_card + .set_attribute("data-participant-ref", participant_ref); + self.participant_card.set_hidden(false); + let _ = self.participant_card_close.focus(); + } + + fn close_participant_card(&self) { + self.participant_card.set_hidden(true); + let _ = self + .participant_card + .remove_attribute("data-participant-ref"); + } + + fn run_participant_card_action(self: &Rc) { + let Some(participant_ref) = self.participant_card.get_attribute("data-participant-ref") + else { + return; + }; + let Some(action) = self + .participant_card_action + .get_attribute("data-card-action") + else { + return; + }; + let Some((_, card)) = self.participant_card_for(&participant_ref) else { + self.close_participant_card(); + return; + }; + match action.as_str() { + "message" => { + self.close_participant_card(); + if let Some(conversation_id) = card.conversation_id { + self.open_direct_conversation(conversation_id); + } + } + "add-contact" => { + self.participant_card_action.set_disabled(true); + let app = Rc::clone(self); + spawn_local(async move { + match app.request_contact(&participant_ref).await { + Ok(()) => { + app.participant_card_state + .set_text_content(Some(PARTICIPANT_CARD_REQUEST_SENT)); + app.participant_card_action.set_hidden(true); + } + Err(error) => { + app.participant_card_state.set_text_content(Some(&error)); + app.participant_card_action.set_disabled(false); + } + } + }); + } + "inbox" | "people" => { + self.close_participant_card(); + let _ = self.post_library_picker_message(serde_json::json!({ + "type": "home:open-target", "target": action, "query": {}, + "homeToken": self.config.home_token, + })); + } + _ => {} + } + } + + async fn request_contact(&self, participant_ref: &str) -> Result<(), String> { + let _: serde_json::Value = api_post_json_with_headers( + &self.room_api_url("/contacts/request"), + &serde_json::json!({ "participant_ref": participant_ref }), + &self.home_token_headers(), + ) + .await?; + Ok(()) + } + + /// Profile cards: a click, Enter or Space on any name with a card opens + /// it; the card closes on its close button or Escape. + fn install_participant_card_listeners(self: &Rc) -> Result<(), JsValue> { + for list in [&self.participant_list, &self.message_list] { + let card_app = Rc::clone(self); + let open_card = Closure::::wrap(Box::new(move |event: Event| { + if let Some(key_event) = event.dyn_ref::() { + if key_event.key() != "Enter" && key_event.key() != " " { + return; + } + } + let Some(target) = event + .target() + .and_then(|value| value.dyn_into::().ok()) + else { + return; + }; + let Some(named) = target.closest("[data-participant-ref]").ok().flatten() else { + return; + }; + let Some(participant_ref) = named.get_attribute("data-participant-ref") else { + return; + }; + event.prevent_default(); + card_app.open_participant_card(&participant_ref); + })); + list.add_event_listener_with_callback("click", open_card.as_ref().unchecked_ref())?; + list.add_event_listener_with_callback("keydown", open_card.as_ref().unchecked_ref())?; + open_card.forget(); + } + let card_action_app = Rc::clone(self); + let card_action = Closure::::wrap(Box::new(move |_event: Event| { + card_action_app.run_participant_card_action(); + })); + self.participant_card_action + .add_event_listener_with_callback("click", card_action.as_ref().unchecked_ref())?; + card_action.forget(); + let card_close_app = Rc::clone(self); + let card_close = Closure::::wrap(Box::new(move |_event: Event| { + card_close_app.close_participant_card(); + })); + self.participant_card_close + .add_event_listener_with_callback("click", card_close.as_ref().unchecked_ref())?; + card_close.forget(); + let card_escape_app = Rc::clone(self); + let card_escape = Closure::::wrap(Box::new(move |event: Event| { + if let Some(key_event) = event.dyn_ref::() { + if key_event.key() == "Escape" && !card_escape_app.participant_card.hidden() { + card_escape_app.close_participant_card(); + } + } + })); + self.document + .add_event_listener_with_callback("keydown", card_escape.as_ref().unchecked_ref())?; + card_escape.forget(); + Ok(()) + } + fn open_library_from_home(&self) -> Result { if self.config.home_token.is_none() || self.home_parent_origin.is_none() { return Ok(false); @@ -2992,10 +3259,11 @@ impl App { let selected = direct.selected_conversation_id.as_deref() == Some(conversation.conversation_id.as_str()); button.set_attribute("aria-current", if selected { "true" } else { "false" })?; - button.set_class_name(if selected { - "conversation-choice active" - } else { - "conversation-choice" + let unread = conversation.unread && !selected; + button.set_class_name(match (selected, unread) { + (true, _) => "conversation-choice active", + (false, true) => "conversation-choice unread", + (false, false) => "conversation-choice", }); append_conversation_choice_content( &self.document, @@ -3004,10 +3272,18 @@ impl App { &conversation.display_name, if conversation.removed { "Removed contact" + } else if unread { + "New message" } else { "Direct message" }, )?; + if unread { + let dot = self.document.create_element("span")?; + dot.set_class_name("conversation-unread-dot"); + dot.set_attribute("aria-label", "Unread")?; + button.append_child(&dot)?; + } self.conversation_selector.append_child(&button)?; } @@ -3051,7 +3327,9 @@ impl App { self.message_list.append_child(&empty)?; return Ok(()); } + let mut last_day = None; for message in &direct.messages { + self.append_day_separator_if_new(&mut last_day, message.created_at)?; let outgoing = message.direction == DirectMessageDirection::Outgoing; let item = self.document.create_element("li")?; item.set_class_name(if outgoing { @@ -3136,6 +3414,12 @@ impl App { } else { "participant" }); + if let Some(card) = participant.card.as_ref() { + item.set_class_name(&format!("{} participant-clickable", item.class_name())); + item.set_attribute("data-participant-ref", &card.participant_ref)?; + item.set_attribute("role", "button")?; + item.set_attribute("tabindex", "0")?; + } let shown_name = participant_shown_name(participant); let avatar = self.document.create_element("div")?; @@ -3399,6 +3683,27 @@ impl App { Ok(()) } + /// Adds a day separator before the first message of each local day. + fn append_day_separator_if_new( + &self, + last_day: &mut Option<(u32, u32, u32)>, + timestamp_secs: u64, + ) -> Result<(), JsValue> { + let day = local_day(timestamp_secs); + if *last_day == Some(day) { + return Ok(()); + } + *last_day = Some(day); + let separator = self.document.create_element("li")?; + separator.set_class_name("day-separator"); + separator.set_attribute("role", "separator")?; + let label = self.document.create_element("span")?; + label.set_text_content(Some(&day_separator_text(timestamp_secs))); + separator.append_child(&label)?; + self.message_list.append_child(&separator)?; + Ok(()) + } + fn render_objects( &self, objects: &[ConversationObjectView], @@ -3416,7 +3721,9 @@ impl App { return Ok(()); } + let mut last_day = None; for object in objects { + self.append_day_separator_if_new(&mut last_day, object.created_at)?; let item = self.document.create_element("li")?; let is_self = object.from_current_session; item.set_class_name( @@ -3432,6 +3739,12 @@ impl App { let sender = self.document.create_element("span")?; let sender_name = object_sender_name(object); sender.set_text_content(Some(if is_self { "You" } else { sender_name })); + if let Some(sender_ref) = object.sender_ref.as_deref().filter(|_| !is_self) { + sender.set_class_name("message-sender-link"); + sender.set_attribute("data-participant-ref", sender_ref)?; + sender.set_attribute("role", "button")?; + sender.set_attribute("tabindex", "0")?; + } let time = self.document.create_element("span")?; time.set_text_content(Some(&format_time(object.created_at))); meta.append_child(&sender)?; @@ -4038,6 +4351,7 @@ mod tests { conversation_id: "direct:sha256:conversation-b".into(), display_name: "B".into(), removed: false, + unread: false, }]; let guard = commit_direct_selection(&mut state, "direct:sha256:conversation-b").unwrap(); let conversations = state.direct.conversations.clone(); @@ -4224,6 +4538,7 @@ mod tests { #[test] fn configured_chat_uses_verified_profile_names_without_device_details() { let participant = ParticipantView { + card: None, display_name: "Owner".to_string(), profile_verified: Some(true), device_label: "MacBook".to_string(), @@ -4236,6 +4551,7 @@ mod tests { assert_eq!(participant_detail(&participant, false, false), "active now"); let object = ConversationObjectView { + sender_ref: None, seq: 1, sender: "Owner".to_string(), sender_profile_verified: Some(true), @@ -4259,6 +4575,7 @@ mod tests { latest_seq: 4, participants: vec![ ParticipantView { + card: None, display_name: "Owner".to_string(), profile_verified: Some(true), device_label: String::new(), @@ -4268,6 +4585,7 @@ mod tests { is_current_session: true, }, ParticipantView { + card: None, display_name: "Wrong endpoint".to_string(), profile_verified: Some(false), device_label: "Laptop".to_string(), @@ -4277,6 +4595,7 @@ mod tests { is_current_session: false, }, ParticipantView { + card: None, display_name: "Unsigned guest".to_string(), profile_verified: None, device_label: "Browser".to_string(), @@ -4286,6 +4605,7 @@ mod tests { is_current_session: false, }, ParticipantView { + card: None, display_name: String::new(), profile_verified: Some(true), device_label: String::new(), @@ -4297,6 +4617,7 @@ mod tests { ], objects: vec![ ConversationObjectView { + sender_ref: None, seq: 1, sender: "Owner".to_string(), sender_profile_verified: Some(true), @@ -4309,6 +4630,7 @@ mod tests { created_at: 1, }, ConversationObjectView { + sender_ref: None, seq: 2, sender: "Wrong profile".to_string(), sender_profile_verified: Some(false), @@ -4321,6 +4643,7 @@ mod tests { created_at: 2, }, ConversationObjectView { + sender_ref: None, seq: 3, sender: "Wrong endpoint".to_string(), sender_profile_verified: Some(false), @@ -4333,6 +4656,7 @@ mod tests { created_at: 3, }, ConversationObjectView { + sender_ref: None, seq: 4, sender: String::new(), sender_profile_verified: None, @@ -4597,6 +4921,7 @@ mod tests { conversation_id: "direct:sha256:fixture-conversation".to_string(), display_name: "Fixture Friend".to_string(), removed: false, + unread: false, }]; let bootstrap_generation = state.selection_generation; let shared_guard = commit_shared_selection(&mut state); @@ -4624,6 +4949,7 @@ mod tests { conversation_id: "direct:sha256:fixture-conversation".to_string(), display_name: "Fixture Friend".to_string(), removed: false, + unread: false, }]; let direct_guard = commit_direct_selection(&mut state, "direct:sha256:fixture-conversation") @@ -4647,6 +4973,7 @@ mod tests { conversation_id: "direct:sha256:fixture-conversation".to_string(), display_name: "Fixture Friend".to_string(), removed: false, + unread: false, }], direct_messages, ); @@ -4669,6 +4996,7 @@ mod tests { conversation_id: "direct:sha256:fixture-conversation".to_string(), display_name: "Fixture Friend".to_string(), removed: false, + unread: false, }]; let shared_guard = current_selection_guard(&state); let direct_guard = @@ -4965,12 +5293,35 @@ fn participant_detail(participant: &ParticipantView, is_local: bool, shell_mode: } else if participant.local_session_count > 0 { parts.push("web guest".to_string()); } - if participant.last_seen_at > 0 && !is_local && !local_runtime_participant && !shell_mode { + let remote_card = participant + .card + .as_ref() + .filter(|card| card.relationship != "you"); + if let Some(card) = remote_card { + // Community members: presence when they share it, otherwise the + // time of their last public message. + if card.active_now { + parts.push("active now".to_string()); + } else if participant.last_seen_at > 0 { + parts.push(last_message_text(participant.last_seen_at)); + } + } else if participant.last_seen_at > 0 && !is_local && !local_runtime_participant && !shell_mode + { parts.push(format!("seen {}", format_time(participant.last_seen_at))); } parts.join(" · ") } +/// "last message 14:02" today, otherwise with the day. +fn last_message_text(timestamp_secs: u64) -> String { + let now = (js_sys::Date::now() / 1000.0) as u64; + if local_day(timestamp_secs) == local_day(now) { + format!("last message {}", format_time(timestamp_secs)) + } else { + format!("last message {}", day_separator_text(timestamp_secs)) + } +} + /// The declared direct-conversation attachment policy, stated where the /// person meets it. Attachments need object handling and a delivery path of /// their own, designed on the unified delivery layer — until then the attach @@ -4990,6 +5341,32 @@ fn participant_shown_name(participant: &ParticipantView) -> &str { &participant.display_name } +const PARTICIPANT_CARD_REQUEST_SENT: &str = + "Contact request sent. They accept or decline it in Inbox."; + +/// The card's status line and its one action (label, action id). +fn participant_card_copy( + card: &ParticipantCard, + can_act: bool, +) -> (&'static str, Option<(&'static str, &'static str)>) { + let (text, action) = match card.relationship.as_str() { + "you" => ("This is you.", None), + "contact" if card.conversation_id.is_some() => ("Contact", Some(("Message", "message"))), + "contact" => ("Contact", None), + "requested" => ("Contact request sent. Waiting for them to accept.", None), + "pending" => ( + "Wants to add you as a contact.", + Some(("Open Inbox", "inbox")), + ), + _ if card.can_add_contact => ("In Community", Some(("Add contact", "add-contact"))), + _ => ( + "To add each other, both of you turn on Discovery in People.", + Some(("Open People", "people")), + ), + }; + (text, if can_act { action } else { None }) +} + fn participant_initial(name: &str) -> String { name.chars() .find(|ch| ch.is_alphanumeric()) @@ -5018,15 +5395,65 @@ fn room_access_policy_enabled_default() -> bool { true } +fn local_date(timestamp_secs: u64) -> js_sys::Date { + js_sys::Date::new(&(timestamp_secs as f64 * 1000.0).into()) +} + +/// Hours and minutes in the viewer's own time zone. fn format_time(timestamp_secs: u64) -> String { - let iso = js_sys::Date::new(&(timestamp_secs as f64 * 1000.0).into()) - .to_iso_string() - .as_string() - .unwrap_or_default(); - if iso.len() >= 16 { - iso[11..16].to_string() + let date = local_date(timestamp_secs); + format!("{:02}:{:02}", date.get_hours(), date.get_minutes()) +} + +/// The viewer's local calendar day: (year, month 0-11, day of month). +fn local_day(timestamp_secs: u64) -> (u32, u32, u32) { + let date = local_date(timestamp_secs); + (date.get_full_year(), date.get_month(), date.get_date()) +} + +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +enum DayLabel { + Today, + Yesterday, + Date { same_year: bool }, +} + +/// Chooses the separator label for a message day, given today and +/// yesterday in the viewer's time zone. +fn day_label(day: (u32, u32, u32), today: (u32, u32, u32), yesterday: (u32, u32, u32)) -> DayLabel { + if day == today { + DayLabel::Today + } else if day == yesterday { + DayLabel::Yesterday } else { - timestamp_secs.to_string() + DayLabel::Date { + same_year: day.0 == today.0, + } + } +} + +fn day_separator_text(timestamp_secs: u64) -> String { + let now = (js_sys::Date::now() / 1000.0) as u64; + match day_label( + local_day(timestamp_secs), + local_day(now), + local_day(now.saturating_sub(86_400)), + ) { + DayLabel::Today => "Today".to_string(), + DayLabel::Yesterday => "Yesterday".to_string(), + DayLabel::Date { same_year } => { + let options = JsObject::new(); + let _ = Reflect::set(&options, &"weekday".into(), &"short".into()); + let _ = Reflect::set(&options, &"month".into(), &"short".into()); + let _ = Reflect::set(&options, &"day".into(), &"numeric".into()); + if !same_year { + let _ = Reflect::set(&options, &"year".into(), &"numeric".into()); + } + local_date(timestamp_secs) + .to_locale_date_string("default", &options) + .as_string() + .unwrap_or_default() + } } } @@ -5400,3 +5827,102 @@ fn js_error(error: JsValue) -> String { .as_string() .unwrap_or_else(|| "browser storage error".to_string()) } + +#[cfg(test)] +mod participant_card_tests { + use super::*; + + fn card( + relationship: &str, + conversation_id: Option<&str>, + can_add_contact: bool, + ) -> ParticipantCard { + ParticipantCard { + participant_ref: "contact:0".to_string(), + relationship: relationship.to_string(), + conversation_id: conversation_id.map(str::to_string), + can_add_contact, + active_now: false, + } + } + + #[test] + fn participant_card_offers_one_action_per_relationship() { + assert_eq!( + participant_card_copy(&card("you", None, false), true).1, + None + ); + assert_eq!( + participant_card_copy(&card("contact", Some("direct:1"), false), true).1, + Some(("Message", "message")) + ); + assert_eq!( + participant_card_copy(&card("requested", None, false), true).1, + None + ); + assert_eq!( + participant_card_copy(&card("pending", None, false), true).1, + Some(("Open Inbox", "inbox")) + ); + assert_eq!( + participant_card_copy(&card("none", None, true), true).1, + Some(("Add contact", "add-contact")) + ); + assert_eq!( + participant_card_copy(&card("none", None, false), true).1, + Some(("Open People", "people")) + ); + assert_eq!( + participant_card_copy(&card("contact", Some("direct:1"), false), false).1, + None, + "without a Home token the card only informs" + ); + } + + #[test] + fn participant_card_reads_runtime_json() { + let participant: ParticipantView = serde_json::from_value(serde_json::json!({ + "card": { + "participant_ref": "contact:abc", + "relationship": "contact", + "conversation_id": "direct:1", + "can_add_contact": false + }, + "display_name": "Alex", + "profile_verified": true, + "device_label": "", + "last_seen_at": 0 + })) + .unwrap(); + let parsed = participant.card.unwrap(); + assert_eq!(parsed.participant_ref, "contact:abc"); + assert_eq!(parsed.conversation_id.as_deref(), Some("direct:1")); + let object: ConversationObjectView = serde_json::from_value(serde_json::json!({ + "seq": 1, "sender": "Alex", "sender_ref": "contact:abc", "kind": "text", + "body": "hi", "created_at": 1 + })) + .unwrap(); + assert_eq!(object.sender_ref.as_deref(), Some("contact:abc")); + } +} + +#[cfg(test)] +mod day_label_tests { + use super::*; + + #[test] + fn day_label_names_today_yesterday_and_older_dates() { + let today = (2026, 8, 30); + let yesterday = (2026, 8, 29); + assert_eq!(day_label(today, today, yesterday), DayLabel::Today); + assert_eq!(day_label(yesterday, today, yesterday), DayLabel::Yesterday); + assert_eq!( + day_label((2026, 7, 1), today, yesterday), + DayLabel::Date { same_year: true } + ); + assert_eq!( + day_label((2025, 11, 31), today, yesterday), + DayLabel::Date { same_year: false } + ); + } +} diff --git a/capsules/chat-room/browser/chat-room.js b/capsules/chat-room/browser/chat-room.js index c4ae63342..25ce8df26 100644 --- a/capsules/chat-room/browser/chat-room.js +++ b/capsules/chat-room/browser/chat-room.js @@ -2,7 +2,7 @@ import { createHomeClipboardClient, } from "/apps/home/home-clipboard-client.js?v=home-20260726a"; - import init from "./chat_room_ui.js?v=chat-room-ui-20260804a"; + import init from "./chat_room_ui.js?v=chat-room-ui-20260930c"; const chatLaunchParams = new URLSearchParams(window.location.search); const chatHomeToken = new URLSearchParams(window.location.hash.replace(/^#/, "")).get("home_token") || ""; @@ -20,6 +20,6 @@ purpose: "conversation.invite", }); init({ - module_or_path: new URL("./chat_room_ui_bg.wasm?v=chat-room-ui-20260804a", import.meta.url), + module_or_path: new URL("./chat_room_ui_bg.wasm?v=chat-room-ui-20260930c", import.meta.url), }); } diff --git a/capsules/chat-room/browser/chat_room_ui.js b/capsules/chat-room/browser/chat_room_ui.js index cc786e549..3eeff27c6 100644 --- a/capsules/chat-room/browser/chat_room_ui.js +++ b/capsules/chat-room/browser/chat_room_ui.js @@ -218,16 +218,16 @@ export function start() { wasm.start(); } -function wasm_bindgen__convert__closures_____invoke__h6c882d24848f50e5(arg0, arg1, arg2) { - wasm.wasm_bindgen__convert__closures_____invoke__h6c882d24848f50e5(arg0, arg1, arg2); +function wasm_bindgen__convert__closures_____invoke__hd8efc278d60539af(arg0, arg1) { + wasm.wasm_bindgen__convert__closures_____invoke__hd8efc278d60539af(arg0, arg1); } function wasm_bindgen__convert__closures_____invoke__he5a716c89cafc3f6(arg0, arg1, arg2) { wasm.wasm_bindgen__convert__closures_____invoke__he5a716c89cafc3f6(arg0, arg1, arg2); } -function wasm_bindgen__convert__closures_____invoke__h31c454d25a03d65b(arg0, arg1) { - wasm.wasm_bindgen__convert__closures_____invoke__h31c454d25a03d65b(arg0, arg1); +function wasm_bindgen__convert__closures_____invoke__h5883bfd253e22722(arg0, arg1, arg2) { + wasm.wasm_bindgen__convert__closures_____invoke__h5883bfd253e22722(arg0, arg1, arg2); } function wasm_bindgen__convert__closures_____invoke__h76bc78299e8b98a7(arg0, arg1) { @@ -353,6 +353,13 @@ function __wbg_get_imports() { const ret = arg0.call(arg1); return ret; }, arguments) }; + imports.wbg.__wbg_className_499ada6a38ae9b27 = function(arg0, arg1) { + const ret = arg1.className; + const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len1 = WASM_VECTOR_LEN; + getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); + }; imports.wbg.__wbg_clearTimeout_5a54f8841c30079a = function(arg0) { const ret = clearTimeout(arg0); return ret; @@ -410,10 +417,22 @@ function __wbg_get_imports() { getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; + imports.wbg.__wbg_getDate_5a70d2f6a482d99f = function(arg0) { + const ret = arg0.getDate(); + return ret; + }; imports.wbg.__wbg_getElementById_c365dd703c4a88c3 = function(arg0, arg1, arg2) { const ret = arg0.getElementById(getStringFromWasm0(arg1, arg2)); return isLikeNone(ret) ? 0 : addToExternrefTable0(ret); }; + imports.wbg.__wbg_getFullYear_8240d5a15191feae = function(arg0) { + const ret = arg0.getFullYear(); + return ret; + }; + imports.wbg.__wbg_getHours_5e476e0b9ebc42d1 = function(arg0) { + const ret = arg0.getHours(); + return ret; + }; imports.wbg.__wbg_getItem_89f57d6acc51a876 = function() { return handleError(function (arg0, arg1, arg2, arg3) { const ret = arg1.getItem(getStringFromWasm0(arg2, arg3)); var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -421,6 +440,14 @@ function __wbg_get_imports() { getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }, arguments) }; + imports.wbg.__wbg_getMinutes_c95dfb65f1ea8f02 = function(arg0) { + const ret = arg0.getMinutes(); + return ret; + }; + imports.wbg.__wbg_getMonth_25c1c5a601d72773 = function(arg0) { + const ret = arg0.getMonth(); + return ret; + }; imports.wbg.__wbg_getRandomValues_6357e7b583eb49cc = function() { return handleError(function (arg0, arg1, arg2) { const ret = arg0.getRandomValues(getArrayU8FromWasm0(arg1, arg2)); return ret; @@ -433,6 +460,10 @@ function __wbg_get_imports() { const ret = Reflect.get(arg0, arg1); return ret; }, arguments) }; + imports.wbg.__wbg_hidden_4114827cc8ff7f56 = function(arg0) { + const ret = arg0.hidden; + return ret; + }; imports.wbg.__wbg_href_6d02c53ff820b6ae = function() { return handleError(function (arg0, arg1) { const ret = arg1.href; const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); @@ -520,6 +551,16 @@ function __wbg_get_imports() { const ret = result; return ret; }; + imports.wbg.__wbg_instanceof_KeyboardEvent_c933deef57a253f3 = function(arg0) { + let result; + try { + result = arg0 instanceof KeyboardEvent; + } catch (_) { + result = false; + } + const ret = result; + return ret; + }; imports.wbg.__wbg_instanceof_Node_80ed745e9f9b24e4 = function(arg0) { let result; try { @@ -558,6 +599,13 @@ function __wbg_get_imports() { const ret = Object.is(arg0, arg1); return ret; }; + imports.wbg.__wbg_key_32aa43e1cae08d29 = function(arg0, arg1) { + const ret = arg1.key; + const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); + const len1 = WASM_VECTOR_LEN; + getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); + getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); + }; imports.wbg.__wbg_length_69bca3cb64fc8748 = function(arg0) { const ret = arg0.length; return ret; @@ -622,6 +670,10 @@ function __wbg_get_imports() { const ret = new Request(getStringFromWasm0(arg0, arg1)); return ret; }, arguments) }; + imports.wbg.__wbg_now_793306c526e2e3b6 = function() { + const ret = Date.now(); + return ret; + }; imports.wbg.__wbg_ok_5749966cb2b8535e = function(arg0) { const ret = arg0.ok; return ret; @@ -746,6 +798,9 @@ function __wbg_get_imports() { imports.wbg.__wbg_set_headers_6926da238cd32ee4 = function(arg0, arg1) { arg0.headers = arg1; }; + imports.wbg.__wbg_set_hidden_129bf2a2bb9072e0 = function(arg0, arg1) { + arg0.hidden = arg1 !== 0; + }; imports.wbg.__wbg_set_innerHTML_fb5a7e25198fc344 = function(arg0, arg1, arg2) { arg0.innerHTML = getStringFromWasm0(arg1, arg2); }; @@ -813,8 +868,8 @@ function __wbg_get_imports() { const ret = arg0.then(arg1, arg2); return ret; }; - imports.wbg.__wbg_toISOString_48d92f5754d01b49 = function(arg0) { - const ret = arg0.toISOString(); + imports.wbg.__wbg_toLocaleDateString_d7a4a330c612aae4 = function(arg0, arg1, arg2, arg3) { + const ret = arg0.toLocaleDateString(getStringFromWasm0(arg1, arg2), arg3); return ret; }; imports.wbg.__wbg_toString_7da7c8dbec78fcb8 = function(arg0) { @@ -850,29 +905,34 @@ function __wbg_get_imports() { getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true); getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true); }; - imports.wbg.__wbindgen_cast_059fe8fea69d1ac8 = function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { dtor_idx: 182, function: Function { arguments: [Externref], shim_idx: 183, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h7e0dbe805cce3b26, wasm_bindgen__convert__closures_____invoke__he5a716c89cafc3f6); + imports.wbg.__wbindgen_cast_2241b6af4c4b2941 = function(arg0, arg1) { + // Cast intrinsic for `Ref(String) -> Externref`. + const ret = getStringFromWasm0(arg0, arg1); return ret; }; - imports.wbg.__wbindgen_cast_0cfc407ea197d58e = function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { dtor_idx: 165, function: Function { arguments: [NamedExternref("Event")], shim_idx: 168, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h079344dbc08f8414, wasm_bindgen__convert__closures_____invoke__h6c882d24848f50e5); + imports.wbg.__wbindgen_cast_2d12912bac8cf5ca = function(arg0, arg1) { + // Cast intrinsic for `Closure(Closure { dtor_idx: 195, function: Function { arguments: [Externref], shim_idx: 196, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h7e0dbe805cce3b26, wasm_bindgen__convert__closures_____invoke__he5a716c89cafc3f6); return ret; }; - imports.wbg.__wbindgen_cast_17092d289d430ebb = function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { dtor_idx: 156, function: Function { arguments: [], shim_idx: 157, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + imports.wbg.__wbindgen_cast_4ebb9911410fd400 = function(arg0, arg1) { + // Cast intrinsic for `Closure(Closure { dtor_idx: 169, function: Function { arguments: [], shim_idx: 170, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h421d3dbd1097f54c, wasm_bindgen__convert__closures_____invoke__h76bc78299e8b98a7); return ret; }; - imports.wbg.__wbindgen_cast_2241b6af4c4b2941 = function(arg0, arg1) { - // Cast intrinsic for `Ref(String) -> Externref`. - const ret = getStringFromWasm0(arg0, arg1); + imports.wbg.__wbindgen_cast_826011e7843d3a83 = function(arg0, arg1) { + // Cast intrinsic for `Closure(Closure { dtor_idx: 178, function: Function { arguments: [NamedExternref("Event")], shim_idx: 181, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h94d73c4a2cdf8bae, wasm_bindgen__convert__closures_____invoke__h5883bfd253e22722); + return ret; + }; + imports.wbg.__wbindgen_cast_9367b1ddab4896c2 = function(arg0, arg1) { + // Cast intrinsic for `Closure(Closure { dtor_idx: 178, function: Function { arguments: [], shim_idx: 179, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h94d73c4a2cdf8bae, wasm_bindgen__convert__closures_____invoke__hd8efc278d60539af); return ret; }; - imports.wbg.__wbindgen_cast_3dddd7328a5e6496 = function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { dtor_idx: 165, function: Function { arguments: [NamedExternref("MessageEvent")], shim_idx: 168, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h079344dbc08f8414, wasm_bindgen__convert__closures_____invoke__h6c882d24848f50e5); + imports.wbg.__wbindgen_cast_cb7addcbe0fc4a54 = function(arg0, arg1) { + // Cast intrinsic for `Closure(Closure { dtor_idx: 178, function: Function { arguments: [NamedExternref("MessageEvent")], shim_idx: 181, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. + const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h94d73c4a2cdf8bae, wasm_bindgen__convert__closures_____invoke__h5883bfd253e22722); return ret; }; imports.wbg.__wbindgen_cast_d6cd19b81560fd6e = function(arg0) { @@ -880,11 +940,6 @@ function __wbg_get_imports() { const ret = arg0; return ret; }; - imports.wbg.__wbindgen_cast_f7cd1f4e460154b7 = function(arg0, arg1) { - // Cast intrinsic for `Closure(Closure { dtor_idx: 165, function: Function { arguments: [], shim_idx: 166, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`. - const ret = makeMutClosure(arg0, arg1, wasm.wasm_bindgen__closure__destroy__h079344dbc08f8414, wasm_bindgen__convert__closures_____invoke__h31c454d25a03d65b); - return ret; - }; imports.wbg.__wbindgen_init_externref_table = function() { const table = wasm.__wbindgen_externrefs; const offset = table.grow(4); diff --git a/capsules/chat-room/browser/chat_room_ui_bg.wasm b/capsules/chat-room/browser/chat_room_ui_bg.wasm index 7e0c389c403f882cd411c87eefb323b701b0bafe..75e67c6190a30dfb27c14ae81a2aba9f3a8f79e3 100644 GIT binary patch delta 271038 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
&jGz`#UQVtL~Y_s;pOvPFyqOs;4sU_kie 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

}xbI7})f{@C=L6PMfxZY*5 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 delta 237902 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 Y$3E5m%rZE=8F@P2m95=<)Rd?G1wrb~O#lD@ diff --git a/capsules/chat-room/browser/index.html b/capsules/chat-room/browser/index.html index cdb20776f..dc5672a85 100644 --- a/capsules/chat-room/browser/index.html +++ b/capsules/chat-room/browser/index.html @@ -6,7 +6,7 @@ Chat - + @@ -94,6 +94,13 @@

Opening conversation

    +

    |s38( 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%0AHOTCf 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