The getMapItemList method fetches a list of devices, then concurrently loads maps and their images for each device, building a final list of MapItemUi. Errors are safely handled using runCatching and supervisorScope to prevent one failure from cancelling the entire operation.