|
1 | 1 | @_spi(RiveExperimental) import RiveRuntime |
2 | 2 |
|
| 3 | +private func tagName(_ tag: RiveRuntime.RiveLog.Tag) -> String { |
| 4 | + switch tag { |
| 5 | + case .rive: return "Rive" |
| 6 | + case .worker: return "Worker" |
| 7 | + case .file: return "File" |
| 8 | + case .artboard: return "Artboard" |
| 9 | + case .stateMachine: return "StateMachine" |
| 10 | + case .viewModelInstance: return "ViewModelInstance" |
| 11 | + case .image: return "Image" |
| 12 | + case .font: return "Font" |
| 13 | + case .audio: return "Audio" |
| 14 | + case .view: return "RiveUIView" |
| 15 | + case .custom(let name): return name |
| 16 | + @unknown default: return "Unknown" |
| 17 | + } |
| 18 | +} |
| 19 | + |
3 | 20 | /// Implements the Rive iOS SDK's `RiveLog.Logger` protocol and forwards all |
4 | 21 | /// C++ runtime logs through our bridge-level `RiveLog` utility, giving JS |
5 | 22 | /// visibility into file, artboard, state machine, and view model diagnostics. |
6 | 23 | final class RiveRuntimeLogger: RiveRuntime.RiveLog.Logger, @unchecked Sendable { |
7 | 24 | func notice(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
8 | | - RiveLog.i(tag.category, message()) |
| 25 | + RiveLog.i(tagName(tag), message()) |
9 | 26 | } |
10 | 27 |
|
11 | 28 | func debug(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
12 | | - RiveLog.d(tag.category, message()) |
| 29 | + RiveLog.d(tagName(tag), message()) |
13 | 30 | } |
14 | 31 |
|
15 | 32 | func trace(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
16 | | - RiveLog.d(tag.category, message()) |
| 33 | + RiveLog.d(tagName(tag), message()) |
17 | 34 | } |
18 | 35 |
|
19 | 36 | func info(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
20 | | - RiveLog.i(tag.category, message()) |
| 37 | + RiveLog.i(tagName(tag), message()) |
21 | 38 | } |
22 | 39 |
|
23 | 40 | func error(tag: RiveRuntime.RiveLog.Tag, error: (any Error)?, _ message: @escaping () -> String) { |
24 | 41 | let suffix = error.map { " (\($0.localizedDescription))" } ?? "" |
25 | | - RiveLog.e(tag.category, "\(message())\(suffix)") |
| 42 | + RiveLog.e(tagName(tag), "\(message())\(suffix)") |
26 | 43 | } |
27 | 44 |
|
28 | 45 | func warning(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
29 | | - RiveLog.w(tag.category, message()) |
| 46 | + RiveLog.w(tagName(tag), message()) |
30 | 47 | } |
31 | 48 |
|
32 | 49 | func fault(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
33 | | - RiveLog.e(tag.category, message()) |
| 50 | + RiveLog.e(tagName(tag), message()) |
34 | 51 | } |
35 | 52 |
|
36 | 53 | func critical(tag: RiveRuntime.RiveLog.Tag, _ message: @escaping () -> String) { |
37 | | - RiveLog.e(tag.category, message()) |
| 54 | + RiveLog.e(tagName(tag), message()) |
38 | 55 | } |
39 | 56 | } |
0 commit comments