from mopidy import ext, config class Extension(ext.Extension): dist_name = "mopidy-smartplaylists" ext_name = "smartplaylists" version = "0.3.0" def get_default_config(self): return config.read(""" [smartplaylists] # Comma-separated popular genres to expose as top-level folders genres = rock,jazz,blues,pop,electronic,hiphop # Maximum number of tracks to return per genre max_tracks = 50 # Use case-insensitive matching for genres case_insensitive = true """) def get_config_schema(self): schema = super().get_config_schema() schema["genres"] = config.String(optional=True) schema["max_tracks"] = config.Integer(optional=True) schema["case_insensitive"] = config.Boolean(optional=True) return schema def setup(self, registry): from .backend import SmartPlaylistsBackend registry.add("backend", SmartPlaylistsBackend)