Some checks failed
Tests / Go Tests (push) Has been cancelled
Tests / Python Tests (push) Has been cancelled
Tests / Integration Tests (push) Has been cancelled
Tests / Go Lint (push) Has been cancelled
Tests / Python Lint (push) Has been cancelled
Tests / Security Scan (push) Has been cancelled
Tests / All Checks Passed (push) Has been cancelled
Security Scanning / Secret Scanning (push) Has been cancelled
Security Scanning / Dependency Vulnerability Scan (push) Has been cancelled
Security Scanning / Go Security Scan (push) Has been cancelled
Security Scanning / Python Security Scan (push) Has been cancelled
Security Scanning / Node.js Security Scan (push) Has been cancelled
Security Scanning / Docker Image Security (push) Has been cancelled
Security Scanning / Security Summary (push) Has been cancelled
CI/CD Pipeline / Go Tests (push) Has been cancelled
CI/CD Pipeline / Python Tests (push) Has been cancelled
CI/CD Pipeline / Website Tests (push) Has been cancelled
CI/CD Pipeline / Linting (push) Has been cancelled
CI/CD Pipeline / Security Scan (push) Has been cancelled
CI/CD Pipeline / Docker Build & Push (push) Has been cancelled
CI/CD Pipeline / Integration Tests (push) Has been cancelled
CI/CD Pipeline / Deploy to Staging (push) Has been cancelled
CI/CD Pipeline / Deploy to Production (push) Has been cancelled
CI/CD Pipeline / CI Summary (push) Has been cancelled
ci/woodpecker/manual/build-ci-image Pipeline was successful
ci/woodpecker/manual/main Pipeline failed
All services: admin-v2, studio-v2, website, ai-compliance-sdk, consent-service, klausur-service, voice-service, and infrastructure. Large PDFs and compiled binaries excluded via .gitignore.
81 lines
2.1 KiB
Python
81 lines
2.1 KiB
Python
# Klausur-Service Services Package
|
|
|
|
# Grading Services
|
|
from .grading_service import (
|
|
calculate_grade_points,
|
|
calculate_raw_points,
|
|
)
|
|
|
|
# Authentication Services
|
|
from .auth_service import (
|
|
get_current_user,
|
|
)
|
|
|
|
# EH Audit Services
|
|
from .eh_service import (
|
|
log_audit,
|
|
log_eh_audit,
|
|
)
|
|
|
|
# OCR Services - Lazy imports (require PIL/cv2 which may not be installed)
|
|
# These are imported on-demand when actually used
|
|
def __getattr__(name):
|
|
"""Lazy import for optional image processing modules."""
|
|
_handwriting_exports = {
|
|
'detect_handwriting', 'detect_handwriting_regions',
|
|
'mask_to_png', 'DetectionResult'
|
|
}
|
|
_inpainting_exports = {
|
|
'inpaint_image', 'inpaint_opencv_telea', 'inpaint_opencv_ns',
|
|
'remove_handwriting', 'check_lama_available',
|
|
'InpaintingMethod', 'InpaintingResult'
|
|
}
|
|
_layout_exports = {
|
|
'reconstruct_layout', 'layout_to_fabric_json', 'reconstruct_and_clean',
|
|
'LayoutResult', 'TextElement', 'ElementType'
|
|
}
|
|
|
|
if name in _handwriting_exports:
|
|
from . import handwriting_detection
|
|
return getattr(handwriting_detection, name)
|
|
elif name in _inpainting_exports:
|
|
from . import inpainting_service
|
|
return getattr(inpainting_service, name)
|
|
elif name in _layout_exports:
|
|
from . import layout_reconstruction_service
|
|
return getattr(layout_reconstruction_service, name)
|
|
|
|
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
|
|
|
|
|
__all__ = [
|
|
# Grading
|
|
'calculate_grade_points',
|
|
'calculate_raw_points',
|
|
# Authentication
|
|
'get_current_user',
|
|
# Audit
|
|
'log_audit',
|
|
'log_eh_audit',
|
|
# Handwriting Detection (lazy)
|
|
'detect_handwriting',
|
|
'detect_handwriting_regions',
|
|
'mask_to_png',
|
|
'DetectionResult',
|
|
# Inpainting (lazy)
|
|
'inpaint_image',
|
|
'inpaint_opencv_telea',
|
|
'inpaint_opencv_ns',
|
|
'remove_handwriting',
|
|
'check_lama_available',
|
|
'InpaintingMethod',
|
|
'InpaintingResult',
|
|
# Layout Reconstruction (lazy)
|
|
'reconstruct_layout',
|
|
'layout_to_fabric_json',
|
|
'reconstruct_and_clean',
|
|
'LayoutResult',
|
|
'TextElement',
|
|
'ElementType',
|
|
]
|