Commit Graph

39 Commits

Author SHA1 Message Date
yaoweiprc
637ae78d43 Integrate Konnect sync with the new sidebar [INS-2358] (#9960)
* feat: breadcrumbs in nav (#9813)

* feat: New Navigation SideBar - P1 (#9808)

add initial navigation side bar
add debug page collection list back
support drag sidebar width
hide org selector on scratchpad
support scratcpad
support kconnect
* feat: support drag & drop on the new sidebar (#9814)

---------

Co-authored-by: Bingbing <ZxBing0066@gmail.com>

* feat: fix scratchpad for the new sidebar (#9815)

* feat: mcp ia navigation (#9819)

* feat: mcp ia navigation

* fix: ca status ui

* fix

* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: Add workspace dropdown for new sidebar (#9821)

* support workspace-dropdown in new sidenav

* make the drag more easy to touch

* feat: auto detect select resource then expand and scroll to (#9835)

* feat: list un-synced remote workspaces in sidebar (#9853)

* Add nav support for unsynced workspace
* support inline change of request name
* fix expand issues

* feat: fix UI and remove debug settings in design spec and test (#9823)

* fix: fix UI style

* feat: remove debug settings in spec

* fix: remove debug settings in document test

* feat: add segment events [INS-2356]

* Feat/cloud sync bar (#9866)

* fix: fix MCP breadcrumb

* feat: sync bar

* fix: fix type and unused imports

* feat: Add organization actions inside organization selector (#9856)

* add organization actions inside organization selector

* fix issues

* fix type issues

* Fix style issue when no projects exist (#9896)

* feat: enhance dnd (#9877)

* feat: enhance dnd

* fix: suggestions from copilot

* fix: fix UI styles

* feat: Pin/unpin request and collection request sorting (#9903)

add basic sort support
support toggle header & sidebar
add sort support
fix issues from comment

* fix: tooltip and icon for env picker (#9905)

* Feat/ia merge (#9904)

* refactor: route fs backed cleanup (#9806)

* refactor: shared browser safe helper cleanup (#9810)

* refactor: shared browser-safe helper cleanup

* style: run eslint autofix

* fix: preserve empty url handling

* fix: address remaining copilot comments on pr3

* remove loader class

* fix: unhandledrejection error (#9774)

* fix: resolve sentry promise error (#9786)

* fix: resolve sentry promise error

* fix: leave fallback when error

* fix: improve credential validation handling in GitRepoForm to avoid a loop of re-loading the list of repos and branches (#9820)

* add e2e and cli skills (#9818)

* add e2e and cli skills

* address feedback

* address feedback

* move to claude

* feat: konnect integration proxy url and regex support (#9811)

* chore: move konnect sync behind feature flag (#9832)

* chore: isolate gRPC proto file preparation behind IPC boundary (#9828)

* chore: isolate gRPC proto file preparation behind IPC boundary

Move proto temp-file creation out of the renderer by adding a
grpc.writeProtoFile IPC handler (main process) and wiring it up
in the preload bridge. The renderer's ProtoFilesModal previously
called writeProtoFile() directly, pulling node:fs / node:os /
node:path into the renderer bundle. It now calls
window.main.grpc.writeProtoFile(protoFile._id) instead.

Changes:
- src/main/ipc/electron.ts: add 'grpc.writeProtoFile' to HandleChannels
- src/main/ipc/grpc.ts: export writeProtoFileById helper, add to
  gRPCBridgeAPI, register ipcMainHandle('grpc.writeProtoFile')
- src/entry.preload.ts: wire grpc.writeProtoFile via ipcRenderer.invoke
- src/ui/components/modals/proto-files-modal.tsx: remove direct
  write-proto-file import; use window.main.grpc.writeProtoFile in
  the directory-import validation loop
- config/renderer-node-import-baseline.json: remove 5 stale/resolved
  baseline entries (proto-directory-loader.tsx x2 already gone;
  write-proto-file.ts fs/os/path x3 now main-process-only)
- src/main/ipc/__tests__/grpc.test.ts: add writeProtoFileById unit
  tests as contract coverage for the new privileged bridge path

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: validate proto syntax in writeProtoFileById IPC handler

The directory-import validation loop relied on writeProtoFile for proto
content validation, but writeProtoFile only writes the temp file without
parsing. Add a protoLoader.load call inside writeProtoFileById so invalid
proto syntax throws before the result is returned to the renderer.

Also update the test to mock @grpc/proto-loader.load and assert it is
called with the correct file path and includeDirs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* feat: konnect integration strips nunjucks templates on sync (#9831)

* fix(Git Sync): auto-resolve non-YAML file conflicts to remote during merge (#9798)

* fix: filter conflict paths to include only YAML files

* fix: enhance conflict resolution by auto-resolving non-YAML files to theirs

* fix: keep buffer raw so that binary files are not corrupted

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: enhance merge conflict handling by introducing auto-resolved conflicts for non-YAML files

* fix: add test for handling merge conflicts, ensuring only YAML conflicts are returned

* fix: prevent HEAD update during auto-resolve of merge conflicts

* fix: enhance merge conflict resolution by auto-completing merges when all conflicts are non-YAML

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* feat: konnect integration expressions support (#9830)

* Show more specific error when creating mock route fails (#9841)

* fix: insomnia-ai-plugin uses securedPath (INS-2244) (#9748)

* feat: add custom npm registry mirror setting for plugin installation (#9837)

* feat: default user-agent for cURL imports [INS-2416] (#9838)

* feat: default user-agent for cURL imports

* respect disableAppVersionUserAgent setting

* fix: view transition error - [INS-2316] (#9792)

* fix: view transition error

* fix

* change default behavior when delete cloud sync workspaces (#9844)

* feat: integrate v3 user endpoints (#9785)

* feat: integrate v3 user endpoints

* feat: use public sdk for insomnia-api

* chore: applied PoLP to workflows (#9840)

* chore: resolve GHA warning annotations and reduce CI time [INS-2312] (#9839)

* fix: resolves INS-2366 (#9852)

* fix: resolves INS-2366 dependency issues

* Refactor:use electron store for oauth session (#9851)

* move oauth session to electron storage

* create electron storage bridge

* use electronStorage bridge for managing oauth window handles

* fix build

* move key to constants

* tolerate changing userData folder path

* Update packages/insomnia/src/main/ipc/electron-storage.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* init store

* fix singleton class

* feedback

* feedback

* Update packages/insomnia/src/main/electron-storage.ts

Co-authored-by: aikido-pr-checks[bot] <169896070+aikido-pr-checks[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: aikido-pr-checks[bot] <169896070+aikido-pr-checks[bot]@users.noreply.github.com>

* chore: decouple releases (#9842)

* INS-2145 Decouple releases

* fix security error

* fix

* check version

* refactor: auth header to main (#9834)

* remove deprecated baseUrl

* add failing test

* fix AI playwright runs

* move getAuthHeader to main

* address feedback about dynamic import

* move oauth 1 + 2 flow to main

* handle bad cookie

* handle bad apikey

* fix imports

* block main process imports

* extract plugins

* fix vite config

* console log

* move init store

* Fix OAuth imports after rebase

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* clean up

* Revert config changes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* clean up hawk

* use bridge

* update node require

* remove this

* define process type

* remove 14

* ignore reports folder

* fix e2e tests

* address feedback

* remove unused

* tidy constants

* feat: add getOAuth2Token IPC bridge

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix tests

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix: Support pin and unpin websocket and socketio requests (#9865)

* support pin websocket and socketio requests

* feat(Git Sync): Add support for canonical repository output (#9789)

* initial support for canonical repo output (#9739)

* Feat/git repo output sync queue (#9790)

* feat: implement SyncQueue for serial async task processing

* refactor: enhance repo file watcher for improved sync and error handling

- Replace NeDB client with a unified disk client for all file operations.
- Introduce a serial queue to manage sync tasks and prevent race conditions.
- Implement content-hash deduplication to avoid unnecessary file imports.
- Add problem tracking for YAML files with conflicts or parse errors.
- Streamline watcher start/stop logic and improve notification handling.
- Ensure immediate DB→FS flush before git operations to maintain consistency.
- Enhance import logic to handle workspace deletions and renames effectively.

* refactor: simplify projectRoutableFSClient by removing unused parameters and consolidating logic

* feat: add git.db-synced event listener for revalidation in Root component

* feat: add button to open local repository folder in ProjectSettingsForm

* refactor: remove unused GitProjectNeDBClient

* refactor: update imports to use services for workspace and workspaceMeta

* refactor: update models usage to services in git repo migration and project settings form

* refactor: streamline file watcher initialization and import process

* feat: ensure immediate processing of pending debounced imports in RepoFileWatcher

* refactor: improve file rename handling in RepoFileWatcher to prevent data loss

* feat: enhance RepoFileWatcher to track last written hash and sync mtime for improved file management

* refactor: remove unused parameters from upsertDocs in RepoFileWatcher for cleaner code

* fix revalidator (#9826)

* fix: handle detached HEAD during rebase in getCurrentBranch method (#9843)

* fix: handle detached HEAD during rebase in getCurrentBranch method

* fix: add return type to getCurrentBranch method

* fix: refresh ui after sync (#9848)

* fix: (git cli)skip flush problematic files (#9846)

* fix: skip flush problematic files

* fix

* feat: (git cli)ux for invalide status (#9836)

* feat: ux for invalide status

* update ux

* fix

* fix

* add tab warning

* del log

* feat(Git Sync): Handle non-origin remotes (#9833)

* feat(git): detect non-origin branch tracking and guard sync operations

- Add getBranchTrackingRemote(), getRemoteUrl(), getBranchRemoteInfo() to GitVCS
- Add getBranchRemoteInfo IPC endpoint with BranchRemoteInfo interface
- Add assertBranchOnOrigin() guard to push, pull, fetch, commitAndPush
- canPushLoader returns { canPush: false } for non-origin branches
- Add unit tests for remote detection methods

* feat(git): add support for non-origin branch tracking and display warnings in UI

* Show local git repo path [INS-2315] (#9858)

* Update the style of local git folder path in project setting modal

* Add Git CLI tip in commit changes modal

* Repo Migration flow [INS-2256] (#9824)

* initial support for canonical repo output (#9739)

* feat: enhance git repository migration with concurrency guard and symlink handling

* feat: enhance git repository migration with config sanitization and file overwrite handling

* feat: implement repo migration version tracking and improve migration idempotency

* feat: add runAllGitRepoMigrations function and migration view for Git projects

Co-authored-by: Copilot <copilot@github.com>

* fix: reset initial migration status to 'default' in MigrationView component

* refactor: simplify MigrationView component and update navigation logic

* refactor: remove legacy directory structure migration from loadGitRepository function

* feat: enhance runAllGitRepoMigrations to return logs and improve error handling in MigrationView

* feat: update runAllGitRepoMigrations to return detailed logs and failed projects; enhance MigrationView to handle migration results

* feat: optimize runAllGitRepoMigrations by batch-fetching git repositories and improving project filtering

* feat: introduce CURRENT_MIGRATION_VERSION constant for migration tracking and update references in git-repo-migration and router

* feat: handle failed projects in runAllGitRepoMigrations by converting them to local projects

Co-authored-by: Copilot <copilot@github.com>

* feat: integrate CURRENT_MIGRATION_VERSION for migration tracking and update router logic to handle migration screen visibility

* feat: reorder import statements in ProjectSettingsForm for consistency

* feat: update MigrationStatus type and related logic for better error handling

* feat: enhance migration logging with detailed error stack and include CURRENT_MIGRATION_VERSION in logs

* feat: simplify migration logging messages for clarity and consistency

* feat: improve migration check logic to prioritize version stamp over disk layout

* feat: add tests for migrateRepoStructureIfNeeded function to ensure migration logic correctness

* feat: update migration logic to re-run when old git/ directory exists, ensuring correct migration handling

* test: update migration tests to ensure directory existence checks are accurate

* refactor: remove redundant useEffect for localStorage in Component

* feat: enhance path validation in runAllGitRepoMigrations to prevent path traversal vulnerabilities

* feat: enhance path handling in migration functions to prevent directory traversal vulnerabilities

* feat: enhance directory traversal protection in moveDirectoryContents function

---------

Co-authored-by: James Gatz <jamesgatzos@gmail.com>
Co-authored-by: Copilot <copilot@github.com>

* fix: Delete old folders (#9867)

* refactor: remove unused migration version handling from localStorage

* fix: update directory removal logic to handle non-empty directories

---------

Co-authored-by: Curry Yang <163384738+CurryYangxx@users.noreply.github.com>
Co-authored-by: yaoweiprc <6896642+yaoweiprc@users.noreply.github.com>
Co-authored-by: Pavlos Koutoglou <pkoutoglou@gmail.com>
Co-authored-by: Copilot <copilot@github.com>

* refactor: move sync code to main (#9827)

* move sync code to main

* improve sync tests

* update plan

* test: reset cloud sync smoke state

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* guard against bad test env

* fix skill

* remove new test

* udpate plan

* with proxy

* checkpoint

* move files

* autofix

* update plan

* make all sync bridge async

* fix window imports

* refactor: move main-only sync helpers

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix lint

* move chunkArray tests

* smaller interfaces

* move store under vcs

* move cloud-sync to main

* create a second vcs for pull operations

* added a invoke wrapper to remove error prefixes

* rebase error

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* chore: update insomnia-plugin-ai (#9862)

* fix: bump node-libcurl and add ipv6 tests (#9869)

* feat: revamping pre/post scripting sandbox (#9794)

* feat: revamping pre/post scripting sandbox
* feat: added UI setting to enable/disable specific checks

* fix false positives

* revert

* fix: user can not resolve conflict in app (#9872)

* fix: conflict ux

* fix

* fix

* Git server for smoke test [INS-2258] (#9816)

* Git server for smoke test

* Try to solve flaky test

* feat: remove unused Git hook samples and add Credentials tab functionality

- Deleted various sample Git hook scripts from the git-server fixture, including post-update, pre-applypatch, pre-commit, pre-merge-commit, pre-push, pre-rebase, pre-receive, prepare-commit-msg, push-to-checkout, sendemail-validate, and update hooks.
- Introduced a new PreferencesCredentialsTab class to manage Git credentials within the Insomnia Preferences.
- Updated the PreferencesPage to include the new Credentials tab for Git credentials management.
- Enhanced the ProjectPage with a method to create a Git Sync project, including branch creation and switching.
- Added comprehensive tests for Git Sync functionality, including creating branches, committing changes, and merging branches.
- Updated UI components to support new features, including data-testid attributes for better testability.

Co-authored-by: Copilot <copilot@github.com>

* feat: update path import and add Git sync tests

* revert package.json

* Update package.json

* feat: add new dependencies for Git HTTP mock server and related utilities

* refactor: remove commented-out code in addAccessTokenGitCredential function

* fix: update export tests to use toHaveLength for file count assertions

---------

Co-authored-by: Copilot <copilot@github.com>

* feat: import deep-link login experience [INS-2416] (#9860)

* refactor: replace node:url with URL in cert and proxy match (#9515)

* refactor: import to main (#9809)

* squash

* re add comments

* fix process fork

* update base line 18 left

* revert

* check cert url without node

* fix handlerId

* exclude url matches cert host from scope

* fix rebase

* Fix style issue that file list in the middle of commit modal is collapsed [INS-2315] (#9875)

* Fix style issue that file list in the middle of commit modal is collapsed

* fix: update links to Git Sync documentation in staging modal and project settings form

* Chore: playwright dx v2 (#9876)

* Update E2E test for git sync [INS-2258] (#9878)

* Add more test cases for git sync

* tmp

* Update package.json

* feat: update migration image and urls (#9868)

* feat: update migration image and path for improved clarity

* feat: update error message and support links in migration view

* feat(Git Sync): Downgrade -> Upgrade path (#9882)

* feat: add mechanism to flush newer DB workspaces to disk during downgrade

* feat: implement effective Git repository ID handling for project connections

* feat: enhance Git repository ID handling for improved project queries and updates

* Chore: refine e2e docs by agent for agent (#9881)

* improve agent docs

* added error context note

* chore: Security update for dependencies and github workflows (#9884)

* chore: resolves INS-2457, INS-2458, INS-2459, and INS-2460.

* feat: include app version in window title [INS-2465] (#9888)

* feat(Git Sync): improve git migration onboarding UX and local file system access [INS-2462] (#9890)

* feat(Migration): enhance migration summary with total projects count and improve UI feedback

* fix(Migration): clarify update instructions and improve user messaging

* style(ManualCommitForm): adjust text sizes for improved readability

* style(StagingModal): adjust layout and spacing for improved UI consistency

* fix(ManualCommitForm): update clipboard text to include 'cd' command for easier navigation

* fix(ProjectSettingsForm): update repository path copy functionality and add option to open in file system

* fix(ManualCommitForm): enhance file system interaction with tooltips for better user guidance

* fix(ProjectSettingsForm): add tooltip for 'Open in file system' button to enhance user guidance

* fix(GitProjectSyncDropdown): add 'Open folder' action to sync dropdown for easier access to repository path

* fix(Component): display relative path of current issue in modal for better context

* fix(git-service): count only successfully migrated projects in totalProjects

* fix(project-settings-form): platform-aware shell quoting for cd command

* fix(git-project-staging-modal): platform-aware shell quoting for cd command

* fix(project-settings-form): update aria-label to reflect cd command clipboard content

* fix(git-project-staging-modal): update aria-label to reflect shell command clipboard content

* fix(ManualCommitForm): replace tooltip with dialog for enhanced information display

* fix(MigrationView): update migrated count calculation to reflect total projects

---------

Co-authored-by: James Gatz <jamesgatzos@gmail.com>

* chore: normalize konnect api responses (#9895)

* feat(Git Sync): enhance migration view with best practices note and UI improvements (#9900)

* chore: comment out smctl credentials save in workflow (#9898)

the command is no longer executed while keeping it in place for future reference.

* feat: migrate model imports, base types, org model and helpers (#9802)

* fix

* fix vcsinstance

* fix type issues

---------

Co-authored-by: Jack Kavanagh <jackkav@gmail.com>
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
Co-authored-by: Shelby <13246465+shelby-moore@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: yaoweiprc <6896642+yaoweiprc@users.noreply.github.com>
Co-authored-by: kwburns-kong <kyle.burns@konghq.com>
Co-authored-by: jeremyjpj0916 <31913027+jeremyjpj0916@users.noreply.github.com>
Co-authored-by: Ryan Willis <ryan.willis@konghq.com>
Co-authored-by: Kent Wang <kent.wang@konghq.com>
Co-authored-by: Alison Sabuwala <alison.sabuwala1024@gmail.com>
Co-authored-by: aikido-pr-checks[bot] <169896070+aikido-pr-checks[bot]@users.noreply.github.com>
Co-authored-by: Jay Wu <jay.wu@konghq.com>
Co-authored-by: Pavlos Koutoglou <pkoutoglou@gmail.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Fares Osman <43153226+fiosman@users.noreply.github.com>
Co-authored-by: Bingbing <ZxBing0066@gmail.com>
Co-authored-by: Vivek Thuravupala <2700229+godfrzero@users.noreply.github.com>

* fix: fix dnd for empty nodes (#9909)

* fix: fix dnd for empty nodes

* remove console log

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* initial fix for critical paths (#9913)

* 1.enhance the test component

* add test attributes

* fix basic test case

* fix smoke test p1

* fix smoke test p2

* fix e2e test failure p3

* fix smoke test p4

* fix remaining e2e failures

* feat: secondary sidebar&git cli error modal adaptation (#9916)

* feat: secondary sidebar&git cli error modal
* fix

* Fix: Document design page do not show collection list (#9930)

* fix no collection list showed in design page document tab

* use common constant for the wrapper id

* fix: move parent position control into modal component

---------

Co-authored-by: Curry Yang <1019yanglu@gmail.com>

* Test: Fix all smoke test failures due to new navigation sidebar (#9921)

* enhance the test component
* add test attributes
* fix smoke test

* Fix failed git-sync E2E tests.

* fix type issues

* fix all e2e failure

* update screenshot

* fix issues from pr comment

* fix toggle issues

* fix grpc and smoke test issue

* fix slot issue

* tmp

* tmp

* Integrate Konnect sync with the new sidebar

* Apply style changes from https://github.com/Kong/insomnia/pull/9963

* fix: Using react-aria tab and extract common component for sidebar tab (#9967)

* extract common component and refine tabs

* fix issues

* streamlines button classes and spacing tweaks (#9969)

* Try to fix error in Check renderer Node import baseline

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Cancel sync err message

* Fix review issues

* minor ux fix (#9971)

* Disable disconnect button while validating PAT

---------

Co-authored-by: xdm <35987327+xiaodemen@users.noreply.github.com>
Co-authored-by: Kent Wang <kent.wang@konghq.com>
Co-authored-by: Bingbing <ZxBing0066@gmail.com>
Co-authored-by: Curry Yang <163384738+CurryYangxx@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Jack Kavanagh <jackkav@gmail.com>
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
Co-authored-by: Shelby <13246465+shelby-moore@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: kwburns-kong <kyle.burns@konghq.com>
Co-authored-by: jeremyjpj0916 <31913027+jeremyjpj0916@users.noreply.github.com>
Co-authored-by: Ryan Willis <ryan.willis@konghq.com>
Co-authored-by: Alison Sabuwala <alison.sabuwala1024@gmail.com>
Co-authored-by: aikido-pr-checks[bot] <169896070+aikido-pr-checks[bot]@users.noreply.github.com>
Co-authored-by: Jay Wu <jay.wu@konghq.com>
Co-authored-by: Pavlos Koutoglou <pkoutoglou@gmail.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Fares Osman <43153226+fiosman@users.noreply.github.com>
Co-authored-by: Vivek Thuravupala <2700229+godfrzero@users.noreply.github.com>
Co-authored-by: Curry Yang <1019yanglu@gmail.com>
Co-authored-by: Missy Turco <60163079+mcturco@users.noreply.github.com>
2026-05-28 11:44:55 +08:00
yaoweiprc
933f56854e Git server for smoke test [INS-2258] (#9816)
* Git server for smoke test

* Try to solve flaky test

* feat: remove unused Git hook samples and add Credentials tab functionality

- Deleted various sample Git hook scripts from the git-server fixture, including post-update, pre-applypatch, pre-commit, pre-merge-commit, pre-push, pre-rebase, pre-receive, prepare-commit-msg, push-to-checkout, sendemail-validate, and update hooks.
- Introduced a new PreferencesCredentialsTab class to manage Git credentials within the Insomnia Preferences.
- Updated the PreferencesPage to include the new Credentials tab for Git credentials management.
- Enhanced the ProjectPage with a method to create a Git Sync project, including branch creation and switching.
- Added comprehensive tests for Git Sync functionality, including creating branches, committing changes, and merging branches.
- Updated UI components to support new features, including data-testid attributes for better testability.

Co-authored-by: Copilot <copilot@github.com>

* feat: update path import and add Git sync tests

* revert package.json

* Update package.json

* feat: add new dependencies for Git HTTP mock server and related utilities

* refactor: remove commented-out code in addAccessTokenGitCredential function

* fix: update export tests to use toHaveLength for file count assertions

---------

Co-authored-by: Copilot <copilot@github.com>
2026-04-28 09:44:54 +00:00
Jack Kavanagh
2f4e3a8e65 run prettier (#9431) 2025-11-26 11:19:07 +00:00
Jack Kavanagh
feb1cf5495 refactor importers to run in node (#9217)
* refactor import to run in node

* format json with prettier

* fix lint

* add process fork for tests, this is bad
2025-10-09 08:36:14 +02:00
Jack Kavanagh
3ac3965b45 *.min.js and entry.* naming conventions (#8968)
* use min.js convention

* rename to entry

* rename main.ts

* fix electorn builder config

* fix types

* fix hidden window entry

* rename esbuild.main.ts to entrypoints
2025-08-13 11:05:56 +00:00
James Gatz
aa838bf39c chore(Architecture): react router spa mode (#8902)
* first pass

fix tests

move all react things in dev

try-package

build stuff

use http protocol instead of file

handle refresh

fix tests and routeloaderdata apths

fix npm run dev

fix sorts

fix hidden browser window

cleanup files

Typesafe /auth/* routes

typesafe commands route

git-credentials typesafe routes

import typesafe routes

fix types

fix hidden browser window

invite and collaborators typesafe routes

fix types

remove workarounds

fix dashboard test

more types

git typesafe routes

fix runner test

typesafe scratchpad navigation

fix remove unused project route

fix test routes

add space

request typesafe routes

git credentials typescript conspiracy

git typesafe routes

typecheck

debug bundles for inso

fix test

fix request group tab

workspace typesafe routes

feedback

All routes use generated types

Add typed fetchers to actions and loader

Use typed fetchers in the app

move git actions to the root

* fix react-use usage

update import source field

Spawning npm fails the build

Add ~ module resolution to vitest

add initialEntry functionality

fix update environment name requirement

fix settings patch

use loader for fetching the vault key and fix process.env.PLAYWRIGHT issue

fix missing type

Centralize useRouteLoaderData to routes

Use environment for vitest tests that run browser code

Update remaining fetchers to typesafe versions

remove unused fetcher and add callback to sync

Wrap load/submit in useCallback to keep them stable between re-renders

Update deps lists with stable submit functions

fix lint issue

* fix ts issues

* Add toaster to root

* Use shell for running scripts with spawn on Windows

* Move renderer bundling out of the build script

* Fix request-pane test flakiness

* update the url we use for internal purposes

* Increase timeout for release workflow

* fix flaky bundling test

---------

Co-authored-by: jackkav <jackkav@gmail.com>
2025-08-08 11:10:28 +02:00
Jack Kavanagh
b30978e33b Full-prettier-run (#8605)
* prettier

* remove markdown linting
2025-04-11 13:37:19 +02:00
Jack Kavanagh
ed001e0c98 Prettier pass 3 (#8586)
* first pass

* use mjs

* 120

* single quote

* consistent quotes

* fix on save

* ancestors

* add recommended

* make vscode integration work

* remove prettier runtime dep

* use esm
2025-04-11 13:11:34 +02:00
Ryan Willis
05d15b4abf securely wrap execution (#8451)
* test using a wrapper that sets security context before invoking the main application

* add build step to pr ci

* try with diff ver string

* statically link the standard libraries for portability

* more static linking

* prior version string

* remove pr substring from version

* try using a different version string
2025-03-25 08:57:53 -07:00
Kent Wang
aaa13cbebd support debug inso-cli in vscode 2025-03-19 02:08:29 +00:00
yaoweiprc
82416396f5 Render no-standard content-encoding response [INS-4910] (#8341)
* Support no-standard content-encoding response

* Change VS Code format option to bypass the indent bug. Add the check of noCompress to avoid infinite retries.
2025-03-12 03:38:32 +00:00
Ryan Willis
2a9ffac2ac feat(github): github app [INS-3090] (#8254) 2024-12-17 13:35:01 +00:00
yaoweiprc
cdb2e5ddc8 fix the bug that postman V2.0 auth apiKey can not be parsed when importing (#8241) 2024-12-16 02:51:19 +00:00
yaoweiprc
bc8aa3889c Support for resolving conflicts when using git-merge [INS-4638] (#8185)
* Remove unused codes

* let user resolve conflict when using git merge

* fix code review issue

* Solve the bug that working area does not update after merge.

* modify git smoke test timeout
2024-11-25 16:20:53 +00:00
yaoweiprc
41649e040e unify mock server route url (#8169) 2024-11-13 16:41:53 +08:00
yaoweiprc
c38597187e Support for resolving conflicts when pulling from remote git branch. [INS-4550] (#8118)
Support for resolving conflicts when pulling from remote git branch.
2024-11-05 15:38:54 +08:00
yaoweiprc
cde96f947d fix https://github.com/Kong/insomnia/issues/8121 (#8128) 2024-10-25 16:15:12 +08:00
yaoweiprc
44eb7ea5e9 Manage members in organization [INS-2705] (#7949)
Manage members in organization.
2024-09-24 18:00:25 +08:00
Jack Kavanagh
3349fe56ea Clean up outdate jest and tsconfigs (#7712)
* inso

* insomnia

* testing

* sdk

* remove base and eslint configs

* fix lock
2024-07-12 13:55:22 +02:00
Jack Kavanagh
536fbcb27e inso clean up (#7578)
* re-enable test and update snapshots

* completely remove generate config

* fix tests
2024-06-24 12:02:22 +02:00
Curry Yang
26a78cf219 fix: vscode debug config (#7231) 2024-04-08 09:17:51 +02:00
James Gatz
6ef9a46814 Api V2 (#6135)
* Add support for multiple remote projects per Team (#6009)

* update fetching of teams

* create and delete remote projects

* backend project sync using the new teamProjectId in the API

* indicator

* use team api to get organization data

* handle logged out state

* remove remote from duplicate modal

* remaining insomnia fetch fixes

* fix ts issues

* fix ts log issue

* fix ts error

* fix ts update

* fix tests

* remove log

* add types to insomniaFetch

* named arguments in vcs

---------

Co-authored-by: jackkav <jackkav@gmail.com>

* Project Presence (#6079)

* fix ts log issue

* fix ts update

* update fetching of teams

* create and delete remote projects

* real-time

* update api changes

* check for successful response

* get user profile

* cleanup

* update fetch

* update network status

* fix for insomniaFetch new api

* insomnia fetch from window

* fix missing stat

* fix project dropdown

* update avatar

* update presence when closing the app

* update the presence every minute

* cleanup presence

* use eventsource and improve debugging

* Cloud only projects (#6167)

* Add support for multiple remote projects per Team (#6009)

* update fetching of teams

* create and delete remote projects

* backend project sync using the new teamProjectId in the API

* indicator

* use team api to get organization data

* handle logged out state

* remove remote from duplicate modal

* remaining insomnia fetch fixes

* fix ts issues

* fix ts log issue

* fix ts error

* fix ts update

* fix tests

* remove log

* add types to insomniaFetch

* named arguments in vcs

---------

Co-authored-by: jackkav <jackkav@gmail.com>

* login routes

* cleanup logged in state

* update organizations

* fixes

* update migration

* auto init sync on workspaces without git

* fix auto init sync

* checkpoint

* update import options in empty project pane

* responsive styles

* update package-lock

* join an org in sidebar

* readability improvements

* move modals and root loader to org

* cleanup root

* expire session take 1

* cleanup default org id

* fix ts issue

---------

Co-authored-by: jackkav <jackkav@gmail.com>

* Add Scratch Pad collection (#6221)

* add scratchpad collection

* filter scratchpad from cloud migration

* disable sync for scratchpad

* update settings for scratchpad

* log in rename

* check if user is logged in or has logged in before

* use organization api

* organizations api fixes

* update urls

* move modals to root

* update org navbar links

* lint fix

* type-check

* Add form for setting up the staging env

* add autolinking

* onboarding

* remove default org id

* staging urls

* avatar styles

* update urls

* use display name for orgs

* update settings modal with dev

* proper project deletions

* fix api calls perf

* sidebar improvements

* layout styles

* disable tests for now

* fix boolean

* fix data migration

* dev settings styles

* test init

* organization names

* link styles

* improve scratchpad banner styles

* http colors

* url bar styles

* spinner styles

* breadcrumbs styles

* help and feedback links

* settings to root

* onboarding

* fetch remote projects on org nav

* update avatar styles

* use name initials in avatars

* don't allow to delete default organization project

* add scratchpad checks

* tests

* workspace settings tabs types

* export all workspaces

* fix types and personal org

* project permission checks

* continue with sso

* organization avatars

* project presence avatars

* fix privacy/terms links

* add the no-wrap classname

* update user name and email in the app

* fix delete action

* ai fetching

* generate tests in sequence to help with rate limiting

* wip testing

* wip test

* improve test and migration script

* fix ts

* local to cloud projects test

* set local-to-cloud-projects.test as slow

* fix e2e tests

* update settings tests

* update more apis that changed from teams -> organizations

* simplify remote project migration

* org.branding can be undefined

* fix imports issue in sr

* remove .only

* remove unused gql query

* fix onboarding height jump

* trust some rnd and upload artifacts on failure

* fix env vars replacement on prod

* fix constant name

* bring back checks

* fix inso test

* add temp changes

* fix inconsistent response handling

* handle bad auth code errors

* show email when logged in

* remove the concept of default_project

* cleanup auth styles

* fix: use scratchpad constants wherever needed and remove seed

* fix sentry lint error

* migrate with update

* add scratch pad fixture and typing

* refactor pushSnapshotOnInitialize to always work

* remove console.log

* remove account from preferences

* improve trail-lines styles

* fix project sidebar scroll issue

* only create diff of projects

* fix lint

* sync

* feat: add plan upgrading modal for git sync (#6516)

* feat: add plan upgrading modal for git sync

* feat: add plan upgrading modal to project git menu and grid menu

* fix: use JSON.parse for getting flag value

* update ask modal

* remove git option from workspace settings

---------

Co-authored-by: gatzjames <jamesgatzos@gmail.com>

* sort projectswith default at top

* create local copies of remotes

* update presence exit update

* renames

* fix deleting/renaming projects with remoteId

* remoteId instead of projectId

* remote-collections

* fix initializeProjectForTeam

* fix missing parentId in remote projects

* add missing billing api

* add migration page and check for migrations

* cleanup project sync logic

* fix remote projects updating

* add notes

* fix backend-project test

* fix: use features API for fetching feature list (#6538)

* members -> collaborators

* remove dev settings

* use shouldRunMigrations in onboarding

* fix empty pane styles

* remove beforeUnload for presence

* show expiry info

* better error for upgrade in new project action

* extend retry period

* fallback and control revalidate

* add pending indicator for switching organizations

* fix exports (#6553)

* Sync Organizations (#6551)

* organization cache and updates

* error handling in org sync

* sort organizations

* clean up sort

* org sort and avatar fallback

---------

Co-authored-by: jackkav <jackkav@gmail.com>

* Presence updates (#6552)

* use remoteId for presence

* use project loader for the active project

* fix in present users

* logic clean

* match remoteId checks

---------

Co-authored-by: jackkav <jackkav@gmail.com>

* add default color to loading indicator

* fix redirect loop when there are no projects

* scratchpad fallback on initial route load

* re-enable ai check

* update error in renameProject

* db query to get projects in workspace

* review fix

* comments

* remove initModelFrom magic

* fix lint issue

---------

Co-authored-by: jackkav <jackkav@gmail.com>
Co-authored-by: Mark Kim <mark.kim@konghq.com>
Co-authored-by: Filipe Freire <livrofubia@gmail.com>
Co-authored-by: Hexxa <hexxa@outlook.com>
2023-09-24 23:12:50 +00:00
James Gatz
70656f0188 Tailwind (#6189)
* tailwind

* css load

* delete less

* cleanup html and add defaults

* remove super duper

* cleanup

* disable form reset for now

* add tailwind extension to recommended extensions

* undo swagger css

* fix ts issue

* add editor css

* move all code mirror styles in styles.css

* remove forms
2023-08-01 12:04:15 +03:00
Jack Kavanagh
c72eb2d373 formatting (#6190) 2023-07-25 12:20:39 +02:00
Jack Kavanagh
a2340c85f9 speed up app start (#6184)
* lazy load importers

* lazy load jwt auth

* lazy load prettier

* remove config generator plugins

* lazy load httpsnippet

* chore: INS-2815 refactor settings (#6132)

* chore: INS-2815 refactor settings

* check is loggedin

* improvement

* fix test

* fix lint

* cleanup o2k plugins

* fix

* fix test

---------

Co-authored-by: Filipe Freire <livrofubia@gmail.com>
2023-07-24 16:20:22 +02:00
Jack Kavanagh
f34d7650f9 add stack and redirect to error page (#6171)
* add stack and redirect

* fix format

* fix formdata parsing

* remove console log
2023-07-19 13:56:27 +00:00
Jack Kavanagh
3cdd4c8491 SSE/EventStream support (#6147)
* new request

* add button

* s

* fix formatting issue

* detect event stream

* hide dropdown

* wip

* add basic test

* pass 1 can make connection

* implement event stream open pass 2

* wire up ready state

* wiring up close and error pass 3

* can open and close connections

* clean header

* listen to timeline

* extract options to function

* fix bug in ws

* add debug stuff to timeline

* don't rely on redux to set active response

* fix close type

* rename sse to event stream

* get request flag from request model

* copy websocket response pane

* hide response data

* flatten ws and curl responses

* fix test

* fix catch

* reset file

* use realtime event watcher

* rename some files

* fix types

* fix e2e test

* fix lint

* consistent empty states

* pin to bottom

* remove todo

* add SSE logo

* add sse to readme
2023-07-19 09:58:37 +00:00
Jack Kavanagh
b1ffea8cd4 add formatting defaults (#5990) 2023-05-24 09:56:23 +00:00
Filipe Freire
b6475afc9a remove insomnia-config, move it inside insomnia (#5444)
* remove insomnia-config, move it inside insomnia

* rename generate to generate-config
2022-11-21 13:33:18 +00:00
Dimitri Mitropoulos
213e1dd1c8 rename insomnia-app/app to insomnia/src (#4491) 2022-04-20 17:42:19 +00:00
James Gatz
eb21506d40 ️vite/esbuild (#4329)
* ️ 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>
2022-04-18 17:27:39 +02:00
David Marby
5af79c7486 Create smoketests for oauth flows (#4511)
* 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>
2022-02-28 16:28:02 +01:00
Jack Kavanagh
0abbefaf9e fix watch regex and parse args (#4270) 2021-12-15 11:26:44 +00:00
James Gatz
9bfbd5c6a8 add vscode launch config for debugging inso (#4161)
* add vscode launch config for debugging inso

* remove undeclared task
2021-11-01 16:13:30 +01:00
Dimitri Mitropoulos
177d6adf38 Insomnia Config, controlled settings (#4031)
Co-authored-by: Opender Singh <opender94@gmail.com>
Co-authored-by: Opender Singh <opender.singh@konghq.com>
2021-10-14 10:59:45 -04:00
Dimitri Mitropoulos
98916c9613 updates settings to include final newline (#4057) 2021-09-30 15:00:38 +00:00
Dimitri Mitropoulos
0333bf62f2 adds ndjson support extension (#4043) 2021-09-22 11:35:59 +12:00
James Gatz
1ddc386ac5 add vscode debug configuration for insomnia-app (#3918)
Add debug configuration for insomnia-app in vs-code
2021-09-03 18:10:35 +02:00
Dimitri Mitropoulos
422d5a809c adds markdown linting (#3931) 2021-08-27 15:44:01 +12:00