ref(plugins): Inline PluginComponentBase into its two subclasses#116112
ref(plugins): Inline PluginComponentBase into its two subclasses#116112ryan953 wants to merge 1 commit into
Conversation
| } | ||
|
|
||
| if (!isDemoModeActive()) { | ||
| Cookies.set('session_expired', '1'); |
There was a problem hiding this comment.
Risk: Affected versions of js-cookie are vulnerable to Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution'). The internal assign() helper in js-cookie walks attribute objects with a for..in loop and writes properties directly onto the target, which lets a __proto__ key from a JSON-parsed source trigger the Object.prototype.__proto__ setter. An attacker who controls any attributes object passed to set, remove, withAttributes, or withConverter can inject cookie attributes (domain, path, secure, samesite, expires) and pull off session fixation or downgrade Secure/SameSite protections.
Fix: Upgrade this library to at least version 3.0.7 at sentry/pnpm-lock.yaml:6510.
Reference(s): GHSA-qjx8-664m-686j
⭐ Removed in commit 8e42cbb ⭐
📊 Type Coverage Diff
🔍 46 new type safety issues introduced
...and 25 more Type assertions (
This is informational only and does not block the PR. |
The abstract PluginComponentBase class was only extended by PluginSettings and IssueActions. Inline all base class logic (state management, save/load lifecycle, renderField, API client) directly into each consumer and delete the base class file. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
4272db0 to
8e42cbb
Compare
Summary
PluginComponentBaseclass directly into its only two consumers:PluginSettingsandIssueActionsComponentdirectly with all base class logic (state management, save/load lifecycle,renderField, API client) copied instatic/app/plugins/pluginComponentBase.tsxTest plan
pnpm run typecheck)pluginConfig.spec.tsx,pluginDetailedView.spec.tsx)