@@ -5,7 +5,13 @@ import { testRender, useRenderer } from "@opentui/solid"
55import { expect , test } from "bun:test"
66import { onCleanup } from "solid-js"
77import { TuiKeybind } from "../src/config/keybind"
8- import { getOpencodeModeStack , OPENCODE_BASE_MODE , OpencodeKeymapProvider , registerOpencodeKeymap } from "../src/keymap"
8+ import {
9+ COMMAND_PALETTE_COMMAND ,
10+ getOpencodeModeStack ,
11+ OPENCODE_BASE_MODE ,
12+ OpencodeKeymapProvider ,
13+ registerOpencodeKeymap ,
14+ } from "../src/keymap"
915
1016function createResolvedKeymapConfig ( input : TuiKeybind . KeybindOverrides = { } ) {
1117 const keybinds = TuiKeybind . parse ( input )
@@ -73,12 +79,14 @@ test("mode-less bindings stay active when opencode mode changes", async () => {
7379 const offKeymap = registerOpencodeKeymap ( keymap , renderer , config )
7480 const offGlobal = keymap . registerLayer ( {
7581 commands : [
82+ { name : COMMAND_PALETTE_COMMAND , run ( ) { } } ,
7683 { name : "session.list" , run ( ) { } } ,
7784 { name : "session.new" , run ( ) { } } ,
7885 { name : "session.page.up" , run ( ) { } } ,
7986 { name : "session.first" , run ( ) { } } ,
8087 ] ,
8188 bindings : config . keybinds . gather ( "test.global" , [
89+ COMMAND_PALETTE_COMMAND ,
8290 "session.list" ,
8391 "session.new" ,
8492 "session.page.up" ,
@@ -95,7 +103,14 @@ test("mode-less bindings stay active when opencode mode changes", async () => {
95103 Array . from (
96104 keymap . getCommandBindings ( {
97105 visibility : "active" ,
98- commands : [ "session.list" , "session.new" , "session.page.up" , "session.first" , "model.list" ] ,
106+ commands : [
107+ COMMAND_PALETTE_COMMAND ,
108+ "session.list" ,
109+ "session.new" ,
110+ "session.page.up" ,
111+ "session.first" ,
112+ "model.list" ,
113+ ] ,
99114 } ) ,
100115 ( [ command , bindings ] ) => [ command , bindings . length ] ,
101116 ) ,
@@ -125,9 +140,24 @@ test("mode-less bindings stay active when opencode mode changes", async () => {
125140 const app = await testRender ( ( ) => < Harness /> )
126141 try {
127142 expect ( counts ) . toEqual ( {
128- base : { "session.list" : 1 , "session.new" : 1 , "session.page.up" : 2 , "session.first" : 2 , "model.list" : 1 } ,
129- question : { "session.list" : 1 , "session.new" : 1 , "session.page.up" : 2 , "session.first" : 2 , "model.list" : 0 } ,
143+ base : {
144+ [ COMMAND_PALETTE_COMMAND ] : 1 ,
145+ "session.list" : 1 ,
146+ "session.new" : 1 ,
147+ "session.page.up" : 2 ,
148+ "session.first" : 2 ,
149+ "model.list" : 1 ,
150+ } ,
151+ question : {
152+ [ COMMAND_PALETTE_COMMAND ] : 1 ,
153+ "session.list" : 1 ,
154+ "session.new" : 1 ,
155+ "session.page.up" : 2 ,
156+ "session.first" : 2 ,
157+ "model.list" : 0 ,
158+ } ,
130159 autocomplete : {
160+ [ COMMAND_PALETTE_COMMAND ] : 1 ,
131161 "session.list" : 1 ,
132162 "session.new" : 1 ,
133163 "session.page.up" : 2 ,
0 commit comments