termcast 1.3.32 → 1.3.34

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 (327) hide show
  1. package/dist/action-utils.d.ts.map +1 -1
  2. package/dist/action-utils.js +8 -0
  3. package/dist/action-utils.js.map +1 -1
  4. package/dist/apis/cache.d.ts +1 -2
  5. package/dist/apis/cache.d.ts.map +1 -1
  6. package/dist/apis/cache.js +138 -54
  7. package/dist/apis/cache.js.map +1 -1
  8. package/dist/apis/clipboard.d.ts.map +1 -1
  9. package/dist/apis/clipboard.js +4 -0
  10. package/dist/apis/clipboard.js.map +1 -1
  11. package/dist/apis/oauth.d.ts.map +1 -1
  12. package/dist/apis/oauth.js +31 -4
  13. package/dist/apis/oauth.js.map +1 -1
  14. package/dist/build.d.ts +0 -1
  15. package/dist/build.d.ts.map +1 -1
  16. package/dist/build.js +30 -51
  17. package/dist/build.js.map +1 -1
  18. package/dist/cli.js +31 -14
  19. package/dist/cli.js.map +1 -1
  20. package/dist/compile.d.ts.map +1 -1
  21. package/dist/compile.js +5 -1
  22. package/dist/compile.js.map +1 -1
  23. package/dist/components/actions.d.ts +14 -0
  24. package/dist/components/actions.d.ts.map +1 -1
  25. package/dist/components/actions.js +151 -59
  26. package/dist/components/actions.js.map +1 -1
  27. package/dist/components/alert.d.ts.map +1 -1
  28. package/dist/components/alert.js +6 -5
  29. package/dist/components/alert.js.map +1 -1
  30. package/dist/components/animation-tick.d.ts +1 -1
  31. package/dist/components/animation-tick.js +1 -1
  32. package/dist/components/animation-tick.js.map +1 -1
  33. package/dist/components/detail.d.ts +5 -31
  34. package/dist/components/detail.d.ts.map +1 -1
  35. package/dist/components/detail.js +36 -52
  36. package/dist/components/detail.js.map +1 -1
  37. package/dist/components/dropdown.d.ts +1 -1
  38. package/dist/components/dropdown.d.ts.map +1 -1
  39. package/dist/components/dropdown.js +50 -22
  40. package/dist/components/dropdown.js.map +1 -1
  41. package/dist/components/footer.d.ts.map +1 -1
  42. package/dist/components/footer.js +19 -18
  43. package/dist/components/footer.js.map +1 -1
  44. package/dist/components/form/checkbox.d.ts.map +1 -1
  45. package/dist/components/form/checkbox.js +12 -11
  46. package/dist/components/form/checkbox.js.map +1 -1
  47. package/dist/components/form/date-picker.d.ts.map +1 -1
  48. package/dist/components/form/date-picker.js +7 -22
  49. package/dist/components/form/date-picker.js.map +1 -1
  50. package/dist/components/form/description.d.ts +1 -1
  51. package/dist/components/form/description.d.ts.map +1 -1
  52. package/dist/components/form/description.js +6 -5
  53. package/dist/components/form/description.js.map +1 -1
  54. package/dist/components/form/dropdown.d.ts.map +1 -1
  55. package/dist/components/form/dropdown.js +53 -50
  56. package/dist/components/form/dropdown.js.map +1 -1
  57. package/dist/components/form/file-autocomplete.d.ts.map +1 -1
  58. package/dist/components/form/file-autocomplete.js +5 -4
  59. package/dist/components/form/file-autocomplete.js.map +1 -1
  60. package/dist/components/form/file-picker.d.ts.map +1 -1
  61. package/dist/components/form/file-picker.js +23 -22
  62. package/dist/components/form/file-picker.js.map +1 -1
  63. package/dist/components/form/form-end.d.ts.map +1 -1
  64. package/dist/components/form/form-end.js +6 -4
  65. package/dist/components/form/form-end.js.map +1 -1
  66. package/dist/components/form/form-field-wrapper.d.ts +15 -0
  67. package/dist/components/form/form-field-wrapper.d.ts.map +1 -0
  68. package/dist/components/form/form-field-wrapper.js +29 -0
  69. package/dist/components/form/form-field-wrapper.js.map +1 -0
  70. package/dist/components/form/index.d.ts.map +1 -1
  71. package/dist/components/form/index.js +31 -30
  72. package/dist/components/form/index.js.map +1 -1
  73. package/dist/components/form/password-field.d.ts.map +1 -1
  74. package/dist/components/form/password-field.js +7 -6
  75. package/dist/components/form/password-field.js.map +1 -1
  76. package/dist/components/form/separator.d.ts.map +1 -1
  77. package/dist/components/form/separator.js +3 -2
  78. package/dist/components/form/separator.js.map +1 -1
  79. package/dist/components/form/tagpicker.d.ts.map +1 -1
  80. package/dist/components/form/tagpicker.js +2 -1
  81. package/dist/components/form/tagpicker.js.map +1 -1
  82. package/dist/components/form/text-area.d.ts.map +1 -1
  83. package/dist/components/form/text-area.js +7 -6
  84. package/dist/components/form/text-area.js.map +1 -1
  85. package/dist/components/form/text-field.d.ts.map +1 -1
  86. package/dist/components/form/text-field.js +7 -6
  87. package/dist/components/form/text-field.js.map +1 -1
  88. package/dist/components/form/use-form-navigation.d.ts.map +1 -1
  89. package/dist/components/form/use-form-navigation.js +4 -4
  90. package/dist/components/form/use-form-navigation.js.map +1 -1
  91. package/dist/components/form/with-left-border.d.ts +15 -0
  92. package/dist/components/form/with-left-border.d.ts.map +1 -1
  93. package/dist/components/form/with-left-border.js +21 -9
  94. package/dist/components/form/with-left-border.js.map +1 -1
  95. package/dist/components/icon.d.ts +14 -0
  96. package/dist/components/icon.d.ts.map +1 -1
  97. package/dist/components/icon.js +60 -0
  98. package/dist/components/icon.js.map +1 -1
  99. package/dist/components/image.d.ts +47 -2
  100. package/dist/components/image.d.ts.map +1 -1
  101. package/dist/components/image.js +46 -7
  102. package/dist/components/image.js.map +1 -1
  103. package/dist/components/list.d.ts +5 -0
  104. package/dist/components/list.d.ts.map +1 -1
  105. package/dist/components/list.js +188 -132
  106. package/dist/components/list.js.map +1 -1
  107. package/dist/components/loading-bar.d.ts.map +1 -1
  108. package/dist/components/loading-bar.js +4 -3
  109. package/dist/components/loading-bar.js.map +1 -1
  110. package/dist/components/metadata.d.ts +70 -0
  111. package/dist/components/metadata.d.ts.map +1 -0
  112. package/dist/components/metadata.js +82 -0
  113. package/dist/components/metadata.js.map +1 -0
  114. package/dist/components/theme-picker.d.ts.map +1 -1
  115. package/dist/components/theme-picker.js +3 -2
  116. package/dist/components/theme-picker.js.map +1 -1
  117. package/dist/descendants-v2.d.ts +60 -0
  118. package/dist/descendants-v2.d.ts.map +1 -0
  119. package/dist/descendants-v2.js +144 -0
  120. package/dist/descendants-v2.js.map +1 -0
  121. package/dist/examples/actions-context.d.ts +2 -0
  122. package/dist/examples/actions-context.d.ts.map +1 -0
  123. package/dist/examples/actions-context.js +33 -0
  124. package/dist/examples/actions-context.js.map +1 -0
  125. package/dist/examples/form-basic.d.ts.map +1 -1
  126. package/dist/examples/form-basic.js +1 -1
  127. package/dist/examples/form-basic.js.map +1 -1
  128. package/dist/examples/form-dropdown.js +1 -1
  129. package/dist/examples/form-dropdown.js.map +1 -1
  130. package/dist/examples/internal/custom-action-renderables.d.ts +70 -0
  131. package/dist/examples/internal/custom-action-renderables.d.ts.map +1 -0
  132. package/dist/examples/internal/custom-action-renderables.js +163 -0
  133. package/dist/examples/internal/custom-action-renderables.js.map +1 -0
  134. package/dist/examples/internal/custom-dropdown.d.ts +99 -0
  135. package/dist/examples/internal/custom-dropdown.d.ts.map +1 -0
  136. package/dist/examples/internal/custom-dropdown.js +270 -0
  137. package/dist/examples/internal/custom-dropdown.js.map +1 -0
  138. package/dist/examples/internal/custom-renderable-form.d.ts +43 -0
  139. package/dist/examples/internal/custom-renderable-form.d.ts.map +1 -0
  140. package/dist/examples/internal/custom-renderable-form.js +284 -0
  141. package/dist/examples/internal/custom-renderable-form.js.map +1 -0
  142. package/dist/examples/internal/custom-renderable-list-default-search.d.ts +2 -0
  143. package/dist/examples/internal/custom-renderable-list-default-search.d.ts.map +1 -0
  144. package/dist/examples/internal/custom-renderable-list-default-search.js +16 -0
  145. package/dist/examples/internal/custom-renderable-list-default-search.js.map +1 -0
  146. package/dist/examples/internal/custom-renderable-list-v2-default-search.d.ts +2 -0
  147. package/dist/examples/internal/custom-renderable-list-v2-default-search.d.ts.map +1 -0
  148. package/dist/examples/internal/custom-renderable-list-v2-default-search.js +24 -0
  149. package/dist/examples/internal/custom-renderable-list-v2-default-search.js.map +1 -0
  150. package/dist/examples/internal/custom-renderable-list-v2.d.ts +189 -0
  151. package/dist/examples/internal/custom-renderable-list-v2.d.ts.map +1 -0
  152. package/dist/examples/internal/custom-renderable-list-v2.js +708 -0
  153. package/dist/examples/internal/custom-renderable-list-v2.js.map +1 -0
  154. package/dist/examples/internal/custom-renderable-list.d.ts +72 -0
  155. package/dist/examples/internal/custom-renderable-list.d.ts.map +1 -0
  156. package/dist/examples/internal/custom-renderable-list.js +544 -0
  157. package/dist/examples/internal/custom-renderable-list.js.map +1 -0
  158. package/dist/examples/internal/rhf-custom-ref.js +5 -4
  159. package/dist/examples/internal/rhf-custom-ref.js.map +1 -1
  160. package/dist/examples/internal/scrollbox-with-descendants.js +4 -2
  161. package/dist/examples/internal/scrollbox-with-descendants.js.map +1 -1
  162. package/dist/examples/list-controlled-search.d.ts +2 -0
  163. package/dist/examples/list-controlled-search.d.ts.map +1 -0
  164. package/dist/examples/list-controlled-search.js +12 -0
  165. package/dist/examples/list-controlled-search.js.map +1 -0
  166. package/dist/examples/list-detail-metadata.js +1 -1
  167. package/dist/examples/list-detail-metadata.js.map +1 -1
  168. package/dist/examples/simple-image-mask.d.ts +8 -0
  169. package/dist/examples/simple-image-mask.d.ts.map +1 -0
  170. package/dist/examples/simple-image-mask.js +12 -0
  171. package/dist/examples/simple-image-mask.js.map +1 -0
  172. package/dist/examples/toast-variations.js +1 -1
  173. package/dist/examples/toast-variations.js.map +1 -1
  174. package/dist/extensions/dev.d.ts.map +1 -1
  175. package/dist/extensions/dev.js +3 -2
  176. package/dist/extensions/dev.js.map +1 -1
  177. package/dist/extensions/react-refresh-init.d.ts.map +1 -1
  178. package/dist/extensions/react-refresh-init.js +4 -3
  179. package/dist/extensions/react-refresh-init.js.map +1 -1
  180. package/dist/index.d.ts +3 -2
  181. package/dist/index.d.ts.map +1 -1
  182. package/dist/index.js +1 -1
  183. package/dist/index.js.map +1 -1
  184. package/dist/internal/date-picker-widget.d.ts.map +1 -1
  185. package/dist/internal/date-picker-widget.js +2 -1
  186. package/dist/internal/date-picker-widget.js.map +1 -1
  187. package/dist/internal/dialog.d.ts +6 -0
  188. package/dist/internal/dialog.d.ts.map +1 -1
  189. package/dist/internal/dialog.js +59 -18
  190. package/dist/internal/dialog.js.map +1 -1
  191. package/dist/internal/navigation.d.ts.map +1 -1
  192. package/dist/internal/navigation.js +8 -1
  193. package/dist/internal/navigation.js.map +1 -1
  194. package/dist/internal/offscreen.d.ts +3 -0
  195. package/dist/internal/offscreen.d.ts.map +1 -1
  196. package/dist/internal/offscreen.js +5 -0
  197. package/dist/internal/offscreen.js.map +1 -1
  198. package/dist/internal/providers.d.ts.map +1 -1
  199. package/dist/internal/providers.js +20 -3
  200. package/dist/internal/providers.js.map +1 -1
  201. package/dist/internal/scrollbox.d.ts.map +1 -1
  202. package/dist/internal/scrollbox.js +3 -2
  203. package/dist/internal/scrollbox.js.map +1 -1
  204. package/dist/logger.d.ts.map +1 -1
  205. package/dist/logger.js +4 -0
  206. package/dist/logger.js.map +1 -1
  207. package/dist/preload.js +5 -17
  208. package/dist/preload.js.map +1 -1
  209. package/dist/state.d.ts +4 -0
  210. package/dist/state.d.ts.map +1 -1
  211. package/dist/state.js +4 -0
  212. package/dist/state.js.map +1 -1
  213. package/dist/test-border-overlay.d.ts +2 -0
  214. package/dist/test-border-overlay.d.ts.map +1 -0
  215. package/dist/test-border-overlay.js +7 -0
  216. package/dist/test-border-overlay.js.map +1 -0
  217. package/dist/test-layout-2.d.ts +2 -0
  218. package/dist/test-layout-2.d.ts.map +1 -0
  219. package/dist/test-layout-2.js +5 -0
  220. package/dist/test-layout-2.js.map +1 -0
  221. package/dist/test-layout.d.ts +2 -0
  222. package/dist/test-layout.d.ts.map +1 -0
  223. package/dist/test-layout.js +7 -0
  224. package/dist/test-layout.js.map +1 -0
  225. package/dist/theme.d.ts +1 -2
  226. package/dist/theme.d.ts.map +1 -1
  227. package/dist/theme.js +5 -9
  228. package/dist/theme.js.map +1 -1
  229. package/dist/utils/run-command.d.ts +1 -1
  230. package/dist/utils/run-command.d.ts.map +1 -1
  231. package/dist/utils/run-command.js +27 -7
  232. package/dist/utils/run-command.js.map +1 -1
  233. package/dist/utils.d.ts +1 -0
  234. package/dist/utils.d.ts.map +1 -1
  235. package/dist/utils.js +44 -23
  236. package/dist/utils.js.map +1 -1
  237. package/dist/watcher.d.ts.map +1 -1
  238. package/dist/watcher.js +24 -4
  239. package/dist/watcher.js.map +1 -1
  240. package/package.json +14 -12
  241. package/src/action-utils.tsx +10 -0
  242. package/src/apis/cache.test.ts +35 -3
  243. package/src/apis/cache.tsx +184 -59
  244. package/src/apis/clipboard.tsx +5 -0
  245. package/src/apis/oauth.tsx +33 -4
  246. package/src/build.tsx +35 -58
  247. package/src/cli.tsx +156 -134
  248. package/src/compile.tsx +6 -3
  249. package/src/compile.vitest.tsx +33 -15
  250. package/src/components/actions.tsx +230 -99
  251. package/src/components/alert.tsx +11 -10
  252. package/src/components/animation-tick.tsx +1 -1
  253. package/src/components/detail.tsx +56 -151
  254. package/src/components/dropdown.tsx +70 -36
  255. package/src/components/footer.tsx +58 -33
  256. package/src/components/form/checkbox.tsx +30 -32
  257. package/src/components/form/date-picker.tsx +27 -47
  258. package/src/components/form/description.tsx +19 -18
  259. package/src/components/form/dropdown.tsx +95 -103
  260. package/src/components/form/file-autocomplete.tsx +9 -8
  261. package/src/components/form/file-picker.tsx +46 -46
  262. package/src/components/form/form-end.tsx +6 -4
  263. package/src/components/form/index.tsx +38 -48
  264. package/src/components/form/password-field.tsx +25 -27
  265. package/src/components/form/separator.tsx +3 -2
  266. package/src/components/form/tagpicker.tsx +2 -1
  267. package/src/components/form/text-area.tsx +25 -30
  268. package/src/components/form/text-field.tsx +25 -27
  269. package/src/components/form/use-form-navigation.tsx +4 -5
  270. package/src/components/form/with-left-border.tsx +48 -10
  271. package/src/components/icon.tsx +69 -0
  272. package/src/components/image.tsx +60 -7
  273. package/src/components/list.tsx +270 -202
  274. package/src/components/loading-bar.tsx +4 -3
  275. package/src/components/metadata.tsx +217 -0
  276. package/src/components/theme-picker.tsx +3 -2
  277. package/src/examples/actions-context.tsx +63 -0
  278. package/src/examples/actions-context.vitest.tsx +110 -0
  279. package/src/examples/actions-dialog-layout.vitest.tsx +2 -1
  280. package/src/examples/file-autocomplete.vitest.tsx +15 -15
  281. package/src/examples/form-basic.tsx +12 -0
  282. package/src/examples/form-basic.vitest.tsx +74 -74
  283. package/src/examples/form-dropdown.tsx +8 -0
  284. package/src/examples/form-dropdown.vitest.tsx +364 -421
  285. package/src/examples/form-tagpicker.vitest.tsx +56 -54
  286. package/src/examples/github.vitest.tsx +252 -0
  287. package/src/examples/internal/rhf-custom-ref.tsx +16 -15
  288. package/src/examples/internal/scrollbox-with-descendants.tsx +4 -2
  289. package/src/examples/internal/simple-dialog.tsx +1 -1
  290. package/src/examples/internal/simple-scrollbox.vitest.tsx +14 -9
  291. package/src/examples/list-controlled-search.tsx +28 -0
  292. package/src/examples/list-controlled-search.vitest.tsx +49 -0
  293. package/src/examples/list-detail-metadata.tsx +8 -5
  294. package/src/examples/list-detail-metadata.vitest.tsx +22 -22
  295. package/src/examples/list-dropdown-default.vitest.tsx +12 -12
  296. package/src/examples/list-scrollbox.vitest.tsx +52 -38
  297. package/src/examples/list-with-detail.vitest.tsx +45 -41
  298. package/src/examples/list-with-dropdown.vitest.tsx +5 -5
  299. package/src/examples/list-with-sections.vitest.tsx +65 -12
  300. package/src/examples/list-with-toast.vitest.tsx +4 -4
  301. package/src/examples/simple-file-picker.vitest.tsx +12 -12
  302. package/src/examples/simple-grid.vitest.tsx +53 -53
  303. package/src/examples/simple-image-mask.tsx +58 -0
  304. package/src/examples/simple-navigation.vitest.tsx +19 -19
  305. package/src/examples/store.vitest.tsx +1 -1
  306. package/src/examples/swift-extension.vitest.tsx +4 -2
  307. package/src/examples/synonyms.vitest.tsx +31 -9
  308. package/src/examples/toast-action.vitest.tsx +8 -8
  309. package/src/examples/toast-variations.tsx +1 -1
  310. package/src/examples/toast-variations.vitest.tsx +69 -134
  311. package/src/extensions/dev.tsx +3 -2
  312. package/src/extensions/dev.vitest.tsx +65 -28
  313. package/src/extensions/react-refresh-init.tsx +4 -3
  314. package/src/index.tsx +3 -1
  315. package/src/internal/date-picker-widget.tsx +2 -1
  316. package/src/internal/dialog.tsx +100 -28
  317. package/src/internal/navigation.tsx +8 -1
  318. package/src/internal/offscreen.tsx +10 -0
  319. package/src/internal/providers.tsx +34 -8
  320. package/src/internal/scrollbox.tsx +4 -2
  321. package/src/logger.tsx +4 -0
  322. package/src/preload.tsx +5 -17
  323. package/src/state.tsx +12 -0
  324. package/src/theme.tsx +6 -9
  325. package/src/utils/run-command.tsx +32 -8
  326. package/src/utils.tsx +58 -23
  327. package/src/watcher.tsx +26 -6
