{"version":3,"file":"PageLogRecordProcessor.cjs","names":["KEY_EMB_PAGE_PATH","KEY_EMB_PAGE_ID","KEY_APP_SURFACE_LABEL"],"sources":["../../../src/processors/PageLogRecordProcessor/PageLogRecordProcessor.ts"],"sourcesContent":["import type { LogRecordProcessor, SdkLogRecord } from '@opentelemetry/sdk-logs';\nimport type { PageManager } from '../../api-page/index.ts';\nimport {\n  KEY_APP_SURFACE_LABEL,\n  KEY_EMB_PAGE_ID,\n  KEY_EMB_PAGE_PATH,\n} from '../../constants/index.ts';\nimport type { PageLogRecordProcessorArgs } from './types.ts';\n\nexport class PageLogRecordProcessor implements LogRecordProcessor {\n  private readonly _pageManager: PageManager;\n\n  public constructor({ pageManager }: PageLogRecordProcessorArgs) {\n    this._pageManager = pageManager;\n  }\n\n  // no-op\n  public forceFlush(): Promise<void> {\n    return Promise.resolve(undefined);\n  }\n\n  public onEmit(logRecord: SdkLogRecord): void {\n    // If the log already has page attributes, do not override them\n    if (\n      !logRecord.attributes[KEY_EMB_PAGE_PATH] ||\n      !logRecord.attributes[KEY_EMB_PAGE_ID]\n    ) {\n      const currentRoute = this._pageManager.getCurrentRoute();\n\n      if (currentRoute) {\n        logRecord.setAttribute(KEY_EMB_PAGE_PATH, currentRoute.path);\n        logRecord.setAttribute(\n          KEY_EMB_PAGE_ID,\n          this._pageManager.getCurrentPageId(),\n        );\n      }\n    }\n\n    const appSurfaceLabel = this._pageManager.getPageLabel();\n    if (appSurfaceLabel && !logRecord.attributes[KEY_APP_SURFACE_LABEL]) {\n      logRecord.setAttribute(KEY_APP_SURFACE_LABEL, appSurfaceLabel);\n    }\n  }\n\n  // no-op\n  public shutdown(): Promise<void> {\n    return Promise.resolve(undefined);\n  }\n}\n"],"mappings":";;;AASA,IAAa,yBAAb,MAAkE;CAChE;CAEA,YAAmB,EAAE,eAA2C;AAC9D,OAAK,eAAe;;CAItB,aAAmC;AACjC,SAAO,QAAQ,QAAQ,KAAA,EAAU;;CAGnC,OAAc,WAA+B;AAE3C,MACE,CAAC,UAAU,WAAA,uBACX,CAAC,UAAU,WAAA,mBACX;GACA,MAAM,eAAe,KAAK,aAAa,iBAAiB;AAExD,OAAI,cAAc;AAChB,cAAU,aAAaA,6BAAAA,mBAAmB,aAAa,KAAK;AAC5D,cAAU,aACRC,6BAAAA,iBACA,KAAK,aAAa,kBAAkB,CACrC;;;EAIL,MAAM,kBAAkB,KAAK,aAAa,cAAc;AACxD,MAAI,mBAAmB,CAAC,UAAU,WAAA,qBAChC,WAAU,aAAaC,6BAAAA,uBAAuB,gBAAgB;;CAKlE,WAAiC;AAC/B,SAAO,QAAQ,QAAQ,KAAA,EAAU"}