62 lines
2.2 KiB
Python
62 lines
2.2 KiB
Python
"""
|
|
Convenience module for SageUtils file and path management.
|
|
Exports commonly used functions and objects.
|
|
"""
|
|
|
|
from .path_manager import path_manager, file_manager
|
|
from .config_manager import ConfigManager
|
|
from .model_cache import SageCache, cache
|
|
|
|
# Convenience functions for path access
|
|
def get_user_path(filename: str):
|
|
"""Get user file path for a filename."""
|
|
return path_manager.get_user_file_path(filename)
|
|
|
|
def get_asset_path(filename: str):
|
|
"""Get asset file path for a filename."""
|
|
return path_manager.get_asset_file_path(filename)
|
|
|
|
def get_backup_path(filename: str):
|
|
"""Get backup file path for a filename."""
|
|
return path_manager.get_backup_file_path(filename)
|
|
|
|
def get_notes_path(filename: str = ""):
|
|
"""Get notes file path for a filename, or notes directory if no filename."""
|
|
if filename:
|
|
return path_manager.notes_path / filename
|
|
return path_manager.notes_path
|
|
|
|
def get_wildcard_path(filename: str = ""):
|
|
"""Get wildcard file path for a filename, or wildcards directory if no filename."""
|
|
if filename:
|
|
return path_manager.wildcard_path / filename
|
|
return path_manager.wildcard_path
|
|
|
|
# Convenience functions for file operations
|
|
def load_json(path, label="file"):
|
|
"""Load JSON from a file."""
|
|
return file_manager.load_json_file(path, label)
|
|
|
|
def save_json(path, data, label="file"):
|
|
"""Save JSON to a file."""
|
|
return file_manager.save_json_file(path, data, label)
|
|
|
|
# Not used.
|
|
def ensure_config_file(config_name, overwrite=False):
|
|
"""Ensure a config file exists in user directory."""
|
|
return file_manager.ensure_user_config_file(config_name, overwrite)
|
|
|
|
# Path shortcuts
|
|
sage_users_path = path_manager.sage_users_path
|
|
sage_backup_path = path_manager.backup_path
|
|
sage_wildcard_path = path_manager.wildcard_path
|
|
sage_notes_path = path_manager.notes_path
|
|
assets_path = path_manager.assets_path
|
|
|
|
__all__ = [
|
|
'path_manager', 'file_manager', 'ConfigManager', 'SageCache', 'cache',
|
|
'get_user_path', 'get_asset_path', 'get_backup_path', 'get_notes_path', 'get_wildcard_path',
|
|
'load_json', 'save_json', 'ensure_config_file',
|
|
'sage_users_path', 'sage_backup_path', 'sage_wildcard_path', 'sage_notes_path', 'assets_path'
|
|
]
|