diff --git a/desktop/scripts/check-file-sizes.mjs b/desktop/scripts/check-file-sizes.mjs
index 57a0b2bc93..8ff3267f5b 100644
--- a/desktop/scripts/check-file-sizes.mjs
+++ b/desktop/scripts/check-file-sizes.mjs
@@ -40,7 +40,8 @@ const overrides = new Map([
["src-tauri/src/nostr_convert.rs", 1126],
["src/shared/api/relayClientSession.ts", 1160],
["src-tauri/src/migration.rs", 1295],
- ["src-tauri/src/events.rs", 1150],
+ ["src-tauri/src/events.rs", 1200],
+ ["src/app/AppShell.tsx", 1020],
]);
await runFileSizeCheck({
diff --git a/desktop/src/app/AppShell.tsx b/desktop/src/app/AppShell.tsx
index 34f5b31d66..00fd3059d9 100644
--- a/desktop/src/app/AppShell.tsx
+++ b/desktop/src/app/AppShell.tsx
@@ -757,238 +757,249 @@ export function AppShell() {
}}
>
-
-
+
-
- {!settingsOpen ? (
-
+
+ {!settingsOpen ? (
+ {
+ void goChannel(channelId);
+ }}
+ onOpenResult={handleOpenSearchResult}
+ searchHidden={topbarSearchHidden}
+ searchLoading={topbarSearchLoading}
+ searchFocusRequest={searchFocusRequest}
+ />
+ ) : null}
+ {settingsOpen ? (
+
+
+
+ ) : (
+ <>
+ {
+ const id = workspacesHook.addWorkspace(workspace);
+ workspacesHook.switchWorkspace(id);
+ }}
+ onAddWorkspaceOpenChange={setIsAddWorkspaceOpen}
+ onNewDmOpenChange={setIsNewDmOpen}
+ onCreateChannelOpenChange={setIsCreateChannelOpen}
+ onOpenAddWorkspace={() => setIsAddWorkspaceOpen(true)}
+ onUpdateWorkspace={workspacesHook.updateWorkspace}
+ onRemoveWorkspace={workspacesHook.removeWorkspace}
+ onSwitchWorkspace={workspacesHook.switchWorkspace}
+ selfPresenceStatus={presenceSession.currentStatus}
+ workspaces={workspacesHook.workspaces}
+ onCreateChannel={async ({
+ description,
+ name,
+ visibility,
+ ttlSeconds,
+ templateId,
+ }) => {
+ const createdChannel =
+ await createChannelMutation.mutateAsync({
+ name,
+ description,
+ channelType: "stream",
+ visibility,
+ ttlSeconds,
+ });
+
+ await applyCanvas(
+ templateId,
+ createdChannel.id,
+ name,
+ );
+ await goChannel(createdChannel.id);
+ void applyAgents(templateId, createdChannel.id);
+ }}
+ onCreateForum={async ({
+ description,
+ name,
+ visibility,
+ ttlSeconds,
+ templateId,
+ }) => {
+ const createdForum =
+ await createForumMutation.mutateAsync({
+ name,
+ description,
+ channelType: "forum",
+ visibility,
+ ttlSeconds,
+ });
+
+ await applyCanvas(
+ templateId,
+ createdForum.id,
+ name,
+ );
+ await goChannel(createdForum.id);
+ void applyAgents(templateId, createdForum.id);
+ }}
+ onHideDm={handleHideDm}
+ onMarkAllChannelsRead={markAllChannelsRead}
+ onMarkChannelRead={markChannelRead}
+ onMarkChannelUnread={markChannelUnread}
+ onOpenBrowseChannels={handleOpenBrowseChannels}
+ onOpenBrowseForums={handleOpenBrowseForums}
+ onOpenDm={async ({ pubkeys }) => {
+ const directMessage =
+ await openDmMutation.mutateAsync({
+ pubkeys,
+ });
+ await goChannel(directMessage.id);
+ }}
+ onSelectAgents={() => void goAgents()}
+ onSelectChannel={(channelId) =>
+ void goChannel(channelId)
+ }
+ onSelectHome={() => void goHome()}
+ onSelectProjects={() => void goProjects()}
+ onSelectPulse={() => void goPulse()}
+ onSelectSettings={handleOpenSettings}
+ onSelectWorkflows={() => void goWorkflows()}
+ onSetPresenceStatus={(status) =>
+ presenceSession.setStatus(status)
+ }
+ onSetUserStatus={(text, emoji) =>
+ setUserStatusMutation.mutate({ text, emoji })
+ }
+ onClearUserStatus={() =>
+ setUserStatusMutation.mutate({
+ text: "",
+ emoji: "",
+ })
+ }
+ profile={profileQuery.data}
+ selfUserStatus={
+ deferredPubkey
+ ? (selfStatusQuery.data?.[
+ deferredPubkey.toLowerCase()
+ ] ?? undefined)
+ : undefined
+ }
+ selectedChannelId={selectedChannelId}
+ selectedView={selectedView}
+ unreadChannelIds={unreadChannelIds}
+ mutedChannelIds={mutedChannelIds}
+ onMuteChannel={muteChannel}
+ onUnmuteChannel={unmuteChannel}
+ starredChannelIds={starredChannelIds}
+ onStarChannel={starChannel}
+ onUnstarChannel={unstarChannel}
+ />
+
+
+
+
+
+
+
+ >
+ )}
+
+ {
+ isChannelManagementOpen={isChannelManagementOpen}
+ onBrowseChannelJoin={handleBrowseChannelJoin}
+ onBrowseDialogOpenChange={handleBrowseDialogOpenChange}
+ onChannelManagementOpenChange={setIsChannelManagementOpen}
+ onDeleteActiveChannel={() => {
+ setIsChannelManagementOpen(false);
+ void goHome({ replace: true });
+ }}
+ onSelectChannel={(channelId) => {
void goChannel(channelId);
}}
- onOpenResult={handleOpenSearchResult}
- searchHidden={topbarSearchHidden}
- searchLoading={topbarSearchLoading}
- searchFocusRequest={searchFocusRequest}
/>
- ) : null}
- {settingsOpen ? (
-
-
-
- ) : (
- <>
- {
- const id = workspacesHook.addWorkspace(workspace);
- workspacesHook.switchWorkspace(id);
- }}
- onAddWorkspaceOpenChange={setIsAddWorkspaceOpen}
- onNewDmOpenChange={setIsNewDmOpen}
- onCreateChannelOpenChange={setIsCreateChannelOpen}
- onOpenAddWorkspace={() => setIsAddWorkspaceOpen(true)}
- onUpdateWorkspace={workspacesHook.updateWorkspace}
- onRemoveWorkspace={workspacesHook.removeWorkspace}
- onSwitchWorkspace={workspacesHook.switchWorkspace}
- selfPresenceStatus={presenceSession.currentStatus}
- workspaces={workspacesHook.workspaces}
- onCreateChannel={async ({
- description,
- name,
- visibility,
- ttlSeconds,
- templateId,
- }) => {
- const createdChannel =
- await createChannelMutation.mutateAsync({
- name,
- description,
- channelType: "stream",
- visibility,
- ttlSeconds,
- });
+
+
- await applyCanvas(
- templateId,
- createdChannel.id,
- name,
- );
- await goChannel(createdChannel.id);
- void applyAgents(templateId, createdChannel.id);
- }}
- onCreateForum={async ({
- description,
- name,
- visibility,
- ttlSeconds,
- templateId,
- }) => {
- const createdForum =
- await createForumMutation.mutateAsync({
- name,
- description,
- channelType: "forum",
- visibility,
- ttlSeconds,
- });
-
- await applyCanvas(templateId, createdForum.id, name);
- await goChannel(createdForum.id);
- void applyAgents(templateId, createdForum.id);
- }}
- onHideDm={handleHideDm}
- onMarkAllChannelsRead={markAllChannelsRead}
- onMarkChannelRead={markChannelRead}
- onMarkChannelUnread={markChannelUnread}
- onOpenBrowseChannels={handleOpenBrowseChannels}
- onOpenBrowseForums={handleOpenBrowseForums}
- onOpenDm={async ({ pubkeys }) => {
- const directMessage =
- await openDmMutation.mutateAsync({
- pubkeys,
- });
- await goChannel(directMessage.id);
- }}
- onSelectAgents={() => void goAgents()}
- onSelectChannel={(channelId) =>
- void goChannel(channelId)
- }
- onSelectHome={() => void goHome()}
- onSelectProjects={() => void goProjects()}
- onSelectPulse={() => void goPulse()}
- onSelectSettings={handleOpenSettings}
- onSelectWorkflows={() => void goWorkflows()}
- onSetPresenceStatus={(status) =>
- presenceSession.setStatus(status)
- }
- onSetUserStatus={(text, emoji) =>
- setUserStatusMutation.mutate({ text, emoji })
- }
- onClearUserStatus={() =>
- setUserStatusMutation.mutate({ text: "", emoji: "" })
- }
- profile={profileQuery.data}
- selfUserStatus={
- deferredPubkey
- ? (selfStatusQuery.data?.[
- deferredPubkey.toLowerCase()
- ] ?? undefined)
- : undefined
- }
- selectedChannelId={selectedChannelId}
- selectedView={selectedView}
- unreadChannelIds={unreadChannelIds}
- mutedChannelIds={mutedChannelIds}
- onMuteChannel={muteChannel}
- onUnmuteChannel={unmuteChannel}
- starredChannelIds={starredChannelIds}
- onStarChannel={starChannel}
- onUnstarChannel={unstarChannel}
- />
-
-
-
-
-
-
-
- >
- )}
-
- {
- setIsChannelManagementOpen(false);
- void goHome({ replace: true });
- }}
- onSelectChannel={(channelId) => {
- void goChannel(channelId);
- }}
+
+
-
+
-
-
-
-
-
-
+
diff --git a/desktop/src/features/sidebar/ui/AppSidebar.tsx b/desktop/src/features/sidebar/ui/AppSidebar.tsx
index 2566670930..bf0ea2597a 100644
--- a/desktop/src/features/sidebar/ui/AppSidebar.tsx
+++ b/desktop/src/features/sidebar/ui/AppSidebar.tsx
@@ -461,36 +461,36 @@ export function AppSidebar({
) : null}
{!serverless && (
-
-
-
-
- Pulse
-
-
-
+
+
+
+
+ Pulse
+
+
+
)}
{!serverless && (
-
-
-
-
- Projects
-
-
-
+
+
+
+
+ Projects
+
+
+
)}
{!serverless && (
-
-
-
-
- Workflows
-
-
-
+
+
+
+
+ Workflows
+
+
+
)}
diff --git a/desktop/src/features/workspaces/ui/WelcomeSetup.tsx b/desktop/src/features/workspaces/ui/WelcomeSetup.tsx
index 59de243766..7fd0245a00 100644
--- a/desktop/src/features/workspaces/ui/WelcomeSetup.tsx
+++ b/desktop/src/features/workspaces/ui/WelcomeSetup.tsx
@@ -202,7 +202,10 @@ export function WelcomeSetup({
setError(null);
if (checked && customRelayUrl.trim() === "") {
setCustomRelayUrl(DEFAULT_SERVERLESS_RELAY);
- } else if (!checked && customRelayUrl.trim() === DEFAULT_SERVERLESS_RELAY) {
+ } else if (
+ !checked &&
+ customRelayUrl.trim() === DEFAULT_SERVERLESS_RELAY
+ ) {
setCustomRelayUrl("");
}
},