hunk.code_window: export type ObjectFilterArgs = { favorite?: boolean | null; hidden?: ObjectHiddenFilter; dateAccessed?: MaybeNot<string | null> | null; kind?: number[]; tags?: number[]; category?: Category | null }
   export type ObjectHiddenFilter = "exclude" | "include"
   export type ObjectSearchArgs = { take?: number | null; order?: ObjectSearchOrdering | null; cursor?: number[] | null; filter?: ObjectFilterArgs }
   export type ObjectSearchOrdering = { field: "dateAccessed"; value: SortOrder } | { field: "kind"; value: SortOrder }
  
hunk.labels: keep keep keep keep keep replace keep keep keep
hunk.after_edit: export type ObjectPagination = { cursor: { pub_id: number[] } } | { offset: number }
   export type ObjectSearchArgs = { take?: number | null; order?: ObjectSearchOrdering | null; pagination?: ObjectPagination | null; filter?: ObjectFilterArgs }
  
hunk.file_path: packages/client/src/core.ts
hunk.type: replace
file: import { type ReactNode, useEffect } from 'react';
  import { createPortal } from 'react-dom';
  import { useTopBarContext } from './Layout';
  
  interface Props {
  	left?: ReactNode;
  	right?: ReactNode;
  	noSearch?: boolean;
  }
  export const TopBarPortal = ({ left, right, noSearch }: Props) => {
  	const ctx = useTopBarContext();
  
  	useEffect(() => {
  		ctx.setNoSearch(noSearch ?? false);
  	}, [ctx, noSearch]);
  
  	return (
  		<>
  			{left && ctx.left && createPortal(left, ctx.left)}
  			{right && ctx.right && createPortal(right, ctx.right)}
  		</>
  	);
  };
  