mirror of
https://github.com/Kong/insomnia.git
synced 2026-07-30 17:26:28 -04:00
* refactor(structure): dissolve account/ into common/ and ui/ session.ts is split by import group so each file has one runtime context: - common/account/session.ts: the isomorphic store accessors + getPrivateKey (imports only insomnia-data + ~/runtimes), used by both main (sentry, cloud-sync) and renderer. - ui/account/session.ts: the window/insomnia-api auth flow (absorbKey, logout, credential cleanup, migrateFromLocalStorage); re-exports the common core so renderer callers keep one import surface. crypt.ts -> common/account/ (used by ipc + both crypto adapters); generateAES256Key now uses globalThis.crypto instead of window.crypto so the module satisfies the common/ no-DOM-globals rule. * refactor(structure): dissolve utils/ into ui/, common/, main/ Placed each former utils/ module by its actual importer context: - ui/utils/: router, try-interpolate, grpc, string-check, prettify/, xpath/ (renderer-only). The index.ts barrel merged into the existing ui/utils.ts. - common/utils/: environment-utils, graph-ql, plugin-name, invariant, utf8-bytes, vault, url/ (imported by both renderer and main/node side). - main/utils/: sealedbox (main-only). prettify tests now load fixtures via import.meta.glob instead of node:fs so they are legal in the renderer execution context. * refactor(structure): split plugins/ into ui/, common/, and plugin host - ui/plugins/: renderer-bridge, create, misc (renderer-only; window, no node) - common/plugins/: types, bridge-types (pure shared types, used by main + renderer + the plugin host) - plugins/ retained as the plugin-host residual: index, invoke-method, context/, themes. These run in the node-enabled plugin window and are intentionally dual-context (index.ts forks on __IS_RENDERER__ between window.main and electron.shell), so they belong to neither ui/ nor main/ nor common/. * refactor(structure): split templating/ into ui/, common/, and host residual - common/templating/: constants, types, render-error, render-context-serialization, tokenize-args, faker-functions, local-template-tags, liquid-engine, liquid-extension-worker, utils, mask-or-decrypt-vault-data, third_party (pure/isomorphic, imported by both sides). types.ts now declares a local BinaryToTextEncoding alias instead of importing node:crypto, so it is legal in common/. - ui/templating/: renderer-safe, worker (renderer/web-worker only). - templating/ retained as host residual: index + liquid-extension, which use node:crypto/os AND window.main (dual-context, like the plugin host). Updated the one cross-package importer (insomnia-scripting-environment) to the new common/ path. * style: re-sort imports after folder reorg (eslint --fix) * docs: runtime-context folder reorganization rationale * chore: treat vendored yarn-standalone bundle as a generated artifact The webpack-bundled bin/yarn-standalone.js is a vendored build artifact, not hand-edited source. An accidental reformat produced a 260k-line diff. Mark it generated/no-diff in .gitattributes (keeps git diffs fast, collapses on GitHub), make the prettier ignore explicit, and deny Claude read/edit access. ESLint already ignores it via the existing **/bin/* rule. * fix: drop unused try-interpolate import after rebase onto develop The rebase merge kept a direct tryToInterpolateRequestOrShowRenderErrorModal import in request-url-bar and websocket action-bar, but develop refactored both to call renderRealtimeConnectPayload instead, leaving the import unused (TS6133).
405 B
405 B