mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-30 23:25:24 +00:00
feat: move session sharing and collab rooms into a plugin (B12)
This commit is contained in:
1 parent
791d8656a1
commit
a276f6898c
207 files changed
+35771
-11072
No files matched your search
+2
-134
@@ -664,7 +664,6 @@
|
||||
"done_cli_link": "Open the CLI docs"
|
||||
},
|
||||
"nav": {
|
||||
"collab": "Meetings",
|
||||
"home": "Home",
|
||||
"terminal": "Terminal",
|
||||
"localTerminal": "Local Terminal",
|
||||
@@ -1032,8 +1031,6 @@
|
||||
"enableAutoTmuxDesc": "Keep your shell and anything running in it alive across disconnects and browser restarts by running inside tmux (tmux must be installed on the host)",
|
||||
"enableSessionLogging": "Session Logging",
|
||||
"enableSessionLoggingDesc": "Record terminal session output for later review",
|
||||
"allowSessionSharing": "Allow Session Sharing",
|
||||
"allowSessionSharingDesc": "Let live sessions on this host be shared via link or with other users",
|
||||
"localEchoLabel": "Local Echo",
|
||||
"localEchoDesc": "Predict safe printable keystrokes locally on slow connections. Password prompts and control input are never echoed.",
|
||||
"localEchoDefault": "Use global setting",
|
||||
@@ -1573,137 +1570,11 @@
|
||||
"join": "Join",
|
||||
"sharedSessionLabel": "{{hostName}} (shared)"
|
||||
},
|
||||
"collab": {
|
||||
"createRoom": "New room",
|
||||
"roomName": "Room name",
|
||||
"persistentRoom": "Persistent room",
|
||||
"persistentRoomHint": "Persistent rooms stay listed after the meeting ends and can be reused.",
|
||||
"noRooms": "No rooms yet. Create one to start a meeting.",
|
||||
"openRoom": "Open",
|
||||
"endRoom": "End meeting",
|
||||
"leaveRoom": "Leave",
|
||||
"deleteMember": "Remove",
|
||||
"removeMember": "Remove {{name}}",
|
||||
"removeMemberTitle": "Remove this member?",
|
||||
"removeMemberDescription": "{{name}} will lose access to this room immediately. Any active SSH viewer will be disconnected.",
|
||||
"invite": "Invite",
|
||||
"inviteTitle": "Invite members",
|
||||
"members": "Members",
|
||||
"membersPanel": "Room members and control requests",
|
||||
"membersWithCount": "Members ({{count}})",
|
||||
"online": "online",
|
||||
"offline": "offline",
|
||||
"you": "(you)",
|
||||
"hostBadge": "Host",
|
||||
"presenterBadge": "Presenting",
|
||||
"present": "Present",
|
||||
"presentTitle": "Take the stage",
|
||||
"presentHost": "Host",
|
||||
"searchHosts": "Search hosts",
|
||||
"noHostsFound": "No available hosts found.",
|
||||
"presentProtocol": "Protocol",
|
||||
"stopPresenting": "Stop presenting",
|
||||
"takeOver": "Take over",
|
||||
"takeOverConfirmTitle": "Replace the current presentation?",
|
||||
"takeOverDescription": "{{name}} is presenting now. Taking over will disconnect everyone from that stage.",
|
||||
"emptyStage": "Nobody is presenting. Take the stage to share a session.",
|
||||
"stageLoading": "Connecting to the stage...",
|
||||
"stageEnded": "The presentation ended",
|
||||
"roomEnded": "This meeting has ended",
|
||||
"presenterLabel": "{{name}} is presenting",
|
||||
"guestLink": "Guest link",
|
||||
"guestLinkOn": "Guest link is on. Anyone with the link can watch the stage.",
|
||||
"guestLinkOff": "Guest link is off.",
|
||||
"copyLink": "Copy link",
|
||||
"rotateLink": "Rotate link",
|
||||
"disableLink": "Disable link",
|
||||
"rotateLinkConfirmTitle": "Rotate the guest link?",
|
||||
"rotateLinkDescription": "The current link will stop working immediately. Connected SSH guests will be disconnected.",
|
||||
"disableLinkConfirmTitle": "Disable the guest link?",
|
||||
"disableLinkDescription": "Anonymous SSH viewers will be disconnected immediately and the current link will stop working.",
|
||||
"linkCopied": "Link copied",
|
||||
"roles": "Roles",
|
||||
"users": "Users",
|
||||
"searchUsers": "Search users",
|
||||
"endConfirmTitle": "End this meeting?",
|
||||
"endDescription": "{{name}} will end for everyone and cannot be reopened.",
|
||||
"endPersistentDescription": "The active presentation in {{name}} will stop. The room remains available for reuse.",
|
||||
"deleteRoom": "Delete room",
|
||||
"deleteConfirmTitle": "Delete this room?",
|
||||
"deleteDescription": "{{name}} will be permanently deleted for everyone and cannot be undone.",
|
||||
"invitedTo": "You were invited to \"{{name}}\"",
|
||||
"guest": {
|
||||
"title": "Meeting",
|
||||
"waiting": "Waiting for the presenter...",
|
||||
"linkInvalid": "This guest link is invalid or the meeting has ended"
|
||||
},
|
||||
"reopenFromPanel": "This meeting tab expired. Reopen the room from the Meetings panel.",
|
||||
"requestControl": "Request control",
|
||||
"cancelControlRequest": "Cancel request",
|
||||
"controlQueue": "Control requests",
|
||||
"noControlRequests": "No pending requests.",
|
||||
"grantControlTo": "Give control to {{name}}",
|
||||
"dismissControlRequest": "Dismiss {{name}}'s control request",
|
||||
"releaseControl": "Release control",
|
||||
"grantControl": "Give control",
|
||||
"revokeControl": "Take back control",
|
||||
"controlRequestedBy": "{{name}} asked for control",
|
||||
"grant": "Grant",
|
||||
"controlBadge": "In control",
|
||||
"youArePresenting": "You are presenting in another tab. Stop presenting to hand the stage over.",
|
||||
"created": "Room created",
|
||||
"invited": "Members invited",
|
||||
"roomTab": "Meeting"
|
||||
},
|
||||
"sessionSharing": {
|
||||
"guestView": {
|
||||
"loading": "Connecting to shared session...",
|
||||
"linkInvalid": "This share link is invalid, expired, or has been revoked",
|
||||
"rateLimited": "Too many attempts, please try again shortly",
|
||||
"sessionEnded": "This session has ended",
|
||||
"readOnlyBadge": "View only",
|
||||
"ownerLabel": "Host owner"
|
||||
},
|
||||
"modalTitle": "Share session",
|
||||
"shareButton": "Share",
|
||||
"notReadyToShare": "Session is not ready to share yet",
|
||||
"modeTab": {
|
||||
"link": "Link",
|
||||
"user": "User"
|
||||
},
|
||||
"linkModeDescription": "Anyone with this link can join, no account required.",
|
||||
"userModeDescription": "Share with a specific user who already has access to this host. If they do not have access yet, share the host with them first or use a link instead. Once shared, the session appears in their Connections tab.",
|
||||
"permissionLevel": {
|
||||
"label": "Permission level",
|
||||
"readOnly": "Read-only",
|
||||
"readOnlyDescription": "Can watch the session live but cannot type or interact.",
|
||||
"readWrite": "Read-write",
|
||||
"readWriteDescription": "Can type and interact with the session just like the owner."
|
||||
},
|
||||
"expiryLabel": "Link expiry",
|
||||
"createLinkButton": "Create link",
|
||||
"createShareButton": "Share with user",
|
||||
"searchUsersPlaceholder": "Search users...",
|
||||
"noUsersFound": "No users found",
|
||||
"linkCreated": "Share link created",
|
||||
"linkCopied": "Link copied to clipboard",
|
||||
"copyLink": "Copy link",
|
||||
"shareCreated": "Session shared. It will appear in their Connections tab.",
|
||||
"shareFailed": "Failed to create share",
|
||||
"userLacksHostAccess": "That user does not have access to this host yet. Share the host with them first, or use a link instead.",
|
||||
"activeShares": "Active shares",
|
||||
"noActiveShares": "No active shares for this session",
|
||||
"revoke": "Revoke",
|
||||
"revokeConfirmTitle": "Revoke this share?",
|
||||
"revokeConfirmDescription": "Anyone using this share will lose access immediately.",
|
||||
"revoked": "Share revoked",
|
||||
"revokeFailed": "Failed to revoke share",
|
||||
"joinCount": "{{count}} join",
|
||||
"joinCount_other": "{{count}} joins",
|
||||
"expiresAt": "Expires {{date}}",
|
||||
"linkShareBadge": "Link",
|
||||
"userShareBadge": "User: {{username}}",
|
||||
"loadSharesFailed": "Failed to load active shares"
|
||||
"readWrite": "Read-write"
|
||||
}
|
||||
},
|
||||
"terminal": {
|
||||
"connect": "Connect to Host",
|
||||
@@ -2251,7 +2122,6 @@
|
||||
"analyticsEnabledDesc": "Sends an anonymous daily count of users, hosts, and feature usage to help improve Termix. No personal data or connection details are ever included.",
|
||||
"analyticsEnabledLockedDesc": "This setting is locked by the ENABLE_TELEMETRY environment variable and cannot be changed here.",
|
||||
"updateAnalyticsFailed": "Failed to update analytics setting",
|
||||
"sessionSharingGloballyEnabled": "Allow Session Sharing",
|
||||
"auditForwardingTitle": "Forward to SIEM",
|
||||
"auditForwardingDesc": "Ship a copy of every audit entry to an external collector as NDJSON. Local logs stay the source of truth.",
|
||||
"auditForwardingEnvNotice": "An environment variable also configures forwarding; the URL saved here takes precedence.",
|
||||
@@ -2259,8 +2129,6 @@
|
||||
"auditForwardingTokenStored": "Bearer token (stored)",
|
||||
"auditForwardingSaved": "Audit forwarding settings saved",
|
||||
"auditForwardingSaveError": "Failed to save audit forwarding settings",
|
||||
"sessionSharingGloballyEnabledDesc": "Allow live terminal, RDP, VNC, and Telnet sessions to be shared instance-wide. Overrides every per-host sharing toggle when disabled.",
|
||||
"updateSessionSharingFailed": "Failed to update session sharing setting",
|
||||
"sessionTimeout": "Session Timeout",
|
||||
"hours": "hours",
|
||||
"sessionTimeoutRange": "Min 1h · Max 720h",
|
||||
|
||||
Reference in new issue
Block a user