| 121 | } |
| 122 | |
| 123 | fl::url resolve_asset(const asset_ref& a) FL_NOEXCEPT { |
| 124 | if (!a) { |
| 125 | return fl::url(); |
| 126 | } |
| 127 | const fl::string_view p = a.path(); |
| 128 | |
| 129 | // 1. Registry always wins. On WASM this is populated by generated code |
| 130 | // from the asset scanner; on host/stub tests may populate it manually. |
| 131 | fl::url fromRegistry = asset_detail::lookup_registry(p); |
| 132 | if (fromRegistry.isValid()) { |
| 133 | return fromRegistry; |
| 134 | } |
| 135 | |
| 136 | // 2. Host/stub: fall back to filesystem probe + sibling .lnk. |
| 137 | #if defined(FASTLED_TESTING) || defined(FL_IS_STUB) |
| 138 | return asset_detail::resolve_host(p); |
| 139 | #else |
| 140 | // 3. Other platforms (WASM without manifest, ESP32 v1): no fallback. |
| 141 | // TODO(#2284): ESP32 LittleFS / SD-card resolution. |
| 142 | return fl::url(); |
| 143 | #endif |
| 144 | } |
| 145 | |
| 146 | } // namespace fl |
no test coverage detected