color_tools.importers.base
Base contract and shared color construction for palette importers.
- class color_tools.importers.base.ImporterDependency(package, import_name, extra=None)[source]
Bases:
objectOptional third-party dependency required by an importer.
- class color_tools.importers.base.ImporterMetadata(name, description, file_extensions, is_binary=False, dependencies=())[source]
Bases:
objectMetadata describing an importer’s format and requirements.
- Parameters:
- dependencies: tuple[ImporterDependency, ...]
- exception color_tools.importers.base.MissingImporterDependencyError(importer_name, dependencies)[source]
Bases:
RuntimeErrorRaised when an importer requires unavailable optional dependencies.
- Parameters:
importer_name (str)
dependencies (tuple[ImporterDependency, ...])
- Return type:
None
- class color_tools.importers.base.PaletteImporter[source]
Bases:
ImporterBaseBase class for importers that produce palette transfer data.
Concrete importers provide format metadata and implement
_import_palette_impl(). Shared infrastructure validates paths, checks optional dependencies, and performs extension/content detection.- import_palette(input_path)[source]
Import a validated palette file.
- Parameters:
- Return type:
- Returns:
Imported colors and palette metadata.
- Raises:
FileNotFoundError – If the supplied file does not exist.
IsADirectoryError – If the supplied path is a directory.
MissingImporterDependencyError – If a dependency is unavailable.