* Create a wrapper Tab component
* Used the new Tabs component and remove the button from children from grpc-tabbed-messages
* Used the new Tabs component and remove the button from children from grpc-request-pane
* Used the new Tabs component and remove the button from children from response-pane
* Used the new Tabs component and remove the button from children from request-pane
* Used the new Tabs component and remove the button from children from git-repository-settings-modal
* Used the new Tabs component and remove the button from children from settings-modal
* Used the new Tabs component and remove the button from children from workspace-settings-modal
* Used the new Tabs component and remove the button from children from generate-config-modal
* Used the new Tabs component and remove the button from children from cookie-modify-modal
* Used the new Tabs component and remove the button from children from markdown-editor
* Use react-aria tabs instead of react-tabs
* Delete react-tabs dependency
* Use new tabs component and replace markdown-editor with styled-component instead of using less css
* Created query editor component with styled-components instead of using less css
* Update index.css
* Use new tabs component into cookie-modify-modal
* Use new tabs in general-config-modal
* Use new tabs in settings-modal
* Use new tabs in workspace-settings-modal
* Use new tabs in git-repository-settings-modal
* Use new tabs in request-pane
* Use new tabs in response-pane
* Use new tabs in grpc-request-pane
* Use new tabs in grpc-tabbed-messages
* Use new geury editor component and new tab implementation in websocket-request-pane
* Use new tabs in websockets-response-pane
* Change the package-lock.json file
* Remove className props from TabItemProps
* Fix rendering issue with tabs children and move action buttons above the nested tabs
* Added nested tabs option
* Added nested styling
* Made the grpc-tabbed-messages to be nested tabs
* Fix issue with styles into tablist
* Move less styles to styles component
* Fixed style issue with borders when tab is selected
* Fix styling issues with nested tabs
* Added aria labels for all tabs
* Fixed tab tests
* Fix issue with plugings test
* Remove the outline from selected tab
* Fix scrolling issue with some tab panels
* Remove outline from activity toggle
* Add failing test for the Declarative config and kong kubernetes
* Fixed issue with generate config modal into the panel
* docs and ws request body styling
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* return an empty list if the project doesn't exist
* display the sync dropdown only for remote collections
* update sync dropdown styles for disconnected collections
* fix refetch the backend project on deletion
* Add API Key auth - supports header / query param in both webrequest and websocket
* Add API Key auth for in cookie in both webrequest and websocket
Updated value of api key input to be masked
Extracted constants for API Key auth types
* add Postman importer for api key auth
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* I added an additional option "skipAnnotations" for the export of spec. When we export the spec and the user wants to share the spec with others,
outside the organization, the annotations reveal sensitive information about the configuration of
the kong gateway, like client_ids and
clients_secrets. If the flag -s is set, all x-kong-*
annotations are removed. I also adjusted the tests.
* fix lint
* Fix ouput when not saving to file
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* update the root state
* use env ids
* ids continued
* fix types
* rename root to base
* remove did change
* fix on blur
* fix lint
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* remove activity router
* add global error route
* make vcs a singleton
* move modals outside of root
* add project route data loader
* add project actions
* add rename/delete project actions
* lift data dependencies up and move modals
* add remote projects action/loader
* add overlay to duplicate modal and use invariant in actions
* use revalidate to refetch the route data on imports
* remove unused type checks
* more invariants and some renaming
* [INS-2077] Dashboard PreRelease tests
* Add create,rename,delete project test
* Add test for filter in the dashboard
* Rename/duplicate/delete collection & design tests
* html wrapper
* sidebar request group row
* time from now
* check for updates button
* toast
* plugins
* rename component
* fix plugin load
* add fix for the timenow delay
Co-authored-by: Mark Kim <mark.kim@konghq.com>
* cookie modal fc
* second pass
* cookie modify modal third pass
* third pass
* new cookie
* Rm : char
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* 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>