+class MoveEffectPropertyMap(MoveEffectProperty):
+ """Similar to `MoveEffectProperty`, but works on dict-like association
+ proxies.
+ """
+ def __get__(self, obj, cls):
+ prop = getattr(obj.move_effect, self.effect_column)
+ newdict = dict(prop)
+ for key in newdict:
+ newdict[key] = _markdownify_effect_text(obj, newdict[key])
+ return newdict