* share design documents and tests with insomnia sync
* share collection and documents with insomnia/git sync
* checkpoint
* redirect when cloning (pulling) a new remote project
* backend workspace card
* redirect logic
* local changes styles
* loading indicator
* fix sync button styles
* use interval to refetch git
* open the repo modal first before switching to git sync
* use gitRepositoryId from metadata
* fix sync option update
* cleanup fetcher check
* fixes
* cleanup pull-push
* undo logo change
* clean git-vcs
* use cloud icon for insomnia sync
* cleanup card
* more cleanup
* better return type for fetchfetcher
* update git tests
* fix tests
* fix some prerelease tests
* fix cloning without an api spec
* fix some more tests that expect a file to exist
* fix lint error
* include debug instructions
* remove pkg as a dependency
* fix doc
* add tslib to send-request to fix libcurl pkg bs
* bump pkg to 5.8.1
* remove not needed scripts
* make all migration functions non-async
* migrate is not a promise
* simplify scope migration
* remove apispec and fix test
* fix tests
* fix tests, for real this time
* removed api spec from collection
* default doc name to my-spec.yaml again
* fix apispec typing
* remove pointless generic
* fix type
* Create an api spec on first launch
* Remove flaky firstLaunch data creation
* fix test
* create apispec only when scope is deisgn
* oauth test left
* gitlab test
---------
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* many ws
* squashed import commits
* split import to project and workspace
* import logic
* fix the collection to design bug
* rename type
* fix tests
* tidy workspace loader
* multiple ws imports should always create new ws
* fall back to default project
* env var to bool
* fix tests
* fix app/import
* provide import context in title
* fix api spec import
* clean up
* ask about private envs everytime
* fix loading
* fix export private dialog
* add /binary data endpoint to smoke test server
* add function to deal with diff event.data types
* step 1
* step 2
* final step
* CR improvements
* update deps & fix type-check
* WIP-clone-bad-values
* WIP
* test
* WIP-clone-bad-values
* WIP
* wip
* Git-Sync-Test
* improve a bit the locators
* Update settings.json
* fix role from button to menuitem
Co-authored-by: kreosus <kristofer.huffman@konghq.com>
* Update version of react-aria package
* Create dropdown hint component
* Create dropdown button component
* Create the popover component
* Create the menu item component
* Create the menu section component
* Create the menu component
* Create the dropdown related components
* Change the hotkey html tag
* Added full width option for prompt-button
* Replace the dropdown with the new
* Add some default props for dropdown
* Used themed button into dropdown button
* Added style prop for dropdown
* Remove checkmark from menu item
* Added styled props to popover
* Remove inner button from account toolbar
* Added new dropdown into cookie-list
* Revert package update
* WIP
* Delete button component and replace it's usage with dropdown button
* Fix spacing
* Added className for code-editor dropdown
* Remove the old dropdown
* Change import
* Revert some ref changes
* Added ref to dropdown
* Fixed some styles
* Fix issues like autosave and added isDisable prop
* Add title
* Remove insomnia-common imports
* Remove insomnia-common imports
* Fix code format
* Change style and fix code format
* Fix styles
* Replace dropdown import
* Fix divider style
* Fix last icon in sidebar create dropdown
* Fix issue with dropdown and the resizing screen
* Fix linter issues
* Moved the prompt button into itemContent component
* Change styled component
* Fix issue with sidebar-request-row to display the dropdown on hover
* Remove the item content in a separate component
* Remove unused css
* Destructure children props
* Fix trigger prop for grpc-method-dropdown
* Added prompt button when user delete test suite
* Hide empty dropdown items from section
* Fix linter issues
* Added Checkmark into item content
* Fix issue with linter and shortcut component
* Fixed linter issues
* Revert fragments
* Fix linter issues
* Added props for multiple select and disable
* Fix close issue with sidebar dropdown
* Update disable and stay open prop for all dropdowns
* Added aria-label for dropdown, section, items
* Added selected style for item
* Added logic for disabled items
* Fixed issue with selected items
* Fix issue with selection of grpc method dropdown
* Added aria-label to code-editor
* Fix issue with onClick and prompt
* Hide sections if it's empty
* Remove on select from item content
* Pass closeOnSelect props in the menu
* Removed dataTestId from dropdown items in request-actions
* Fix debug sidebar dropdown tests
* Change the cookie editor interactions tests
* Fix dashboard interactions tests
* Fix design-interactions tests
* Fixed grpc-interactions tests
* Fix plugins interactions tests
* Fix preferences interactions tests
* Fixed request-pane-tab tests
* Fixed app smoke tests
* Update git-sync smoke tests
* Fix space issue
* Fixed graphql smoke test
* Fixed oauth smoke test
* Fixed oauth smoke test
* Fixed websocket smoke test
* Fixed cookie-editor-interactions tests
* Remove the dropdown unit test
* Made small refactoring and remove unnecessary props
* Fix issue with grpc-method-dropdown
* Change the grpc smoke test
* Added default role props
* Update all tests that use project role
* Remove console.log
* Fix issue with themes
* REmove dropdown import from index.less file
* Remove handleClick and add some comments
* Use getItemCount from react-stately
* Remove method-dropdown css
* Fix shortcut button style
* remove extra space on sync-dropdown
* fix lint
* Remove unused prop
* Fix issue with remote workspace dropdown
* remove divider on first section if empty
* remove unused showGrpc option in method dropdown
* Fix issue with workspace-dropdown
* Fix git-sync-dropdown issues
* Fix issue with remove workspaces dropdown
* Fix sync-dropdown component
* Added disable style
* Moved server reflection and proto file outside of the dropdown
* Fix style when item is selected
* Fix issue with grpc smoke test
* Fix issue with menu props
* Disable server reflection button if url is empty
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* Created Debug Head tests
* Added Open Generate code and copy as curl test
* delete duplicate debug-head file
* trying to add data-testid
* add todo messages
* revert datatestid for codemirror
* revert datatestid for codemirror
* fix
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* Added Open Generate code and copy as curl test
* Improvements to the Generate code test
* added tests for preferences
* fixed selectors
* fixed test selectors
* removed extra whitespace
* fix lint
* Improve a bit the preferences tests
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* first pass
* package lock
* provided ruleset is not an object
* works
* support multiple extensions
* fix test
* lower coverage threshold
* remove unused test
* remove only
* test to rename a request
* added Delete Request test
* added filter by folder test
* added Pin a request test
* minor improvements
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* WIP to open properties of a folder
* FIx Open properties of a folder test
* fix open propertites of a collection
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* 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>
* [INS-2077] Dashboard PreRelease tests
* Add create,rename,delete project test
* Add test for filter in the dashboard
* Rename/duplicate/delete collection & design tests
* 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
* [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>