From 5bd33b1bfe3dd133e25ec172daa72dd57b54298c Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Fri, 12 Dec 2025 09:30:29 -0500 Subject: [PATCH 01/11] Style channel menus --- .../app/component/command/Konsole.tsx | 46 ++----- .../app/component/command/KonsoleFilter.tsx | 91 +++++--------- js/app/packages/app/index.css | 13 +- .../component/ParticipantManager.tsx | 102 ++++++++-------- .../block-channel/component/UserItem.tsx | 73 +++++------ .../packages/core/component/BozzyBracket.tsx | 9 +- .../core/component/ScrollContainer.tsx | 56 +++++++++ .../core/component/TopBar/ShareButton.tsx | 114 ++++++++---------- 8 files changed, 241 insertions(+), 263 deletions(-) create mode 100644 js/app/packages/core/component/ScrollContainer.tsx diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index fd1bd44b3..0664c098b 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -2,7 +2,6 @@ import { useChannelsContext } from '@core/component/ChannelsProvider'; import { StaticMarkdownContext } from '@core/component/LexicalMarkdown/component/core/StaticMarkdown'; import { ENABLE_SEARCH_PAGINATION } from '@core/constant/featureFlags'; import type { CommandWithInfo } from '@core/hotkey/getCommands'; -import { cornerClip } from '@core/util/clipPath'; import { createFreshSearch } from '@core/util/freshSort'; import { Popover } from '@kobalte/core'; import { Command as CommandK, useCommandState } from 'cmdk-solid'; @@ -51,6 +50,7 @@ import { } from './state'; import { useCommandItems } from './useCommandItems'; import { usePaginatedSearchItems } from './useSearchItems'; +import { ClippedPanel } from '@core/component/ClippedPanel'; // equivalent to h-96 const MAX_CONTAINER_HEIGHT = 96 * 4; @@ -97,32 +97,10 @@ export function KommandMenu() { -
-
- - - - - - - - - - - - -
- - +
+ + +
@@ -335,7 +313,7 @@ export function KommandMenuInner(props: { return ( { @@ -343,11 +321,8 @@ export function KommandMenuInner(props: { setCurrentValue(value); }} > -
- +
+
-
+
diff --git a/js/app/packages/app/component/command/KonsoleFilter.tsx b/js/app/packages/app/component/command/KonsoleFilter.tsx index 1adf5527d..2fb6d2fd6 100644 --- a/js/app/packages/app/component/command/KonsoleFilter.tsx +++ b/js/app/packages/app/component/command/KonsoleFilter.tsx @@ -1,11 +1,8 @@ -import { TextButton } from '@core/component/TextButton'; +import { SegmentedControl } from '@core/component/FormControls/SegmentControls'; import { - createEffect, - createSignal, - For, + createMemo, onCleanup, onMount, - Show, } from 'solid-js'; import { commandCategoryIndex, @@ -15,8 +12,26 @@ import { import { konsoleOpen } from './state'; export function KonsoleFilter() { - const [containerRef, setContainerRef] = createSignal(); - const buttonRefs: HTMLDivElement[] = []; + const visibleCategories = createMemo(() => { + return searchCategories.listVisible() + .map((category, index) => { + if(searchCategories.isCategoryActive(index)){return category.name} + return null; + }) + .filter(Boolean) as string[]; + }); + + const selectedCategoryName = createMemo(() => { + const categories = searchCategories.listVisible(); + const index = commandCategoryIndex(); + if(index >= 0 && index < categories.length){return categories[index].name} + return categories[0]?.name || ''; + }); + + const handleCategoryChange = (categoryName: string) => { + const index = searchCategories.listVisible().findIndex(cat => cat.name === categoryName); + if(index !== -1){setCommandCategoryIndex(index)} + }; onMount(() => { const down = (e: KeyboardEvent) => { @@ -48,62 +63,14 @@ export function KonsoleFilter() { }); }); - // Scroll selected category into view when selection changes - createEffect(() => { - const container = containerRef(); - const selectedIndex = commandCategoryIndex(); - - if (container && buttonRefs[selectedIndex]) { - const selectedButtonDiv = buttonRefs[selectedIndex]; - - // Use requestAnimationFrame to ensure DOM updates are complete - requestAnimationFrame(() => { - const containerRect = container.getBoundingClientRect(); - const buttonRect = selectedButtonDiv.getBoundingClientRect(); - - const isFullyVisible = - buttonRect.left >= containerRect.left && - buttonRect.right <= containerRect.right; - - if (!isFullyVisible) { - // For rightmost items like "Companies", scroll to show them fully - // Add some padding so the button isn't right at the edge - const scrollLeft = - selectedButtonDiv.offsetLeft - - container.clientWidth + - selectedButtonDiv.offsetWidth + - 8; - container.scrollTo({ - left: Math.max(0, scrollLeft), - behavior: 'smooth', - }); - } - }); - } - }); - return ( -
- - {(item, index) => ( - - { - if (el) buttonRefs[index()] = el; - }} - theme={ - index() === commandCategoryIndex() ? 'accentFill' : 'clear' - } - text={item.name} - onMouseDown={() => setCommandCategoryIndex(index())} - class="flex-shrink-0 h-auto *:h-7 *:px-2" - /> - - )} - +
+
); } diff --git a/js/app/packages/app/index.css b/js/app/packages/app/index.css index 374428de6..ee80d929a 100644 --- a/js/app/packages/app/index.css +++ b/js/app/packages/app/index.css @@ -212,7 +212,7 @@ --color-task: var(--theme-task); --color-task-bg: color-mix(in srgb, var(--color-task), var(--color-panel) 90%); - + /* SCUFFED We probably want to let the theme determine 3 or 4 "extra" hue offsets. Rights now these are only being */ /* used as debug colors and to improve the consistency of markdown block lightness/chroma with themed css */ --color-accent-30: oklch(var(--a0l) var(--a0c) calc(var(--a0h) + 30deg)); @@ -243,6 +243,13 @@ --color-focus: var(--color-accent); } +/* +*{ + scrollbar-width: thin; + scrollbar-color: var(--color-accent); +} +*/ + /* NOTE: We use this as a compile-time css util in this file to be able reuse the * declarations while still being able to override the color. */ @utility util-bracket-bg-image { @@ -320,6 +327,10 @@ } } +@utility hide-scrollbar { + scrollbar-width: none; +} + @utility bracket-* { background-image: conic-gradient(from 90deg at top 1px left 1px, #0000 90deg, var(--color-focus) 0), diff --git a/js/app/packages/block-channel/component/ParticipantManager.tsx b/js/app/packages/block-channel/component/ParticipantManager.tsx index 6d8516d8c..6426310c4 100644 --- a/js/app/packages/block-channel/component/ParticipantManager.tsx +++ b/js/app/packages/block-channel/component/ParticipantManager.tsx @@ -6,6 +6,8 @@ import { useAddParticipantsToChannel, useRemoveParticipantsFromChannel, } from '@block-channel/signal/participants'; +import { ClippedPanel } from '@core/component/ClippedPanel'; +import { IconButton } from '@core/component/IconButton'; import { getDestinationFromOptions } from '@core/component/NewMessage'; import { RecipientSelector } from '@core/component/RecipientSelector'; import { TextButton } from '@core/component/TextButton'; @@ -18,7 +20,7 @@ import { } from '@core/user'; import InvitedIcon from '@icon/regular/paper-plane-tilt.svg'; import UsersIcon from '@icon/regular/users.svg'; -import XIcon from '@icon/regular/x.svg'; +import CloseIcon from '@icon/regular/x.svg'; import { Dialog } from '@kobalte/core/dialog'; import BracketLeft from '@macro-icons/macro-group-bracket-left.svg'; import type { ChannelParticipant } from '@service-comms/generated/models/channelParticipant'; @@ -82,59 +84,56 @@ export function ParticipantManager(props: { participantCount: number }) { - +
- -
- - {title()} - - - - -
- -
-

- Invite Participants -

- - placeholder={'Add participant'} - options={options} - selectedOptions={usersToInvite} - setSelectedOptions={setUsersToInvite} - /> -
+ + +
+ + + + {title()} +
+ +
+ + setSelectedOptions={setUsersToInvite} + selectedOptions={usersToInvite} + placeholder={'Search'} + options={options} + hideBorder + noPadding + />
-
- + -
-

- Participants{' '} - - ({channel?.participants.length}) - -

- -
+
+ +
+
@@ -176,16 +175,16 @@ export function ParticipantList(props: { }); return ( -
+
10}> setSearchQuery(e.currentTarget.value)} /> -
+
0} fallback={} @@ -193,6 +192,7 @@ export function ParticipantList(props: { { - return hovered() || open(); - }; - return ( -
setHovered(true)} - onMouseLeave={() => setHovered(false)} - > -
- -
- -

{idToEmail(props.id)}

-
-

{props.description}

+ +
setHovered(true)} + onMouseLeave={() => setHovered(false)} + > +
+ +
+ +

{idToEmail(props.id)}

+
+

{props.description}

+
+ + +
- } - > - - - - - - - - - - - -
+ ); } diff --git a/js/app/packages/core/component/BozzyBracket.tsx b/js/app/packages/core/component/BozzyBracket.tsx index 11f10fa3a..a820f7643 100644 --- a/js/app/packages/core/component/BozzyBracket.tsx +++ b/js/app/packages/core/component/BozzyBracket.tsx @@ -1,11 +1,11 @@ import { createSignal, type JSX, onMount, type ParentProps } from 'solid-js'; type BozzyBracketProps = { - active: boolean; - class?: string; style?: JSX.CSSProperties; - hover?: boolean; unfocusable?: boolean; + active: boolean; + hover?: boolean; + class?: string; }; /** @@ -29,7 +29,7 @@ export function BozzyBracket(props: ParentProps) { style={props.style} >
setBig(false)); }); } + /* TEST BEFORE REMOVING left-[-1px] top-[-1px] w-[calc(100%+2px)] h-[calc(100%+2px)] */ return (
{ + setScrollHeight(scrollContainerRef.scrollHeight); + setClientHeight(scrollContainerRef.clientHeight); + }); + + function thumbTop(){ + const maxScroll = scrollHeight() - clientHeight(); + const maxThumbTop = clientHeight() - thumbSize; + return maxScroll > 0 ? (scrollTop() / maxScroll) * maxThumbTop : 0; + }; + + return ( +
+
+ {props.children} +
+ +
+
+
+
+ ); +} diff --git a/js/app/packages/core/component/TopBar/ShareButton.tsx b/js/app/packages/core/component/TopBar/ShareButton.tsx index 7b7a395e7..de8dd6cca 100644 --- a/js/app/packages/core/component/TopBar/ShareButton.tsx +++ b/js/app/packages/core/component/TopBar/ShareButton.tsx @@ -23,11 +23,11 @@ import { type MaybeResult, } from '@core/util/maybeResult'; import { buildSimpleEntityUrl } from '@core/util/url'; -import EyeSlash from '@icon/bold/eye-slash-bold.svg'; -import GlobeIcon from '@icon/bold/globe-simple-bold.svg'; -import LinkIconBold from '@icon/bold/link-bold.svg'; -import Users from '@icon/bold/users-bold.svg'; +import IconShare from '@icon/regular/export.svg'; +import IconEyeSlash from '@icon/regular/eye-slash.svg'; +import IconLink from '@icon/regular/link.svg'; import User from '@icon/regular/user.svg'; +import IconUsers from '@icon/regular/users.svg'; import { Dialog } from '@kobalte/core/dialog'; import { DropdownMenu } from '@kobalte/core/dropdown-menu'; import { Switch as KobalteSwitch } from '@kobalte/core/switch'; @@ -54,14 +54,12 @@ import { Show, Switch, } from 'solid-js'; -import { Button } from '../FormControls/Button'; import { ForwardToChannel } from '../ForwardToChannel'; import { IconButton } from '../IconButton'; import { DropdownMenuContent, MENU_ITEM_CLASS, MenuItem } from '../Menu'; import { Permissions } from '../SharePermissions'; import { TextButton } from '../TextButton'; import { toast } from '../Toast/Toast'; -import { Tooltip } from '../Tooltip'; import { openLoginModal } from './LoginButton'; false && clickOutside; @@ -533,7 +531,7 @@ export function ShareModal(props: ShareModalProps) { - +
@@ -685,7 +683,7 @@ export function ShareButton(props: ShareButtonProps) { e.stopPropagation(); copyLink(); }, - icon: LinkIconBold, + icon: IconLink, }; }); @@ -700,76 +698,62 @@ export function ShareButton(props: ShareButtonProps) { return 'Just me'; }); + const shareIcon = createMemo(() => { + const accessLevel = shareAccessLevelText(); + if (accessLevel === 'Public') { + return IconShare; + } + if (accessLevel === 'Shared') { + return IconUsers; + } + if (accessLevel === 'Just me') { + return IconEyeSlash; + } + return IconShare; + }); + return ( <> -
- -
-
-
} - > - - - - -
- - Share -
- + icon={shareIcon()} + theme="clear" + size="sm" + /> + ); From f5dc52bec352ca0d518a6e30a1f0ac72e8f73478 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Fri, 12 Dec 2025 09:42:59 -0500 Subject: [PATCH 02/11] close konsole --- .../app/component/command/Konsole.tsx | 24 +++++++++++++------ 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index 0664c098b..a93e10562 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -51,6 +51,8 @@ import { import { useCommandItems } from './useCommandItems'; import { usePaginatedSearchItems } from './useSearchItems'; import { ClippedPanel } from '@core/component/ClippedPanel'; +import CloseIcon from '@icon/regular/x.svg'; +import { IconButton } from '@core/component/IconButton'; // equivalent to h-96 const MAX_CONTAINER_HEIGHT = 96 * 4; @@ -321,16 +323,24 @@ export function KommandMenuInner(props: { setCurrentValue(value); }} > -
- +
+ toggleKonsoleVisibility()} + tooltip={{ label: 'Close'}} + icon={CloseIcon} + theme="current" + iconSize={16} + size="sm" + /> + ❯
-
+
@@ -347,7 +357,7 @@ export function KommandMenuInner(props: { {(item, index) => ( From aa64245982603b9f53739b2adbf283910e9f51d7 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Fri, 12 Dec 2025 09:59:18 -0500 Subject: [PATCH 03/11] autofocus --- .../packages/app/component/command/Konsole.tsx | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index a93e10562..f255e33d5 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -323,7 +323,15 @@ export function KommandMenuInner(props: { setCurrentValue(value); }} > -
+
+ + toggleKonsoleVisibility()} tooltip={{ label: 'Close'}} @@ -331,13 +339,7 @@ export function KommandMenuInner(props: { theme="current" iconSize={16} size="sm" - /> - ❯ -
From b3f0f90bb6a4d1eb0cb311d5d6a005b22be191fb Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Fri, 12 Dec 2025 10:00:27 -0500 Subject: [PATCH 04/11] biome --- .../app/component/command/Konsole.tsx | 15 +++++++---- .../app/component/command/KonsoleFilter.tsx | 25 +++++++++++-------- .../core/component/ScrollContainer.tsx | 14 +++++------ 3 files changed, 32 insertions(+), 22 deletions(-) diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index f255e33d5..807c139db 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -1,8 +1,11 @@ import { useChannelsContext } from '@core/component/ChannelsProvider'; +import { ClippedPanel } from '@core/component/ClippedPanel'; +import { IconButton } from '@core/component/IconButton'; import { StaticMarkdownContext } from '@core/component/LexicalMarkdown/component/core/StaticMarkdown'; import { ENABLE_SEARCH_PAGINATION } from '@core/constant/featureFlags'; import type { CommandWithInfo } from '@core/hotkey/getCommands'; import { createFreshSearch } from '@core/util/freshSort'; +import CloseIcon from '@icon/regular/x.svg'; import { Popover } from '@kobalte/core'; import { Command as CommandK, useCommandState } from 'cmdk-solid'; import { @@ -50,9 +53,6 @@ import { } from './state'; import { useCommandItems } from './useCommandItems'; import { usePaginatedSearchItems } from './useSearchItems'; -import { ClippedPanel } from '@core/component/ClippedPanel'; -import CloseIcon from '@icon/regular/x.svg'; -import { IconButton } from '@core/component/IconButton'; // equivalent to h-96 const MAX_CONTAINER_HEIGHT = 96 * 4; @@ -334,12 +334,17 @@ export function KommandMenuInner(props: { toggleKonsoleVisibility()} - tooltip={{ label: 'Close'}} + tooltip={{ label: 'Close' }} icon={CloseIcon} theme="current" iconSize={16} size="sm" - style={{ position: 'absolute', left: '8px', top: '50%', transform: 'translateY(-50%)' }} + style={{ + position: 'absolute', + left: '8px', + top: '50%', + transform: 'translateY(-50%)', + }} />
diff --git a/js/app/packages/app/component/command/KonsoleFilter.tsx b/js/app/packages/app/component/command/KonsoleFilter.tsx index 2fb6d2fd6..1f6dd87cd 100644 --- a/js/app/packages/app/component/command/KonsoleFilter.tsx +++ b/js/app/packages/app/component/command/KonsoleFilter.tsx @@ -1,9 +1,5 @@ import { SegmentedControl } from '@core/component/FormControls/SegmentControls'; -import { - createMemo, - onCleanup, - onMount, -} from 'solid-js'; +import { createMemo, onCleanup, onMount } from 'solid-js'; import { commandCategoryIndex, searchCategories, @@ -13,9 +9,12 @@ import { konsoleOpen } from './state'; export function KonsoleFilter() { const visibleCategories = createMemo(() => { - return searchCategories.listVisible() + return searchCategories + .listVisible() .map((category, index) => { - if(searchCategories.isCategoryActive(index)){return category.name} + if (searchCategories.isCategoryActive(index)) { + return category.name; + } return null; }) .filter(Boolean) as string[]; @@ -24,13 +23,19 @@ export function KonsoleFilter() { const selectedCategoryName = createMemo(() => { const categories = searchCategories.listVisible(); const index = commandCategoryIndex(); - if(index >= 0 && index < categories.length){return categories[index].name} + if (index >= 0 && index < categories.length) { + return categories[index].name; + } return categories[0]?.name || ''; }); const handleCategoryChange = (categoryName: string) => { - const index = searchCategories.listVisible().findIndex(cat => cat.name === categoryName); - if(index !== -1){setCommandCategoryIndex(index)} + const index = searchCategories + .listVisible() + .findIndex((cat) => cat.name === categoryName); + if (index !== -1) { + setCommandCategoryIndex(index); + } }; onMount(() => { diff --git a/js/app/packages/core/component/ScrollContainer.tsx b/js/app/packages/core/component/ScrollContainer.tsx index c34e14c91..f792d620c 100644 --- a/js/app/packages/core/component/ScrollContainer.tsx +++ b/js/app/packages/core/component/ScrollContainer.tsx @@ -1,4 +1,4 @@ -import { createSignal, onMount, JSX } from 'solid-js'; +import { createSignal, type JSX, onMount } from 'solid-js'; interface ScrollContainerProps { children: JSX.Element; @@ -13,29 +13,29 @@ export function ScrollContainer(props: ScrollContainerProps) { const thumbSize = 80; let scrollContainerRef!: HTMLDivElement; - function handleScroll(e: Event){ + function handleScroll(e: Event) { const target = e.target as HTMLDivElement; setScrollTop(target.scrollTop); setScrollHeight(target.scrollHeight); setClientHeight(target.clientHeight); - }; + } onMount(() => { setScrollHeight(scrollContainerRef.scrollHeight); setClientHeight(scrollContainerRef.clientHeight); }); - function thumbTop(){ + function thumbTop() { const maxScroll = scrollHeight() - clientHeight(); const maxThumbTop = clientHeight() - thumbSize; return maxScroll > 0 ? (scrollTop() / maxScroll) * maxThumbTop : 0; - }; + } return (
@@ -47,7 +47,7 @@ export function ScrollContainer(props: ScrollContainerProps) { class="absolute right-0 w-[1px] bg-red-600" style={{ height: `${thumbSize}px`, - top: `${thumbTop()}px` + top: `${thumbTop()}px`, }} />
From 19a8d55d211bdf8da1825c13010591ee48998e58 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Mon, 15 Dec 2025 10:40:41 -0500 Subject: [PATCH 05/11] toggle --- .../app/component/command/Konsole.tsx | 29 +++++++------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index 807c139db..6e7731752 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -53,6 +53,7 @@ import { } from './state'; import { useCommandItems } from './useCommandItems'; import { usePaginatedSearchItems } from './useSearchItems'; +import { ToggleSwitch } from '@core/component/FormControls/ToggleSwitch'; // equivalent to h-96 const MAX_CONTAINER_HEIGHT = 96 * 4; @@ -100,7 +101,7 @@ export function KommandMenu() {
- +
@@ -323,28 +324,20 @@ export function KommandMenuInner(props: { setCurrentValue(value); }} > -
+
+ - - toggleKonsoleVisibility()} - tooltip={{ label: 'Close' }} - icon={CloseIcon} - theme="current" - iconSize={16} - size="sm" - style={{ - position: 'absolute', - left: '8px', - top: '50%', - transform: 'translateY(-50%)', - }} +
From b1004b9799c2c87ade310488030b0d26c51d9593 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Mon, 15 Dec 2025 10:58:35 -0500 Subject: [PATCH 06/11] fts --- js/app/packages/app/component/command/Konsole.tsx | 12 +++++++++--- js/app/packages/app/component/command/state.ts | 2 +- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index 6e7731752..fd5edb398 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -47,6 +47,7 @@ import { konsoleOpen, lastCommandTime, rawQuery, + setKonsoleMode, setLastCommandTime, setRawQuery, toggleKonsoleVisibility, @@ -334,10 +335,15 @@ export function KommandMenuInner(props: { autofocus /> { + if(val){setKonsoleMode('FULL_TEXT_SEARCH')} + else{setKonsoleMode('ENTITY_SEARCH')} + }} checked={isFullTextSearch()} - label="Full Text Search" - size="SM" + // switchRootClass='subtle' + label='Full Text Search' + size='SM' + />
diff --git a/js/app/packages/app/component/command/state.ts b/js/app/packages/app/component/command/state.ts index e1c1a0163..5cfd585a2 100644 --- a/js/app/packages/app/component/command/state.ts +++ b/js/app/packages/app/component/command/state.ts @@ -44,7 +44,7 @@ export function cleanQuery(query?: string) { } export const COMMAND_MODES = [ - // { id: 'FULL_TEXT_SEARCH', sigil: '%', label: 'Full Text Search' }, + { id: 'FULL_TEXT_SEARCH', sigil: '%', label: 'Full Text Search' }, // { id: "REGEX_SEARCH", sigil: "/", label: "Regex Search" }, // { id: "RUN_COMMAND", sigil: ">", label: "Run" }, // { id: "TEMP_CHAT", sigil: " ", label: "Temporary Chat" }, From 3926f1d40dcdd380be2e72d83357f29f26cef286 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Mon, 15 Dec 2025 11:01:59 -0500 Subject: [PATCH 07/11] 40px --- js/app/packages/app/component/command/Konsole.tsx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/js/app/packages/app/component/command/Konsole.tsx b/js/app/packages/app/component/command/Konsole.tsx index fd5edb398..42b7f12c5 100644 --- a/js/app/packages/app/component/command/Konsole.tsx +++ b/js/app/packages/app/component/command/Konsole.tsx @@ -343,14 +343,13 @@ export function KommandMenuInner(props: { // switchRootClass='subtle' label='Full Text Search' size='SM' - />
-
+
{currentKonsoleMode() === 'FULL_TEXT_SEARCH' && cleanQuery().length < 3 ? 'Enter 3 or more characters to search all documents.' From 8ff3db9cd887c9a120d7ffa21491f9155182b567 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Mon, 15 Dec 2025 11:46:27 -0500 Subject: [PATCH 08/11] biome --- js/app/packages/app/component/UnifiedListView.tsx | 6 +++--- js/app/packages/app/component/command/Konsole.tsx | 15 ++++++++------- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/js/app/packages/app/component/UnifiedListView.tsx b/js/app/packages/app/component/UnifiedListView.tsx index ae80eaf0c..f3f8d9ad0 100644 --- a/js/app/packages/app/component/UnifiedListView.tsx +++ b/js/app/packages/app/component/UnifiedListView.tsx @@ -1288,10 +1288,10 @@ export function UnifiedListView(props: UnifiedListViewProps) {
{ - if(val){setKonsoleMode('FULL_TEXT_SEARCH')} - else{setKonsoleMode('ENTITY_SEARCH')} + if (val) { + setKonsoleMode('FULL_TEXT_SEARCH'); + } else { + setKonsoleMode('ENTITY_SEARCH'); + } }} checked={isFullTextSearch()} // switchRootClass='subtle' - label='Full Text Search' - size='SM' + label="Full Text Search" + size="SM" />
From 565915f371171722ebb96da1aeb17d6284d29add Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Mon, 15 Dec 2025 12:15:58 -0500 Subject: [PATCH 09/11] globe --- .../core/component/TopBar/ShareButton.tsx | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/js/app/packages/core/component/TopBar/ShareButton.tsx b/js/app/packages/core/component/TopBar/ShareButton.tsx index de8dd6cca..60e2cb2a7 100644 --- a/js/app/packages/core/component/TopBar/ShareButton.tsx +++ b/js/app/packages/core/component/TopBar/ShareButton.tsx @@ -23,7 +23,7 @@ import { type MaybeResult, } from '@core/util/maybeResult'; import { buildSimpleEntityUrl } from '@core/util/url'; -import IconShare from '@icon/regular/export.svg'; +import IconGlobe from '@icon/regular/globe.svg'; import IconEyeSlash from '@icon/regular/eye-slash.svg'; import IconLink from '@icon/regular/link.svg'; import User from '@icon/regular/user.svg'; @@ -701,7 +701,7 @@ export function ShareButton(props: ShareButtonProps) { const shareIcon = createMemo(() => { const accessLevel = shareAccessLevelText(); if (accessLevel === 'Public') { - return IconShare; + return IconGlobe; } if (accessLevel === 'Shared') { return IconUsers; @@ -709,19 +709,11 @@ export function ShareButton(props: ShareButtonProps) { if (accessLevel === 'Just me') { return IconEyeSlash; } - return IconShare; + return IconGlobe; }); return ( <> - - + + Date: Mon, 15 Dec 2025 12:16:04 -0500 Subject: [PATCH 10/11] Update ShareButton.tsx --- js/app/packages/core/component/TopBar/ShareButton.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/app/packages/core/component/TopBar/ShareButton.tsx b/js/app/packages/core/component/TopBar/ShareButton.tsx index 60e2cb2a7..afe346a08 100644 --- a/js/app/packages/core/component/TopBar/ShareButton.tsx +++ b/js/app/packages/core/component/TopBar/ShareButton.tsx @@ -23,8 +23,8 @@ import { type MaybeResult, } from '@core/util/maybeResult'; import { buildSimpleEntityUrl } from '@core/util/url'; -import IconGlobe from '@icon/regular/globe.svg'; import IconEyeSlash from '@icon/regular/eye-slash.svg'; +import IconGlobe from '@icon/regular/globe.svg'; import IconLink from '@icon/regular/link.svg'; import User from '@icon/regular/user.svg'; import IconUsers from '@icon/regular/users.svg'; From da2286b662961fd1514409a240d1ebc955b72047 Mon Sep 17 00:00:00 2001 From: "Fake.User" Date: Mon, 15 Dec 2025 12:19:08 -0500 Subject: [PATCH 11/11] webkit active border fix --- js/app/packages/core/component/ClippedPanel.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/app/packages/core/component/ClippedPanel.tsx b/js/app/packages/core/component/ClippedPanel.tsx index 909ba008e..281f447d5 100644 --- a/js/app/packages/core/component/ClippedPanel.tsx +++ b/js/app/packages/core/component/ClippedPanel.tsx @@ -15,7 +15,7 @@ export function ClippedPanel(props: PanelProps) { return (