pudu-ai 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/cli/index.js +25 -16
  2. package/package.json +1 -1
package/dist/cli/index.js CHANGED
@@ -2999,6 +2999,27 @@ function TasksView({ session }) {
2999
2999
  ] });
3000
3000
  }
3001
3001
 
3002
+ // src/tui/keys.ts
3003
+ function handleAppKey(screen, input, key) {
3004
+ const letter = input.toLowerCase();
3005
+ if (screen === "benchmark") return { type: "ignore" };
3006
+ if (screen === "recommend" || screen === "tasks") {
3007
+ if (letter === "q") return { type: "quit" };
3008
+ if (key.escape) return { type: "home" };
3009
+ return { type: "ignore" };
3010
+ }
3011
+ if (letter === "q" || key.escape) return { type: "quit" };
3012
+ if (letter === "b") return { type: "screen", screen: "benchmark" };
3013
+ if (letter === "m") return { type: "screen", screen: "models" };
3014
+ if (letter === "r") return { type: "screen", screen: "recommend" };
3015
+ if (letter === "h") return { type: "screen", screen: "hardware" };
3016
+ if (letter === "c") return { type: "screen", screen: "compare" };
3017
+ if (letter === "l") return { type: "screen", screen: "history" };
3018
+ if (letter === "t") return { type: "screen", screen: "tasks" };
3019
+ if (key.return && screen === "home") return { type: "screen", screen: "benchmark" };
3020
+ return { type: "ignore" };
3021
+ }
3022
+
3002
3023
  // src/tui/App.tsx
3003
3024
  import { jsx as jsx9, jsxs as jsxs8 } from "react/jsx-runtime";
3004
3025
  function App(props) {
@@ -3010,22 +3031,10 @@ function App(props) {
3010
3031
  [props.session.models]
3011
3032
  );
3012
3033
  useInput4((input, key) => {
3013
- if (screen === "benchmark") return;
3014
- if (screen === "recommend" || screen === "tasks") {
3015
- if (letter === "q") exit();
3016
- if (key.escape) setScreen("home");
3017
- return;
3018
- }
3019
- const letter = input.toLowerCase();
3020
- if (letter === "q" || key.escape) exit();
3021
- if (letter === "b") setScreen("benchmark");
3022
- if (letter === "m") setScreen("models");
3023
- if (letter === "r") setScreen("recommend");
3024
- if (letter === "h") setScreen("hardware");
3025
- if (letter === "c") setScreen("compare");
3026
- if (letter === "l") setScreen("history");
3027
- if (letter === "t") setScreen("tasks");
3028
- if (key.return && screen === "home") setScreen("benchmark");
3034
+ const result = handleAppKey(screen, input, key);
3035
+ if (result.type === "quit") exit();
3036
+ if (result.type === "home") setScreen("home");
3037
+ if (result.type === "screen") setScreen(result.screen);
3029
3038
  });
3030
3039
  return /* @__PURE__ */ jsxs8(Box9, { flexDirection: "column", padding: 1, children: [
3031
3040
  screen === "home" && /* @__PURE__ */ jsx9(Dashboard, { session: props.session }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pudu-ai",
3
- "version": "0.2.4",
3
+ "version": "0.2.5",
4
4
  "description": "Pudu-AI — local AI hardware & benchmark lab for the terminal",
5
5
  "keywords": [
6
6
  "ai",