static Offset? parseOffset(Object? source) { if (source is! Map || source.isEmpty) return null; return Offset( parseDouble(source['dx']) ?? 0, parseDouble(source['dy']) ?? 0, ); }