@o3r/core
Version:
Core of the Otter Framework
24 lines • 975 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createBuilderWithMetricsIfInstalled = void 0;
const noopBuilderWrapper = (fn) => fn;
/**
* Helper duplicated from the one exposed by `@o3r/extractors`.
* The one from `@o3r/extractors` cannot be used here because of circular dependencies.
* This helper is not exposed in `@o3r/core`.
*
* Wrapper method of a builder to retrieve some metrics around the builder run
* if @o3r/telemetry is installed
* @param builderFn
*/
const createBuilderWithMetricsIfInstalled = (builderFn) => async (opts, ctx) => {
let wrapper = noopBuilderWrapper;
try {
const { createBuilderWithMetrics } = await Promise.resolve().then(() => require('@o3r/telemetry'));
wrapper = createBuilderWithMetrics;
}
catch { }
return wrapper(builderFn)(opts, ctx);
};
exports.createBuilderWithMetricsIfInstalled = createBuilderWithMetricsIfInstalled;
//# sourceMappingURL=utils.js.map