@sbugallo/pokecode 0.2.1 → 0.3.1

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 (143) hide show
  1. package/README.md +17 -11
  2. package/dist/adapters/opencode/tui/choices/cards.d.ts +9 -0
  3. package/dist/adapters/opencode/tui/choices/cards.d.ts.map +1 -1
  4. package/dist/adapters/opencode/tui/choices/cards.jsx +24 -17
  5. package/dist/adapters/opencode/tui/choices/cards.jsx.map +1 -1
  6. package/dist/adapters/opencode/tui/choices/encounter.d.ts +4 -1
  7. package/dist/adapters/opencode/tui/choices/encounter.d.ts.map +1 -1
  8. package/dist/adapters/opencode/tui/choices/encounter.jsx +7 -5
  9. package/dist/adapters/opencode/tui/choices/encounter.jsx.map +1 -1
  10. package/dist/adapters/opencode/tui/components/action-button.d.ts +3 -2
  11. package/dist/adapters/opencode/tui/components/action-button.d.ts.map +1 -1
  12. package/dist/adapters/opencode/tui/components/action-button.jsx +15 -7
  13. package/dist/adapters/opencode/tui/components/action-button.jsx.map +1 -1
  14. package/dist/adapters/opencode/tui/components/image-protocol.d.ts +31 -0
  15. package/dist/adapters/opencode/tui/components/image-protocol.d.ts.map +1 -0
  16. package/dist/adapters/opencode/tui/components/image-protocol.js +83 -0
  17. package/dist/adapters/opencode/tui/components/image-protocol.js.map +1 -0
  18. package/dist/adapters/opencode/tui/components/move-list.d.ts +2 -0
  19. package/dist/adapters/opencode/tui/components/move-list.d.ts.map +1 -1
  20. package/dist/adapters/opencode/tui/components/move-list.jsx +9 -11
  21. package/dist/adapters/opencode/tui/components/move-list.jsx.map +1 -1
  22. package/dist/adapters/opencode/tui/components/sprite.d.ts +4 -0
  23. package/dist/adapters/opencode/tui/components/sprite.d.ts.map +1 -1
  24. package/dist/adapters/opencode/tui/components/sprite.jsx +4 -2
  25. package/dist/adapters/opencode/tui/components/sprite.jsx.map +1 -1
  26. package/dist/adapters/opencode/tui/dex/dialog.d.ts.map +1 -1
  27. package/dist/adapters/opencode/tui/dex/dialog.jsx +8 -4
  28. package/dist/adapters/opencode/tui/dex/dialog.jsx.map +1 -1
  29. package/dist/adapters/opencode/tui/pc/actions.d.ts +4 -4
  30. package/dist/adapters/opencode/tui/pc/actions.d.ts.map +1 -1
  31. package/dist/adapters/opencode/tui/pc/actions.jsx +1 -1
  32. package/dist/adapters/opencode/tui/pc/actions.jsx.map +1 -1
  33. package/dist/adapters/opencode/tui/pc/details.d.ts +4 -1
  34. package/dist/adapters/opencode/tui/pc/details.d.ts.map +1 -1
  35. package/dist/adapters/opencode/tui/pc/details.jsx +14 -10
  36. package/dist/adapters/opencode/tui/pc/details.jsx.map +1 -1
  37. package/dist/adapters/opencode/tui/pc/dialog.d.ts +4 -3
  38. package/dist/adapters/opencode/tui/pc/dialog.d.ts.map +1 -1
  39. package/dist/adapters/opencode/tui/pc/dialog.jsx +16 -18
  40. package/dist/adapters/opencode/tui/pc/dialog.jsx.map +1 -1
  41. package/dist/adapters/opencode/tui/plugin.d.ts.map +1 -1
  42. package/dist/adapters/opencode/tui/plugin.jsx +14 -8
  43. package/dist/adapters/opencode/tui/plugin.jsx.map +1 -1
  44. package/dist/adapters/opencode/tui/sidebar/register.d.ts +6 -5
  45. package/dist/adapters/opencode/tui/sidebar/register.d.ts.map +1 -1
  46. package/dist/adapters/opencode/tui/sidebar/register.jsx +2 -2
  47. package/dist/adapters/opencode/tui/sidebar/register.jsx.map +1 -1
  48. package/dist/adapters/opencode/tui/sidebar/view.d.ts +9 -4
  49. package/dist/adapters/opencode/tui/sidebar/view.d.ts.map +1 -1
  50. package/dist/adapters/opencode/tui/sidebar/view.jsx +27 -23
  51. package/dist/adapters/opencode/tui/sidebar/view.jsx.map +1 -1
  52. package/dist/adapters/opencode/tui/state/cleanup.d.ts +1 -0
  53. package/dist/adapters/opencode/tui/state/cleanup.d.ts.map +1 -1
  54. package/dist/adapters/opencode/tui/state/cleanup.js +1 -0
  55. package/dist/adapters/opencode/tui/state/cleanup.js.map +1 -1
  56. package/dist/adapters/opencode/tui/theme.d.ts +81 -0
  57. package/dist/adapters/opencode/tui/theme.d.ts.map +1 -0
  58. package/dist/adapters/opencode/tui/theme.js +64 -0
  59. package/dist/adapters/opencode/tui/theme.js.map +1 -0
  60. package/dist/adapters/opencode/tui/travel/actions.d.ts +4 -0
  61. package/dist/adapters/opencode/tui/travel/actions.d.ts.map +1 -1
  62. package/dist/adapters/opencode/tui/travel/actions.jsx +1 -1
  63. package/dist/adapters/opencode/tui/travel/actions.jsx.map +1 -1
  64. package/dist/adapters/opencode/tui/travel/dialog.d.ts +4 -0
  65. package/dist/adapters/opencode/tui/travel/dialog.d.ts.map +1 -1
  66. package/dist/adapters/opencode/tui/travel/dialog.jsx +28 -18
  67. package/dist/adapters/opencode/tui/travel/dialog.jsx.map +1 -1
  68. package/dist/adapters/sqlite/game-repository.d.ts +2 -1
  69. package/dist/adapters/sqlite/game-repository.d.ts.map +1 -1
  70. package/dist/adapters/sqlite/game-repository.js +9 -1
  71. package/dist/adapters/sqlite/game-repository.js.map +1 -1
  72. package/dist/adapters/sqlite/queries/game-state.d.ts +2 -1
  73. package/dist/adapters/sqlite/queries/game-state.d.ts.map +1 -1
  74. package/dist/adapters/sqlite/queries/game-state.js +9 -3
  75. package/dist/adapters/sqlite/queries/game-state.js.map +1 -1
  76. package/dist/application/contracts/game.d.ts +3 -2
  77. package/dist/application/contracts/game.d.ts.map +1 -1
  78. package/dist/application/contracts/game.js +3 -2
  79. package/dist/application/contracts/game.js.map +1 -1
  80. package/dist/application/game.d.ts.map +1 -1
  81. package/dist/application/game.js +5 -1
  82. package/dist/application/game.js.map +1 -1
  83. package/dist/application/ports/game.d.ts +2 -1
  84. package/dist/application/ports/game.d.ts.map +1 -1
  85. package/dist/application/use-cases/record-usage.d.ts.map +1 -1
  86. package/dist/application/use-cases/record-usage.js +17 -4
  87. package/dist/application/use-cases/record-usage.js.map +1 -1
  88. package/dist/domain/content/catalog.d.ts +4 -0
  89. package/dist/domain/content/catalog.d.ts.map +1 -1
  90. package/dist/domain/content/catalog.js +17 -0
  91. package/dist/domain/content/catalog.js.map +1 -1
  92. package/dist/domain/content/catalogs/alola-locations-catalog.d.ts +1 -0
  93. package/dist/domain/content/catalogs/alola-locations-catalog.d.ts.map +1 -1
  94. package/dist/domain/content/catalogs/alola-locations-catalog.js +1 -0
  95. package/dist/domain/content/catalogs/alola-locations-catalog.js.map +1 -1
  96. package/dist/domain/content/catalogs/galar-locations-catalog.d.ts +1 -0
  97. package/dist/domain/content/catalogs/galar-locations-catalog.d.ts.map +1 -1
  98. package/dist/domain/content/catalogs/galar-locations-catalog.js +1 -0
  99. package/dist/domain/content/catalogs/galar-locations-catalog.js.map +1 -1
  100. package/dist/domain/content/catalogs/hoenn-locations-catalog.d.ts +1 -0
  101. package/dist/domain/content/catalogs/hoenn-locations-catalog.d.ts.map +1 -1
  102. package/dist/domain/content/catalogs/hoenn-locations-catalog.js +1 -0
  103. package/dist/domain/content/catalogs/hoenn-locations-catalog.js.map +1 -1
  104. package/dist/domain/content/catalogs/johto-locations-catalog.d.ts +1 -0
  105. package/dist/domain/content/catalogs/johto-locations-catalog.d.ts.map +1 -1
  106. package/dist/domain/content/catalogs/johto-locations-catalog.js +1 -0
  107. package/dist/domain/content/catalogs/johto-locations-catalog.js.map +1 -1
  108. package/dist/domain/content/catalogs/kalos-locations-catalog.d.ts +1 -0
  109. package/dist/domain/content/catalogs/kalos-locations-catalog.d.ts.map +1 -1
  110. package/dist/domain/content/catalogs/kalos-locations-catalog.js +1 -0
  111. package/dist/domain/content/catalogs/kalos-locations-catalog.js.map +1 -1
  112. package/dist/domain/content/catalogs/kanto-locations-catalog.d.ts +1 -0
  113. package/dist/domain/content/catalogs/kanto-locations-catalog.d.ts.map +1 -1
  114. package/dist/domain/content/catalogs/kanto-locations-catalog.js +1 -0
  115. package/dist/domain/content/catalogs/kanto-locations-catalog.js.map +1 -1
  116. package/dist/domain/content/catalogs/paldea-locations-catalog.d.ts +1 -0
  117. package/dist/domain/content/catalogs/paldea-locations-catalog.d.ts.map +1 -1
  118. package/dist/domain/content/catalogs/paldea-locations-catalog.js +1 -0
  119. package/dist/domain/content/catalogs/paldea-locations-catalog.js.map +1 -1
  120. package/dist/domain/content/catalogs/sinnoh-locations-catalog.d.ts +1 -0
  121. package/dist/domain/content/catalogs/sinnoh-locations-catalog.d.ts.map +1 -1
  122. package/dist/domain/content/catalogs/sinnoh-locations-catalog.js +1 -0
  123. package/dist/domain/content/catalogs/sinnoh-locations-catalog.js.map +1 -1
  124. package/dist/domain/content/catalogs/unova-locations-catalog.d.ts +1 -0
  125. package/dist/domain/content/catalogs/unova-locations-catalog.d.ts.map +1 -1
  126. package/dist/domain/content/catalogs/unova-locations-catalog.js +1 -0
  127. package/dist/domain/content/catalogs/unova-locations-catalog.js.map +1 -1
  128. package/dist/domain/content/schema.d.ts +1 -0
  129. package/dist/domain/content/schema.d.ts.map +1 -1
  130. package/dist/domain/content/schema.js +2 -0
  131. package/dist/domain/content/schema.js.map +1 -1
  132. package/dist/domain/exploration/exploration.d.ts +20 -0
  133. package/dist/domain/exploration/exploration.d.ts.map +1 -1
  134. package/dist/domain/exploration/exploration.js +17 -0
  135. package/dist/domain/exploration/exploration.js.map +1 -1
  136. package/dist/domain/usage/usage.d.ts +3 -3
  137. package/dist/domain/usage/usage.d.ts.map +1 -1
  138. package/dist/domain/usage/usage.js +4 -2
  139. package/dist/domain/usage/usage.js.map +1 -1
  140. package/dist/index.js +67 -10
  141. package/dist/rpc.js +8 -2
  142. package/dist/tui.js +530 -150
  143. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/adapters/opencode/tui/plugin.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAuD,MAAM,eAAe,CAAA;AASpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAK9D,OAAO,sBAAsB,CAAA;AAE7B,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAEtD,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,YAAY,CAAA;IAC5D,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,sBAAsB,CAAA;CACzD,CAAA;AAUD,wBAAgB,sBAAsB,CAAC,YAAY,wBAAsB,qBAoFxE;;AAED,wBAAuC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/adapters/opencode/tui/plugin.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAuD,MAAM,eAAe,CAAA;AAUpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAM9D,OAAO,sBAAsB,CAAA;AAE7B,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAEtD,KAAK,qBAAqB,GAAG;IAC3B,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,YAAY,CAAA;IAC5D,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,sBAAsB,CAAA;CACzD,CAAA;AAUD,wBAAgB,sBAAsB,CAAC,YAAY,wBAAsB,qBAwFxE;;AAED,wBAAuC"}
