UNPKG

@olakai/sdk

Version:

This document demonstrates how to use the Olakai SDK with all its features.

43 lines 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createLoggingMiddleware = createLoggingMiddleware; /** * Create a logging middleware * This middleware logs the function call and the result. * @param options - The options for the middleware * @default options - { * level: "info", // The level of the log (debug, info, warn, error) * includeArgs: false, // Whether to include the arguments in the log * includeResult: false, // Whether to include the result in the log * logger: console, // The logger to use * } * @returns A middleware function */ function createLoggingMiddleware(options) { const { level = "info", includeArgs = false, includeResult = false, logger = console, } = options; return { name: "logging", beforeCall: async (args) => { if (includeArgs) { logger[level]("[Olakai SDK] Calling function with args:", args); } else { logger[level]("[Olakai SDK] Calling function"); } return args; }, afterCall: async (result, _args) => { if (includeResult) { logger[level]("[Olakai SDK] Function completed with result:", result); } else { logger[level]("[Olakai SDK] Function completed successfully"); } return result; }, onError: async (error, _args) => { logger.error("[Olakai SDK] Function failed with error:", error); }, }; } //# sourceMappingURL=logging.js.map