refactor: merge cyclicly imported files into library.py

This commit is contained in:
Travis Abendshien
2025-08-27 23:54:41 -07:00
parent 8e1ae81ec9
commit 218aa9e0d1
37 changed files with 1391 additions and 1455 deletions

View File

@@ -16,8 +16,7 @@ CWD = Path(__file__).parent
sys.path.insert(0, str(CWD.parent))
from tagstudio.core.constants import THUMB_CACHE_NAME, TS_FOLDER_NAME
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Entry, Tag
from tagstudio.core.library.alchemy.library import Entry, Library, Tag
from tagstudio.core.utils.types import unwrap
from tagstudio.qt.ts_qt import QtDriver

View File

@@ -4,8 +4,7 @@
from pathlib import Path
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Entry
from tagstudio.core.library.alchemy.library import Entry, Library
from tagstudio.core.utils.dupe_files import DupeRegistry
from tagstudio.core.utils.types import unwrap

View File

@@ -7,8 +7,7 @@ from collections.abc import Callable
from pytestqt.qtbot import QtBot
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Tag, TagAlias
from tagstudio.core.library.alchemy.library import Library, Tag, TagAlias
from tagstudio.core.utils.types import unwrap
from tagstudio.qt.modals.build_tag import BuildTagPanel, CustomTableItem
from tagstudio.qt.translations import Translations

View File

@@ -3,8 +3,7 @@
# Created for TagStudio: https://github.com/CyanVoxel/TagStudio
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Entry, Tag
from tagstudio.core.library.alchemy.library import Entry, Library, Tag
from tagstudio.core.utils.types import unwrap
from tagstudio.qt.controller.widgets.preview_panel_controller import PreviewPanel
from tagstudio.qt.ts_qt import QtDriver

View File

@@ -16,8 +16,7 @@ from PySide6.QtWidgets import QMenu, QMenuBar
from pytestqt.qtbot import QtBot
from tagstudio.core.enums import ShowFilepathOption
from tagstudio.core.library.alchemy.library import Library, LibraryStatus
from tagstudio.core.library.alchemy.models import Entry
from tagstudio.core.library.alchemy.library import Entry, Library, LibraryStatus
from tagstudio.core.utils.types import unwrap
from tagstudio.qt.controller.widgets.preview_panel_controller import PreviewPanel
from tagstudio.qt.modals.settings_panel import SettingsPanel

View File

@@ -3,8 +3,7 @@
# Created for TagStudio: https://github.com/CyanVoxel/TagStudio
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Entry
from tagstudio.core.library.alchemy.library import Entry, Library
from tagstudio.qt.controller.widgets.preview_panel_controller import PreviewPanel
from tagstudio.qt.ts_qt import QtDriver

View File

@@ -5,8 +5,7 @@
from pytestqt.qtbot import QtBot
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Tag
from tagstudio.core.library.alchemy.library import Library, Tag
from tagstudio.qt.modals.build_tag import BuildTagPanel
from tagstudio.qt.ts_qt import QtDriver

View File

@@ -12,12 +12,13 @@ import structlog
from tagstudio.core.enums import DefaultEnum, LibraryPrefs
from tagstudio.core.library.alchemy.enums import BrowsingState
from tagstudio.core.library.alchemy.fields import (
from tagstudio.core.library.alchemy.library import (
Entry,
FieldID,
Library,
Tag,
TextField,
_FieldID, # pyright: ignore[reportPrivateUsage]
)
from tagstudio.core.library.alchemy.library import Library
from tagstudio.core.library.alchemy.models import Entry, Tag
from tagstudio.core.utils.types import unwrap
logger = structlog.get_logger()
@@ -270,7 +271,7 @@ def test_mirror_entry_fields(library: Library, entry_full: Entry):
path=Path("xxx"),
fields=[
TextField(
type_key=_FieldID.NOTES.name,
type_key=FieldID.NOTES.name,
value="notes",
position=0,
)
@@ -292,8 +293,8 @@ def test_mirror_entry_fields(library: Library, entry_full: Entry):
# make sure fields are there after getting it from the library again
assert len(entry.fields) == 2
assert {x.type_key for x in entry.fields} == {
_FieldID.TITLE.name,
_FieldID.NOTES.name,
FieldID.TITLE.name,
FieldID.NOTES.name,
}
@@ -308,14 +309,14 @@ def test_merge_entries(library: Library):
folder=folder,
path=Path("a"),
fields=[
TextField(type_key=_FieldID.AUTHOR.name, value="Author McAuthorson", position=0),
TextField(type_key=_FieldID.DESCRIPTION.name, value="test description", position=2),
TextField(type_key=FieldID.AUTHOR.name, value="Author McAuthorson", position=0),
TextField(type_key=FieldID.DESCRIPTION.name, value="test description", position=2),
],
)
b = Entry(
folder=folder,
path=Path("b"),
fields=[TextField(type_key=_FieldID.NOTES.name, value="test note", position=1)],
fields=[TextField(type_key=FieldID.NOTES.name, value="test note", position=1)],
)
ids = library.add_entries([a, b])