Drop lots of legacy code. Support Python 3.7-3.11.
[librarian.git] / src / librarian / builders / __init__.py
index fcd9194..e47c557 100644 (file)
@@ -1,14 +1,26 @@
+# This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
+#
+from collections import OrderedDict
 from .txt import TxtBuilder
-from .html import HtmlBuilder
+from .html import HtmlBuilder, SnippetHtmlBuilder, StandaloneHtmlBuilder, DaisyHtmlBuilder
 from .sanitize import Sanitizer
+from .daisy import DaisyBuilder
+from .epub import EpubBuilder
+from .mobi import MobiBuilder
+from .pdf import PdfBuilder
 
 
-builders = [
-    TxtBuilder,
-    HtmlBuilder,
-    Sanitizer,
-]
+builders = OrderedDict([
+    ("txt", TxtBuilder),
+    ("html", HtmlBuilder),
+    ("html-snippet", SnippetHtmlBuilder),
+    ("html-standalone", StandaloneHtmlBuilder),
+    ("html-daisy", DaisyHtmlBuilder),
+    ("daisy", DaisyBuilder),
+    ("sanitizer", Sanitizer),
 
-
-def get_builder_class(builder_id):
-    return next(b for b in builders if b.identifier == builder_id)
+    ("epub", EpubBuilder),
+    ("mobi", MobiBuilder),
+    ("pdf", PdfBuilder),
+])