{"version":3,"file":"traces.mjs","sourceRoot":"","sources":["../../../src/backup-and-sync/analytics/traces.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,eAAe,EAAE,mCAAmC;CAC5C,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,aAAa,GAAkB,KAAK,EAC/C,QAAsB,EACtB,EAA2C,EACtB,EAAE;IACvB,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,OAAO,SAAuB,CAAC;IACjC,CAAC;IACD,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC,CAAC","sourcesContent":["import type {\n  TraceCallback,\n  TraceContext,\n  TraceRequest,\n} from '@metamask/controller-utils';\n\nexport const TraceName = {\n  AccountSyncFull: 'Multichain Account Syncing - Full',\n} as const;\n\n/**\n * Fallback function for tracing.\n * This function is used when no specific trace function is provided.\n * It executes the provided function in a trace context if available.\n *\n * @param _request - The trace request containing additional data and context.\n * @param fn - The function to execute within the trace context.\n * @returns A promise that resolves to the result of the executed function.\n * If no function is provided, it resolves to undefined.\n */\nexport const traceFallback: TraceCallback = async <ReturnType>(\n  _request: TraceRequest,\n  fn?: (context?: TraceContext) => ReturnType,\n): Promise<ReturnType> => {\n  if (!fn) {\n    return undefined as ReturnType;\n  }\n  return await Promise.resolve(fn());\n};\n"]}