onboarding tracking is now wired, the tour can be replayed from Settings, install‑banner reset is included, and empty states in Tasks/Members/Guest Messages now have guided CTAs.

What changed:
  - Onboarding tracking: admin_app_opened on first authenticated dashboard load; event_created, branding_configured,
    and invite_created on their respective actions.
  - Tour replay: Settings now has an “Experience” section to replay the tour (clears tour seen flag and opens via ?tour=1).
  - Empty states: Tasks, Members, and Guest Messages now include richer copy + quick actions.
  - New helpers + copy: Tour storage helpers, new translations, and related UI wiring.
This commit is contained in:
Codex Agent
2025-12-28 18:59:12 +01:00
parent d5f038d098
commit 718c129a8d
16 changed files with 454 additions and 91 deletions

View File

@@ -1852,6 +1852,34 @@
"fileTooLarge": "Watermark must be under 3 MB."
}
},
"members": {
"title": "Guest management",
"inviteTitle": "Invite member",
"name": "Name",
"email": "Email",
"role": "Role",
"roleMember": "Member",
"roleAdmin": "Admin",
"invite": "Send invite",
"inviteSuccess": "Invitation sent",
"inviteFailed": "Invitation failed.",
"search": "Search members",
"listTitle": "Team & guests",
"copyInvite": "Invite link copied",
"copyInviteFailed": "Copy failed",
"copyInviteLabel": "Copy invite link",
"empty": "No invitations yet.",
"emptyTitle": "Invite your team",
"emptyBody": "Send the first invite so helpers can access the event.",
"emptyAction": "Send first invite",
"admin": "Admin",
"member": "Member",
"confirmRemove": "Remove member?",
"remove": "Remove",
"removeHint": "This member will lose access to the event.",
"removeSuccess": "Member removed",
"removeFailed": "Member could not be removed."
},
"tasks": {
"disabledTitle": "Task mode is off for this event",
"disabledBody": "Guests only see the photo feed. Enable tasks in the event settings to show them again.",
@@ -1866,6 +1894,10 @@
"add": "Add",
"empty": "No tasks assigned yet.",
"emptyHint": "Add tasks or import a pack.",
"emptyTitle": "No tasks yet",
"emptyBody": "Create tasks or import a pack for your event.",
"emptyActionTask": "Add task",
"emptyActionPack": "Import pack",
"addTask": "Add task",
"addTaskHint": "Create a new task for this event.",
"import": "Import pack",
@@ -2080,6 +2112,10 @@
"description": "Protect cached data from eviction."
}
},
"experienceTitle": "Experience",
"experienceBody": "Replay the quick tour or re-enable the install banner.",
"experienceReplay": "Replay quick tour",
"experienceResetInstall": "Show install banner",
"pref": {}
},
"events": {
@@ -2308,6 +2344,9 @@
"sendSuccess": "Notification sent to guests.",
"historyTitle": "Recent messages",
"empty": "No guest messages yet.",
"emptyTitle": "Send your first guest message",
"emptyBody": "Share a quick reminder or highlight to keep guests engaged.",
"emptyAction": "Compose message",
"status": {
"active": "Active",
"draft": "Draft",