@@ -1,11 +1,12 @@
1
- import { jsx as _jsx, Fragment as _Fragment } from "@opentui/react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
2
2
  import { useKeyboard } from '@opentui/react';
3
- import { useRef, useContext } from 'react';
4
- import { Theme } from 'termcast/src/theme';
3
+ import { useRef, useContext, useCallback } from 'react';
4
+ import { useTheme } from 'termcast/src/theme';
5
5
  import { InFocus, useIsInFocus } from 'termcast/src/internal/focus-context';
6
6
  import { useStore } from 'termcast/src/state';
7
7
  import { NavigationContext } from 'termcast/src/internal/navigation';
8
8
  export function Dialog({ children, position = 'center', onClickOutside, }) {
9
+ const theme = useTheme();
9
10
  const inFocus = useIsInFocus();
10
11
  const clickedInsideDialog = useRef(false);
11
12
  const handleBackdropClick = () => {
@@ -44,45 +45,85 @@ export function Dialog({ children, position = 'center', onClickOutside, }) {
44
45
  };
45
46
  const positionStyles = getPositionStyles();
46
47
  return (_jsx("box", { border: false, flexGrow: 1, left: -2, alignItems: positionStyles.alignItems, justifyContent: positionStyles.justifyContent, padding: positionStyles.padding,
47
- // backgroundColor={Theme.background}
48
- onMouseDown: handleBackdropClick, children: _jsx("box", { border: true, borderStyle: 'rounded', width: 76, maxWidth: '95%', backgroundColor: Theme.backgroundPanel, borderColor: Theme.accent, paddingTop: 1, onMouseDown: handleDialogClick, children: children }) }));
48
+ // backgroundColor={theme.background}
49
+ onMouseDown: handleBackdropClick, children: _jsx("box", { border: true, borderStyle: 'rounded', width: 76, maxWidth: '95%', backgroundColor: theme.backgroundPanel, borderColor: theme.accent, paddingTop: 1, onMouseDown: handleDialogClick, children: children }) }));
49
50
  }