@@ -3,6 +3,7 @@ import { createClipboard, createHostClipboard, createRendererClipboardAdapter }
3
3
  import { createSignal } from "solid-js";
4
4
  import { PokecodeRpc } from "../rpc/contract.js";
5
5
  import { createPokemonTuiClient } from "./client.js";
6
+ import { createImageProtocolState } from "./components/image-protocol.js";
6
7
  import { createDexAction } from "./dex/actions.js";
7
8
  import { createExportAction } from "./export/actions.js";
8
9
  import { createPcAction } from "./pc/actions.js";
@@ -11,6 +12,7 @@ import { registerPokemonSidebar } from "./sidebar/register.js";
11
12
  import { createTuiCleanup } from "./state/cleanup.js";
12
13
  import { createTuiStateCoordinator, initialTuiState } from "./state/coordinator.js";
13
14
  import { cleanupAfterSetupFailure } from "./state/setup-failure.js";
15
+ import { toPokecodeTheme } from "./theme.js";
14
16
  import { createLocationTravelAction } from "./travel/actions.js";
15
17
  import "./controls/native.js";
16
18
  const defaultDependencies = {
@@ -29,15 +31,19 @@ export function createPokemonTuiPlugin(dependencies = defaultDependencies) {
29
31
  let clipboard;
30
32
  let unsubscribe;
31
33
  let unregisterSlot;
34
+ let disposeImageProtocol;
32
35
  const cleanup = createTuiCleanup({
33
36
  state,
34
37
  unsubscribe: () => unsubscribe?.(),
35
38
  unregisterSlot: () => unregisterSlot?.(),
36
39
  disposeClipboard: () => clipboard?.dispose(),
40
+ disposeImageProtocol: () => disposeImageProtocol?.(),
37
41
  });
38
42
  try {
39
43
  const rpc = createPokemonTuiClient(context.client.rpc(PokecodeRpc));
40
44
  clipboard = dependencies.createClipboard(context);
45
+ const imageProtocol = createImageProtocolState(context.renderer);
46
+ disposeImageProtocol = imageProtocol.dispose;
41
47
  const initialStatus = await rpc.status({});
42
48
  state.initialize(initialStatus);
43
49
  unsubscribe = rpc.onStatusChanged(state.apply);
@@ -49,11 +55,15 @@ export function createPokemonTuiPlugin(dependencies = defaultDependencies) {
49
55
  state,
50
56
  toast: (options) => context.ui.toast.show(options),
51
57
  });
58
+ // Read the host theme at render time so live theme switches propagate instantly.
59
+ const theme = () => toPokecodeTheme(context.theme);
52
60
  const chooseLocation = createLocationTravelAction({
53
61
  rpc,
54
62
  state,
55
63
  dialog: context.ui.dialog,
56
64
  resolveSprite,
65
+ imageProtocol: imageProtocol.protocol,
66
+ theme,
57
67
  travelToLocation: sidebarActions.travelToLocation,
58
68
  });
59
69
  const showDex = createDexAction({ rpc, state, dialog: context.ui.dialog });
@@ -61,11 +71,9 @@ export function createPokemonTuiPlugin(dependencies = defaultDependencies) {
61
71
  rpc,
62
72
  state,
63
73
  dialog: context.ui.dialog,
64
- theme: {
65
- base: () => context.theme.text.base,
66
- muted: () => context.theme.text.muted,
67
- },
74
+ theme,
68
75
  resolveSprite,
76
+ imageProtocol: imageProtocol.protocol,
69
77
  });
70
78
  const exportTeam = createExportAction({
71
79
  rpc,
@@ -76,10 +84,7 @@ export function createPokemonTuiPlugin(dependencies = defaultDependencies) {
76
84
  unregisterSlot = (dependencies.registerSidebar ?? registerPokemonSidebar)({
77
85
  slot: context.ui.slot,
78
86
  state: state.state,
79
- theme: {
80
- base: () => context.theme.text.base,
81
- muted: () => context.theme.text.muted,
82
- },
87
+ theme,
83
88
  hoveredStarter,
84
89
  setHoveredStarter,
85
90
  hoveredEncounterAction,
@@ -90,6 +95,7 @@ export function createPokemonTuiPlugin(dependencies = defaultDependencies) {
90
95
  chooseParty,
91
96
  exportTeam,
92
97
  resolveSprite,
98
+ imageProtocol: imageProtocol.protocol,
93
99
  });
94
100
  return cleanup;
95
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.jsx","sourceRoot":"","sources":["../../../../src/adapters/opencode/tui/plugin.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.jsx","sourceRoot":"","sources":["../../../../src/adapters/opencode/tui/plugin.tsx"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import type { Context } from "@opencode/plugin/tui/context";
2
+ import type { ColorInput } from "@opentui/core";
2
3
  import type { Accessor } from "solid-js";
3
4
  import type { GameState } from "../../../../application/contracts/game.js";
4
5
  import type { SpriteResolver } from "../../../sprites/contracts.js";
6
+ import type { ImageProtocolAccessor } from "../components/image-protocol.js";
7
+ import type { PokecodeTheme } from "../theme.js";
5
8
  import type { createSidebarActions } from "./actions.js";
6
9
  type SidebarActions = ReturnType<typeof createSidebarActions>;
7
10
  export declare function registerPokemonSidebar(dependencies: {
8
11
  readonly slot: Context["ui"]["slot"];
9
12
  readonly state: Accessor<GameState>;
10
- readonly theme: {
11
- readonly base: Accessor<string>;
12
- readonly muted: Accessor<string>;
13
- };
13
+ readonly theme: () => PokecodeTheme;
14
14
  readonly hoveredStarter: Accessor<string | null>;
15
15
  readonly setHoveredStarter: (speciesId: string | null) => void;
16
16
  readonly hoveredEncounterAction: Accessor<"catch" | "run" | null>;
@@ -21,9 +21,10 @@ export declare function registerPokemonSidebar(dependencies: {
21
21
  readonly chooseParty: () => Promise<void>;
22
22
  readonly exportTeam: () => Promise<void>;
23
23
  readonly resolveSprite: SpriteResolver;
24
+ readonly imageProtocol: ImageProtocolAccessor;
24
25
  }): () => void;
25
26
  export declare function SidebarTitle(properties: {
26
- readonly color: Accessor<string>;
27
+ readonly color: Accessor<ColorInput>;
27
28
  readonly title: string;
28
29
  }): any;
29
30
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/register.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAA;AAE1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAGxD,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAE7D,wBAAgB,sBAAsB,CAAC,YAAY,EAAE;IACnD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;IACpC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;KAAE,CAAA;IACrF,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAChD,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC9D,QAAQ,CAAC,sBAAsB,EAAE,QAAQ,CAAC,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC,CAAA;IACjE,QAAQ,CAAC,yBAAyB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,IAAI,KAAK,IAAI,CAAA;IAC5E,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;CACvC,cA0CA;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE;IACvC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB,OAEA"}
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/register.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAA;AAE1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAGxD,KAAK,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAE7D,wBAAgB,sBAAsB,CAAC,YAAY,EAAE;IACnD,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;IACpC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,aAAa,CAAA;IACnC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IAChD,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IAC9D,QAAQ,CAAC,sBAAsB,EAAE,QAAQ,CAAC,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC,CAAA;IACjE,QAAQ,CAAC,yBAAyB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,IAAI,KAAK,IAAI,CAAA;IAC5E,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAA;CAC9C,cA0CA;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE;IACvC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAA;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB,OAEA"}
@@ -6,12 +6,12 @@ export function registerPokemonSidebar(dependencies) {
6
6
  return dependencies.slot({
7
7
  append: "sidebar.content",
8
8
  render: () => (<box flexDirection="column" paddingTop={1} gap={1}>
9
- <SidebarTitle color={dependencies.theme.base} title={copy().title}/>
9
+ <SidebarTitle color={() => dependencies.theme().current.text} title={copy().title}/>
10
10
  <LocationsCommand enabled={() => dependencies.state().phase === "active"} language={() => dependencies.state().locale} onChoose={dependencies.chooseLocation}/>
11
11
  <DexCommand language={() => dependencies.state().locale} onChoose={dependencies.showDex}/>
12
12
  <PcCommand enabled={() => dependencies.state().phase === "active"} language={() => dependencies.state().locale} onChoose={dependencies.chooseParty}/>
13
13
  <ExportCommand enabled={() => dependencies.state().phase === "active"} language={() => dependencies.state().locale} onExport={dependencies.exportTeam}/>
14
- <SidebarView hoveredEncounterAction={dependencies.hoveredEncounterAction} hoveredStarter={dependencies.hoveredStarter} hoverStarter={dependencies.setHoveredStarter} mutedColor={dependencies.theme.muted} onChooseStarter={dependencies.actions.chooseStarter} onTravelRegion={dependencies.actions.travelToRegion} onTravelLocation={dependencies.actions.travelToLocation} onResolveEncounter={dependencies.actions.resolveEncounter} onResolveEvolution={dependencies.actions.resolveEvolutionChoice} onResolveMove={dependencies.actions.resolveMoveChoice} resolveSprite={dependencies.resolveSprite} setHoveredEncounterAction={dependencies.setHoveredEncounterAction} starterHoverBackground={dependencies.theme.muted} state={dependencies.state}/>
14
+ <SidebarView hoveredEncounterAction={dependencies.hoveredEncounterAction} hoveredStarter={dependencies.hoveredStarter} hoverStarter={dependencies.setHoveredStarter} onChooseStarter={dependencies.actions.chooseStarter} onTravelRegion={dependencies.actions.travelToRegion} onTravelLocation={dependencies.actions.travelToLocation} onResolveEncounter={dependencies.actions.resolveEncounter} onResolveEvolution={dependencies.actions.resolveEvolutionChoice} onResolveMove={dependencies.actions.resolveMoveChoice} resolveSprite={dependencies.resolveSprite} imageProtocol={dependencies.imageProtocol} setHoveredEncounterAction={dependencies.setHoveredEncounterAction} theme={dependencies.theme} state={dependencies.state}/>
15
15
  </box>),
16
16
  });
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"register.jsx","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/register.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register.jsx","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/register.tsx"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
- import type { Accessor } from "solid-js";
2
1
  import type { GameState } from "../../../../application/contracts/game.js";
3
2
  import type { PendingEncounter } from "../../../../domain/encounters/encounter.js";
4
3
  import type { SpriteResolver } from "../../../sprites/contracts.js";
4
+ import type { ImageProtocolAccessor } from "../components/image-protocol.js";
5
+ import { type PokecodeSurface, type PokecodeTheme } from "../theme.js";
5
6
  type SidebarViewKind = "starter" | "move" | "evolution" | "region" | "encounter" | "team";
6
7
  export declare function sidebarViewFor(state: GameState): SidebarViewKind;
7
8
  export declare function SidebarView(properties: {
8
9
  readonly hoveredEncounterAction: () => "catch" | "run" | null;
9
10
  readonly hoveredStarter: () => string | null;
10
11
  readonly hoverStarter: (speciesId: string | null) => void;
11
- readonly mutedColor: () => string;
12
12
  readonly onChooseStarter: (regionId: string, speciesId: string) => Promise<void>;
13
13
  readonly onTravelRegion: (regionId: string) => Promise<void>;
14
14
  readonly onTravelLocation: (locationId: string) => Promise<void>;
@@ -16,28 +16,33 @@ export declare function SidebarView(properties: {
16
16
  readonly onResolveEvolution: (choiceId: string, selectedSpeciesId: string) => Promise<void>;
17
17
  readonly onResolveMove: (choiceId: string, selectedMoveId: string) => Promise<void>;
18
18
  readonly resolveSprite: SpriteResolver;
19
+ readonly imageProtocol: ImageProtocolAccessor;
19
20
  readonly setHoveredEncounterAction: (action: "catch" | "run" | null) => void;
20
- readonly starterHoverBackground: string | Accessor<string>;
21
+ readonly theme: () => PokecodeTheme;
21
22
  readonly state: () => GameState;
22
23
  }): any;
23
24
  type StarterButtonsProperties = {
24
25
  readonly resolveSprite: SpriteResolver;
26
+ readonly imageProtocol: ImageProtocolAccessor;
25
27
  readonly regionId?: () => string | undefined;
26
28
  readonly hovered: () => string | null;
27
- readonly hoverBackground: string | Accessor<string>;
28
29
  readonly language?: (() => GameState["locale"]) | undefined;
29
30
  readonly onChoose: (regionId: string, speciesId: string) => Promise<void>;
30
31
  readonly onHover: (speciesId: string | null) => void;
32
+ readonly theme?: (() => PokecodeSurface) | undefined;
31
33
  };
32
34
  export declare function StarterButtons(properties: StarterButtonsProperties): any;
33
35
  export declare function LocationProgress(properties: {
34
36
  readonly state: () => GameState;
35
37
  readonly onTravel: (locationId: string) => Promise<void>;
38
+ readonly theme?: (() => PokecodeSurface) | undefined;
36
39
  }): any;
37
40
  export declare function PartyGrid(properties: {
38
41
  readonly language?: (() => GameState["locale"]) | undefined;
39
42
  readonly party: () => GameState["party"];
40
43
  readonly resolveSprite: SpriteResolver;
44
+ readonly imageProtocol: ImageProtocolAccessor;
45
+ readonly theme?: (() => PokecodeSurface) | undefined;
41
46
  }): any;
42
47
  export {};
43
48
  //# sourceMappingURL=view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/view.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAA;AAG1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAElF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAInE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAE5E,OAAO,EAAyB,KAAK,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAA;AAE7F,KAAK,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,MAAM,CAAA;AAEzF,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,eAAe,CAShE;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE;IACtC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,OAAO,GAAG,KAAK,GAAG,IAAI,CAAA;IAC7D,QAAQ,CAAC,cAAc,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IAC5C,QAAQ,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACzD,QAAQ,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAChF,QAAQ,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5D,QAAQ,CAAC,gBAAgB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAChE,QAAQ,CAAC,kBAAkB,EAAE,CAC3B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,gBAAgB,EAC3B,OAAO,EAAE,OAAO,KACb,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB,QAAQ,CAAC,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3F,QAAQ,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnF,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAA;IAC7C,QAAQ,CAAC,yBAAyB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,IAAI,KAAK,IAAI,CAAA;IAC5E,QAAQ,CAAC,KAAK,EAAE,MAAM,aAAa,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,CAAA;CAChC,OAyFA;AAED,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAA;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACzE,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAA;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,eAAe,CAAC,GAAG,SAAS,CAAA;CACrD,CAAA;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,wBAAwB,OAclE;AAmGD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,CAAA;IAC/B,QAAQ,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,eAAe,CAAC,GAAG,SAAS,CAAA;CACrD,OAkDA;AAED,wBAAgB,SAAS,CAAC,UAAU,EAAE;IACpC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAAA;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,SAAS,CAAC,OAAO,CAAC,CAAA;IACxC,QAAQ,CAAC,aAAa,EAAE,cAAc,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAA;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,eAAe,CAAC,GAAG,SAAS,CAAA;CACrD,OA2BA"}
@@ -7,6 +7,7 @@ import { PendingChoiceCard, RegionChoiceCard } from "../choices/cards.js";
7
7
  import { EncounterCard } from "../choices/encounter.js";
8
8
  import { PokecodeActionButton } from "../components/action-button.js";
9
9
  import { Sprite } from "../components/sprite.js";
10
+ import { fallbackPokecodeTheme } from "../theme.js";
10
11
  export function sidebarViewFor(state) {
11
12
  if (state.phase === "onboarding")
12
13
  return "starter";
@@ -24,48 +25,50 @@ export function sidebarViewFor(state) {
24
25
  return "team";
25
26
  }
26
27
  export function SidebarView(properties) {
28
+ const surface = () => properties.theme().current;
27
29
  const view = () => sidebarViewFor(properties.state());
28
30
  const decisionCount = () => properties.state().pendingChoices.filter((choice) => choice.kind !== "catch").length;
29
31
  const encounterCount = () => properties.state().pendingEncounterCount;
30
32
  return (<box flexDirection="column" gap={1}>
31
33
  <Show when={decisionCount() + encounterCount() > 0}>
32
- <text>
34
+ <text fg={surface().text}>
33
35
  {uiCopy(properties.state().locale).queueCounts(decisionCount(), encounterCount())}
34
36
  </text>
35
37
  </Show>
36
38
  <Switch>
37
39
  <Match when={view() === "starter"}>
38
- <StarterButtons hovered={properties.hoveredStarter} hoverBackground={properties.starterHoverBackground} language={() => properties.state().locale} regionId={() => {
40
+ <StarterButtons hovered={properties.hoveredStarter} language={() => properties.state().locale} regionId={() => {
39
41
  const choice = properties.state().pendingChoices[0];
40
42
  return choice?.kind === "starter"
41
43
  ? decodeStarterChoiceProjection(choice.payload)?.region
42
44
  : undefined;
43
- }} onChoose={properties.onChooseStarter} onHover={properties.hoverStarter} resolveSprite={properties.resolveSprite}/>
45
+ }} onChoose={properties.onChooseStarter} onHover={properties.hoverStarter} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} theme={surface}/>
44
46
  </Match>
45
47
  <Match when={view() === "move" || view() === "evolution"}>
46
- <PendingChoiceCard state={properties.state} onResolveEvolution={properties.onResolveEvolution} onResolveMove={properties.onResolveMove} resolveSprite={properties.resolveSprite} language={() => properties.state().locale}/>
48
+ <PendingChoiceCard state={properties.state} onResolveEvolution={properties.onResolveEvolution} onResolveMove={properties.onResolveMove} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} language={() => properties.state().locale} theme={surface}/>
47
49
  </Match>
48
50
  <Match when={view() === "region"}>
49
51
  <RegionChoiceCard choice={() => properties.state().pendingChoices[0]} language={() => properties.state().locale} visitedRegionIds={() => properties
50
52
  .state()
51
53
  .exploration?.regions.filter((region) => region.visited)
52
- .map((region) => region.id) ?? []} onTravel={properties.onTravelRegion}/>
54
+ .map((region) => region.id) ?? []} onTravel={properties.onTravelRegion} theme={surface}/>
53
55
  </Match>
54
56
  <Match when={view() === "encounter"}>
55
57
  <Show when={properties.state().pendingEncounter} keyed>
56
- {(encounter) => (<EncounterCard encounter={() => encounter} mutedColor={properties.mutedColor} hoveredAction={properties.hoveredEncounterAction} onHover={properties.setHoveredEncounterAction} onResolve={properties.onResolveEncounter} resolveSprite={properties.resolveSprite} language={() => properties.state().locale}/>)}
58
+ {(encounter) => (<EncounterCard encounter={() => encounter} hoveredAction={properties.hoveredEncounterAction} onHover={properties.setHoveredEncounterAction} onResolve={properties.onResolveEncounter} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} language={() => properties.state().locale} theme={surface}/>)}
57
59
  </Show>
58
60
  </Match>
59
61
  <Match when={view() === "team"}>
60
- <LocationProgress state={properties.state} onTravel={properties.onTravelLocation}/>
61
- <PartyGrid language={() => properties.state().locale} party={() => properties.state().party} resolveSprite={properties.resolveSprite}/>
62
+ <LocationProgress state={properties.state} onTravel={properties.onTravelLocation} theme={surface}/>
63
+ <PartyGrid language={() => properties.state().locale} party={() => properties.state().party} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} theme={surface}/>
62
64
  </Match>
63
65
  </Switch>
64
66
  </box>);
65
67
  }
66
68
  export function StarterButtons(properties) {
69
+ const surface = () => properties.theme?.() ?? fallbackPokecodeTheme.current;
67
70
  return (<box flexDirection="column" gap={1}>
68
- <text>{uiCopy(properties.language?.() ?? "en").chooseStarter}</text>
71
+ <text fg={surface().accent}>{uiCopy(properties.language?.() ?? "en").chooseStarter}</text>
69
72
  {regions(properties.language?.() ?? "en")
70
73
  .filter((region) => properties.regionId?.() === undefined || region.id === properties.regionId())
71
74
  .map((region) => (<StarterRegionCard {...properties} region={region}/>))}
@@ -82,12 +85,11 @@ function StarterRegionCard(properties) {
82
85
  const columnGap = () => Math.min(3, Math.max(1, Math.floor((rowWidth() - cellWidth() * 3) / 2)));
83
86
  // Text floors half-column offsets; flex centering rounds them up for boxes.
84
87
  const gridInset = () => Math.max(0, Math.floor((rowWidth() - (cellWidth() * 3 + columnGap() * 2)) / 2));
85
- const hoverBackground = () => typeof properties.hoverBackground === "function"
86
- ? properties.hoverBackground()
87
- : properties.hoverBackground;
88
+ const surface = () => properties.theme?.() ?? fallbackPokecodeTheme.current;
89
+ const hoverBackground = () => surface().highlight;
88
90
  const starters = () => startersForRegion(properties.region.id, properties.language?.() ?? "en");
89
91
  return (<box alignItems="center" border borderStyle="rounded" flexDirection="column" flexShrink={0} gap={1} padding={1}>
90
- <text>{properties.region.name}</text>
92
+ <text fg={surface().accent}>{properties.region.name}</text>
91
93
  <box flexDirection="row" width="100%" onSizeChange={function () {
92
94
  setRowWidth(this.width);
93
95
  }}>
@@ -103,7 +105,7 @@ function StarterRegionCard(properties) {
103
105
  }} onFocus={() => properties.onHover(starter.speciesId)} onBlur={() => properties.onHover(null)}>
104
106
  <box position="absolute" left={-1} top={0} bottom={0} width={cellWidth() + 2} backgroundColor={properties.hovered() === starter.speciesId ? hoverBackground() : "transparent"} zIndex={0}/>
105
107
  <box height={4} zIndex={1}>
106
- <Sprite compactFallback width={9} language={properties.language} resolve={properties.resolveSprite} shiny={false} gender="male" speciesId={starter.speciesId}/>
108
+ <Sprite compactFallback width={9} language={properties.language} resolve={properties.resolveSprite} protocol={properties.imageProtocol} theme={surface} shiny={false} gender="male" speciesId={starter.speciesId}/>
107
109
  </box>
108
110
  </button>))}
109
111
  </box>
@@ -112,6 +114,7 @@ function StarterRegionCard(properties) {
112
114
  }
113
115
  export function LocationProgress(properties) {
114
116
  const state = properties.state;
117
+ const surface = () => properties.theme?.() ?? fallbackPokecodeTheme.current;
115
118
  const [hoveredTravel, setHoveredTravel] = createSignal(false);
116
119
  const currentLocation = () => state().exploration?.locations.find((location) => location.id === state().location)?.name ??
117
120
  uiCopy(state().locale).unknown;
@@ -135,30 +138,31 @@ export function LocationProgress(properties) {
135
138
  return threshold === 0 ? 0 : Math.min((progress / threshold) * 100, 100);
136
139
  };
137
140
  return (<box flexDirection="column">
138
- <text>{`${uiCopy(state().locale).location}: ${currentLocation()} (${currentRegion()})`}</text>
141
+ <text fg={surface().text}>{`${uiCopy(state().locale).location}: ${currentLocation()} (${currentRegion()})`}</text>
139
142
  <box flexDirection="row" width="100%">
140
- <text>{`${uiCopy(state().locale).nextLocation}: `}</text>
141
- {travelTarget() === null ? (<text>{`${percentage().toFixed(2)}%`}</text>) : (<PokecodeActionButton hovered={hoveredTravel} label={uiCopy(state().locale).travel} onActivate={travelToUnlockedLocation} onHover={() => setHoveredTravel(true)} onLeave={() => setHoveredTravel(false)} tone="success"/>)}
143
+ <text fg={surface().muted}>{`${uiCopy(state().locale).nextLocation}: `}</text>
144
+ {travelTarget() === null ? (<text fg={surface().muted}>{`${percentage().toFixed(2)}%`}</text>) : (<PokecodeActionButton hovered={hoveredTravel} label={uiCopy(state().locale).travel} onActivate={travelToUnlockedLocation} onHover={() => setHoveredTravel(true)} onLeave={() => setHoveredTravel(false)} theme={properties.theme} tone="success"/>)}
142
145
  </box>
143
146
  </box>);
144
147
  }
145
148
  export function PartyGrid(properties) {
146
149
  const occupiedSlots = () => properties.party().filter((slot) => slot.pokemon !== null);
147
150
  return (<box flexDirection="column" gap={1}>
148
- <PartyRow language={properties.language} resolveSprite={properties.resolveSprite} slots={() => occupiedSlots().slice(0, 2)}/>
149
- <PartyRow language={properties.language} resolveSprite={properties.resolveSprite} slots={() => occupiedSlots().slice(2, 4)}/>
150
- <PartyRow language={properties.language} resolveSprite={properties.resolveSprite} slots={() => occupiedSlots().slice(4, 6)}/>
151
+ <PartyRow language={properties.language} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} theme={properties.theme} slots={() => occupiedSlots().slice(0, 2)}/>
152
+ <PartyRow language={properties.language} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} theme={properties.theme} slots={() => occupiedSlots().slice(2, 4)}/>
153
+ <PartyRow language={properties.language} resolveSprite={properties.resolveSprite} imageProtocol={properties.imageProtocol} theme={properties.theme} slots={() => occupiedSlots().slice(4, 6)}/>
151
154
  </box>);
152
155
  }
153
156
  function PartyRow(properties) {
157
+ const surface = () => properties.theme?.() ?? fallbackPokecodeTheme.current;
154
158
  return (<box flexDirection="row" gap={1}>
155
159
  {properties.slots().map((slot) => (<box alignItems="center" flexDirection="column" height={6} width={18}>
156
160
  {slot.pokemon === null ? null : (<>
157
- <Sprite language={properties.language} resolve={properties.resolveSprite} shiny={slot.pokemon.shiny} gender={slot.pokemon.gender} speciesId={slot.pokemon.speciesId}/>
158
- <text>
161
+ <Sprite language={properties.language} resolve={properties.resolveSprite} protocol={properties.imageProtocol} theme={surface} shiny={slot.pokemon.shiny} gender={slot.pokemon.gender} speciesId={slot.pokemon.speciesId}/>
162
+ <text fg={surface().text}>
159
163
  {`${slot.pokemon.name} ${slot.pokemon.gender === "male" ? "♂" : slot.pokemon.gender === "female" ? "♀" : "—"}`}
160
164
  </text>
161
- <text>{`Lv.${slot.pokemon.level}`}</text>
165
+ <text fg={surface().muted}>{`Lv.${slot.pokemon.level}`}</text>
162
166
  </>)}
163
167
  </box>))}
164
168
  </box>);
@@ -1 +1 @@
1
- {"version":3,"file":"view.jsx","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.jsx","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/sidebar/view.tsx"],"names":[],"mappings":"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"}
@@ -4,5 +4,6 @@ export declare function createTuiCleanup(dependencies: {
4
4
  readonly unsubscribe?: () => void;
5
5
  readonly unregisterSlot?: () => void;
6
6
  readonly disposeClipboard?: () => void | Promise<void>;
7
+ readonly disposeImageProtocol?: () => void;
7
8
  }): () => Promise<void>;
8
9
  //# sourceMappingURL=cleanup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/state/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAA;AAEjE,wBAAgB,gBAAgB,CAAC,YAAY,EAAE;IAC7C,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAA;IAC5D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;IACjC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;IACpC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACvD,SAGY,OAAO,CAAC,IAAI,CAAC,CAiEzB"}
1
+ {"version":3,"file":"cleanup.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/state/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAA;AAEjE,wBAAgB,gBAAgB,CAAC,YAAY,EAAE;IAC7C,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAA;IAC5D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAA;IACjC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAA;IACpC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAA;CAC3C,SAGY,OAAO,CAAC,IAAI,CAAC,CAkEzB"}
@@ -24,6 +24,7 @@ export function createTuiCleanup(dependencies) {
24
24
  };
25
25
  runSynchronousDisposer(dependencies.unsubscribe);
26
26
  runSynchronousDisposer(dependencies.unregisterSlot);
27
+ runSynchronousDisposer(dependencies.disposeImageProtocol);
27
28
  const finish = () => {
28
29
  if (failures.length === 1)
29
30
  throw failures[0];
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/state/cleanup.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,YAKhC;IACC,IAAI,cAAyC,CAAA;IAE7C,OAAO,GAAkB,EAAE;QACzB,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO,cAAc,CAAA;QAEvD,IAAI,cAA2B,CAAA;QAC/B,IAAI,aAAwC,CAAA;QAC5C,cAAc,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrD,cAAc,GAAG,OAAO,CAAA;YACxB,aAAa,GAAG,MAAM,CAAA;QACxB,CAAC,CAAC,CAAA;QAEF,8EAA8E;QAC9E,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;QAE5B,MAAM,QAAQ,GAAc,EAAE,CAAA;QAC9B,MAAM,sBAAsB,GAAG,CAAC,OAAiC,EAAQ,EAAE;YACzE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAM;YACjC,IAAI,CAAC;gBACH,OAAO,EAAE,CAAA;YACX,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QACD,sBAAsB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;QAChD,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;QAEnD,MAAM,MAAM,GAAG,GAAS,EAAE;YACxB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC5C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,cAAc,CAAC,QAAQ,EAAE,2CAA2C,CAAC,CAAA;YACjF,CAAC;QACH,CAAC,CAAA;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAAA;YAClD,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC5B,GAAG,EAAE;gBACH,IAAI,CAAC;oBACH,MAAM,EAAE,CAAA;oBACR,cAAc,EAAE,CAAA;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,aAAa,CAAC,KAAK,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;gBACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACpB,IAAI,CAAC;oBACH,MAAM,EAAE,CAAA;oBACR,cAAc,EAAE,CAAA;gBAClB,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACvB,aAAa,CAAC,aAAa,CAAC,CAAA;gBAC9B,CAAC;YACH,CAAC,CACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,IAAI,CAAC;gBACH,MAAM,EAAE,CAAA;gBACR,cAAc,EAAE,CAAA;YAClB,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,aAAa,CAAC,aAAa,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAA;IACvB,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../../../../src/adapters/opencode/tui/state/cleanup.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,YAMhC;IACC,IAAI,cAAyC,CAAA;IAE7C,OAAO,GAAkB,EAAE;QACzB,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO,cAAc,CAAA;QAEvD,IAAI,cAA2B,CAAA;QAC/B,IAAI,aAAwC,CAAA;QAC5C,cAAc,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrD,cAAc,GAAG,OAAO,CAAA;YACxB,aAAa,GAAG,MAAM,CAAA;QACxB,CAAC,CAAC,CAAA;QAEF,8EAA8E;QAC9E,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,CAAA;QAE5B,MAAM,QAAQ,GAAc,EAAE,CAAA;QAC9B,MAAM,sBAAsB,GAAG,CAAC,OAAiC,EAAQ,EAAE;YACzE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAM;YACjC,IAAI,CAAC;gBACH,OAAO,EAAE,CAAA;YACX,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAA;QACD,sBAAsB,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;QAChD,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;QACnD,sBAAsB,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAA;QAEzD,MAAM,MAAM,GAAG,GAAS,EAAE;YACxB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC5C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,cAAc,CAAC,QAAQ,EAAE,2CAA2C,CAAC,CAAA;YACjF,CAAC;QACH,CAAC,CAAA;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAAA;YAClD,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAC5B,GAAG,EAAE;gBACH,IAAI,CAAC;oBACH,MAAM,EAAE,CAAA;oBACR,cAAc,EAAE,CAAA;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,aAAa,CAAC,KAAK,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;gBACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACpB,IAAI,CAAC;oBACH,MAAM,EAAE,CAAA;oBACR,cAAc,EAAE,CAAA;gBAClB,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACvB,aAAa,CAAC,aAAa,CAAC,CAAA;gBAC9B,CAAC;YACH,CAAC,CACF,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,IAAI,CAAC;gBACH,MAAM,EAAE,CAAA;gBACR,cAAc,EAAE,CAAA;YAClB,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,aAAa,CAAC,aAAa,CAAC,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAA;IACvB,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,81 @@
1
+ import { RGBA } from "@opentui/core";
2
+ /** Semantic colors of one theme surface (base view or dialog view). */
3
+ export type PokecodeSurface = {
4
+ readonly text: RGBA;
5
+ readonly muted: RGBA;
6
+ readonly accent: RGBA;
7
+ readonly success: RGBA;
8
+ readonly error: RGBA;
9
+ readonly info: RGBA;
10
+ readonly background: RGBA;
11
+ readonly raised: RGBA;
12
+ readonly highlight: RGBA;
13
+ readonly border: RGBA;
14
+ readonly primary: PokecodeActionColors;
15
+ readonly secondary: PokecodeActionColors;
16
+ };
17
+ export type PokecodeActionColors = {
18
+ readonly background: RGBA;
19
+ readonly backgroundHovered: RGBA;
20
+ readonly label: RGBA;
21
+ readonly labelHovered: RGBA;
22
+ };
23
+ /** Structural subset of the resolved host theme that Pokecode surfaces consume. */
24
+ export type PokecodeTheme = {
25
+ /** Colors for surfaces rendered on the base view (sidebar, cards). */
26
+ readonly current: PokecodeSurface;
27
+ /** Colors re-resolved on the raised dialog surface. */
28
+ readonly dialog: PokecodeSurface;
29
+ };
30
+ type StatefulColor = {
31
+ readonly base: RGBA;
32
+ readonly state: (states: {
33
+ readonly hovered?: boolean;
34
+ }) => RGBA | undefined;
35
+ };
36
+ /** Structural subset of the v2 resolved theme (`context.theme`). */
37
+ export type PokecodeResolvedTheme = {
38
+ readonly hue: {
39
+ /** Named hue scales (100-900); `accent` is mandatory in every theme. */
40
+ readonly accent: Readonly<Partial<Record<number, RGBA>>>;
41
+ };
42
+ readonly text: {
43
+ readonly base: RGBA;
44
+ readonly muted: RGBA;
45
+ readonly action: {
46
+ readonly primary: StatefulColor;
47
+ readonly secondary: StatefulColor;
48
+ };
49
+ readonly feedback: {
50
+ readonly error: {
51
+ readonly base: RGBA;
52
+ };
53
+ readonly success: {
54
+ readonly base: RGBA;
55
+ };
56
+ readonly info: {
57
+ readonly base: RGBA;
58
+ };
59
+ };
60
+ };
61
+ readonly background: {
62
+ readonly base: RGBA;
63
+ readonly raised: {
64
+ readonly base: RGBA;
65
+ readonly max: RGBA;
66
+ };
67
+ readonly action: {
68
+ readonly primary: StatefulColor;
69
+ readonly secondary: StatefulColor;
70
+ };
71
+ };
72
+ readonly border: {
73
+ readonly base: RGBA;
74
+ };
75
+ readonly surface: (name: "dialog") => PokecodeResolvedTheme;
76
+ };
77
+ export declare const toPokecodeTheme: (theme: PokecodeResolvedTheme) => PokecodeTheme;
78
+ /** Fallback tokens for components rendered without an explicit theme accessor. */
79
+ export declare const fallbackPokecodeTheme: PokecodeTheme;
80
+ export {};
81
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../src/adapters/opencode/tui/theme.ts"],"names":[],"mappings":"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"}