All files / src/commands CommandProvider.tsx

100% Statements 2/2
100% Branches 0/0
100% Functions 1/1
100% Lines 2/2

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43                                                  251099x                         251099x        
import { useRegisterCommand } from "just-search-it";
import { CommandBindpoint, CommandMetadata } from "just-search-it";
import type { Shortcut } from "just-search-it";
 
type RegisterCommandProps<Args extends any[], ReturnType> = {
  command: CommandBindpoint<Args, ReturnType>;
  name: string;
  description: string;
  group: string;
  icon?: string | React.ReactNode;
  action: () => ReturnType;
  args: Args;
  shortcuts?: Shortcut[];
};
 
function RegisterCommand<Args extends any[], ReturnType>({
  command,
  name,
  description,
  group,
  icon,
  action,
  shortcuts,
  args,
}: RegisterCommandProps<Args, ReturnType>) {
  useRegisterCommand(
    command,
    {
      name,
      description,
      group,
      icon,
      shortcuts,
    },
    action,
    ...args,
  );
 
  return null;
}
 
export { RegisterCommand };