50
51
  export function DialogProvider(props) {
51
52
  const dialogStack = useStore((state) => state.dialogStack);
53
+ const showActionsDialog = useStore((state) => state.showActionsDialog);
52
54
  const inFocus = useIsInFocus();
53
55
  useKeyboard((evt) => {
54
56
  if (!inFocus)
55
57
  return;
56
58
  if (evt.name === 'escape') {
57
59
  const state = useStore.getState();
60
+ // Handle actions dialog first
61
+ if (state.showActionsDialog) {
62
+ // Check if there's a search input with text that should be cleared first
63
+ const activeSearchInputRef = state.activeSearchInputRef;
64
+ if (activeSearchInputRef && activeSearchInputRef.plainText) {
65
+ activeSearchInputRef.setText('');
66
+ return;
67
+ }
68
+ useStore.setState({ showActionsDialog: false });
69
+ return;
70
+ }
58
71
  if (state.dialogStack.length > 0) {
72
+ // Check if there's a search input with text that should be cleared first
73
+ const activeSearchInputRef = state.activeSearchInputRef;
74
+ if (activeSearchInputRef && activeSearchInputRef.plainText) {
75
+ // Clear the search text instead of closing dialog
76
+ activeSearchInputRef.setText('');
77
+ return;
78
+ }
59
79
  useStore.setState({
60
80
  dialogStack: state.dialogStack.slice(0, -1),
61
81
  });
62
82
  }
63
83
  }
64
84
  });
65
- // Children lose focus only when there's a dialog (toast uses unique shortcuts so no focus stealing needed)
66
- const childrenInFocus = !dialogStack?.length;
85
+ // Children lose focus only when there's a dialog or actions dialog
86
+ const childrenInFocus = !dialogStack?.length && !showActionsDialog;
67
87
  return (_jsx(_Fragment, { children: _jsx(InFocus, { inFocus: childrenInFocus, children: props.children }) }));
68
88
  }
