/
/
/
1"""WebDAV filesystem provider for Music Assistant."""
2
3from __future__ import annotations
4
5from typing import TYPE_CHECKING
6
7from music_assistant_models.enums import ProviderFeature
8
9from .provider import WebDAVFileSystemProvider
10
11if TYPE_CHECKING:
12 from music_assistant_models.config_entries import ProviderConfig
13 from music_assistant_models.provider import ProviderManifest
14
15 from music_assistant.mass import MusicAssistant
16 from music_assistant.models import ProviderInstanceType
17
18
19# Supported features
20SUPPORTED_FEATURES = {
21 ProviderFeature.BROWSE,
22 ProviderFeature.SEARCH,
23}
24
25
26async def setup(
27 mass: MusicAssistant, manifest: ProviderManifest, config: ProviderConfig
28) -> ProviderInstanceType:
29 """Initialize provider(instance) with given configuration."""
30 prov = WebDAVFileSystemProvider(mass, manifest, config)
31 await prov.handle_async_init()
32 return prov
33