@@ -66,6 +66,7 @@ NODE_ENV=test ./node_modules/.bin/mocha test/api-test.js
6666- ** DkimHandler** (` lib/dkim-handler.js ` ) - DKIM key management
6767- ** CertHandler** (` lib/cert-handler.js ` ) - TLS certificate management, ACME
6868- ** TaskHandler** (` lib/task-handler.js ` ) - MongoDB-based task queue management
69+ - ** BimiHandler** (` lib/bimi-handler.js ` ) - BIMI (Brand Indicators for Message Identification) support
6970
7071### Handler Async Pattern
7172
@@ -79,7 +80,7 @@ await handler.asyncResolveAddress(address, options);
7980
8081### API Routes
8182
82- REST API routes in ` lib/api/ ` (23 modules): users, addresses, mailboxes, messages, filters, 2fa (totp, webauthn, custom), webhooks, storage, submit, audit, settings, health, acme, dkim, certs, asps, domainaccess, domainaliases, autoreply, updates.
83+ REST API routes in ` lib/api/ ` (23 modules): users, addresses, mailboxes, messages, filters, auth, 2fa (totp, webauthn, custom), webhooks, storage, submit, audit, settings, health, acme, dkim, certs, asps, domainaccess, domainaliases, autoreply, updates.
8384
8485### IMAP Core (` imap-core/lib/ ` )
8586
@@ -133,6 +134,7 @@ module.exports = {
133134- ` onSubscribe/onUnsubscribe(path, session, cb) ` - Subscriptions
134135- ` onGetQuota/onGetQuotaRoot(path, session, cb) ` - Quota
135136- ` onConnect/onClose(session, cb) ` - Lifecycle
137+ - ` onXAPPLEPUSHSERVICE(data, session, cb) ` - Apple Push Service support
136138
137139** Session Object** (available in callbacks):
138140``` javascript
@@ -195,15 +197,15 @@ const DkimHandler = require('@zone-eu/wildduck/lib/dkim-handler');
195197
196198### IMAP Handler Integration (` imap.js ` )
197199
198- WildDuck implements imap-core callbacks as handler factories in ` lib/imap-handler / ` :
200+ WildDuck implements imap-core callbacks as handler factories in ` lib/handlers / ` :
199201``` javascript
200202// Handler factory pattern - returns callback function
201- server .onFetch = require (' ./lib/imap-handler /on-fetch' )(server, messageHandler, userCache);
202- server .onAuth = require (' ./lib/imap-handler /on-auth' )(server, userHandler);
203+ server .onFetch = require (' ./lib/handlers /on-fetch' )(server, messageHandler, userCache);
204+ server .onAuth = require (' ./lib/handlers /on-auth' )(server, userHandler);
203205// ... etc for all callbacks
204206```
205207
206- Key handler files: ` on-auth.js ` , ` on-fetch.js ` , ` on-store.js ` , ` on-copy.js ` , ` on-move.js ` , ` on-append.js ` , ` on-create.js ` , ` on-delete.js ` , ` on-list.js ` , ` on-open.js ` , ` on-search.js ` , ` on-expunge.js `
208+ Key handler files: ` on-auth.js ` , ` on-fetch.js ` , ` on-store.js ` , ` on-copy.js ` , ` on-move.js ` , ` on-append.js ` , ` on-create.js ` , ` on-delete.js ` , ` on-list.js ` , ` on-lsub.js ` , ` on- open.js` , ` on-rename.js ` , ` on- search.js` , ` on-status.js ` , ` on- expunge.js ` , ` on-subscribe.js ` , ` on-unsubscribe.js ` , ` on-get-quota.js ` , ` on-get-quota-root.js ` , ` on-xapplepushservice .js`
207209
208210## Background Job Systems
209211
@@ -250,7 +252,7 @@ Redis-based queues for ElasticSearch synchronization:
250252
251253** Auth/Security** : ` authlog ` (TTL indexed), ` asps ` (app-specific passwords), ` audits `
252254
253- ** System** : ` settings ` , ` tasks ` , ` dkim ` , ` certs ` , ` domainaccess ` , ` domainaliases ` , ` journal ` , ` webhooks `
255+ ** System** : ` settings ` , ` tasks ` , ` dkim ` , ` certs ` , ` domainaccess ` , ` domainaliases ` , ` domaincache ` , ` journal ` , ` webhooks ` , ` bimi `
254256
255257** Archival** : ` archived ` (deleted messages), ` deletedusers `
256258
0 commit comments