* upgrade to react 18 and use new createRoot api
* fix types and remove excessive functions in wrapper-home
* update types with implicit children to PropsWithChildren
* fix: remove error objects as children
* remove excessive function from account.tsx
* remove excessive function from general.tsx
* update tests and remove deprecated @testing-library/react-hooks
* remove unused import
* update package-lock
* Initial exploration multiple test projects
* Replace duplicate scenario with one to be filled in
* Simplify number of playwright project configs
* Fix testMatch setting on playwright config
* Edit github actions to distinguish between CI and Release runs
* fc rebase
* extract render listeners from app
* organise global shortcuts
* show logo in index.html
* import listeners
* add loading indicator and split shortcuts
* Simplify GitVCS/VCS instance creation
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* Add keyboard handler hook
* use the hook in all functional components
* update package-lock.json
* split global keys from app.tsx
* flatten gql explorer
* gql explorer fc
* oops
* use fn updater in setState
* remove keyboard-binder from gql explorer
* graphql-editor to fc
* remove keyboard binder from graphql-editor
* req switcher modal fc
* fix show hide modal
* hotkey hook naming pass
* modal fc
* remove unused onKeyDown prop from modal
* use the label instead of key name
* request-url-bar send request with cmd+d
* stop propagation in modals
* cleanup
* use the keybind hook on response viewer
* use the keybind hook on action-bar
* use document.body for handling dropdown navigation via keyboard
* use global shortcuts for request switcher
* use ModalHandle
* remove unused closeOnKeyCodes
* remove KeydownBinder from modal
* remove KeyDownBinder class
* remove auto-focus in modal component
* define cascade for keymaps in code-editor
* fix key-combination-modal
* remove onCancel and fix export
* remove unused ref
* fix types
* remove recursive hack on modals
* nitpick: naming
* checkpoint - 1
* fix hot key labels
* checkpoint
* some more type fixes
* simplify shortcuts.tsx and fix types
* add key combo types
* add key combo fc
* fix type
* rename definition to description
* remove close modal and close dropdown hotkeys
* add migration for removing hotkeys
* mock the keydown-binder in the test
* use a function to get the element to bind
* refactor search
* allow autocomplete on editor
* add event.code in keyboard keys
* fix lint
* remove verbose introspection modal
* use the new keybinder in request-switcher-modal
* typo in gql editor
* fix esc on editable
* use dot property access
* stop editor handling escape keys
Co-authored-by: jackkav <jackkav@gmail.com>
* add description field in websocket request model
* add websocket request settings modal
* add settings option in the ws request dropdown
* add docs tabpanel in websocket request pane
* extend hotkey for request settings to handle ws requests
* wip todo fix stale request value
* add store/send cookies and move/copy to workspace
* merge settings modals into one
* add followRedirects option in ws
* update followRedirects type on request model
* fix followRedirect default setting
* respect the max redirects global settings
* cleanup
* enable team sync in ws request
* sync payload
* add default payload name
* make git sync work
* fix test
* hrmph
* fix failing nedb test
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* add style for enabled status
* Update packages/insomnia/src/ui/components/websockets/websocket-request-pane.tsx
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* show ws spinner
* use green circle
* fix flashing of indicator on sidebar
* use selector for setActiveRequest in sidebar
* use selector for duplicate request in sidebar
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* [INS-1697] Create WebSocket Request (#5041)
* add fail safe
Co-authored-by: Mark Kim <mark.kim@konghq.com>
* Websockets IPC API (#5044)
* add url to ws-request model
* fix webSocketRequest typo and add url
* add websocket api and expose it through preload ipc
* add typings
Co-authored-by: Mark Kim <mark.kim@konghq.com>
* [INS-1701] Create/Close Websocket Connection (#5046)
* add websocket action bar and its components
* remove comments
* clean up
* reflect on the electron api
* remove unused files
* import name change
* add styling
* remove commet
* add suggested changes
* remove default value
* Add WebSocketRequest to sidebar and update types (#5048)
* [INS-1700] Delete Websocket Request (#5055)
* add websocket actions dropdown
* add actions to websocket request in sidebar
* [INS-1703] Display WebSocket messages - first pass (#5054)
* Update event types to improve inference
* Update websocket response pane to fetch/subscribe and display the events
* [INS-1693] Add WS echo server for smoke tests (#5050)
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
* fix sidebar unit tests (#5064)
* [INS-1776] adds `ws` dependency explicitly (#5066)
* [INS-1702] WebSocket Send Message (#5052)
* add initial changes for websocket message
* add abstraction for db operation and websocket operation
* remove console
* add rename
* add basic testing
* add basic testing
* add unit tests
* add form event type
* add comments
* disallow exporting context directly
* add suggested changes
* refresh the query
* using useDeepCompareEffect
* rename variable
* add mock
* clean up
* clean up
* correct the file name
* add some changes
* removing nedb-context and its hooks
* remove database changes for event sending
* [INS-1778] Fix Global Module Typing Issue (#5065)
* fix typings
* add jest import
* [INS-1703] View WebSocket Messages (#5074)
* save changes
* add styles and move files around
* remove unused code
* clean up some components
* add clean up
* add timestamp component
* add unit tests
* add case
* add style changes
* [INS-1786] WebSocket headers tab (#5080)
* first ui pass
* extract and wire up bulk editor
* raise ready state, move send
* add upgrade header debug logs
* can pass header to websocket upgrade
* implement readOnly headers
* add upgrade event and sent headers
* clean up
* fill out http upgrade into the event
* change upgrade message
* read only headers while connected
* remove upgrade event
* revert bulk editor change
* fix header editable toggle
* add nunjucks todos
* improve readOnly implementation
* disable codemirror/nunjucks for websocket headers
* take calculated headers out of the data model
* move hardcoded default headers down the tree
* fix request url rendering issue
* removed spammy warning
* clarify prop name
* refine pair typing
* change placeholder
* remove readOnly header property
* fix readOnly header layout
* Update packages/insomnia/src/ui/components/dropdowns/websocket-request-actions-dropdown.tsx
* Show HTTP->WS upgrade (handshake) (#5091)
* first pass as event
* add handshake ui
* add timeline tab
* simplify ResponseTimelineViewer
* transform res debug modal to change timeline props
* decouple timeline fetching from timeline component
* timeline ui pass
* record headers in request and response models
* can view timeline history
* write timeline to file
* some timeline
* can persist event logs
* put interface beside usage
* add note
* add event log history
* remove table event row
* tidying up
* make ws colors match
* enable multiple open connections
* close open connections at app exit
* remove old test
* Update packages/insomnia/src/models/request-version.ts
* fix type
* default readystate
* fix preview css scroll
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
* INS-1788: Add control flow to improve responsiveness. (#5094)
* INS-1788: Add control flow for responsiveness.
This prevents events from flooding the UI thread entirely.
* Add additional code comments.
* fixup: webSocketEvent -> webSocketEvents
* display response headers (#5102)
* Show errors in timeline (#5100)
* remove unused context provider
* show errors in event tab
* updates timeline with message and close
* clean up
* show errors in timeline
* fix WebSocket capitalisation
* make timeline reader specific to ws
* write outbound messages to the timeline
* fix type
* Make the head row sticky in the events table (#5103)
* Add client certificate support to websocket connections (#5112)
* [INS-1810] close connection on response change (#5104)
* close ws connection when response is changed
* add delete logic for the queue mapg
* set error response to active response
* useRef for CodeEditor
* extract closeRequest
* use requestId to eliminate inconsistencies
* refactor extract clean up methods
* timeline feedback
* change type annotation
* fix type
* Revert "use requestId to eliminate inconsistencies"
This reverts commit 98335a927e.
* [INS-1803] show cookie tab in response pane (#5105)
* hard code sending and storing to true
* make tab naming consistent
* hard code cookie settings to false
* fix headers isDisabled bug
* [INS-1805] Add Auth Header Tab (#5115)
* add minimal change to the auth flow
* add disable state
* adding dropdown disable
* simplify reducer
* fix lint
* [INS-1839] Rename tab Header everywhere (#5119)
* can import/export websocket requests (#5122)
* use responseId for timeline name (#5124)
* add react-virtual to virtualize the event log view (#5126)
* [INS-1833] Include Auth Header in Headers mapping for WebSocket Connection (#5120)
* add auth to the header
* remove console log
* remove unneeded async
* add success redirect logic to websocket server
* add unexpected-response handler
* remove digest auth (#5129)
* remove auth header and outbound message timeline (#5130)
* [INS-1840] Add Connected Status Label and Extras (#5131)
* add status related changes
* text label change
* WebSocket ipc typing proposal (#5125)
* make consistent with main bridge
* rename webSocket
* remove deviated mock
* use consistent arrow function defintions
* Update packages/insomnia/src/main/network/websocket.ts
* Set the environment for websocket responses (#5132)
* first pass (#5123)
* [INS-1843] Add more checks to WS smoke test (#5138)
* Fix failing websocket smoke test
* Add remaining websocket smoke server endopints to fixtures
* Add checks for basic-auth, bearer and redirect
* Rm assertion
* can select payload type (#5133)
* Implement nunjucks rendering for websocket urls, authentication, headers and urls (#5134)
* fix websocket->webSocket (#5142)
* bug fix (#5144)
* INS-1844: Implement basic event view functionality. (#5146)
* INS-1844: Implement basic event view functionality
* CSS fix to align Preview button with tab buttons.
* Reverse the order of WebSocket events (#5148)
* Reverse the event log order in the view and subscribe to messages after the latest
* WebSocket response model (#5147)
* init websocket-response model
* add websocket response model
* remove unused timeline getter
* remove unused functionality from the ws-response model
* can select and save payload message and preview mode (#5143)
* [INS-1838] Add Empty State (#5140)
* add empty state
* use the empty state pane
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* Bug/stabilise-ws-fetch-method (#5152)
* just poll
* remove cts and eventlog channel
* Fix/nitpicks (#5156)
* remove unused names
* fix copypasta icon
* ensure all subcompnent drop state on request change
* move empty state to response pane
* add websockets to quick switch (#5159)
* [INS-1800] Remove value validity check in the WebSocket headers (#5154)
* remove valid value check in the headers
* add header name filtering
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
Co-authored-by: Mark Kim <mark.kim@konghq.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: Jack Kavanagh <jackkav@gmail.com>
Co-authored-by: John Chadwick <86682572+johnwchadwick@users.noreply.github.com>
Co-authored-by: David Marby <david@dmarby.se>
* fix: set default header f
Set deafult header for isomorphic-git httpClient.
Deafult behaviour for cli git command adds "Accept: */*" header,
to mimic this behaviour an defaultGitAcceptHeader will be set and merged with optional provided config headers.
#2220
* fix: change default header behaviour
faulty behaviour of merge with config headers, so currently no merge with config.headers
* Fix bug where we always only send the Accept header, and miss other headers
Co-authored-by: nHuebner <nico.huebner.1985@gmail.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
Co-authored-by: Mark Kim <103070941+marckong@users.noreply.github.com>
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
Co-authored-by: Mark Kim <103070941+marckong@users.noreply.github.com>
Fixes the input `.focus()` method call. The simplest fix was to revert the change in 3cf464d059.
There do not seem to be any new problems in the current application from reverting this commit's relevant changes, indicating that the original cause of the bug is no longer present.
* adds GitHubStarsButton
* adds incognito mode functionality
* adds segment
* update: only show stars on dashboard
I missed a comment on the ticket
* cancel fetch if component is no longer mounted
* new design
* change footer link (per request) now that the same link's in the header
* inlines links components per review feedback
* adds caching for fetched value to overcome over-rendering
* first pass
* remove old
* remove delete drill prop
* remove two more drills
* two more drills
* remove one drill
* constify
* two more drills
* remove preview mode get/set drills
* undrill exportAsHAR
* undrill debug response download
* undrill prettify option
* save ipc for next pass
* fix delete response
* make delete function uniform
* address feedback comments
* transform
* nest components to remove drills
* sort props
* rename overloaded children prop
* check for the length of children in request-group-row
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* add unit test for dropdown component
* refactor dropdown to function component wip
* use useLayoutEffect for updating the position
* update types to use DropdownHandle
* remove unused forcedposition
* remove dropup
* add warning about dropdown container
* add useCallback/useMemo
* re-export the container id for tests
* split the state
* Fix issue with activity toggle accessibility
* add unit tests
* update styled components to the object format
Co-authored-by: Mark Kim <mark.kim@konghq.com>
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* remove nunjucks usage from core themes
* adds package downloader script
* adds runtime validation for plugins still using nunjucks
* generateThemeCSS no longer needs to be async
* removes Nunjucks as valid type