Commit Graph

83 Commits

Author SHA1 Message Date
Jack Kavanagh
3842690f60 feat(templating): vetted npm libraries in the sandbox — uuid + ajv (M3) (#10244) 2026-07-16 12:53:23 +03:00
Pavlos Koutoglou
a81ac68c39 feat: publish Insomnia file JSON Schema [INS-2794] (#10154)
* Modify the script in package.json

* Add script to generate the schema

* Schema generation docs

* Add CI check

* Generate the schema
2026-07-02 14:21:42 -04:00
Jack Kavanagh
79c544238b feat: disable nodeIntegration in renderer mainWindow, remove Node import check tooling (#9996)
* Add vault-crypto/mime utilities and remove heavyweight third-party imports

- Add AES-GCM vault-crypto utility with tests (replaces node-forge usage)
- Add common/mime.ts to replace mime-types package dependency
- Replace tough-cookie import in response-cookies-viewer with inline parser
- Replace @grpc/grpc-js status import in grpc-status-tag with inline constant
- Replace electron.ipcRenderer in auth.clear-vault-key with showToast()
- Remove unused analytics call from window-utils

* Fix impure Date.now() key on CodeEditor; use setValue via ref instead

Replace key={Date.now()} with a useEffect that calls editorRef.current.setValue(snippet)
whenever snippet changes, keeping the editor mounted. Also apply prettier fixes from quick-check.

* fix: address Copilot review comments on PR #9992

- vault-crypto: replace forge-in-renderer with IPC bridge (main process
  retains forge; renderer calls window.main.vault.{en,de}cryptSecretValue)
- mime.ts: expand lookup table to 48 entries (webp, wasm, mp4, docx, xlsx,
  fonts, audio/video, etc.) and fix remaining mime-types import in send route
- response-viewer: move charset alias map to module level; normalise iconv-lite
  alias names (utf8, latin1, win1252, …) to WHATWG labels for TextDecoder
- auth.clear-vault-key: fix typo "all you local" → "all your local"

* fix: sort imports in send route

* feat: disable nodeIntegration in renderer mainWindow, remove import check tooling

- Set nodeIntegration:false and contextIsolation:true on mainWindow webPreferences
  (hidden window keeps nodeIntegration:true for user script execution)
- Split script-security-rules.ts out of script-security-policy.ts so the renderer
  can import display-only constants without pulling in require-interceptor
- Add templating/renderer-safe.ts with Node-free render/reload/getTagDefinitions;
  update all renderer callers to import from it instead of templating/index
- Split insomnia-testing generate.ts: move generateToFile to generate-to-file.ts
  so generate() has no Node imports; expose generateToFile from new entry point
- Move runTests execution to main process via IPC (run-tests channel) so the
  renderer routes no longer import the Mocha-backed test runner directly
- Delete vite-plugin-electron-node-require.ts, check-renderer-node-imports.ts,
  renderer-node-import-baseline.json and all related scripts/plugins now that the
  renderer bundle is free of Node built-in imports

* fix: sort imports, use static TestResults type, remove unused analytics import

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* remove mime stuff

* remove ci step

* update plan

* insomnia testing adapter

* use export method

* trick react router ssr

* add renderer errors

* globalThis

* improve error

* move plugin types

* ipc validate proto

* fix import

* plugin types

* polyfill events for jshint

* restore node require plugin

* vault adapter

* add crypto bridges

* tough-cookie ipc

* util stub

* split cookie into network adapter

* assert

* fix plugin index import

* serialise cookie

* decouple renderer from scripting

* Fix rebase conflicts and import path issues

- Fix incorrect ~/insomnia-data imports (should be insomnia-data package)
- Remove non-existent mime utility imports and provide simple fallback
- Remove incorrect analytics call from main process
- Remove unused imports (Settings, Cookie)
- Fix Response type annotation for getResponseBodyBuffer

* lint

* fix tests

* fix: use dynamic import for crypt in session.ts for main process compatibility

The session.ts module is used in both renderer and main process contexts (via sync.invoke IPC handlers). When running in the main process, window.main is undefined, causing TypeError when trying to access window.main.crypt.decryptAES().

Changes:
- Use dynamic import of crypt module (only loaded in main process context)
- In renderer: window.main.crypt is always available so dynamic import never executes
- In main process: dynamic import loads crypt with node:crypto support
- Protect loginStateChange() calls with window existence checks

This avoids bundling node:crypto in the Vite renderer build while still supporting both execution contexts.

Fixes E2E test failures in sync operations (remoteBackendProjects, _assertSession, etc.) caused by disabled nodeIntegration.

* fix: add aria-label to template tag preview and browser-safe encoding fallback

- Add aria-label="Live Preview" to textarea in TagEditor for better Playwright accessibility
- Add atob() fallback for decodeEncoding in browser contexts where Buffer isn't available
- Fixes smoke test element discovery for template tag preview modal

* fix: add explicit waits for element stability in environment test

Add toBeEnabled() and toBeVisible() waits before clicking elements in the
'kv pair environment can be updated' test. This prevents timeout errors from
unstable/flickering elements during modal interactions, especially in
high-concurrency shard execution.

* remove unused

* add autocomplete generate test step

* fix lint

* put analytics back in

* combine vault and crypto adapter

* remove unused export split

* remove insomnia-testing cruft, addressing feedback

* fix: use direct imports in insomnia-inso after insomnia-testing index.ts removal

* fix circular reference

* fix: move createElectronNotifier to main process to fix SSR error

Move the electron-dependent createElectronNotifier function from repo-file-watcher.ts
to git-service.ts to prevent electron imports from being evaluated in the renderer/SSR context.

* export har ipc bridge

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-04 13:40:44 +08:00
Ryan Willis
d109903243 chore: resolve GHA warning annotations and reduce CI time [INS-2312] (#9839) 2026-04-22 10:44:47 -07:00
kwburns-kong
812611c38d chore: applied PoLP to workflows (#9840) 2026-04-22 16:56:10 +00:00
Jack Kavanagh
3ec916e436 Chore: ratchet renderer nodejs calls (#9803)
* limit new nodejs calls

* plan

* ignore tests

* perf

* clean up
2026-04-13 13:33:57 +00:00
Ryan Willis
bbf8150091 chore: bump GHA steps to latest major (#9745) 2026-03-24 15:59:58 -07:00
Ryan Willis
e6c51d59c1 chore: upgrade to electron 41.0.3 and node 24.14.0 (#9734)
* chore: upgrade to electron 41.0.3 and node 24.14.0
2026-03-24 15:05:41 -07:00
Kent Wang
01c512ae34 feat: Allow empty credential configs to work with cloud providers (#9499)
* support empty credential config
* update plugin package
* update yaml for fix test error
2025-12-26 10:18:37 +08:00
Bingbing
a4250a53e3 chore: add circular reference check (#9065) 2025-12-23 02:44:40 +00:00
Ryan Willis
1b6c776214 feat: LLM integrations + preferences (#9296)
* feat: integrate AI plugin and configure LLMs in preferences (#9192)

* poc: LLM configuration

* fix formatting + tidy script

* fix openpath type send method

* exempt node_modules from vitest

* reset package-lock for inso build

* switch from send/on to invoke/handle

* switch to pluginData

* remove unnecessary animation

* remove extraneous external defs in frontend bundle config

* rebase fix

* feat: mock server gen (#9201)

* add ipc handler methods in front of llm config service (#9202)

* feat: gemini first class config support (#9209)

* feat: add gemini as a backend

* fix: save api key the first time

* chore: call plugin from utility process (#9210)

* feat: additional mock server event tracking (#9215)

* feat(Git Commit): Automatically generate commits (#9164)

* feat: add AI-generated commit message functionality in staging modal

* feat: enhance AI commit message generation with error handling and improved UI

* fix: update button icon and text for commit generation state in staging modal

* feat: add diff functionality to Git service and integrate with AI commit message generation

* feat: update isomorphic-git to version 1.33.1 and add stash functionality to Git VCS

* feat: implement multiple commit functionality for Git VCS and integrate with staging modal

* feat: add validation for staged changes before generating commit messages

* feat: implement generateCommitsFromDiff functionality for AI commit message generation

* Cleanup staging modal and use tree data for reordering and submitting multiple commits

* Revert "feat: update isomorphic-git to version 1.33.1 and add stash functionality to Git VCS"

This reverts commit b731372debdfb07ac118d84900c2cecb635a34b4.

* feat: update type definitions for diff changes in Git VCS

* refactor: remove console logs and commented code from staging modal and AI commit generation

* feat: implement git commit generation process using a separate utility process for improved error handling and performance

* fix: improve error handling messages in AI commit generation

* chore: update optional dependency for AI plugin to alpha version 1.0.3

* fix: ensure data dir exists prior to reading (#9220)

* fix: ensure data dir exists prior to reading

* rename handler

* feat: mock server gen ux improvements (#9221)

* fix: include mockgen script in build (#9222)

* feat: add git commit generation process to build script (#9226)

* fix: set min height for git folder selector (#9242)

* chore: ai plugin 1.0.4 (#9243)

* feat: toggle ai features (#9232)

* feat: track commit generation and saving events for analytics (#9293)

* feat: add analytics tracking for commit message generation events

* fix: update segment event names to camelCase for consistency

* Update package-lock with the plugin modules

* fix(build): add x64ArchFiles option back (#9297)

* fix: autoselect self hosted mock when cloud mock disabled (#9299)

* fix: hide ai settings from scratch pad user (#9300)

---------

Co-authored-by: Shelby Moore <13246465+shelby-moore@users.noreply.github.com>
Co-authored-by: James Gatz <jamesgatzos@gmail.com>
2025-10-23 10:41:39 +02:00
Kent Wang
2eca4de150 feat: External vault separation and bundle plugin support for Insomnia & Inso (#8864)
* Move vault related UI code
* Support bundle plugin for app & inso and backend integration (#8857)
* Update Github actions
* spike: bundle plugin installation alternatives (#8899)
* installation alternative by optional dependency
* Refine plugins api
* feat: Execute vault plugin tag in web worker (#8934)
* update bundle test
* fix issues from comment

---------

Co-authored-by: jackkav <jackkav@gmail.com>
2025-08-07 14:06:41 +00:00
jackkav
253be8a622 fix double smoke test run 2025-04-15 14:28:25 +02:00
jackkav
f2c466f63a remove 2025-04-15 12:34:00 +02:00
jackkav
f8a8bfa2a0 workflow 2025-04-15 12:33:22 +02:00
jackkav
b2b28274f6 remove trace upload 2025-04-15 12:13:07 +02:00
jackkav
2d2be90b13 remove git sync test 2025-04-15 12:07:38 +02:00
Jack Kavanagh
b30978e33b Full-prettier-run (#8605)
* prettier

* remove markdown linting
2025-04-11 13:37:19 +02:00
jackkav
cc0cdb66ce use ubuntu 22 2025-01-28 13:41:28 +01:00
Jack Kavanagh
0c7c50c4af make runners conventional (#8325)
* make runners conventional

* use 24 explicitly until latest alias is available for arm

* arm64 need snapcraft
2025-01-28 13:11:01 +01:00
Curry Yang
18072a8a8f fix: smoke failed in github action (#8274)
* add log

* fix ubuntu image version
2025-01-06 17:07:53 +08:00
Jack Kavanagh
65b25c9879 remove audit check (#7943) 2024-09-11 09:32:46 +02:00
George He
1775d9fd43 chore: upgraded micromatch and add back npm audit (#7921) 2024-09-06 08:36:55 +01:00
Filipe Freire
9b3a7f5836 fix: disable failure on npm audit [no-ticket] (#7862) 2024-08-22 14:18:05 +00:00
Jack Kavanagh
977191c24e fix cves and add CI check (#7806)
* fix cve

* npm audit fix

* fix xmldom cve

* add audit step to ci
2024-08-05 15:46:32 +00:00
Filipe Freire
0d91f0a7eb chore: git sync pull push test [INS-4132] (#7720)
* chore: git sync pull push test [INS-4132]

* Update packages/insomnia-smoke-test/playwright.config.ts

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

* local dx

---------

Co-authored-by: Jack Kavanagh <jackkav@gmail.com>
2024-07-25 11:47:44 +01:00
Jack Kavanagh
03581544cf split test job into app and cli (#7685)
* split

* add build sr

* adjust timeouts

* fix test

* fix timeout

* typo
2024-07-10 10:18:12 +02:00
Jack Kavanagh
8c729ecae7 inso fifth pass (#7601)
* extract lint and export logic

* add test and update doc

* some thoughts

* add test each

* notes

* comments

* add more cases

* improve types, flatten send request

* collection runner poc

* verbose

* flatten

* add bail

* stabilise pathing

* add test

* fix type check

* improve testing experience

* fix tests

* tidy up package.json

* tidy up package and test.yml

* remove old smoke test

---------

Co-authored-by: Filipe Freire <filipe.freire@konghq.com>
2024-07-09 13:06:55 +01:00
Jack Kavanagh
2ff059f7a2 remove oas 2 kong (#7503)
* remove oas 2 kong

* remove old test
2024-06-11 10:38:09 +01:00
Filipe Freire
ef9cd3c5ee chore: bump GH actions versions [no-ticket] (#7117) 2024-02-27 14:49:14 +00:00
Kong Team Eng Enablement Bot
ab52d7a26f Update timeout for .github/workflows/test.yml (#7051)
* Update default timeouts for .github/workflows/test.yml [skip ci]

* configure timeout

---------

Co-authored-by: Filipe Freire <filipe.freire@konghq.com>
2024-02-05 15:05:34 +00: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
9f6e2f3485 UI improvements (#6270)
* add fontawesome and react-aria-components

* add font awesome icon

* cleanup html

* anchor styles

* root

* cleanup root

* fa brand icons

* github stars icon

* fix account links

* breadcrumbs

* more root

* fix dropdown container

* update pkg lock

* free package env variable

* npmrc?

* happy or sorry this happened

* uninstall

* re install

* undo npmrc changes

* remove nesting css

* 30k stars!

* increase space
2023-08-15 14:46:40 +02:00
Jack Kavanagh
f9bd4ff82a fix: http request loading indicator (#6265)
* flatten url bar

* flattening continued

* more flat

* more more flat

* fix lint

* flatten network send into one call

* unpack send everywhere

* remove send with settgins

* fix types

* fix bug in download

* contain interpolation and modal

* abstract render try catch

* send action

* extract to file

* remove plugin ignore code

* remove unused

* unpack misc functions

* less misc functions

* readd inso tests

* split test runs

* fix test

* fix test

* fix test

* use workspace pathing

* remove check-engine

* add tech debt list
2023-08-13 12:30:04 +02:00
Jack Kavanagh
96011e8db5 add critical smoke tests to avoid broken beta deploy (#6259)
* fix lint errors

* use only ubuntu for tests

* add critical test to release recurring

* fix path

* fix paths again
2023-08-11 08:22:01 +00:00
Jack Kavanagh
bdb67313e1 fix? (#6258) 2023-08-10 22:29:00 +02:00
Filipe Freire
7b3d04c830 chore: smoketests ubuntu only (#6255)
* chore: smoketests ubuntu only

* rename screenshot to traces

---------

Co-authored-by: jackkav <jackkav@gmail.com>
2023-08-10 17:53:18 +02:00
Filipe Freire
9800ad5aee chore: use npm workspaces (herecles) (#6193)
* chore: use npm workspaces

* edit workspaces

* fix

* fix

* force workspace order

* fix lock?

* define max_old_space_size on CI

* rm unnecessary bootstrap

* fix

* cleanup package.json

* bump vite and re-add build to bootstrap

* define paths on tsconfig

* fix some things

* add mocha to vite config

* bump mocha

* remove tsconfigs and project refs

* cache npm install

* fixed types

* assing repo root

* merge lint configs

* fix clean

* fix tests

* setup node

* lockfile

* fix bump

* fix lint markdown

* temporary disable inso tests

* dont use rimraf

* simplify clean

* fix version

* lockfile

* inso build

* fix lint

* lock file

* remove cleans

* remove unused

* tslib hack

* redownload node-libcurl

* rm version from scripts

* fix extrainfo bug

* use npm version

---------

Co-authored-by: jackkav <jackkav@gmail.com>
2023-08-10 00:14:16 +02:00
James Gatz
36a5635bd5 Revert "exclude macos release (#6056)" (#6061)
This reverts commit 033b74871c.
2023-06-27 18:16:03 +00:00
James Gatz
033b74871c exclude macos release (#6056)
* exclude macos release

* more exclusion
2023-06-26 12:41:30 +00:00
Filipe Freire
d3b917a15f chore: Add merge-group on workflow dispatch (#5872) 2023-03-31 10:51:31 +00:00
Filipe Freire
23760ab24b Fix for set-ouput deprecation (#5292)
* Fix for set-ouput deprecation

Related to https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/

* rm extra space
2022-10-17 13:14:47 +01:00
David Fluck
dbf597c2d8 INS-1785: Add Inso NPM package test (#5116)
* Add Inso NPM package test.

* PR changes

* Delete shell script.

* Rename script

* PR changes

* Try cross-env on test:bundled-inso to fix Windows

Co-authored-by: Filipe Freire <livrofubia@gmail.com>
2022-10-14 08:27:10 +00:00
Filipe Freire
5bba2e9545 [INS-2022] Initial exploration multiple test projects (#5244)
* 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
2022-10-11 08:56:12 +00:00
David Marby
df9a48e010 Upload sourcemaps to Sentry on publish (#4909) 2022-06-28 11:29:28 +02:00
David Marby
ef7773a292 Simplify the test workflow (#4599) 2022-03-17 11:05:37 +01:00
Jack Kavanagh
4c657d4e5b remove :smoke (#4597) 2022-03-16 09:36:41 +00:00
Filipe Freire
b3aa6b9cec Easier Alpha/Beta/Stable releases (INS-1435) (#4516)
Co-authored-by: David Marby <david@dmarby.se>
2022-03-09 16:06:53 +01:00
David Marby
1389dd4696 Cancel currently running test workflows for a branch if new commits are added (#4476) 2022-02-10 16:07:11 +00:00
David Marby
cdeb4debc6 Use setup-node@v2 (#4473) 2022-02-09 17:35:34 +01:00