mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-07-22 15:37:02 +00:00
* chore(plugin-api): normalize index exports * feat(plugin-api): expose app state types and getAppState * feat(plugins): expose getAppState through PluginAPI * feat(plugins): expose getAppState in plugin-bridge * fix(plugins): restore tag selector import * test(plugins): cover PluginAPI.getAppState * fix(plugins): expose getAppState for iframe PluginAPI * docs(plugin-api): add getAppState permission + example * docs(plugins): concise getAppState entry * fix(plugins): redact credentials from getAppState snapshot `getAppState` previously returned `globalConfig` and `projects[]` verbatim, exposing per-installation secrets to every loaded plugin. Strip the three known credential surfaces before returning: - `globalConfig.sync` — WebDAV/Nextcloud passwords, SuperSync access tokens, encryption keys - `globalConfig.misc.unsplashApiKey` — user-supplied API key - per-project `issueIntegrationCfgs` — Jira/CalDAV passwords, GitLab/Redmine tokens, OpenProject/Trello/Linear keys Add a security-regression spec that seeds sentinel credential strings into each surface and asserts none appear in `JSON.stringify(snapshot)`. --------- Co-authored-by: 00sapo <00sapo@noreply.codeberg.org> Co-authored-by: Johannes Millan <johannes.millan@gmail.com> |
||
|---|---|---|
| .. | ||
| index.ts | ||
| issue-provider-types.ts | ||
| types.ts | ||