Commit Graph

22 Commits

Author SHA1 Message Date
Red J Adaya 18fe3f3296 import aliass and configuration updates (#291) 2024-02-12 22:47:51 -08:00
Red J Adaya 85f22a0733 Declare types as global (#282)
* declare types as global

* remove mobx types aliases

* put back model_old.ts

* remove types.ts
2024-02-12 16:39:29 -08:00
Evan Simkowitz d319e72609 Refactor ModelUpdate to set up for decoupling sstore (#280)
This PR changes ModelUpdate mechanism from a statically-typed struct to an interface, allowing us to define the update mechanism and the update types separately. This sets us up to move app logic and update mechanisms into separate packages. Ultimately, sstore will only define low-level persistence logic.
2024-02-09 17:19:44 -08:00
Red J Adaya e692c7c180 Split model into separate files (#279)
* split settings modals

* init

* init

* remove styles not related to checkbox

* remove styles not related to CmdStrCode

* renderCmdText doesn't need styles

* remove styles not related to dropdown

* IconButton doesn't need styles because it extends Button

* remove old connections

* InfoMessage conmponent no longer needed

* fix import error

* remove styles not related to InlineSettingsTextEdit

* remove styles not related to InputDecoration

* LinkButton doesn't need styles cos it's extends Button component

* remove styles not related to markdown

* remove styles not related to modal

* NumberField doesn't need styles cos it extends TextField

* remove styles not related to PasswordField

* RemoteStatusLight no longer used. It's replaced by Status component.

* remove styles not related to ResizableSidebar

* SettingsError doesn't need styles cos it uses classnames in app.less

* remove styles not related to Status

* remove styles not related to TextField

* remove styles not related to Toggle

* remove styles not related to Tooltip

* init

* cleanup bookmarks model

* cleanup clientsettingsview model

* cleanup cmd model

* remove dayjs import from bookmarks model

* cleanup commandrunner model

* cleanup historyview model

* cleanup input model

* cleanup linecontainer model

* cleanup mainsidebar model

* cleanup main model

* cleanup plugins model

* cleanup remote model

* cleanup screen model

* cleanup screenlines model

* cleanup session model

* cleanup screenlinecontainer model

* cleanup connectionsview model

* add index.ts inside model dir

* replace /model_old imports with /model

* rename model to models

* move model_old to models

* fix ptyDataSource errors

* split models/model
2024-02-08 17:52:42 -03:00
Mike Sawka b136c915df Restart command (#253)
* working on cmd restart logic

* button to restart command

* bind Cmd-R to restart selected command, and Cmd-Shift-R to restart last command.  Browser Refresh is now Option-R.  also fix 'clear' command to not delete running commands (like archive).  some small changes to keyboard utility code to always set 'alt' and 'meta' appropriately.  use 'cmd' and 'option' for crossplatform bindings

* focus restarted line

* update termopts, use current winsize to set termopts for new command

* add cmd.restartts to track restart time

* display restarted time in line w/ tooltip with original time

* add restartts to line:show
2024-01-26 16:25:21 -08:00
Cole Lashley 0648d48ba1 Intenational key binding fixes (#234)
* first pass of copy file

* first pass fixing up function

* first pass fixing key press

* fixed up key press parsing

* reverted cmdrunner.go

* fixed cmdrunner.go again :p

* fixed cmdrunner again lol

* Add job status indicators to tabs within a workspace (#232)

Adds job status indicators that will show any updates to running commands while you are focused away from a tab. These will show up as status icons in the tab view.

These indicators will reset for a given tab when you focus back to it.

I've updated the inner formatting of the tab to use flexboxes, allowing the title to display more text when there are no icons to display.

Also includes some miscellaneous for-loop pattern improvements in model.ts and removing of unused variables, etc.

* first pass fixing key press

* added key util check file

* addressed rebase artifacts

* fixed more rebase artifacts

* fixed keybindings

* removed log

* fixed a ton of rebase artifacts

* fixed a ton of rebase artifacts

* added cmd maps to altKey if not on macos

* fixed platform check code and fixed some small bugs
2024-01-26 10:50:11 -08:00
Sylvie Crowe e1e5b67ff6 I18n fixes (#211)
* remove byte sanitization for user commands

When serializing jsonBytes in packet.go::MarshalPacket, a step existed
that attempted to manually sanitize the bytes before sending them. This
was initially done to avoid invalid characters in json; however, go
should handle this for us. But this sanitization broke
internationalization because it excluded characters required for unicode
in other languages. Because of that, it has been removed.

* properly decode non-ascii on frontend

The functions atob and btoa do not convert base 64 to strings in the
expected way. The base64ToArray function handles it properly but other
cases do not. These other cases have been replaced with a helper
function that makes use of the base64-js package. This package has
already been included as a dependency of another package we use, but it
was added to the package.json file to make the inclusion explicit.

* automatically set/share LANG var with waveshell

Waveterm previously did not set the LANG environment variable which
caused problems for international users. On Linux, this is done
automatically, but it needs to be done manually on macos.

Even on linux, the wavesrv LANG variable is shared with waveshell to
ensure the same one is used on remotes.

* only set the lang var if not previously set

In order to prevent waveterm from overriding the lang var entirely, this
ensures that it is only manually determined if it hasn't previously been
set.

* use envMap instead of os to determine var

This is slightly more performant and relies more directly on our code
instead of external code.
2024-01-08 18:31:17 -08:00
Red J Adaya 452836bffc Cmd-P feature -- Quick Tab Selector (#200)
* register cmd+p shortcut

* tab switcher modal

* initial implementation

* tab switcher modal content

* fix styles

* fix scroll bugs

* set selected index when clicking option

* hover effect for options

* switch when Enter key is pressed

* remove fuse.js

* only use switchscreen for switching sessions and tabs

* var naming changes

* fix multiple focused options on mouse hover

* fix duplicate focused options and scrollbar

* clean imports

* fix wrong function name

* merge color styles in app.less

* remove debugging code

* use For component when iterating thru options

* minor style fix

* remove mouse interaction, keep focusedIdx in bounds, increase max number of tabs shown, small layout adjustment for big tab names (and more space for icon)
2023-12-30 22:34:05 -08:00
Red J Adaya 019eaecdaa Immediately hide modal when deleting workspace (#187)
* immediately hide modal when deleting workspace

* only pop modal when purging is successful
2023-12-23 12:31:11 -08:00
Red J Adaya 8a938744f7 migrate modals to new modals system (#124)
* migrate screen settings modal to new modals system

* use screen member var in the methods

* migrate session settings modal to new modal system

* use Modal component in session settings modal

* migrate line settings modal to new modals system

* use Modal component in line settings modal

* migrate client settings modal to new modals framework

* set alert modal width to 500px

* remove screen settings modal after deletion

* use Dropdown component for connnections dropdown

* use Dropdown component for connections dropdown in new tab flow

* replace InfoMessage with Tooltip

* use Dropdown for fontsize dropdown

* use Dropdown for renderer dropdown

* fix dropdown width issue on new tab container

* fix class names concatenation

* fix dropdown width issue in screen settings modal
2023-12-07 22:51:46 -08:00
Red J Adaya 847de1fc60 new tab flow (#60)
* init

* init

* error handling

* use css

* minor improvements

* fix some issues and tabicon init

* show error indicator when empty and is required

* debounce input

* fix decorator linting issue

* icon system init

* fix bugs

* color custom icons and fix regression

* remove debugging code

* remove @tab-magenta. fix formatting.

* swap magenta for mint

* change tab color order
2023-11-07 00:04:25 -08:00
sawka a7c2d440b2 new tab colors. also re-implement tab gradients according to figma file 2023-11-01 22:38:37 -07:00
sawka ab8021fad7 add fontawesome back into the repo 2023-10-31 11:18:12 -07:00
sawka 14715ec5b1 Fix All TypeScript Errors (#56)
* update newtab screen to make it match the figma mockup (still waiting on UI for name)

* fix all typescript errors

* update for new build

* remove old import
2023-10-30 09:53:17 -07:00
sawka 9b5bc33125 update newtab screen to make it match the figma mockup (still waiting on UI for name) (#52) 2023-10-30 09:43:54 -07:00
sawka d8d7d0b7d2 add 'magiclayout' to hold magical layout constants. compute the constants with the new padding/margins for new UI. use to compute runtime heights. 2023-10-26 01:25:46 -07:00
sawka c0de69e4a2 move +3 for descenders to termHeightFromRows 2023-10-24 09:27:20 -07:00
Red J Adaya 046d219555 add license notice (#37) 2023-10-16 21:31:13 -07:00
anandamarsh 474552d732 Pe 199 pre rel 0.4.0 (#34)
* Tab bg matches selections

* WIP: need to fix all modals one by one

* ready to pull latest

* history fixed
2023-10-11 23:43:47 -07:00
sawka 3359ee7457 jetbrains for terminal font. restore font loading. remove fractional font size. set line-height to 1.5 (not 20px).
fix terminal size calculation.
2023-10-09 22:29:05 -07:00
anandamarsh 5a0effb691 Pe 96 left navbar (#27)
* nice. bottom done

* work on adding workspaces

* starting on Tabs
2023-09-30 12:13:40 -07:00
anandamarsh b1820224d5 Pe 107 global changes (#26)
* chaged background etc. now making font changes

* need to go component by component now
2023-09-27 15:03:08 -07:00