auto-builder-sdk
Version:
SDK for building Auto Builder workflow plugins
21 lines (20 loc) • 805 B
JavaScript
/** Internal in-memory registry (shared across process via Node module cache) */
const registry = {};
/**
* Register a credential definition.
* Invoke at plugin top-level so that the definition is available as soon as
* the plugin is imported.
*/
export const registerCredential = (def) => {
if (!def?.name) {
throw new Error('Credential definition missing required "name"');
}
if (registry[def.name]) {
throw new Error(`Credential definition '${def.name}' already registered`);
}
registry[def.name] = def;
};
/** Retrieve a credential definition by its name (if registered) */
export const getCredentialDef = (name) => registry[name];
/** List all credential definitions registered so far */
export const listCredentialDefinitions = () => Object.values(registry);