89
+ /**
90
+ * DialogOverlay renders dialog stack items and provides a portal target for
91
+ * ActionPanel. The portal target is always mounted so ActionPanel can use
92
+ * createPortal to render its Dropdown here while keeping its React context
93
+ * (FormSubmitContext, NavigationContext, etc.) from the original tree.
94
+ */
69
95
  export function DialogOverlay() {
70
96
  const dialogStack = useStore((state) => state.dialogStack);
97
+ const showActionsDialog = useStore((state) => state.showActionsDialog);
71
98
  const navContext = useContext(NavigationContext);
72
- if (dialogStack.length === 0) {
99
+ const theme = useTheme();
100
+ const setActionsPortalTargetRef = useCallback((node) => {
101
+ if (!node) {
102
+ useStore.setState({ actionsPortalTarget: null });
103
+ return;
104
+ }
105
+ useStore.setState({ actionsPortalTarget: node });
106
+ return () => {
107
+ if (useStore.getState().actionsPortalTarget === node) {
108
+ useStore.setState({ actionsPortalTarget: null });
109
+ }
110
+ };
111
+ }, []);
112
+ if (dialogStack.length === 0 && !showActionsDialog) {
73
113
  return null;
74
114
  }
75
- // Only render the topmost dialog
76
115
  const topIndex = dialogStack.length - 1;
77
- const item = dialogStack[topIndex];
78
- return (_jsx("box", { position: 'absolute', width: '100%', height: '100%', flexDirection: 'column', children: _jsx(InFocus, { inFocus: true, children: _jsx(Dialog, { position: item.position, onClickOutside: () => {
79
- const state = useStore.getState();
80
- if (state.dialogStack.length > 0) {
81
- useStore.setState({
82
- dialogStack: state.dialogStack.slice(0, -1),
83
- });
84
- }
85
- }, children: _jsx(NavigationContext.Provider, { value: navContext, children: item.element }) }) }) }));
116
+ const item = topIndex >= 0 ? dialogStack[topIndex] : undefined;
117
+ return (_jsxs(_Fragment, { children: [showActionsDialog && (_jsx("box", { position: 'absolute', width: '100%', height: '100%', flexDirection: 'column', backgroundColor: theme.background, children: _jsx(InFocus, { inFocus: true, children: _jsx(Dialog, { position: 'center', onClickOutside: () => {
118
+ useStore.setState({ showActionsDialog: false });
119
+ }, children: _jsx("box", { ref: setActionsPortalTargetRef, flexDirection: 'column', flexGrow: 1 }) }) }) })), item && (_jsx("box", { position: 'absolute', width: '100%', height: '100%', flexDirection: 'column', children: _jsx(InFocus, { inFocus: true, children: _jsx(Dialog, { position: item.position, onClickOutside: () => {
120
+ const state = useStore.getState();
121
+ if (state.dialogStack.length > 0) {
122
+ useStore.setState({
123
+ dialogStack: state.dialogStack.slice(0, -1),
124
+ });
125
+ }
126
+ }, children: _jsx(NavigationContext.Provider, { value: navContext, children: item.element }) }) }) }))] }));
86
127
  }
87
128
  export function useDialog() {
88
129
  const dialogStack = useStore((state) => state.dialogStack);
@@ -1 +1 @@
1
- {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/internal/dialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dialog.js","sourceRoot":"","sources":["../../src/internal/dialog.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/internal/navigation.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAIZ,KAAK,SAAS,EAKf,MAAM,OAAO,CAAA;AAEd,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAY,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAIvE,UAAU,UAAU;IAClB,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;IACtD,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;IACzD,GAAG,EAAE,MAAM,IAAI,CAAA;IACf,SAAS,EAAE,MAAM,IAAI,CAAA;CACtB;AAED,UAAU,qBAAqB;IAC7B,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,EAAE,mBAAmB,EAAE,CAAA;IAC5B,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,iBAAiB,kDAElB,CAAA;AAEZ,UAAU,uBAAwB,SAAQ,WAAW;IACnD,QAAQ,EAAE,SAAS,CAAA;IACnB,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,GAAG,CAkJtE;AAED,wBAAgB,aAAa,IAAI,UAAU,CAM1C;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAG9C;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAY/C;AAED,UAAU,wBAAyB,SAAQ,WAAW;IACpD,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,GACT,EAAE,wBAAwB,GAAG,GAAG,CAEhC"}
1
+ {"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/internal/navigation.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAIZ,KAAK,SAAS,EAKf,MAAM,OAAO,CAAA;AAEd,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAY,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAIvE,UAAU,UAAU;IAClB,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;IACtD,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;IACzD,GAAG,EAAE,MAAM,IAAI,CAAA;IACf,SAAS,EAAE,MAAM,IAAI,CAAA;CACtB;AAED,UAAU,qBAAqB;IAC7B,UAAU,EAAE,UAAU,CAAA;IACtB,KAAK,EAAE,mBAAmB,EAAE,CAAA;IAC5B,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,iBAAiB,kDAElB,CAAA;AAEZ,UAAU,uBAAwB,SAAQ,WAAW;IACnD,QAAQ,EAAE,SAAS,CAAA;IACnB,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,GAAG,CAyJtE;AAED,wBAAgB,aAAa,IAAI,UAAU,CAM1C;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAG9C;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAY/C;AAED,UAAU,wBAAyB,SAAQ,WAAW;IACpD,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,wBAAgB,mBAAmB,CAAC,EAClC,QAAQ,GACT,EAAE,wBAAwB,GAAG,GAAG,CAEhC"}
@@ -102,7 +102,14 @@ export function NavigationProvider(props) {
102
102
  pop();
103
103
  }
104
104
  else {
105
- // At root with no dialogs - exit the CLI
105
+ // At root - check if there's a search input with text that should be cleared first
106
+ const activeSearchInputRef = useStore.getState().activeSearchInputRef;
107
+ if (activeSearchInputRef && activeSearchInputRef.plainText) {
108
+ // Clear the search text instead of exiting
109
+ activeSearchInputRef.setText('');
110
+ return;
111
+ }
112
+ // At root with no dialogs and no search text - exit the CLI
106
113
  renderer.destroy();
107
114
  }
108
115
  }
@@ -1 +1 @@
1
- {"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/internal/navigation.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/internal/navigation.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EACZ,aAAa,EACb,UAAU,EACV,WAAW,EAGX,eAAe,EAEf,aAAa,GACd,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEzD,OAAO,EAAE,QAAQ,EAA4B,MAAM,oBAAoB,CAAA;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAA;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAelC,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAE5C,SAAS,CAAC,CAAA;AAOZ,MAAM,UAAU,kBAAkB,CAAC,KAA8B;IAC/D,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACxD,MAAM,CAAC,SAAS,EAAE,yBAAyB,CAAC,GAAG,aAAa,EAAE,CAAA;IAE9D,0CAA0C;IAC1C,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,QAAQ,CAAC,QAAQ,CAAC;gBAChB,eAAe,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;aAC/C,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,OAAY,EAAE,KAAkB,EAAE,EAAE;QAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,CAAC,GAAG,CACR,SAAS,EACR,OAAe,EAAE,IAAI,EAAE,IAAI,IAAK,OAAe,EAAE,IAAI,CACvD,CAAA;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAA;QACxD,yBAAyB,CAAC,GAAG,EAAE;YAC7B,QAAQ,CAAC,QAAQ,CAAC;gBAChB,eAAe,EAAE,CAAC,GAAG,YAAY,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;gBACtD,WAAW,EAAE,EAAE;gBACf,KAAK,EAAE,IAAI;gBACX,sBAAsB,EAAE,KAAK;aAC9B,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,OAAY,EAAE,KAAkB,EAAE,EAAE;QAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAA;QAC/D,CAAC;QAED,MAAM,CAAC,GAAG,CACR,WAAW,EACV,OAAe,EAAE,IAAI,EAAE,IAAI,IAAK,OAAe,EAAE,IAAI,CACvD,CAAA;QAED,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAA;QACxD,MAAM,QAAQ,GACZ,YAAY,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACpD,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;QAE1B,yBAAyB,CAAC,GAAG,EAAE;YAC7B,QAAQ,CAAC,QAAQ,CAAC;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,EAAE;gBACf,KAAK,EAAE,IAAI;gBACX,sBAAsB,EAAE,KAAK;aAC9B,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE;QAC3B,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAA;QACxD,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC;YAAE,OAAM;QAEpC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1C,MAAM,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACxD,IAAI,UAAU,EAAE,KAAK,EAAE,CAAC;YACtB,UAAU,CAAC,KAAK,EAAE,CAAA;QACpB,CAAC;QAED,yBAAyB,CAAC,GAAG,EAAE;YAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAA;QACxD,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC;YAAE,OAAM;QAEpC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACzC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YACzC,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,KAAK,EAAE,CAAA;YACd,CAAC;QACH,CAAC;QAED,yBAAyB,CAAC,GAAG,EAAE;YAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QAC3D,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAC9B,GAAG,EAAE,CAAC,CAAC;QACL,IAAI;QACJ,OAAO;QACP,GAAG;QACH,SAAS;KACV,CAAC,EACF,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,CAChC,CAAA;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CACzB,GAAG,EAAE,CAAC,CAAC;QACL,UAAU;QACV,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC/D,SAAS;KACV,CAAC,EACF,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAC/C,CAAA;IAED,MAAM,OAAO,GAAG,YAAY,EAAE,CAAA;IAC9B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAE9B,2CAA2C;IAC3C,WAAW,CAAC,CAAC,GAAG,EAAE,EAAE;QAClB,IAAI,CAAC,OAAO;YAAE,OAAM;QACpB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,4DAA4D;YAC5D,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK;gBAAE,OAAM;YAErC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,CACR,oBAAoB,EACpB,KAAK,CAAC,MAAM,GAAG,CAAC,EAChB,QAAQ,EACR,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,IAAI,CAAC,OAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CACrD,CAAA;gBACD,GAAG,EAAE,CAAA;YACP,CAAC;iBAAM,CAAC;gBACN,mFAAmF;gBACnF,MAAM,oBAAoB,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,oBAAoB,CAAA;gBACrE,IAAI,oBAAoB,IAAI,oBAAoB,CAAC,SAAS,EAAE,CAAC;oBAC3D,2CAA2C;oBAC3C,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBAChC,OAAM;gBACR,CAAC;gBACD,4DAA4D;gBAC5D,QAAQ,CAAC,OAAO,EAAE,CAAA;YACpB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,WAAW,GACf,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAA;IAE1E,OAAO,CACL,MAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,aACrC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAA6B,EAAE;gBAC9D,GAAG,EAAE,KAAK,CAAC,MAAM;aAClB,CAAC,EACD,KAAK,CAAC,OAAO,IACa,CAC9B,CAAA;AACH,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;IAC3E,CAAC;IACD,OAAO,OAAO,CAAC,UAAU,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAA;IAC7C,OAAO,OAAO,EAAE,SAAS,IAAI,KAAK,CAAA;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAA;IACxD,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC;QAAE,OAAM;IAEpC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACzC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;QACzC,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,EAAE,CAAA;QACd,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC3D,CAAC;AAMD,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,GACiB;IACzB,OAAO,KAAC,kBAAkB,cAAE,QAAQ,GAAsB,CAAA;AAC5D,CAAC"}
@@ -3,4 +3,7 @@ export declare function useIsOffscreen(): boolean;
3
3
  export declare function Offscreen({ children }: {
4
4
  children: ReactNode;
5
5
  }): any;
6
+ export declare function Onscreen({ children }: {
7
+ children: ReactNode;
8
+ }): any;
6
9
  //# sourceMappingURL=offscreen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"offscreen.d.ts","sourceRoot":"","sources":["../../src/internal/offscreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,SAAS,EAAE,MAAM,OAAO,CAAA;AAI5D,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,GAAG,GAAG,CAMpE"}
1
+ {"version":3,"file":"offscreen.d.ts","sourceRoot":"","sources":["../../src/internal/offscreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,SAAS,EAAE,MAAM,OAAO,CAAA;AAI5D,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,GAAG,GAAG,CAMpE;AAID,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,GAAG,GAAG,CAMnE"}
@@ -7,4 +7,9 @@ export function useIsOffscreen() {
7
7
  export function Offscreen({ children }) {
8
8
  return (_jsx(OffscreenContext.Provider, { value: true, children: children }));
9
9
  }
10
+ // Resets the offscreen context to false. Used by portals that render content
11
+ // from an offscreen tree into a visible overlay area.
12
+ export function Onscreen({ children }) {
13
+ return (_jsx(OffscreenContext.Provider, { value: false, children: children }));
14
+ }
10
15
  //# sourceMappingURL=offscreen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"offscreen.js","sourceRoot":"","sources":["../../src/internal/offscreen.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAa,MAAM,OAAO,CAAA;AAE5D,MAAM,gBAAgB,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;AAE7C,MAAM,UAAU,cAAc;IAC5B,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAA;AACrC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EAAE,QAAQ,EAA2B;IAC7D,OAAO,CACL,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,YACnC,QAAQ,GACiB,CAC7B,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"offscreen.js","sourceRoot":"","sources":["../../src/internal/offscreen.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAa,MAAM,OAAO,CAAA;AAE5D,MAAM,gBAAgB,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;AAE7C,MAAM,UAAU,cAAc;IAC5B,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAA;AACrC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,EAAE,QAAQ,EAA2B;IAC7D,OAAO,CACL,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,YACnC,QAAQ,GACiB,CAC7B,CAAA;AACH,CAAC;AAED,6EAA6E;AAC7E,sDAAsD;AACtD,MAAM,UAAU,QAAQ,CAAC,EAAE,QAAQ,EAA2B;IAC5D,OAAO,CACL,KAAC,gBAAgB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACpC,QAAQ,GACiB,CAC7B,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/internal/providers.tsx"],"names":[],"mappings":"AAAA,OAAc,EAGZ,KAAK,SAAS,EAEf,MAAM,OAAO,CAAA;AAKd,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AA2ChD,UAAU,cAAe,SAAQ,WAAW;IAC1C,QAAQ,EAAE,SAAS,CAAA;CACpB;AAuDD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,GAAG,CAiC3D"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/internal/providers.tsx"],"names":[],"mappings":"AAAA,OAAc,EAGZ,KAAK,SAAS,EAEf,MAAM,OAAO,CAAA;AAKd,OAAO,EAAE,WAAW,EAA2B,MAAM,oBAAoB,CAAA;AA4CzE,UAAU,cAAe,SAAQ,WAAW;IAC1C,QAAQ,EAAE,SAAS,CAAA;CACpB;AA0DD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,cAAc,GAAG,GAAG,CAuD3D"}
@@ -4,10 +4,13 @@ import { QueryClient } from '@tanstack/react-query';
4
4
  import { PersistQueryClientProvider } from '@tanstack/react-query-persist-client';
5
5
  import { DialogProvider, DialogOverlay } from 'termcast/src/internal/dialog';
6
6
  import { NavigationProvider } from 'termcast/src/internal/navigation';
7
+ import { termcastMaxContentWidth } from 'termcast/src/utils';
7
8
  import { Cache } from 'termcast/src/apis/cache';
8
9
  import { logger } from 'termcast/src/logger';
9
- import { Theme, initializeTheme } from 'termcast/src/theme';
10
+ import { useTheme, initializeTheme } from 'termcast/src/theme';
11
+ import { useKeyboard, useRenderer } from '@opentui/react';
10
12
  import { initializeErrorHandlers } from 'termcast/src/internal/error-handler';
13
+ import { Clipboard } from '../apis/clipboard';
11
14
  // Initialize error handlers at module load time
12
15
  initializeErrorHandlers();
13
16
  // Initialize theme from persisted storage
@@ -62,13 +65,27 @@ class ErrorBoundaryClass extends Component {
62
65
  }
63
66
  }
64
67
  function ErrorDisplay({ error }) {
65
- return (_jsx("box", { padding: 2, children: _jsx("text", { fg: Theme.error, wrapMode: 'none', children: error?.stack }) }));
68
+ const theme = useTheme();
69
+ return (_jsx("box", { padding: 2, children: _jsx("text", { fg: theme.error, wrapMode: 'none', children: error?.stack }) }));
66
70
  }
67
71
  const ErrorBoundary = ErrorBoundaryClass;
68
72
  export function TermcastProvider(props) {
73
+ const theme = useTheme();
74
+ const renderer = useRenderer();
75
+ useKeyboard((key) => {
76
+ if (!renderer)
77
+ return;
78
+ if (key.ctrl && key.name === 'd') {
79
+ renderer.console.onCopySelection = (text) => {
80
+ Clipboard.copy(text);
81
+ };
82
+ renderer?.toggleDebugOverlay();
83
+ renderer?.console.toggle();
84
+ }
85
+ });
69
86
  return (_jsx(ErrorBoundary, { children: _jsx(Suspense, { fallback: _jsx(LoadingFallback, {}), children: _jsx(PersistQueryClientProvider, { client: queryClient, persistOptions: {
70
87
  persister,
71
88
  maxAge: 1000 * 60 * 60 * 24, // 24 hours
72
- }, children: _jsx("box", { minHeight: '100%', justifyContent: 'flex-start', backgroundColor: Theme.background, children: _jsx("box", { padding: 2, children: _jsx(DialogProvider, { children: _jsx(NavigationProvider, { overlay: _jsx(DialogOverlay, {}), children: _jsx("box", { children: props.children }) }) }) }) }) }) }) }));
89
+ }, children: _jsx("box", { minHeight: '100%', justifyContent: 'flex-start', backgroundColor: theme.background, width: '100%', flexGrow: 1, alignItems: 'center', children: _jsx("box", { padding: 2, width: '100%', maxWidth: termcastMaxContentWidth, children: _jsx(DialogProvider, { children: _jsx(NavigationProvider, { overlay: _jsx(DialogOverlay, {}), children: _jsx("box", { width: '100%', flexGrow: 1, flexShrink: 1, children: props.children }) }) }) }) }) }) }) }));
73
90
  }
