* editable
* wrapper debug
* method dropdown
* request actions dropdown
* response history dropdown
* wrapper home
* copy button
* auth dropdown
* env dropdown
* content type dropdown
* fix types
* second pass
* response csv viewer
* useCallback pass
* more useCallbacks
* wrapper unit test
* simplify pagelayout
* fix editable bug in unit test
* wrapper unit test useCallbacks
* some gentle tidying
* useCallback usage for async func
* switch to useInterval
* updates types for Editable, Highlight, et al.
* moves usage after declaration
* extracts FC for AuthDropdown items
* removes some prop drilling and extracts component
* adds mandaotry useCallback, rm unused props, types
* use named exports from react npm like rest of project
eventually, we will remove usages of `React` default export since it's a hack from half a decade ago that's no longer necessary now that jsx-transform is a thing.
* removes unnecessary useImperativeHandle (we learn somethin' every day)
* adds necessary useCallback, removes unnecessary useImparativeHandle, TS
* fixes types for useRef (turns out you don't need null in the generic)
* removes unused props
* fixes types from ref helpers
* fixes return from useCallback
* updates useCallback usages
* fixes bind
* fixes lint
for some reason, kept getting:
```
insomnia: /home/dimitri/src/github.com/Kong/insomnia/packages/insomnia/src/preload.js
insomnia: 0:0 error Parsing error: "parserOptions.project" has been set for @typescript-eslint/parser.
insomnia: The file does not match your project config: packages/insomnia/src/preload.js.
insomnia: The file must be included in at least one of the projects provided
```
* revert incomplete type change
* remove unnecessary useEffect
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
apply font-ligatures-variant style to all elements
Co-authored-by: Vincenzo De Petris <vincenzodepetris@gmail.it>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* commit progress
* save changes
* add components and $schema
* add components and $schema
* adding a doc
* add typings
* fix unit tests
* fix unit tests
* add fix and verified with kong cli
* fix unit tests
* Improve types and parameter/body resolution
Co-authored-by: Mark Kim <marckong@users.noreply.github.com>
* fix circular "components" issue
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
Co-authored-by: Mark Kim <marckong@users.noreply.github.com>
* feat: make NumberSetting support step
* fix: correct request timeout help message
* make default step 1 for NumberInput
* Provide similar experience for other inputs with ms
Co-authored-by: tangweikun <tangweikun@corp.netease.com>
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
In some cases, the notifications endpoint can return a 204 response with
no body. This commit fixes a regression where this causes a warning.
Note that there is no user facing impact.
* add hack
* adding the empty string check else where
* limiting the event scope
This merge will close the following draft PR for its spike work as well.
* Enable noImplicitAny.
* extracts PreviewMode
* Update packages/insomnia/src/network/certificate-url-parse.ts
* Add missing type.
* un-any-ifies some of the modal onDone callbacks
easy enough.
* few more onDone, but the async ones this time
* Get rid of jsonlint any.
* adds noImplicitAny support for insomnia-smoke-test
* fixes playwright type error
* avoid full @ts-ignore in playwright
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
* Make Button onClick prop more typeable
Swaps the order of the arguments so that the optional arg is second.
* Review fixes.
* removes some implicit any's
* NoticeTable to FC
might as well, at this point. we're trying to do these as we can as they present themselves
* fixes margin for collapse icon (broken before this PR)
and removes an unnecessary type parameter
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
* can make grpc request
* can create GraphQL request
* remove hotkey logic
* remove new request modal
* match new hotkey to old quick request
* add request shortcuts to folder context menu
* merge both old hotkeys to new one
* added requestType to segment
* fix feedback
* fix requestType is event
* default to HTTP request
* add gitlab oauth provider and ui
* add gitlab remaining
* add graphql field in query
* add gitlab oauth provider and ui
* add gitlab remaining
* add graphql field in query
* add some changes for testing
* add gitlab oauth provider and ui
* add gitlab remaining
* add graphql field in query
* add some changes for testing
* add some changes
* modify test
* try to refresh the token on git auth failure
* use localStorage to retrieve the session token
* simplify e2e tests for gitlab
* read the gitlab config from the api
* refresh the token if unauthorised
* use the rest api to fetch the user's data
* add loading state for config and handle 4xx errors in the ui
Co-authored-by: jackkav <jackkav@gmail.com>
* improve config fetching
* fix(e2e): add mock route for config
* Fix fetching gitlab config from the API
* add src as dep to avatar component hook
Co-authored-by: Mark Kim <yowmark613@gmail.com>
Co-authored-by: jackkav <jackkav@gmail.com>
Co-authored-by: David Marby <david@dmarby.se>
*Added the unreserved character ~ and the reserved characters '(), to the URL matching regex since these can appear without being URL encoded.
*Added test for tilde in URL
* move some operations to main
* move more options to main
* move cookies and multipart
* remove cert legacy migration
* move auth and aws helper
* move certs options to main
* remove libcurl usage from renderer and tidy
* extract oauth2 flow back to renderer
* add parse headers tests
* minimally type req
* organise libcurl-promise by req properties
* minimally type used settings
* tidy up debug timeline
* fix cookie bug
* tasty little parsing function refactor
* doh! trim
* tidy up set cookie method/self review
* extracted functions from set-cookie logic
* refactoring with tests
* formatting after rebase
* clarification of duplicate header support
* tighten up parse headers
* simplify aws signing
* fix app version imports
* ⚡️ vite
* replace webpack with esbuild in build script
* move build sr to esbuild
* esbuild send-request shim
* remove main externals
* fix lint
* remove webpack from insomnia-testing
* removes more webpack stuff
TODO after this PR: make debugging work again
* pin swagger-ui-react to version before esm change
* restore prepare script to build in bootstrap
* use default tsconfig for eslint and apply fixes
* bundle insomnia-components as cjs/esm
* makes ca_certs.ts pass linting
* builds types for insomnia-components
* improve build script for production
* skip typechecking insomnia-components
* separate package from build
* add electron to externals
* add preload bundling and fix build output
* exclude grpc/proto-loader from the bundle
* move node packages to commonjs
* don't bundle grpc since it's a node module
* fix content security error
* use vite lib mode for insomnia-components
* tidy up vite config and tsconfig options
* update package-locks
* use process.env. for static build time variables
* fix vscode debugging
Co-authored-by: jackkav <jackkav@gmail.com>
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
* extract db out of _actuallySend setup
* extract transform response headers
* extract send body
* simplify set cookie function
* remove respond and error helpers
* decouple body options from renderer
* fix tests
* fix cancel
* remove unused envid from _actuallysend
* remove unused body settings
* simplify aws error logic
* remove validate override/code review
* add envid back in for posterity
* fix test
* split body parsers
* extract set headers
* decouple multipart and headers
* raise unused props
* body compression must be overriden to null
* remove extra return/code review
* upgrades styled-components
* lockfiles
* map styled-components to the insomnia-app node_modules to fix React version mismatch
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* Concating x-kong-security-openid-connect config with security schemas config
* Removing enabled as it is enabled by default
* Small improvement + add tests
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>
* decouple modal and form
* separate the github settings forms
* switch the tab order in the repo settings modal
* change the github uri field to be required
* update types for the git repo form
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* add sign in with github
* fix authentication url not being reset
* Add error handling for graphql query results
* move desctructuring to function arguments
* remove unused input prop
* Respect INSOMNIA_DATA_PATH for electron data regardless of environment
* fix lint error and update uuid usage
Co-authored-by: David Marby <david@dmarby.se>
* Revert "removes generic for Notice"
This reverts commit feade91126.
* use inference for the onChange handler argument type
* removes duplicated properties
* naming is hard
also, the elvis operator is here now so we can just use him
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
* bump node, electron, libcurl
* bump electron-builder
* stub performance, because inso imports react
* bump @types/node
* match up builder versions
* Disable consent prompts for oidc server
* bump electron and libcurl to latest
* waitForCookies for oauth tests
* Bump NodeJS to 16.13.0
* removes node 14 hack for BufferEncoding
* Replace oidc-provider html interaction pages with a simple html form
* make document cookie wait explicit
Co-authored-by: David Marby <david@dmarby.se>
* now with 100% fat free cancellation
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
* unblock electron 15
* fix cookielist and temp fix curl types
* fix types
* fix inso
* default to verbose inso test
* implement readdata function
* fix test
* revert test changes
* isomorphic cancel
* reduce typing issues
* curl types
* turns out the tests were wrong
* handle errors
* remove unused inso mock
* remove request delay
* fix lint and add logs
* Revert "remove request delay"
This reverts commit f07d8c90a7a7279ca10f8a8de1ea0c82caa06390.
* simplify and add cancel fallback
* skip cancel test
* playwright is fast and insomnia is slow
* trailing spaces are serious yo
* cancel is flake town
* hmm
* unblock nunjucks and storeTimeline
* fix nunjucks tests
* preload writeFile
* oops forgot to remove the reload
* debugging CI takes all day, log stuff and pray
* also warn if nunjucks is being lame
* Stop using environment variables
* revert debugging logs
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
Co-authored-by: David Marby <david@dmarby.se>
* Update default electron-builder targetgs
* Allow setting a build ref
Changes the default version to `0.0.1-dev+unknown`, so that build/packaging can be easily ran locally without setting any environment variables.
* Adds recurring release workflow
New workflow that'll pre-bake artifacts when there's changes on PRs or on develop.
Artifacts can be used for all platforms to test out a PR or latest develop without the need to build locally.
Co-Authored-By: David Marby <david@dmarby.se>
* Make recurring flow independent from Test flow
Co-Authored-By: David Marby <david@dmarby.se>
* Use setup-node@v2
Co-Authored-By: David Marby <david@dmarby.se>
* Update .github/workflows/release-recurring.yml
Co-authored-by: David Marby <david@dmarby.se>
* It's always the single quotes 🙏😚
* Use bash shell
* Disable fail-fast
* Add cancel-in-progress setting to recurring releases
If someone pushes a new commit, triggering a new recurring job on a PR or develop, we cancel ongoing workflow.
Co-Authored-By: David Marby <david@dmarby.se>
* Change concurrency setting to workflow level
Co-Authored-By: David Marby <david@dmarby.se>
Co-authored-by: David Marby <david@dmarby.se>
* Move basic auth routes to a separate file
* Stop slowing requests down artificially
* Add initial oauth routes
* Mount oidc routes under /oidc
* Enable all forms of oauth that Insomnia supports
* Add oauth request collection fixture
* Update playwright config
* Use 127.0.0.1 instead of localhost
* simple oauth2 test
* Make the playwright extension work
* Move oauth tests to a separate file
* Test all oauth flows
* Mark test as slow
* Wait for load state for new pages
* Use locators consistently
* Add playwright to recommended extensions
* Add instructions for how to use the playwright extension
* update selectors and use fill
* Fix markdown lint
Co-authored-by: jackkav <jackkav@gmail.com>
Co-authored-by: gatzjames <jamesgatzos@gmail.com>
* Enable playwright parallelism
Plus, move the cancel request test into its own separate test to reduce flakiness.
* Change num of playwright workers on GH actions back to 1
* Change 200 OK assertion
+ Add assertions to PDF canvas
+ Add assertion to Raw Data preview.
* Add assertions to response body elements
* Undo parallel suite for app.test.ts
* Remove parallelism workers from playwright.config.ts
* Code review improvements
Co-Authored-By: Jack Kavanagh <3679927+jackkav@users.noreply.github.com>
Co-Authored-By: James Gatz <jamesgatzos@gmail.com>
* Code review improvements
Co-Authored-By: Jack Kavanagh <3679927+jackkav@users.noreply.github.com>
Co-Authored-By: James Gatz <jamesgatzos@gmail.com>
Co-authored-by: Jack Kavanagh <3679927+jackkav@users.noreply.github.com>
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
* Update default electron-builder targetgs
* Allow setting a build ref
Changes the default version to `0.0.1-dev+unknown`, so that build/packaging can be easily ran locally without setting any environment variables.
* Adds recurring release workflow
New workflow that'll pre-bake artifacts when there's changes on PRs or on develop.
Artifacts can be used for all platforms to test out a PR or latest develop without the need to build locally.
Co-Authored-By: David Marby <david@dmarby.se>
* Make recurring flow independent from Test flow
Co-Authored-By: David Marby <david@dmarby.se>
* Use setup-node@v2
Co-Authored-By: David Marby <david@dmarby.se>
* Update .github/workflows/release-recurring.yml
Co-authored-by: David Marby <david@dmarby.se>
* It's always the single quotes 🙏😚
* Use bash shell
* Disable fail-fast
* Add cancel-in-progress setting to recurring releases
If someone pushes a new commit, triggering a new recurring job on a PR or develop, we cancel ongoing workflow.
Co-Authored-By: David Marby <david@dmarby.se>
* Change concurrency setting to workflow level
Co-Authored-By: David Marby <david@dmarby.se>
Co-authored-by: David Marby <david@dmarby.se>
* Update TypeScript version.
This makes the TypeScript version match across other codebases, to
facilitate better code sharing.
* Fix TS errors after update.
Co-authored-by: Dimitri Mitropoulos <dimitrimitropoulos@gmail.com>