26 Commits

Author SHA1 Message Date
Mike Sawka c7a60a80f8 initwshrpc in electron (#391) 2024-09-17 23:10:09 -07:00
Mike Sawka 566bf461ff implement img streaming (local and remote) for markdown (#348) 2024-09-06 12:59:28 -07:00
Mike Sawka 8ad84fd78a update all gopkg imports (#330) 2024-09-05 14:25:45 -07:00
Evan Simkowitz 7df91de2e5 use unauthorized instead of internalservererror for failed authkey validation 2024-08-21 15:23:15 -07:00
Evan Simkowitz e527e2ab77 Add authkey header for requests to the backend (#256)
With this PR, Electron will generate a new authorization key that the Go
backend will look for in any incoming requests. The Electron backend
will inject this header with all requests to the backend to ensure no
additional work is required on the frontend.

This also adds a `fetchutil` abstraction that will use the Electron
`net` module when calls are made from the Electron backend to the Go
backend. When using the `node:fetch` module, Electron can't inject
headers to requests. The Electron `net` module is also faster than the
Node module.

This also breaks out platform functions in emain into their own file so
other emain modules can import them.
2024-08-21 15:04:39 -07:00
Mike Sawka 037497e7f1 wsh edit working (#252) 2024-08-20 14:56:48 -07:00
Mike Sawka 0d8c159101 remote file preview (streaming) working (#248) 2024-08-19 14:37:52 -07:00
Mike Sawka 85874f92ca set up remote connserver (#245) 2024-08-18 21:26:44 -07:00
Sylvie Crowe c30188552f Add Unix Domain Socket Listener when Establishing Connections (#243)
This makes it possible to send wsh commands from wsh on a remote session
to wavesrv running locally. The exact behavior of running those commands
isn't implemented, but the underlying interface is added here.
2024-08-17 11:21:25 -07:00
Mike Sawka 844451ea0d wsh routing + proxy (#224)
lots of changes, including:
* source/route to rpcmessage
* rpcproxy
* wshrouter
* bug fixing
* wps uses routeids not clients
2024-08-13 16:52:35 -07:00
Mike Sawka ed0279ad72 adding telemetry updates (#209) 2024-08-08 18:24:54 -07:00
Mike Sawka cfc875bc21 metadata updates (frontend typing) (#174) 2024-07-30 12:33:28 -07:00
Mike Sawka 551802dbd7 background support (from metadata). colors, gradients, images. (#168) 2024-07-29 11:55:10 -07:00
Mike Sawka 9df9c99fbd checkpoint on domain sockets + update background colors + transparency (#160) 2024-07-26 13:30:11 -07:00
Evan Simkowitz 8971e2feba Set up electron-builder for new app (#113)
Adds electron-builder, which we will use to package and distribute our
application, same as in the existing app.
Replaces explicit port assignments with dynamic ones, which are then
stored into environment variables.
Adds a ~/.w2-dev folder for use when running a dev build.

The build-helper pipeline from the old repo is included here too, but it
is not updated yet so it will fail.

Also removes some redundant utility functions and cleans up some let vs.
const usage.

The packaging can be run using the `package:prod` and `package:dev`
tasks.

---------

Co-authored-by: sawka <mike.sawka@gmail.com>
2024-07-17 18:42:49 -07:00
Mike Sawka 01b5d71709 new wshrpc mechanism (#112)
lots of changes. new wshrpc implementation. unify websocket, web,
blockcontroller, domain sockets, and terminal inputs to all use the new
rpc system.

lots of moving files around to deal with circular dependencies

use new wshrpc as a client in wsh cmd
2024-07-17 15:24:43 -07:00
sawka be392ee755 start unix domain socket server. fix a couple small bugs 2024-07-09 14:31:16 -07:00
sawka fa3a670603 split web server into a listen and serve call 2024-07-09 13:47:39 -07:00
sawka 8683105f70 fun customization for the block title 2024-06-21 14:44:11 -07:00
Mike Sawka 5e655c7c55 refactor cmdqueue out of blockcontroller (#65) 2024-06-20 16:01:55 -07:00
Mike Sawka 4ded6d94b6 stickers and terminal serialization (#57) 2024-06-17 22:38:48 -07:00
Mike Sawka e46906d423 wsh rpc working (#55)
lots of iterations on an RPC protocol. getting wsh working with a
getmeta/setmeta command in addition to html mode.
2024-06-17 09:58:28 -07:00
Mike Sawka 8e3540f754 working on ijson and wsh magic (#53) 2024-06-13 23:54:04 -07:00
Evan Simkowitz b2b1f9b9df Switch to using electron-vite instead of WebPack (#45)
This sets us back up to use Vite via the electron-vite package. This
will let us continue to build our testing suite on Vitest and take
advantage of Vite features like Hot Module Reloading, etc.

---------

Co-authored-by: sawka <mike.sawka@gmail.com>
2024-06-13 16:49:25 -07:00
sawka 8a71180f20 implement wscommand using type union interface, send resize events there 2024-06-12 14:18:03 -07:00