klausur-service (7 monoliths): - grid_editor_helpers.py (1,737 → 5 files: columns, filters, headers, zones) - cv_cell_grid.py (1,675 → 7 files: build, legacy, streaming, merge, vocab) - worksheet_editor_api.py (1,305 → 4 files: models, AI, reconstruct, routes) - legal_corpus_ingestion.py (1,280 → 3 files: registry, chunking, ingestion) - cv_review.py (1,248 → 4 files: pipeline, spell, LLM, barrel) - cv_preprocessing.py (1,166 → 3 files: deskew, dewarp, barrel) - rbac.py, admin_api.py, routes/eh.py remain (next batch) backend-lehrer (1 monolith): - classroom_engine/repository.py (1,705 → 7 files by domain) All re-export barrels preserve backward compatibility. Zero import errors verified. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
59 lines
1.9 KiB
Python
59 lines
1.9 KiB
Python
"""
|
|
Grid Editor helper functions — barrel re-export module.
|
|
|
|
This file re-exports all public symbols from the split sub-modules
|
|
so that existing ``from grid_editor_helpers import ...`` statements
|
|
continue to work without changes.
|
|
|
|
Sub-modules:
|
|
- grid_editor_columns — column detection, cross-column splitting, marker merging
|
|
- grid_editor_filters — word/zone filtering, border ghosts, decorative margins
|
|
- grid_editor_headers — header/heading detection, colspan detection
|
|
- grid_editor_zones — vertical dividers, zone splitting/merging, zone grid building
|
|
|
|
Lizenz: Apache 2.0 (kommerziell nutzbar)
|
|
DATENSCHUTZ: Alle Verarbeitung erfolgt lokal.
|
|
"""
|
|
|
|
# --- Re-export: columns ---------------------------------------------------
|
|
from grid_editor_columns import ( # noqa: F401
|
|
_is_recognized_word,
|
|
_split_cross_column_words,
|
|
_cluster_columns_by_alignment,
|
|
_MARKER_CHARS,
|
|
_merge_inline_marker_columns,
|
|
)
|
|
|
|
# --- Re-export: filters ----------------------------------------------------
|
|
from grid_editor_filters import ( # noqa: F401
|
|
_filter_border_strip_words,
|
|
_GRID_GHOST_CHARS,
|
|
_filter_border_ghosts,
|
|
_flatten_word_boxes,
|
|
_words_in_zone,
|
|
_get_content_bounds,
|
|
_filter_decorative_margin,
|
|
_filter_footer_words,
|
|
_filter_header_junk,
|
|
)
|
|
|
|
# --- Re-export: headers ----------------------------------------------------
|
|
from grid_editor_headers import ( # noqa: F401
|
|
_detect_heading_rows_by_color,
|
|
_detect_heading_rows_by_single_cell,
|
|
_detect_header_rows,
|
|
_detect_colspan_cells,
|
|
)
|
|
|
|
# --- Re-export: zones -------------------------------------------------------
|
|
from grid_editor_zones import ( # noqa: F401
|
|
_PIPE_RE_VSPLIT,
|
|
_detect_vertical_dividers,
|
|
_split_zone_at_vertical_dividers,
|
|
_merge_content_zones_across_boxes,
|
|
_build_zone_grid,
|
|
)
|
|
|
|
# --- Re-export from cv_words_first (used by cv_box_layout.py) ---------------
|
|
from cv_words_first import _cluster_rows # noqa: F401
|