Linus Rath and GitHub
e94a1429d5
Merge pull request #724 from paulhenry46/userlogout-api-hook
...
feat: implement existing hooks onBeforeLogout and onAfterLogout + new plugin API method
2026-08-01 23:09:39 +02:00
Paulhenry Saux
d15c58f8da
feat: implement logout hook and add a new plugin api method to perform logout
2026-08-01 21:46:33 +02:00
Paulhenry Saux and GitHub
6698ec8456
Merge branch 'bulwarkmail:main' into user-api-plugin
2026-08-01 20:24:08 +02:00
Paulhenry Saux
66ff523553
feat(plugins): add 2 new methods : user.getAccounts and user.getIdentities
2026-07-29 13:14:09 +02:00
Paulhenry Saux
7969fd09eb
fix(plugins): prevent a privileged plugin to get PRF secret of another privileged plugin
2026-07-29 11:30:12 +02:00
Paulhenry Saux
7bf62e4bdc
feat: add contact methods in plugin API
2026-07-22 19:34:45 +02:00
Linus Rath
5105e000f5
feat: add message-list category tabs
2026-07-22 17:22:20 +02:00
Paulhenry Saux
07c473e057
feat: add new plugin ui.rerenderFetchedEmails method
2026-07-22 13:39:21 +02:00
Paulhenry Saux and Linus Rath
b4739c111f
feat: add new plugin API to submit without moving to box mail and import to box
2026-07-21 20:55:52 +02:00
Paulhenry Saux and Linus Rath
a679d82cc3
feat: add download file method for files generated by plugin
2026-07-13 21:18:36 +02:00
Paulhenry Saux and Linus Rath
a08a9e9ed3
feat(plugins) : add new api api method : webauthn.getOrCreate
2026-07-13 21:17:45 +02:00
Linus Rath
d3f77ef9cf
feat: add plugin ui.rerenderEmail API and restyle read-receipt banner
2026-07-09 16:04:33 +02:00
Linus Rath
5ccba83129
Merge branch 'main' of https://github.com/bulwarkmail/webmail
...
# Conflicts:
# lib/plugin-sandbox/host-api.ts
2026-07-09 14:57:36 +02:00
752e71198c
feat: add 3 new plugin hooks : onBeforeBlobUpload, onBeforeDraftAutoSave, onBeforeEditDraft ( #586 )
...
Co-authored-by: Linus Rath <minipixxelinfo@gmail.com >
2026-07-09 14:55:34 +02:00
Linus Rath
9ab7339320
feat: add plugin ui.prompt dialog and first-class settings-section tabs
2026-07-09 14:51:17 +02:00
Linus Rath
512adab7e3
feat: add privileged same-origin plugin tier + crypto API surface
2026-06-28 16:51:42 +02:00
Linus Rath
6ee3849463
fix: theme plugin slot iframes with host font + color tokens
2026-05-31 16:28:22 +02:00
dealerweb and Linus Rath
2ba0003e16
Feature: localizable sandboxed plugins (manifest locales + api.i18n.t)
...
The plugin runtime received the active locale (init payload + 'locale-change')
and plugins could declare a `locales` map, but none of it was usable: the
locales never reached the runtime, and buildPluginApi exposed no i18n. So
plugin code calling pluginApi.i18n.t(...) (as the External Link Warning plugin
does) always got undefined and fell back to English.
Thread plugin locales end to end and surface an i18n API:
- ServerPlugin gains `locales`; the upload route persists manifest.locales
(alongside configSchema/settingsSchema), and /api/plugins surfaces it to the
client so it flows registry -> client -> sandbox host-bridge -> runtime.
- runtime sets __PLUGIN_LOCALE__ at init (not only on later 'locale-change')
and buildPluginApi exposes `i18n.locale` + `i18n.t(key, vars)` resolving
against the plugin's declared locales (manifest.locales) with English/key
fallback and {placeholder} interpolation.
Lets any sandboxed plugin localize its strings from its manifest.
2026-05-30 15:56:55 +02:00
Linus Rath
fc5f6f43d6
feat: expose PWA, app identity, and extension directory keys in JSON config #312
2026-05-21 23:35:58 +02:00
Linus Rath
628966d3b5
fix: split app into (main)/(sandbox) route groups so plugin iframe hydrates properly
2026-05-20 23:41:49 +02:00
Linus Rath
48aa607b56
feat: lock down plugin runtime in sandbox + signing + approval
2026-05-18 12:44:23 +02:00
Linus Rath
088810bd20
feat: harden plugin sandbox and migrate in-tree plugins
2026-05-18 12:17:54 +02:00
Linus Rath
9f312aa556
feat: sandbox plugins in null-origin iframes with postMessage RPC
2026-05-18 10:50:49 +02:00