74
91
  //# sourceMappingURL=providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/internal/providers.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/internal/providers.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scrollbox.d.ts","sourceRoot":"","sources":["../../src/internal/scrollbox.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAG/C,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,OAAe,EACf,QAAQ,EACR,UAAU,EACV,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,cAAc,GAAG,GAAG,CA6CtB"}
1
+ {"version":3,"file":"scrollbox.d.ts","sourceRoot":"","sources":["../../src/internal/scrollbox.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAG/C,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,OAAe,EACf,QAAQ,EACR,UAAU,EACV,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,cAAc,GAAG,GAAG,CA+CtB"}
@@ -1,7 +1,8 @@
1
1
  import { jsx as _jsx } from "@opentui/react/jsx-runtime";
2
- import Theme from '../theme';
2
+ import { useTheme } from '../theme';
3
3
  import { MacOSScrollAccel } from '@opentui/core';
4
4
  export function ScrollBox({ children, focused = false, flexGrow, flexShrink, style, ref, ...props }) {
5
+ const theme = useTheme();
5
6
  return (_jsx("scrollbox", { ref: ref, focused: focused, scrollAcceleration: new MacOSScrollAccel(), flexGrow: flexGrow, flexShrink: flexShrink, style: {
6
7
  rootOptions: {
7
8
  // backgroundColor: '#1a1b26',
@@ -22,7 +23,7 @@ export function ScrollBox({ children, focused = false, flexGrow, flexShrink, sty
22
23
  // visible: true,
23
24
  // showArrows: true,
24
25
  trackOptions: {
25
- foregroundColor: Theme.textMuted,
26
+ foregroundColor: theme.textMuted,
26
27
  // backgroundColor: '#414868',
27
28
  },
28
29
  ...(style?.scrollbarOptions || {}),
@@ -1 +1 @@
1
- {"version":3,"file":"scrollbox.js","sourceRoot":"","sources":["../../src/internal/scrollbox.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAIhD,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,OAAO,GAAG,KAAK,EACf,QAAQ,EACR,UAAU,EACV,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACO;IACf,OAAO,CACL,oBACE,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,kBAAkB,EAAE,IAAI,gBAAgB,EAAE,EAC1C,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE;YACL,WAAW,EAAE;gBACX,8BAA8B;gBAC9B,GAAG,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;aAC9B;YACD,eAAe,EAAE;gBACf,QAAQ,EAAE,CAAC;gBACX,UAAU,EAAE,CAAC;gBACb,YAAY,EAAE,CAAC;gBAEf,GAAG,CAAC,KAAK,EAAE,eAAe,IAAI,EAAE,CAAC;aAClC;YACD,cAAc,EAAE;gBACd,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,CAAC,EAAE,wCAAwC;gBACtD,GAAG,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE,CAAC;aACjC;YACD,gBAAgB,EAAE;gBAChB,iBAAiB;gBACjB,oBAAoB;gBACpB,YAAY,EAAE;oBACZ,eAAe,EAAE,KAAK,CAAC,SAAS;oBAEhC,8BAA8B;iBAC/B;gBACD,GAAG,CAAC,KAAK,EAAE,gBAAgB,IAAI,EAAE,CAAC;aACnC;YACD,0BAA0B,EAAE;gBAC1B,OAAO,EAAE,KAAK;gBACd,GAAG,CAAC,KAAK,EAAE,0BAA0B,IAAI,EAAE,CAAC;aAC7C;SACF,KACG,KAAK,YAER,QAAQ,GACC,CACb,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"scrollbox.js","sourceRoot":"","sources":["../../src/internal/scrollbox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAIhD,MAAM,UAAU,SAAS,CAAC,EACxB,QAAQ,EACR,OAAO,GAAG,KAAK,EACf,QAAQ,EACR,UAAU,EACV,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACO;IACf,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO,CACL,oBACE,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,kBAAkB,EAAE,IAAI,gBAAgB,EAAE,EAC1C,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE;YACL,WAAW,EAAE;gBACX,8BAA8B;gBAC9B,GAAG,CAAC,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC;aAC9B;YACD,eAAe,EAAE;gBACf,QAAQ,EAAE,CAAC;gBACX,UAAU,EAAE,CAAC;gBACb,YAAY,EAAE,CAAC;gBAEf,GAAG,CAAC,KAAK,EAAE,eAAe,IAAI,EAAE,CAAC;aAClC;YACD,cAAc,EAAE;gBACd,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,CAAC,EAAE,wCAAwC;gBACtD,GAAG,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE,CAAC;aACjC;YACD,gBAAgB,EAAE;gBAChB,iBAAiB;gBACjB,oBAAoB;gBACpB,YAAY,EAAE;oBACZ,eAAe,EAAE,KAAK,CAAC,SAAS;oBAEhC,8BAA8B;iBAC/B;gBACD,GAAG,CAAC,KAAK,EAAE,gBAAgB,IAAI,EAAE,CAAC;aACnC;YACD,0BAA0B,EAAE;gBAC1B,OAAO,EAAE,KAAK;gBACd,GAAG,CAAC,KAAK,EAAE,0BAA0B,IAAI,EAAE,CAAC;aAC7C;SACF,KACG,KAAK,YAER,QAAQ,GACC,CACb,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,MAAM;uBACE,GAAG,EAAE;yBAMH,GAAG,EAAE;wBAMN,GAAG,EAAE;yBAMJ,GAAG,EAAE;CAc3B,CAAA"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,MAAM;uBACE,GAAG,EAAE;yBAOH,GAAG,EAAE;wBAON,GAAG,EAAE;yBAOJ,GAAG,EAAE;CAe3B,CAAA"}
package/dist/logger.js CHANGED
@@ -20,18 +20,21 @@ export const logger = {
20
20
  const formattedMessages = messages.map(serialize).join(' ');
21
21
  const logEntry = `[${timestamp}] ${formattedMessages}\n`;
22
22
  fs.appendFileSync(LOG_FILE, logEntry);
23
+ console.log(...messages);
23
24
  },
24
25
  error: (...messages) => {
25
26
  const timestamp = new Date().toISOString();
26
27
  const formattedMessages = messages.map(serialize).join(' ');
27
28
  const logEntry = `[${timestamp}] ERROR: ${formattedMessages}\n`;
28
29
  fs.appendFileSync(LOG_FILE, logEntry);
30
+ console.error(...messages);
29
31
  },
30
32
  warn: (...messages) => {
31
33
  const timestamp = new Date().toISOString();
32
34
  const formattedMessages = messages.map(serialize).join(' ');
33
35
  const logEntry = `[${timestamp}] WARN: ${formattedMessages}\n`;
34
36
  fs.appendFileSync(LOG_FILE, logEntry);
37
+ console.warn(...messages);
35
38
  },
36
39
  trace: (...messages) => {
37
40
  const timestamp = new Date().toISOString();
@@ -47,6 +50,7 @@ export const logger = {
47
50
  const formattedMessages = messages.map(serialize).join(' ');
48
51
  const logEntry = `[${timestamp}] TRACE: ${formattedMessages}\n${stack}\n`;
49
52
  fs.appendFileSync(LOG_FILE, logEntry);
53
+ console.trace(...messages);
50
54
  },
51
55
  };
52
56
  // Catch unhandled errors and exceptions
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.tsx"],"names":[],"mappings":"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"}
package/dist/preload.js CHANGED
@@ -1,28 +1,16 @@
1
1
  import { plugin } from 'bun';
2
+ import path from 'node:path';
3
+ // Path to our forked raycast-utils with termcast OAuth proxy URLs
4
+ const RAYCAST_UTILS_PATH = path.resolve(__dirname, '../../raycast-utils/src/index.ts');
2
5
  plugin({
3
6
  name: 'alias-raycast-to-termcast',
4
7
  setup(build) {
5
- build.onResolve({ filter: /@raycast\/api/ }, () => {
8
+ // Redirect @raycast/api to termcast
9
+ build.onResolve({ filter: /^@raycast\/api$/ }, () => {
6
10
  return {
7
11
  path: require.resolve('termcast'),
8
12
  };
9
13
  });
10
- // build.onResolve({ filter: /@raycast\/utils/ }, (args) => {
11
- // return {
12
- // path: require.resolve('@raycast/utils', {
13
- // paths: [args.importer],
14
- // }),
15
- // }
16
- // })
17
- // build.onLoad({ filter: /@raycast\/utils/ }, (args) => {
18
- // const filePath = require
19
- // .resolve(args.path.replace('file:', ''))
20
- // .replace('file:', '')
21
- // return {
22
- // contents: require('fs').readFileSync(filePath, 'utf8'),
23
- // loader: 'js',
24
- // }
25
- // })
26
14
  },
27
15
  });
28
16
  //# sourceMappingURL=preload.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preload.js","sourceRoot":"","sources":["../src/preload.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAA;AAI5B,MAAM,CAAC;IACL,IAAI,EAAE,2BAA2B;IACjC,KAAK,CAAC,KAAK;QACT,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,GAAG,EAAE;YAChD,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;aAClC,CAAA;QACH,CAAC,CAAC,CAAA;QACF,6DAA6D;QAC7D,eAAe;QACf,oDAAoD;QACpD,sCAAsC;QACtC,cAAc;QAEd,QAAQ;QACR,KAAK;QACL,0DAA0D;QAC1D,+BAA+B;QAC/B,mDAAmD;QACnD,gCAAgC;QAChC,eAAe;QACf,kEAAkE;QAElE,wBAAwB;QACxB,QAAQ;QACR,KAAK;IACP,CAAC;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"preload.js","sourceRoot":"","sources":["../src/preload.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,IAAI,MAAM,WAAW,CAAA;AAG5B,kEAAkE;AAClE,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAA;AAEtF,MAAM,CAAC;IACL,IAAI,EAAE,2BAA2B;IACjC,KAAK,CAAC,KAAK;QACT,oCAAoC;QACpC,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,GAAG,EAAE;YAClD,OAAO;gBACL,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;aAClC,CAAA;QACH,CAAC,CAAC,CAAA;IAGJ,CAAC;CACF,CAAC,CAAA"}
package/dist/state.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
+ import type { TextareaRenderable } from '@opentui/core';
2
3
  import type { RaycastPackageJson } from './package-json';
3
4
  export declare const toastPrimaryActionKey: {
4
5
  readonly ctrl: true;
@@ -48,7 +49,10 @@ interface AppState {
48
49
  googleIdToken?: string;
49
50
  shouldAutoExecuteFirstAction: boolean;
50
51
  firstActionTitle: string;
52
+ showActionsDialog: boolean;
53
+ actionsPortalTarget: any;
51
54
  currentThemeName: string;
55
+ activeSearchInputRef: TextareaRenderable | null;
52
56
  }
53
57
  export declare const useStore: import("zustand").UseBoundStore<import("zustand").StoreApi<AppState>>;
54
58
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAGxD,eAAO,MAAM,qBAAqB;;;CAAqC,CAAA;AACvE,eAAO,MAAM,uBAAuB;;;CAAqC,CAAA;AAEzE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;AAE3D,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,UAAU,CAAA;IACjB,aAAa,CAAC,EAAE,eAAe,CAAA;IAC/B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAA;AACpE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,IAAI,CAAC,EAAE,mBAAmB,CAAA;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,UAAU,QAAQ;IAChB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAA;IACvB,sBAAsB,EAAE,OAAO,CAAA;IAC/B,WAAW,EAAE,eAAe,EAAE,CAAA;IAC9B,eAAe,EAAE,mBAAmB,EAAE,CAAA;IAEtC,UAAU,EAAE,SAAS,GAAG,IAAI,CAAA;IAE5B,eAAe,EAAE,MAAM,CAAA;IAKvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAG5B,oBAAoB,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC/C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,4BAA4B,EAAE,OAAO,CAAA;IAErC,gBAAgB,EAAE,MAAM,CAAA;IAExB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,eAAO,MAAM,QAAQ,uEAsBlB,CAAA"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAGxD,eAAO,MAAM,qBAAqB;;;CAAqC,CAAA;AACvE,eAAO,MAAM,uBAAuB;;;CAAqC,CAAA;AAEzE,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAA;AAE3D,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,IAAI,CAAA;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,UAAU,CAAA;IACjB,aAAa,CAAC,EAAE,eAAe,CAAA;IAC/B,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,WAAW,GAAG,cAAc,CAAA;AACpE,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,SAAS,CAAA;AAEvD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,CAAC,EAAE,cAAc,CAAA;IACzB,IAAI,CAAC,EAAE,mBAAmB,CAAA;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,UAAU,QAAQ;IAChB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAA;IACvB,sBAAsB,EAAE,OAAO,CAAA;IAC/B,WAAW,EAAE,eAAe,EAAE,CAAA;IAC9B,eAAe,EAAE,mBAAmB,EAAE,CAAA;IAEtC,UAAU,EAAE,SAAS,GAAG,IAAI,CAAA;IAE5B,eAAe,EAAE,MAAM,CAAA;IAKvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAG5B,oBAAoB,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC/C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,4BAA4B,EAAE,OAAO,CAAA;IAErC,gBAAgB,EAAE,MAAM,CAAA;IAExB,iBAAiB,EAAE,OAAO,CAAA;IAG1B,mBAAmB,EAAE,GAAG,CAAA;IAExB,gBAAgB,EAAE,MAAM,CAAA;IAExB,oBAAoB,EAAE,kBAAkB,GAAG,IAAI,CAAA;CAChD;AAED,eAAO,MAAM,QAAQ,uEA0BlB,CAAA"}
package/dist/state.js CHANGED
@@ -22,7 +22,11 @@ export const useStore = create(() => ({
22
22
  // Actions state
23
23
  shouldAutoExecuteFirstAction: false,
24
24
  firstActionTitle: '',
25
+ showActionsDialog: false,
26
+ actionsPortalTarget: null,
25
27
  // Theme state
26
28
  currentThemeName: 'termcast',
29
+ // Active search input ref
30
+ activeSearchInputRef: null,
27
31
  }));
28
32
  //# sourceMappingURL=state.js.map
package/dist/state.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAIhC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAW,CAAA;AACvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAW,CAAA;AA8DzE,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAW,GAAG,EAAE,CAAC,CAAC;IAC9C,KAAK,EAAE,IAAI;IACX,sBAAsB,EAAE,KAAK;IAC7B,WAAW,EAAE,EAAE;IACf,mBAAmB;IACnB,eAAe,EAAE,EAAE;IACnB,iBAAiB;IACjB,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,CAAC;IAClB,8BAA8B;IAC9B,aAAa,EAAE,IAAI;IACnB,oBAAoB,EAAE,IAAI;IAC1B,kBAAkB,EAAE,IAAI;IACxB,uBAAuB,EAAE,IAAI;IAC7B,cAAc;IACd,iBAAiB,EAAE,SAAS;IAC5B,aAAa,EAAE,SAAS;IACxB,gBAAgB;IAChB,4BAA4B,EAAE,KAAK;IACnC,gBAAgB,EAAE,EAAE;IACpB,cAAc;IACd,gBAAgB,EAAE,UAAU;CAC7B,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAKhC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAW,CAAA;AACvE,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAW,CAAA;AAqEzE,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAW,GAAG,EAAE,CAAC,CAAC;IAC9C,KAAK,EAAE,IAAI;IACX,sBAAsB,EAAE,KAAK;IAC7B,WAAW,EAAE,EAAE;IACf,mBAAmB;IACnB,eAAe,EAAE,EAAE;IACnB,iBAAiB;IACjB,UAAU,EAAE,IAAI;IAChB,eAAe,EAAE,CAAC;IAClB,8BAA8B;IAC9B,aAAa,EAAE,IAAI;IACnB,oBAAoB,EAAE,IAAI;IAC1B,kBAAkB,EAAE,IAAI;IACxB,uBAAuB,EAAE,IAAI;IAC7B,cAAc;IACd,iBAAiB,EAAE,SAAS;IAC5B,aAAa,EAAE,SAAS;IACxB,gBAAgB;IAChB,4BAA4B,EAAE,KAAK;IACnC,gBAAgB,EAAE,EAAE;IACpB,iBAAiB,EAAE,KAAK;IACxB,mBAAmB,EAAE,IAAI;IACzB,cAAc;IACd,gBAAgB,EAAE,UAAU;IAC5B,0BAA0B;IAC1B,oBAAoB,EAAE,IAAI;CAC3B,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=test-border-overlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-border-overlay.d.ts","sourceRoot":"","sources":["../src/test-border-overlay.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
2
+ import { renderWithProviders } from 'termcast/src/utils/test-utils';
3
+ function TestBorderOverlay() {
4
+ return (_jsx("box", { flexDirection: "column", style: { padding: 2 }, children: _jsxs("box", { border: ['left'], borderColor: "red", paddingLeft: 2, height: 3, children: [_jsx("box", { style: { position: 'absolute', left: 0, top: 0, width: 1, height: 1 }, children: _jsx("text", { fg: "blue", children: "X" }) }), _jsx("text", { children: "Line 1" }), _jsx("text", { children: "Line 2" }), _jsx("text", { children: "Line 3" })] }) }));
5
+ }
6
+ await renderWithProviders(_jsx(TestBorderOverlay, {}));
7
+ //# sourceMappingURL=test-border-overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-border-overlay.js","sourceRoot":"","sources":["../src/test-border-overlay.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAGnE,SAAS,iBAAiB;IACxB,OAAO,CACL,cAAK,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,YAC/C,eAAK,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,EAAC,KAAK,EAAC,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,aAC/D,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,YACvE,eAAM,EAAE,EAAC,MAAM,kBAAS,GACrB,EACN,oCAAmB,EACnB,oCAAmB,EACnB,oCAAmB,IAChB,GACF,CACP,CAAA;AACH,CAAC;AAED,MAAM,mBAAmB,CAAC,KAAC,iBAAiB,KAAG,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=test-layout-2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-layout-2.d.ts","sourceRoot":"","sources":["../src/test-layout-2.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
2
+ function TestLayout() {
3
+ return (_jsx("box", { flexDirection: "column", children: _jsxs("box", { border: ['left'], borderColor: "red", paddingLeft: 2, children: [_jsx("box", { style: { position: 'absolute', left: 0, top: 0, width: 1, height: 1 }, children: _jsx("text", { fg: "blue", children: "X" }) }), _jsx("text", { children: "Line 1" }), _jsx("text", { children: "Line 2" })] }) }));
4
+ }
5
+ //# sourceMappingURL=test-layout-2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-layout-2.js","sourceRoot":"","sources":["../src/test-layout-2.tsx"],"names":[],"mappings":";AAGA,SAAS,UAAU;IACjB,OAAO,CACL,cAAK,aAAa,EAAC,QAAQ,YACzB,eAAK,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,EAAC,KAAK,EAAC,WAAW,EAAE,CAAC,aACpD,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,YACvE,eAAM,EAAE,EAAC,MAAM,kBAAS,GACrB,EACN,oCAAmB,EACnB,oCAAmB,IAChB,GACF,CACP,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=test-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-layout.d.ts","sourceRoot":"","sources":["../src/test-layout.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
2
+ function TestLayout() {
3
+ return (_jsxs("box", { flexDirection: "column", children: [_jsxs("box", { flexDirection: "row", border: ['left'], borderColor: "red", children: [_jsx("box", { style: { marginLeft: -1, width: 1 }, children: _jsx("text", { fg: "blue", children: "X" }) }), _jsx("text", { children: "Text 1" })] }), _jsx("box", { flexDirection: "row", border: ['left'], borderColor: "red", children: _jsx("text", { children: "Text 2" }) })] }));
4
+ }
5
+ // Just to check if it compiles and runs
6
+ console.log('Compiling test layout...');
7
+ //# sourceMappingURL=test-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-layout.js","sourceRoot":"","sources":["../src/test-layout.tsx"],"names":[],"mappings":";AAIA,SAAS,UAAU;IACjB,OAAO,CACL,eAAK,aAAa,EAAC,QAAQ,aACzB,eAAK,aAAa,EAAC,KAAK,EAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,EAAC,KAAK,aACzD,cAAK,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,YACrC,eAAM,EAAE,EAAC,MAAM,kBAAS,GACrB,EACN,oCAAmB,IAChB,EACN,cAAK,aAAa,EAAC,KAAK,EAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,WAAW,EAAC,KAAK,YACzD,oCAAmB,GAChB,IACF,CACP,CAAA;AACH,CAAC;AAED,wCAAwC;AACxC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA"}
package/dist/theme.d.ts CHANGED
@@ -3,8 +3,7 @@ import { type ResolvedTheme } from './themes';
3
3
  export declare function loadPersistedTheme(): string;
4
4
  export declare function persistTheme(name: string): void;
5
5
  export declare function initializeTheme(): void;
6
- export declare const Theme: ResolvedTheme;
6
+ export declare function useTheme(): ResolvedTheme;
7
7
  export declare function getMarkdownSyntaxStyle(): SyntaxStyle;
8
8
  export declare const markdownSyntaxStyle: SyntaxStyle;
9
- export default Theme;
10
9
  //# sourceMappingURL=theme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAQ,MAAM,eAAe,CAAA;AACjD,OAAO,EAAoB,KAAK,aAAa,EAAgC,MAAM,UAAU,CAAA;AAgB7F,wBAAgB,kBAAkB,IAAI,MAAM,CAU3C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAM/C;AAGD,wBAAgB,eAAe,IAAI,IAAI,CAGtC;AAGD,eAAO,MAAM,KAAK,EAAE,aAMlB,CAAA;AAEF,wBAAgB,sBAAsB,IAAI,WAAW,CAwBpD;AAID,eAAO,MAAM,mBAAmB,aAI9B,CAAA;AAEF,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../src/theme.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAQ,MAAM,eAAe,CAAA;AACjD,OAAO,EAAoB,KAAK,aAAa,EAAgC,MAAM,UAAU,CAAA;AAgB7F,wBAAgB,kBAAkB,IAAI,MAAM,CAU3C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAM/C;AAGD,wBAAgB,eAAe,IAAI,IAAI,CAGtC;AAGD,wBAAgB,QAAQ,IAAI,aAAa,CAGxC;AAED,wBAAgB,sBAAsB,IAAI,WAAW,CAwBpD;AAID,eAAO,MAAM,mBAAmB,aAI9B,CAAA"}
package/dist/theme.js CHANGED
@@ -36,14 +36,11 @@ export function initializeTheme() {
36
36
  const themeName = loadPersistedTheme();
37
37
  useStore.setState({ currentThemeName: themeName });
38
38
  }
39
- // Proxy-based Theme object that reads from zustand state
40
- export const Theme = new Proxy({}, {
41
- get(_, prop) {
42
- const themeName = useStore.getState().currentThemeName;
43
- const resolved = getResolvedTheme(themeName);
44
- return resolved[prop];
45
- },
46
- });
39
+ // Reactive hook for theme - use this in React components
40
+ export function useTheme() {
41
+ const themeName = useStore((state) => state.currentThemeName);
42
+ return getResolvedTheme(themeName);
43
+ }
47
44
  export function getMarkdownSyntaxStyle() {
48
45
  const themeName = useStore.getState().currentThemeName;
49
46
  const t = getResolvedTheme(themeName);
@@ -76,5 +73,4 @@ export const markdownSyntaxStyle = new Proxy({}, {
76
73
  return getMarkdownSyntaxStyle()[prop];
77
74
  },
78
75
  });
79
- export default Theme;
80
76
  //# sourceMappingURL=theme.js.map