* Add settings for color scheme detection and themes
Default light and dark themes can still be changed.
For now its studio-light and default for core, and studio-dark and studio-light for designer.
* Add color scheme type and supporting methods
The detection of dark scheme is based on the background color at the moment.
This seems to work pretty well, but is not an ideal solution.
I think themes should at least get to override this.
* Add support for choosing light and dark theme to settings
This adds a checkbox to the theme settings that determines whether we use the OS color scheme.
If we don't (default) everything stays the same as before.
If we do, themes are rendered in two groups. One for the light themes and one for the dark themes. They can be chosen independently. None of this overrides the default theme choice.
* Add padding to the theme settings tab
Themes are still aligned by adding negative margin.
A bit of a hack, open for suggestions.
* Update theme on OS color scheme change
* Replace usages of setTheme with applyColorScheme
This makes sure that we don't override the user's choice.
* Update packages/insomnia-app/app/plugins/misc.js
Co-authored-by: Opender Singh <opender94@gmail.com>
* Remove dark mode heuristic
* Remove unused button value
* Update theme settings design
* Update packages/insomnia-app/app/ui/components/settings/theme.js
Co-authored-by: Opender Singh <opender94@gmail.com>
* Update packages/insomnia-app/app/ui/components/settings/theme.js
Co-authored-by: Opender Singh <opender94@gmail.com>
* Replace object literal lookups
Do not use object literal lookups to make code more readable
* Remove unused parameter
* Disable default theme select when auto detection is enabled
* Fix imports after rebase
* Update packages/insomnia-app/app/ui/components/modals/settings-modal.js
Co-authored-by: Opender Singh <opender94@gmail.com>
* Update packages/insomnia-app/app/ui/components/modals/settings-modal.js
Co-authored-by: Opender Singh <opender94@gmail.com>
* Remove theme header
* Disable hover animation and border on disabled theme buttons
* Clean up double negation in css
Replace :not(:disabled) with :enabled. Not sure what I was thinking there.
* Update index.js
Co-authored-by: Opender Singh <opender94@gmail.com>
Co-authored-by: Opender Singh <opender.singh@konghq.com>
* feat: add prompt and update import logic
* feat: update usages and plugin api
* chore: WIP
* chore: convert to options
* chore: don't create workspace model until needed
* chore: add OR condition
* chore: add workspace name and don't change scope
* feat: prompt with appropriate name
* chore: rename
* chore: rename type
* chore: update signature
* chore: properly type the import functions
* feat: don't activate the workspace after importing
* chore: show loading on homepage
* fix: typo
* chore: fix tests and rename
* Update packages/insomnia-app/app/common/__tests__/import.test.js
Co-authored-by: David Marby <david@dmarby.se>
Co-authored-by: David Marby <david@dmarby.se>
* Upgrade Electron to 8, bump Node version, fix font-manager
* Specify nodeIntegration as true
* Get <webview> working again
* Get <webview> working again
* Electron 9.0
* Escape parens in plugin install exec path (newer Electron added them)
* Bump versions for first alpha
* Electron 9.1
* Convert all Electron APIs that switched from callback to Promise
* Fix send-and-download feature
* Remove user-agent override hack for OAuth 2 login window
* Bump alpha version
* Fix issue regarding chokidar
* Add package-lock.json
* Upgrade chokidar because @babel/cli uses an older incompatible version of fsevents
* Fix source maps
* Read .nvmrc in GitHub actions
* Address remaining PR feedback
* Expose more request body for plugins
Support the following api for plugins:
- get/set the content type of the request;
- get/add/set the form parameters of the reuqest body;
adding file form item will be ignored if the mime type is not
multipath form.
- get/set the uploaded filename of the request;
setting uploading file name will be ignored if the mime type is not
octet stream.
* Add some test cases
* Add simple request body api for plugins
* Mark (get|set)BodyText() as deprecated
* New dialog() method to show generic dialogs from Plugins
* Clarified deprecated api method
* Body now required in dialog()
* Made options arg optional too
* Fix tests