(event: Event, data: ScopeData)
| 129 | } |
| 130 | |
| 131 | function applyDataToEvent(event: Event, data: ScopeData): void { |
| 132 | const { extra, tags, user, contexts, level, transactionName } = data; |
| 133 | |
| 134 | if (Object.keys(extra).length) { |
| 135 | event.extra = { ...extra, ...event.extra }; |
| 136 | } |
| 137 | |
| 138 | if (Object.keys(tags).length) { |
| 139 | event.tags = { ...tags, ...event.tags }; |
| 140 | } |
| 141 | |
| 142 | if (Object.keys(user).length) { |
| 143 | event.user = { ...user, ...event.user }; |
| 144 | } |
| 145 | |
| 146 | if (Object.keys(contexts).length) { |
| 147 | event.contexts = { ...contexts, ...event.contexts }; |
| 148 | } |
| 149 | |
| 150 | if (level) { |
| 151 | event.level = level; |
| 152 | } |
| 153 | |
| 154 | // transaction events get their `transaction` from the root span name |
| 155 | if (transactionName && event.type !== 'transaction') { |
| 156 | event.transaction = transactionName; |
| 157 | } |
| 158 | } |
| 159 | |
| 160 | function applyBreadcrumbsToEvent(event: Event, breadcrumbs: Breadcrumb[]): void { |
| 161 | const mergedBreadcrumbs = [...(event.breadcrumbs || []), ...breadcrumbs]; |
no test coverage detected