Commit Graph

311 Commits

Author SHA1 Message Date
Evan Simkowitz
3fcf209b52
Add ephemeral block support (#1275)
Ephemeral blocks can now be added to the LayoutModel for a tab. Only one
ephemeral block can exist at a time. It is placed above all other
blocks, including the magnified blocks.

Updates how magnified and ephemeral blocks overlay the other blocks.
Now, there's a blurred backdrop behind them that will obscure the other
blocks. As a result of this, the overlayed blocks are now translucent.
2024-11-13 18:00:13 -08:00
Sylvie Crowe
31d0aa114d
AI Clear Button (#1274)
Adds a button and Cmd:l keybinding to clear the ai message history in
the current block
2024-11-13 15:00:33 -08:00
Sylvie Crowe
d96542f691
Rerun Command Button (#1265)
Adds a button in widgets with a "cmd" controller that allows the command
to be rerun without accessing a context menu.
2024-11-11 15:30:40 -08:00
Mike Sawka
3fc45c63f3
vdom terminal toolbar (#1263) 2024-11-11 13:11:09 -08:00
Mike Sawka
de902ec2b7
ai backend refactor + claude/anthropic API support (#1262) 2024-11-11 11:39:08 -08:00
Mike Sawka
045405aa5e
new wsh ai command (#1257) 2024-11-08 16:34:50 -08:00
Mike Sawka
58f2f4ae8e
fix display order sort (#1256) 2024-11-08 15:46:44 -08:00
Mike Sawka
f50ce9565c
VDom 11 (#1224)
* Fix VDom url caching -- use regular requests 
* new boilerplate to make writing apps easier
* render-blocking global styles (to prevent render flash)
* bug fixes and new functionality etc.
2024-11-07 00:07:23 -08:00
Mike Sawka
42e85aea6f
VDom 10 (#1206)
* get RefOperations and RefUpdates working. 
* implement a <canvas> API that can be called using RefOperations
* prop to disable rehype/markdown (memory leak)
2024-11-05 23:07:45 -08:00
Mike Sawka
61d6b4d8eb
VDom 9 (#1205)
Lots of quality of life improvements (and bug fixes):
* Class(), ClassIf(), ClassIfElse() methods
* <wave:style> that can use a file vdom:/// url
* UseStateWithFn() to allow for functional setters
* If, IfElse, and ForEach for vdom construction
* batched updates for large updates -- streaming -- to get around packet size issues
* more flexible file sending code, for []byte, io.Reader, fs.File, and a fileName (with optional MimeType)
* fix the vdom:// protocol handler to work with fetch
* updated wshcmd-html for new best practices
2024-11-05 15:52:59 -08:00
Mike Sawka
91c293e4be
VDom 8 (#1202)
* new vdomevents to support click, change, keydown, etc. easier type
signature
* can now pass a prop type instead of always converting to
map[string]any
* implement DefineComponent to allow easier vdom creation using a
component function directly
* separate vdomclient Make from Connect
* lots of bug fixes to get everything working again
* PStyle and special "style" attribute handling
2024-11-04 12:52:36 -08:00
Mike Sawka
eeda49bbde
vdom 7 (#1180) 2024-11-02 10:58:13 -07:00
Mike Sawka
473225d94b
issue squashing #1175 #1038 #1086 #1081 #1066 #1020 (#1177) 2024-10-31 12:34:30 -07:00
Evan Simkowitz
96cc2adc91
Fix Wave AI styling again (#1164) 2024-10-28 16:46:00 -07:00
Sylvie Crowe
58ff42d9fd
Sysinfo Plot Height (#1158)
This makes two small changes
- renames a class to resolve two css classes having the same name
- ensures sysinfo's outermost element follows the *-view pattern
2024-10-27 23:02:28 -07:00
Evan Simkowitz
be5d73af21
Fix wave ai styling (#1157) 2024-10-27 21:34:20 -07:00
Red J Adaya
55c8e5a213
workspace switcher + new elements (in storybook) (#1148) 2024-10-27 13:22:06 -07:00
Sylvie Crowe
cbb825982b
fix: add gaps in plots where no data exists (#1065)
Scans the window from the most recent timestamp to however many seconds
back are being stored. Then adds blank spaces (NaN values) in between
data items that are too far apart. Lastly, if the earliest item is
blank, there are probably fewer than the expected number of items. In
that case, it adjusts the first timestamp to keep plot width mostly
consistent.
2024-10-27 12:00:15 -07:00
Sylvie Crowe
bbd530c052
AI Sliding Window (#1151)
Only send the 30 most recent ai questions and responses to the model
when making requests. This prevents the amount of data being sent from
getting too big.
2024-10-27 11:49:34 -07:00
Mike Sawka
a782d83628
vdom 6 (#1145) 2024-10-25 18:36:09 -07:00
Mike Sawka
416c26c1cd
vdom 5 (#1143) 2024-10-25 13:45:00 -07:00
sawka
e1d538ed8b merge v0.8.13 changes 2024-10-24 17:02:35 -07:00
Mike Sawka
1742c19e13
resize terminal on restoring state (#1100) (backport from dev0.9) (#1116) 2024-10-24 11:01:58 -07:00
Mike Sawka
d65eabe494
termfontsize override (#1118) 2024-10-24 11:01:39 -07:00
Mike Sawka
701d93884d
vdom 4 (#1110) 2024-10-23 22:47:29 -07:00
Evan Simkowitz
df25c54a31
Merge branch 'main' into dev-v0.9 2024-10-22 21:19:56 -07:00
Evan Simkowitz
ec70ce8c91
Display error message on failed WebView page load (#1072)
closes #1023
2024-10-22 18:17:42 -07:00
Mike Sawka
fa160313ea
resize terminal on restoring state (#1100) 2024-10-22 12:50:44 -07:00
Evan Simkowitz
39fff9ecfd
Allow separate directories for each config part, add dropdown for editing AI presets (#1074)
Adds new functionality on the backend that will merge any file from the
config directory that matches `<partName>.json` or `<partName>/*.json`
into the corresponding config part (presets, termthemes, etc.). This
lets us separate the AI presets into `presets/ai.json` so that we can
add a dropdown in the AI preset selector that will directly open the
file so a user can edit it more easily. Right now, this will create a
preview block in the layout, but in the future we can look into making
this block disconnected from the layout.

If you put AI presets in the regular presets.json file, it will still
work, since all the presets get merged. Same for any other config part.
2024-10-21 16:51:18 -07:00
sawka
0590ba2509 merge main to dev 0.9 2024-10-18 09:29:39 -07:00
Mike Sawka
dc70ab4014
ws reconnection bug + clean up logging (#1058) 2024-10-17 23:42:55 -07:00
Evan Simkowitz
70811cb730
Add helpview callback to resolve failed webview loads (#1057) 2024-10-17 16:03:17 -07:00
Evan Simkowitz
f77b42d70c
Fix bug where helpview fails to load sub-pages after idle (#1056)
closes #1048
2024-10-17 15:38:42 -07:00
Sylvie Crowe
a5999aa02a
Plot Sysinfo (#1054)
Expands the cpuplot with memory plots and individual cpu plots. Also
improves the styling and handling of multiple plots.
2024-10-17 15:19:13 -07:00
Mike Sawka
46783ba315
vdom 3 (#1033) 2024-10-17 14:50:36 -07:00
Mike Sawka
c1c90bb4f8
browser view (#1005) 2024-10-17 14:34:02 -07:00
Evan Simkowitz
a90e747f92
Fix runaway name appending on the default AI preset (#1051)
Shallow copy the presets when updating `display:name` so that the
appending of the model name for the default preset doesn't accumulate
every time the tab refreshes.

closes #1040
2024-10-17 09:53:49 -07:00
Sylvie Crowe
0b3888d900
Quicklook only for local files on mac (#1039)
bug fix so quicklook does attempt to launch for remote directory
previews
2024-10-16 09:24:22 -07:00
Evan Simkowitz
69c99dd13a
Add button to mute audio when media is playing in webview (#1036)
![image](https://github.com/user-attachments/assets/202636dc-aab5-4164-9729-fecd0cc804ae)

Also fixes atom usage for the url bar so it will properly update when
any upstream atom states change
2024-10-15 15:15:33 -07:00
Mike Sawka
e24fab34dc
get json/yaml validation working (#1032) 2024-10-14 18:18:58 -07:00
Mike Sawka
a15b339f39
implement copy on select for terminal (#1029) 2024-10-14 10:05:38 -07:00
Evan Simkowitz
0b88fa590d
Move AI model configs to presets and add a dropdown to swap between configs (#1024) 2024-10-12 18:40:14 -04:00
Mike Sawka
3d2d68bc73
fix initial size of windows (#1011) 2024-10-10 16:12:56 -07:00
Sylvie Crowe
f3e0ba8148
Add Don't Ask Again Checkbox for Wsh Install (#1010)
This provides a checkbox when installing wsh that will prevent the
message from popping up in the future. It can also be disabled by adding
`"askbeforewshinstall": false` to the config file.
2024-10-10 15:50:46 -07:00
Evan Simkowitz
23eda19ead
Remove 6px padding from terminal block, make scrollbar properly overlay the terminal contents (#1009) 2024-10-10 14:42:44 -07:00
Evan Simkowitz
3ae8d693e8
Adjust the gap sizes and padding for the Wave AI controls div so it's more uniform (#1008)
Fix two-tone color in input box as well
2024-10-10 14:13:25 -07:00
Evan Simkowitz
e92b388260
Make terminal block scrollbar thumb slightly wider, closer to edge (#1007)
I can't push the scrollbar all the way to the edge because XTerm.js is
doing some fancy calculations for their viewport width and when I try to
mess with the CSS too much everything breaks, but I was able to get the
scrollbar thumb to be slightly wider and slightly closer to the edge
without everything falling apart
2024-10-10 14:02:58 -07:00
Evan Simkowitz
64084d3e27
Remove global.ts dependency from emain (#1003)
Removes global atoms dependency from emain by moving WOS to grab the
globalAtoms from window, if present. Also removes interdependency
between wshrpcutil and wps

Also adds showmenubar setting for Windows and Linux
2024-10-10 10:12:42 -07:00
Evan Simkowitz
bd3a971dca
Remove unnecessary onScroll log (#1002) 2024-10-09 20:43:04 -04:00
Mike Sawka
4f00595311
allow ai defaults to be overridden by block meta (#1000) 2024-10-09 15:16:35 -07:00