unrealon 1.0.9__py3-none-any.whl → 1.1.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- unrealon/__init__.py +23 -21
- unrealon-1.1.1.dist-info/METADATA +722 -0
- unrealon-1.1.1.dist-info/RECORD +82 -0
- {unrealon-1.0.9.dist-info → unrealon-1.1.1.dist-info}/WHEEL +1 -1
- unrealon-1.1.1.dist-info/entry_points.txt +9 -0
- {unrealon-1.0.9.dist-info → unrealon-1.1.1.dist-info/licenses}/LICENSE +1 -1
- unrealon_bridge/__init__.py +114 -0
- unrealon_bridge/cli.py +316 -0
- unrealon_bridge/client/__init__.py +93 -0
- unrealon_bridge/client/base.py +78 -0
- unrealon_bridge/client/commands.py +89 -0
- unrealon_bridge/client/connection.py +90 -0
- unrealon_bridge/client/events.py +65 -0
- unrealon_bridge/client/health.py +38 -0
- unrealon_bridge/client/html_parser.py +146 -0
- unrealon_bridge/client/logging.py +139 -0
- unrealon_bridge/client/proxy.py +70 -0
- unrealon_bridge/client/scheduler.py +450 -0
- unrealon_bridge/client/session.py +70 -0
- unrealon_bridge/configs/__init__.py +14 -0
- unrealon_bridge/configs/bridge_config.py +212 -0
- unrealon_bridge/configs/bridge_config.yaml +39 -0
- unrealon_bridge/models/__init__.py +138 -0
- unrealon_bridge/models/base.py +28 -0
- unrealon_bridge/models/command.py +41 -0
- unrealon_bridge/models/events.py +40 -0
- unrealon_bridge/models/html_parser.py +79 -0
- unrealon_bridge/models/logging.py +55 -0
- unrealon_bridge/models/parser.py +63 -0
- unrealon_bridge/models/proxy.py +41 -0
- unrealon_bridge/models/requests.py +95 -0
- unrealon_bridge/models/responses.py +88 -0
- unrealon_bridge/models/scheduler.py +592 -0
- unrealon_bridge/models/session.py +28 -0
- unrealon_bridge/server/__init__.py +91 -0
- unrealon_bridge/server/base.py +171 -0
- unrealon_bridge/server/handlers/__init__.py +23 -0
- unrealon_bridge/server/handlers/command.py +110 -0
- unrealon_bridge/server/handlers/html_parser.py +139 -0
- unrealon_bridge/server/handlers/logging.py +95 -0
- unrealon_bridge/server/handlers/parser.py +95 -0
- unrealon_bridge/server/handlers/proxy.py +75 -0
- unrealon_bridge/server/handlers/scheduler.py +545 -0
- unrealon_bridge/server/handlers/session.py +66 -0
- unrealon_browser/__init__.py +61 -18
- unrealon_browser/{src/cli → cli}/browser_cli.py +6 -13
- unrealon_browser/{src/cli → cli}/cookies_cli.py +5 -1
- unrealon_browser/{src/core → core}/browser_manager.py +2 -2
- unrealon_browser/{src/managers → managers}/captcha.py +1 -1
- unrealon_browser/{src/managers → managers}/cookies.py +1 -1
- unrealon_browser/managers/logger_bridge.py +231 -0
- unrealon_browser/{src/managers → managers}/profile.py +1 -1
- unrealon_driver/__init__.py +73 -19
- unrealon_driver/browser/__init__.py +8 -0
- unrealon_driver/browser/config.py +74 -0
- unrealon_driver/browser/manager.py +416 -0
- unrealon_driver/exceptions.py +28 -0
- unrealon_driver/parser/__init__.py +55 -0
- unrealon_driver/parser/cli_manager.py +141 -0
- unrealon_driver/parser/daemon_manager.py +227 -0
- unrealon_driver/parser/managers/__init__.py +46 -0
- unrealon_driver/parser/managers/browser.py +51 -0
- unrealon_driver/parser/managers/config.py +281 -0
- unrealon_driver/parser/managers/error.py +412 -0
- unrealon_driver/parser/managers/html.py +732 -0
- unrealon_driver/parser/managers/logging.py +609 -0
- unrealon_driver/parser/managers/result.py +321 -0
- unrealon_driver/parser/parser_manager.py +628 -0
- unrealon/sdk_config.py +0 -88
- unrealon-1.0.9.dist-info/METADATA +0 -810
- unrealon-1.0.9.dist-info/RECORD +0 -246
- unrealon_browser/pyproject.toml +0 -182
- unrealon_browser/src/__init__.py +0 -62
- unrealon_browser/src/managers/logger_bridge.py +0 -395
- unrealon_driver/README.md +0 -204
- unrealon_driver/pyproject.toml +0 -187
- unrealon_driver/src/__init__.py +0 -90
- unrealon_driver/src/cli/__init__.py +0 -10
- unrealon_driver/src/cli/main.py +0 -66
- unrealon_driver/src/cli/simple.py +0 -510
- unrealon_driver/src/config/__init__.py +0 -11
- unrealon_driver/src/config/auto_config.py +0 -478
- unrealon_driver/src/core/__init__.py +0 -18
- unrealon_driver/src/core/exceptions.py +0 -289
- unrealon_driver/src/core/parser.py +0 -638
- unrealon_driver/src/dto/__init__.py +0 -66
- unrealon_driver/src/dto/cli.py +0 -119
- unrealon_driver/src/dto/config.py +0 -18
- unrealon_driver/src/dto/events.py +0 -237
- unrealon_driver/src/dto/execution.py +0 -313
- unrealon_driver/src/dto/services.py +0 -311
- unrealon_driver/src/execution/__init__.py +0 -23
- unrealon_driver/src/execution/daemon_mode.py +0 -317
- unrealon_driver/src/execution/interactive_mode.py +0 -88
- unrealon_driver/src/execution/modes.py +0 -45
- unrealon_driver/src/execution/scheduled_mode.py +0 -209
- unrealon_driver/src/execution/test_mode.py +0 -250
- unrealon_driver/src/logging/__init__.py +0 -24
- unrealon_driver/src/logging/driver_logger.py +0 -512
- unrealon_driver/src/services/__init__.py +0 -24
- unrealon_driver/src/services/browser_service.py +0 -726
- unrealon_driver/src/services/llm/__init__.py +0 -15
- unrealon_driver/src/services/llm/browser_llm_service.py +0 -363
- unrealon_driver/src/services/llm/llm.py +0 -195
- unrealon_driver/src/services/logger_service.py +0 -232
- unrealon_driver/src/services/metrics_service.py +0 -185
- unrealon_driver/src/services/scheduler_service.py +0 -489
- unrealon_driver/src/services/websocket_service.py +0 -362
- unrealon_driver/src/utils/__init__.py +0 -16
- unrealon_driver/src/utils/service_factory.py +0 -317
- unrealon_driver/src/utils/time_formatter.py +0 -338
- unrealon_llm/README.md +0 -44
- unrealon_llm/__init__.py +0 -26
- unrealon_llm/pyproject.toml +0 -154
- unrealon_llm/src/__init__.py +0 -228
- unrealon_llm/src/cli/__init__.py +0 -0
- unrealon_llm/src/core/__init__.py +0 -11
- unrealon_llm/src/core/smart_client.py +0 -438
- unrealon_llm/src/dto/__init__.py +0 -155
- unrealon_llm/src/dto/models/__init__.py +0 -0
- unrealon_llm/src/dto/models/config.py +0 -343
- unrealon_llm/src/dto/models/core.py +0 -328
- unrealon_llm/src/dto/models/enums.py +0 -123
- unrealon_llm/src/dto/models/html_analysis.py +0 -345
- unrealon_llm/src/dto/models/statistics.py +0 -473
- unrealon_llm/src/dto/models/translation.py +0 -383
- unrealon_llm/src/dto/models/type_conversion.py +0 -462
- unrealon_llm/src/dto/schemas/__init__.py +0 -0
- unrealon_llm/src/exceptions.py +0 -392
- unrealon_llm/src/llm_config/__init__.py +0 -20
- unrealon_llm/src/llm_config/logging_config.py +0 -178
- unrealon_llm/src/llm_logging/__init__.py +0 -42
- unrealon_llm/src/llm_logging/llm_events.py +0 -107
- unrealon_llm/src/llm_logging/llm_logger.py +0 -466
- unrealon_llm/src/managers/__init__.py +0 -15
- unrealon_llm/src/managers/cache_manager.py +0 -67
- unrealon_llm/src/managers/cost_manager.py +0 -107
- unrealon_llm/src/managers/request_manager.py +0 -298
- unrealon_llm/src/modules/__init__.py +0 -0
- unrealon_llm/src/modules/html_processor/__init__.py +0 -25
- unrealon_llm/src/modules/html_processor/base_processor.py +0 -415
- unrealon_llm/src/modules/html_processor/details_processor.py +0 -85
- unrealon_llm/src/modules/html_processor/listing_processor.py +0 -91
- unrealon_llm/src/modules/html_processor/models/__init__.py +0 -20
- unrealon_llm/src/modules/html_processor/models/processing_models.py +0 -40
- unrealon_llm/src/modules/html_processor/models/universal_model.py +0 -56
- unrealon_llm/src/modules/html_processor/processor.py +0 -102
- unrealon_llm/src/modules/llm/__init__.py +0 -0
- unrealon_llm/src/modules/translator/__init__.py +0 -0
- unrealon_llm/src/provider.py +0 -116
- unrealon_llm/src/utils/__init__.py +0 -95
- unrealon_llm/src/utils/common.py +0 -64
- unrealon_llm/src/utils/data_extractor.py +0 -188
- unrealon_llm/src/utils/html_cleaner.py +0 -767
- unrealon_llm/src/utils/language_detector.py +0 -308
- unrealon_llm/src/utils/models_cache.py +0 -592
- unrealon_llm/src/utils/smart_counter.py +0 -229
- unrealon_llm/src/utils/token_counter.py +0 -189
- unrealon_sdk/README.md +0 -25
- unrealon_sdk/__init__.py +0 -30
- unrealon_sdk/pyproject.toml +0 -231
- unrealon_sdk/src/__init__.py +0 -150
- unrealon_sdk/src/cli/__init__.py +0 -12
- unrealon_sdk/src/cli/commands/__init__.py +0 -22
- unrealon_sdk/src/cli/commands/benchmark.py +0 -42
- unrealon_sdk/src/cli/commands/diagnostics.py +0 -573
- unrealon_sdk/src/cli/commands/health.py +0 -46
- unrealon_sdk/src/cli/commands/integration.py +0 -498
- unrealon_sdk/src/cli/commands/reports.py +0 -43
- unrealon_sdk/src/cli/commands/security.py +0 -36
- unrealon_sdk/src/cli/commands/server.py +0 -483
- unrealon_sdk/src/cli/commands/servers.py +0 -56
- unrealon_sdk/src/cli/commands/tests.py +0 -55
- unrealon_sdk/src/cli/main.py +0 -126
- unrealon_sdk/src/cli/utils/reporter.py +0 -519
- unrealon_sdk/src/clients/openapi.yaml +0 -3347
- unrealon_sdk/src/clients/python_http/__init__.py +0 -3
- unrealon_sdk/src/clients/python_http/api_config.py +0 -228
- unrealon_sdk/src/clients/python_http/models/BaseModel.py +0 -12
- unrealon_sdk/src/clients/python_http/models/BroadcastDeliveryStats.py +0 -33
- unrealon_sdk/src/clients/python_http/models/BroadcastMessage.py +0 -17
- unrealon_sdk/src/clients/python_http/models/BroadcastMessageRequest.py +0 -35
- unrealon_sdk/src/clients/python_http/models/BroadcastPriority.py +0 -10
- unrealon_sdk/src/clients/python_http/models/BroadcastResponse.py +0 -21
- unrealon_sdk/src/clients/python_http/models/BroadcastResultResponse.py +0 -33
- unrealon_sdk/src/clients/python_http/models/BroadcastTarget.py +0 -11
- unrealon_sdk/src/clients/python_http/models/ConnectionStats.py +0 -27
- unrealon_sdk/src/clients/python_http/models/ConnectionsResponse.py +0 -21
- unrealon_sdk/src/clients/python_http/models/DeveloperMessageResponse.py +0 -23
- unrealon_sdk/src/clients/python_http/models/ErrorResponse.py +0 -25
- unrealon_sdk/src/clients/python_http/models/HTTPValidationError.py +0 -16
- unrealon_sdk/src/clients/python_http/models/HealthResponse.py +0 -23
- unrealon_sdk/src/clients/python_http/models/HealthStatus.py +0 -33
- unrealon_sdk/src/clients/python_http/models/LogLevel.py +0 -10
- unrealon_sdk/src/clients/python_http/models/LoggingRequest.py +0 -27
- unrealon_sdk/src/clients/python_http/models/LoggingResponse.py +0 -23
- unrealon_sdk/src/clients/python_http/models/MaintenanceMode.py +0 -9
- unrealon_sdk/src/clients/python_http/models/MaintenanceModeRequest.py +0 -33
- unrealon_sdk/src/clients/python_http/models/MaintenanceStatusResponse.py +0 -39
- unrealon_sdk/src/clients/python_http/models/ParserCommandRequest.py +0 -25
- unrealon_sdk/src/clients/python_http/models/ParserMessageResponse.py +0 -21
- unrealon_sdk/src/clients/python_http/models/ParserRegistrationRequest.py +0 -28
- unrealon_sdk/src/clients/python_http/models/ParserRegistrationResponse.py +0 -25
- unrealon_sdk/src/clients/python_http/models/ParserType.py +0 -10
- unrealon_sdk/src/clients/python_http/models/ProxyBlockRequest.py +0 -19
- unrealon_sdk/src/clients/python_http/models/ProxyEndpointResponse.py +0 -20
- unrealon_sdk/src/clients/python_http/models/ProxyListResponse.py +0 -19
- unrealon_sdk/src/clients/python_http/models/ProxyProvider.py +0 -10
- unrealon_sdk/src/clients/python_http/models/ProxyPurchaseRequest.py +0 -25
- unrealon_sdk/src/clients/python_http/models/ProxyResponse.py +0 -47
- unrealon_sdk/src/clients/python_http/models/ProxyRotationRequest.py +0 -23
- unrealon_sdk/src/clients/python_http/models/ProxyStatus.py +0 -10
- unrealon_sdk/src/clients/python_http/models/ProxyUsageRequest.py +0 -19
- unrealon_sdk/src/clients/python_http/models/ProxyUsageStatsResponse.py +0 -26
- unrealon_sdk/src/clients/python_http/models/ServiceRegistrationDto.py +0 -23
- unrealon_sdk/src/clients/python_http/models/ServiceStatsResponse.py +0 -31
- unrealon_sdk/src/clients/python_http/models/SessionStartRequest.py +0 -23
- unrealon_sdk/src/clients/python_http/models/SuccessResponse.py +0 -25
- unrealon_sdk/src/clients/python_http/models/SystemNotificationResponse.py +0 -23
- unrealon_sdk/src/clients/python_http/models/ValidationError.py +0 -18
- unrealon_sdk/src/clients/python_http/models/ValidationErrorResponse.py +0 -21
- unrealon_sdk/src/clients/python_http/models/WebSocketMetrics.py +0 -21
- unrealon_sdk/src/clients/python_http/models/__init__.py +0 -44
- unrealon_sdk/src/clients/python_http/services/None_service.py +0 -35
- unrealon_sdk/src/clients/python_http/services/ParserManagement_service.py +0 -190
- unrealon_sdk/src/clients/python_http/services/ProxyManagement_service.py +0 -289
- unrealon_sdk/src/clients/python_http/services/SocketLogging_service.py +0 -187
- unrealon_sdk/src/clients/python_http/services/SystemHealth_service.py +0 -119
- unrealon_sdk/src/clients/python_http/services/WebSocketAPI_service.py +0 -198
- unrealon_sdk/src/clients/python_http/services/__init__.py +0 -0
- unrealon_sdk/src/clients/python_http/services/admin_service.py +0 -125
- unrealon_sdk/src/clients/python_http/services/async_None_service.py +0 -35
- unrealon_sdk/src/clients/python_http/services/async_ParserManagement_service.py +0 -190
- unrealon_sdk/src/clients/python_http/services/async_ProxyManagement_service.py +0 -289
- unrealon_sdk/src/clients/python_http/services/async_SocketLogging_service.py +0 -189
- unrealon_sdk/src/clients/python_http/services/async_SystemHealth_service.py +0 -123
- unrealon_sdk/src/clients/python_http/services/async_WebSocketAPI_service.py +0 -200
- unrealon_sdk/src/clients/python_http/services/async_admin_service.py +0 -125
- unrealon_sdk/src/clients/python_websocket/__init__.py +0 -28
- unrealon_sdk/src/clients/python_websocket/client.py +0 -490
- unrealon_sdk/src/clients/python_websocket/events.py +0 -732
- unrealon_sdk/src/clients/python_websocket/example.py +0 -136
- unrealon_sdk/src/clients/python_websocket/types.py +0 -871
- unrealon_sdk/src/core/__init__.py +0 -64
- unrealon_sdk/src/core/client.py +0 -556
- unrealon_sdk/src/core/config.py +0 -465
- unrealon_sdk/src/core/exceptions.py +0 -239
- unrealon_sdk/src/core/metadata.py +0 -191
- unrealon_sdk/src/core/models.py +0 -142
- unrealon_sdk/src/core/types.py +0 -68
- unrealon_sdk/src/dto/__init__.py +0 -268
- unrealon_sdk/src/dto/authentication.py +0 -108
- unrealon_sdk/src/dto/cache.py +0 -208
- unrealon_sdk/src/dto/common.py +0 -19
- unrealon_sdk/src/dto/concurrency.py +0 -393
- unrealon_sdk/src/dto/events.py +0 -108
- unrealon_sdk/src/dto/health.py +0 -339
- unrealon_sdk/src/dto/load_balancing.py +0 -336
- unrealon_sdk/src/dto/logging.py +0 -230
- unrealon_sdk/src/dto/performance.py +0 -165
- unrealon_sdk/src/dto/rate_limiting.py +0 -295
- unrealon_sdk/src/dto/resource_pooling.py +0 -128
- unrealon_sdk/src/dto/structured_logging.py +0 -112
- unrealon_sdk/src/dto/task_scheduling.py +0 -121
- unrealon_sdk/src/dto/websocket.py +0 -55
- unrealon_sdk/src/enterprise/__init__.py +0 -59
- unrealon_sdk/src/enterprise/authentication.py +0 -401
- unrealon_sdk/src/enterprise/cache_manager.py +0 -578
- unrealon_sdk/src/enterprise/error_recovery.py +0 -494
- unrealon_sdk/src/enterprise/event_system.py +0 -549
- unrealon_sdk/src/enterprise/health_monitor.py +0 -747
- unrealon_sdk/src/enterprise/load_balancer.py +0 -964
- unrealon_sdk/src/enterprise/logging/__init__.py +0 -68
- unrealon_sdk/src/enterprise/logging/cleanup.py +0 -156
- unrealon_sdk/src/enterprise/logging/development.py +0 -744
- unrealon_sdk/src/enterprise/logging/service.py +0 -410
- unrealon_sdk/src/enterprise/multithreading_manager.py +0 -853
- unrealon_sdk/src/enterprise/performance_monitor.py +0 -539
- unrealon_sdk/src/enterprise/proxy_manager.py +0 -696
- unrealon_sdk/src/enterprise/rate_limiter.py +0 -652
- unrealon_sdk/src/enterprise/resource_pool.py +0 -763
- unrealon_sdk/src/enterprise/task_scheduler.py +0 -709
- unrealon_sdk/src/internal/__init__.py +0 -10
- unrealon_sdk/src/internal/command_router.py +0 -497
- unrealon_sdk/src/internal/connection_manager.py +0 -397
- unrealon_sdk/src/internal/http_client.py +0 -446
- unrealon_sdk/src/internal/websocket_client.py +0 -420
- unrealon_sdk/src/provider.py +0 -471
- unrealon_sdk/src/utils.py +0 -234
- /unrealon_browser/{src/cli → cli}/__init__.py +0 -0
- /unrealon_browser/{src/cli → cli}/interactive_mode.py +0 -0
- /unrealon_browser/{src/cli → cli}/main.py +0 -0
- /unrealon_browser/{src/core → core}/__init__.py +0 -0
- /unrealon_browser/{src/dto → dto}/__init__.py +0 -0
- /unrealon_browser/{src/dto → dto}/models/config.py +0 -0
- /unrealon_browser/{src/dto → dto}/models/core.py +0 -0
- /unrealon_browser/{src/dto → dto}/models/dataclasses.py +0 -0
- /unrealon_browser/{src/dto → dto}/models/detection.py +0 -0
- /unrealon_browser/{src/dto → dto}/models/enums.py +0 -0
- /unrealon_browser/{src/dto → dto}/models/statistics.py +0 -0
- /unrealon_browser/{src/managers → managers}/__init__.py +0 -0
- /unrealon_browser/{src/managers → managers}/stealth.py +0 -0
|
@@ -1,462 +0,0 @@
|
|
|
1
|
-
"""
|
|
2
|
-
LLM DTOs - Type Conversion Models
|
|
3
|
-
Data models for schema generation and type conversion
|
|
4
|
-
"""
|
|
5
|
-
|
|
6
|
-
from datetime import datetime
|
|
7
|
-
from typing import Any, Dict, List, Optional
|
|
8
|
-
|
|
9
|
-
from pydantic import BaseModel, ConfigDict, Field
|
|
10
|
-
|
|
11
|
-
from .enums import DataType, SchemaFormat
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
class FieldAnalysis(BaseModel):
|
|
15
|
-
"""Analysis of individual JSON field"""
|
|
16
|
-
|
|
17
|
-
model_config = ConfigDict(
|
|
18
|
-
title="Field Analysis",
|
|
19
|
-
description="Detailed analysis of individual data field",
|
|
20
|
-
validate_assignment=True,
|
|
21
|
-
extra="forbid"
|
|
22
|
-
)
|
|
23
|
-
|
|
24
|
-
field_name: str = Field(..., description="Field name")
|
|
25
|
-
detected_type: DataType = Field(..., description="Detected data type")
|
|
26
|
-
type_confidence: float = Field(
|
|
27
|
-
...,
|
|
28
|
-
ge=0,
|
|
29
|
-
le=1,
|
|
30
|
-
description="Type detection confidence"
|
|
31
|
-
)
|
|
32
|
-
|
|
33
|
-
# Statistics
|
|
34
|
-
sample_values: List[Any] = Field(
|
|
35
|
-
default_factory=list,
|
|
36
|
-
description="Sample values"
|
|
37
|
-
)
|
|
38
|
-
null_count: int = Field(0, ge=0, description="Number of null values")
|
|
39
|
-
unique_values: int = Field(
|
|
40
|
-
...,
|
|
41
|
-
ge=0,
|
|
42
|
-
description="Number of unique values"
|
|
43
|
-
)
|
|
44
|
-
|
|
45
|
-
# Patterns
|
|
46
|
-
value_patterns: List[str] = Field(
|
|
47
|
-
default_factory=list,
|
|
48
|
-
description="Detected value patterns"
|
|
49
|
-
)
|
|
50
|
-
constraints: Dict[str, Any] = Field(
|
|
51
|
-
default_factory=dict,
|
|
52
|
-
description="Validation constraints"
|
|
53
|
-
)
|
|
54
|
-
|
|
55
|
-
# Metadata
|
|
56
|
-
is_required: bool = Field(
|
|
57
|
-
True,
|
|
58
|
-
description="Whether field is required"
|
|
59
|
-
)
|
|
60
|
-
default_value: Optional[Any] = Field(
|
|
61
|
-
None,
|
|
62
|
-
description="Default value if field is optional"
|
|
63
|
-
)
|
|
64
|
-
description: Optional[str] = Field(
|
|
65
|
-
None,
|
|
66
|
-
description="Field description"
|
|
67
|
-
)
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
class StructureAnalysis(BaseModel):
|
|
71
|
-
"""JSON structure analysis result"""
|
|
72
|
-
|
|
73
|
-
model_config = ConfigDict(
|
|
74
|
-
title="Structure Analysis",
|
|
75
|
-
description="Complete analysis of JSON data structure",
|
|
76
|
-
validate_assignment=True,
|
|
77
|
-
extra="forbid"
|
|
78
|
-
)
|
|
79
|
-
|
|
80
|
-
# Structure metrics
|
|
81
|
-
total_fields: int = Field(
|
|
82
|
-
...,
|
|
83
|
-
ge=0,
|
|
84
|
-
description="Total number of fields"
|
|
85
|
-
)
|
|
86
|
-
nested_levels: int = Field(
|
|
87
|
-
...,
|
|
88
|
-
ge=0,
|
|
89
|
-
description="Maximum nesting depth"
|
|
90
|
-
)
|
|
91
|
-
array_fields: int = Field(
|
|
92
|
-
...,
|
|
93
|
-
ge=0,
|
|
94
|
-
description="Number of array fields"
|
|
95
|
-
)
|
|
96
|
-
object_fields: int = Field(
|
|
97
|
-
...,
|
|
98
|
-
ge=0,
|
|
99
|
-
description="Number of object fields"
|
|
100
|
-
)
|
|
101
|
-
|
|
102
|
-
# Field analysis
|
|
103
|
-
field_analyses: List[FieldAnalysis] = Field(
|
|
104
|
-
...,
|
|
105
|
-
description="Individual field analyses"
|
|
106
|
-
)
|
|
107
|
-
type_distribution: Dict[DataType, int] = Field(
|
|
108
|
-
...,
|
|
109
|
-
description="Distribution of data types"
|
|
110
|
-
)
|
|
111
|
-
|
|
112
|
-
# Schema generation
|
|
113
|
-
inferred_schema: Dict[str, Any] = Field(
|
|
114
|
-
...,
|
|
115
|
-
description="Generated JSON schema"
|
|
116
|
-
)
|
|
117
|
-
validation_rules: List[str] = Field(
|
|
118
|
-
default_factory=list,
|
|
119
|
-
description="Suggested validation rules"
|
|
120
|
-
)
|
|
121
|
-
|
|
122
|
-
# Recommendations
|
|
123
|
-
optimization_suggestions: List[str] = Field(
|
|
124
|
-
default_factory=list,
|
|
125
|
-
description="Structure optimization suggestions"
|
|
126
|
-
)
|
|
127
|
-
normalization_needed: bool = Field(
|
|
128
|
-
False,
|
|
129
|
-
description="Whether normalization is recommended"
|
|
130
|
-
)
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
class PydanticSchema(BaseModel):
|
|
134
|
-
"""Generated Pydantic schema"""
|
|
135
|
-
|
|
136
|
-
model_config = ConfigDict(
|
|
137
|
-
title="Pydantic Schema",
|
|
138
|
-
description="Generated Pydantic model with complete code",
|
|
139
|
-
validate_assignment=True,
|
|
140
|
-
extra="forbid"
|
|
141
|
-
)
|
|
142
|
-
|
|
143
|
-
class_name: str = Field(
|
|
144
|
-
...,
|
|
145
|
-
min_length=1,
|
|
146
|
-
description="Generated class name"
|
|
147
|
-
)
|
|
148
|
-
python_code: str = Field(
|
|
149
|
-
...,
|
|
150
|
-
min_length=1,
|
|
151
|
-
description="Complete Python class code"
|
|
152
|
-
)
|
|
153
|
-
imports: List[str] = Field(
|
|
154
|
-
default_factory=list,
|
|
155
|
-
description="Required imports"
|
|
156
|
-
)
|
|
157
|
-
|
|
158
|
-
# Validation
|
|
159
|
-
validation_rules: List[str] = Field(
|
|
160
|
-
default_factory=list,
|
|
161
|
-
description="Validation rules applied"
|
|
162
|
-
)
|
|
163
|
-
field_descriptions: Dict[str, str] = Field(
|
|
164
|
-
default_factory=dict,
|
|
165
|
-
description="Field documentation"
|
|
166
|
-
)
|
|
167
|
-
|
|
168
|
-
# Metadata
|
|
169
|
-
generated_at: datetime = Field(
|
|
170
|
-
default_factory=datetime.now,
|
|
171
|
-
description="Generation timestamp"
|
|
172
|
-
)
|
|
173
|
-
schema_version: str = Field("2.0", description="Pydantic version used")
|
|
174
|
-
|
|
175
|
-
# Quality metrics
|
|
176
|
-
complexity_score: Optional[float] = Field(
|
|
177
|
-
None,
|
|
178
|
-
ge=0,
|
|
179
|
-
le=1,
|
|
180
|
-
description="Schema complexity score"
|
|
181
|
-
)
|
|
182
|
-
validation_coverage: Optional[float] = Field(
|
|
183
|
-
None,
|
|
184
|
-
ge=0,
|
|
185
|
-
le=1,
|
|
186
|
-
description="Validation rule coverage"
|
|
187
|
-
)
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
class TypeScriptSchema(BaseModel):
|
|
191
|
-
"""Generated TypeScript schema"""
|
|
192
|
-
|
|
193
|
-
model_config = ConfigDict(
|
|
194
|
-
title="TypeScript Schema",
|
|
195
|
-
description="Generated TypeScript interface with types",
|
|
196
|
-
validate_assignment=True,
|
|
197
|
-
extra="forbid"
|
|
198
|
-
)
|
|
199
|
-
|
|
200
|
-
interface_name: str = Field(
|
|
201
|
-
...,
|
|
202
|
-
min_length=1,
|
|
203
|
-
description="Interface name"
|
|
204
|
-
)
|
|
205
|
-
typescript_code: str = Field(
|
|
206
|
-
...,
|
|
207
|
-
min_length=1,
|
|
208
|
-
description="Complete TypeScript interface"
|
|
209
|
-
)
|
|
210
|
-
|
|
211
|
-
# Additional types
|
|
212
|
-
enum_definitions: List[str] = Field(
|
|
213
|
-
default_factory=list,
|
|
214
|
-
description="Generated enum definitions"
|
|
215
|
-
)
|
|
216
|
-
utility_types: List[str] = Field(
|
|
217
|
-
default_factory=list,
|
|
218
|
-
description="Utility type definitions"
|
|
219
|
-
)
|
|
220
|
-
|
|
221
|
-
# Documentation
|
|
222
|
-
field_comments: Dict[str, str] = Field(
|
|
223
|
-
default_factory=dict,
|
|
224
|
-
description="Field documentation"
|
|
225
|
-
)
|
|
226
|
-
jsdoc_comments: List[str] = Field(
|
|
227
|
-
default_factory=list,
|
|
228
|
-
description="JSDoc comments"
|
|
229
|
-
)
|
|
230
|
-
|
|
231
|
-
# Metadata
|
|
232
|
-
generated_at: datetime = Field(
|
|
233
|
-
default_factory=datetime.now,
|
|
234
|
-
description="Generation timestamp"
|
|
235
|
-
)
|
|
236
|
-
typescript_version: str = Field(
|
|
237
|
-
"5.0",
|
|
238
|
-
description="TypeScript version compatibility"
|
|
239
|
-
)
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
class SchemaGenerationRequest(BaseModel):
|
|
243
|
-
"""Request for schema generation"""
|
|
244
|
-
|
|
245
|
-
model_config = ConfigDict(
|
|
246
|
-
title="Schema Generation Request",
|
|
247
|
-
description="Request for generating schemas from data",
|
|
248
|
-
validate_assignment=True,
|
|
249
|
-
extra="forbid"
|
|
250
|
-
)
|
|
251
|
-
|
|
252
|
-
data: Dict[str, Any] = Field(
|
|
253
|
-
...,
|
|
254
|
-
description="Source data for schema generation"
|
|
255
|
-
)
|
|
256
|
-
schema_format: SchemaFormat = Field(
|
|
257
|
-
...,
|
|
258
|
-
description="Target schema format"
|
|
259
|
-
)
|
|
260
|
-
|
|
261
|
-
# Generation options
|
|
262
|
-
class_name: Optional[str] = Field(
|
|
263
|
-
None,
|
|
264
|
-
description="Custom class/interface name"
|
|
265
|
-
)
|
|
266
|
-
namespace: Optional[str] = Field(
|
|
267
|
-
None,
|
|
268
|
-
description="Namespace for generated code"
|
|
269
|
-
)
|
|
270
|
-
strict_validation: bool = Field(
|
|
271
|
-
True,
|
|
272
|
-
description="Generate strict validation rules"
|
|
273
|
-
)
|
|
274
|
-
|
|
275
|
-
# Documentation options
|
|
276
|
-
generate_docs: bool = Field(
|
|
277
|
-
True,
|
|
278
|
-
description="Generate field documentation"
|
|
279
|
-
)
|
|
280
|
-
include_examples: bool = Field(
|
|
281
|
-
False,
|
|
282
|
-
description="Include example values in documentation"
|
|
283
|
-
)
|
|
284
|
-
|
|
285
|
-
# Additional context
|
|
286
|
-
data_context: Optional[str] = Field(
|
|
287
|
-
None,
|
|
288
|
-
description="Context about the data structure"
|
|
289
|
-
)
|
|
290
|
-
field_contexts: Optional[Dict[str, str]] = Field(
|
|
291
|
-
None,
|
|
292
|
-
description="Context for specific fields"
|
|
293
|
-
)
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
class SchemaGenerationResponse(BaseModel):
|
|
297
|
-
"""Response for schema generation"""
|
|
298
|
-
|
|
299
|
-
model_config = ConfigDict(
|
|
300
|
-
title="Schema Generation Response",
|
|
301
|
-
description="Complete schema generation result",
|
|
302
|
-
validate_assignment=True,
|
|
303
|
-
extra="forbid"
|
|
304
|
-
)
|
|
305
|
-
|
|
306
|
-
# Generated schemas
|
|
307
|
-
pydantic_schema: Optional[PydanticSchema] = Field(
|
|
308
|
-
None,
|
|
309
|
-
description="Generated Pydantic schema"
|
|
310
|
-
)
|
|
311
|
-
typescript_schema: Optional[TypeScriptSchema] = Field(
|
|
312
|
-
None,
|
|
313
|
-
description="Generated TypeScript schema"
|
|
314
|
-
)
|
|
315
|
-
json_schema: Optional[Dict[str, Any]] = Field(
|
|
316
|
-
None,
|
|
317
|
-
description="Generated JSON schema"
|
|
318
|
-
)
|
|
319
|
-
|
|
320
|
-
# Analysis results
|
|
321
|
-
structure_analysis: StructureAnalysis = Field(
|
|
322
|
-
...,
|
|
323
|
-
description="Structure analysis results"
|
|
324
|
-
)
|
|
325
|
-
|
|
326
|
-
# Generation metadata
|
|
327
|
-
schema_format: SchemaFormat = Field(
|
|
328
|
-
...,
|
|
329
|
-
description="Generated schema format"
|
|
330
|
-
)
|
|
331
|
-
generation_time_seconds: float = Field(
|
|
332
|
-
...,
|
|
333
|
-
ge=0,
|
|
334
|
-
description="Time taken to generate schema"
|
|
335
|
-
)
|
|
336
|
-
|
|
337
|
-
# Quality metrics
|
|
338
|
-
schema_quality_score: float = Field(
|
|
339
|
-
...,
|
|
340
|
-
ge=0,
|
|
341
|
-
le=1,
|
|
342
|
-
description="Overall schema quality score"
|
|
343
|
-
)
|
|
344
|
-
validation_completeness: float = Field(
|
|
345
|
-
...,
|
|
346
|
-
ge=0,
|
|
347
|
-
le=1,
|
|
348
|
-
description="Validation rule completeness"
|
|
349
|
-
)
|
|
350
|
-
|
|
351
|
-
# Cost and performance
|
|
352
|
-
tokens_used: int = Field(
|
|
353
|
-
...,
|
|
354
|
-
ge=0,
|
|
355
|
-
description="Tokens consumed for generation"
|
|
356
|
-
)
|
|
357
|
-
cost_usd: float = Field(
|
|
358
|
-
...,
|
|
359
|
-
ge=0,
|
|
360
|
-
description="Generation cost"
|
|
361
|
-
)
|
|
362
|
-
|
|
363
|
-
# Recommendations
|
|
364
|
-
optimization_recommendations: List[str] = Field(
|
|
365
|
-
default_factory=list,
|
|
366
|
-
description="Schema optimization recommendations"
|
|
367
|
-
)
|
|
368
|
-
usage_recommendations: List[str] = Field(
|
|
369
|
-
default_factory=list,
|
|
370
|
-
description="Usage recommendations"
|
|
371
|
-
)
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
class ConversionRequest(BaseModel):
|
|
375
|
-
"""Request for type conversion between formats"""
|
|
376
|
-
|
|
377
|
-
model_config = ConfigDict(
|
|
378
|
-
title="Conversion Request",
|
|
379
|
-
description="Request for converting between schema formats",
|
|
380
|
-
validate_assignment=True,
|
|
381
|
-
extra="forbid"
|
|
382
|
-
)
|
|
383
|
-
|
|
384
|
-
source_schema: str = Field(
|
|
385
|
-
...,
|
|
386
|
-
description="Source schema code"
|
|
387
|
-
)
|
|
388
|
-
source_format: SchemaFormat = Field(
|
|
389
|
-
...,
|
|
390
|
-
description="Source schema format"
|
|
391
|
-
)
|
|
392
|
-
target_format: SchemaFormat = Field(
|
|
393
|
-
...,
|
|
394
|
-
description="Target schema format"
|
|
395
|
-
)
|
|
396
|
-
|
|
397
|
-
# Conversion options
|
|
398
|
-
preserve_validation: bool = Field(
|
|
399
|
-
True,
|
|
400
|
-
description="Preserve validation rules during conversion"
|
|
401
|
-
)
|
|
402
|
-
preserve_documentation: bool = Field(
|
|
403
|
-
True,
|
|
404
|
-
description="Preserve field documentation"
|
|
405
|
-
)
|
|
406
|
-
strict_types: bool = Field(
|
|
407
|
-
True,
|
|
408
|
-
description="Use strict type definitions"
|
|
409
|
-
)
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
class ConversionResponse(BaseModel):
|
|
413
|
-
"""Response for type conversion"""
|
|
414
|
-
|
|
415
|
-
model_config = ConfigDict(
|
|
416
|
-
title="Conversion Response",
|
|
417
|
-
description="Result of schema format conversion",
|
|
418
|
-
validate_assignment=True,
|
|
419
|
-
extra="forbid"
|
|
420
|
-
)
|
|
421
|
-
|
|
422
|
-
converted_schema: str = Field(
|
|
423
|
-
...,
|
|
424
|
-
description="Converted schema code"
|
|
425
|
-
)
|
|
426
|
-
target_format: SchemaFormat = Field(
|
|
427
|
-
...,
|
|
428
|
-
description="Target format"
|
|
429
|
-
)
|
|
430
|
-
|
|
431
|
-
# Conversion metadata
|
|
432
|
-
conversion_time_seconds: float = Field(
|
|
433
|
-
...,
|
|
434
|
-
ge=0,
|
|
435
|
-
description="Conversion processing time"
|
|
436
|
-
)
|
|
437
|
-
features_preserved: List[str] = Field(
|
|
438
|
-
...,
|
|
439
|
-
description="Features preserved during conversion"
|
|
440
|
-
)
|
|
441
|
-
features_lost: List[str] = Field(
|
|
442
|
-
default_factory=list,
|
|
443
|
-
description="Features lost during conversion"
|
|
444
|
-
)
|
|
445
|
-
|
|
446
|
-
# Quality metrics
|
|
447
|
-
conversion_accuracy: float = Field(
|
|
448
|
-
...,
|
|
449
|
-
ge=0,
|
|
450
|
-
le=1,
|
|
451
|
-
description="Conversion accuracy score"
|
|
452
|
-
)
|
|
453
|
-
|
|
454
|
-
# Warnings and recommendations
|
|
455
|
-
warnings: List[str] = Field(
|
|
456
|
-
default_factory=list,
|
|
457
|
-
description="Conversion warnings"
|
|
458
|
-
)
|
|
459
|
-
recommendations: List[str] = Field(
|
|
460
|
-
default_factory=list,
|
|
461
|
-
description="Usage recommendations for converted schema"
|
|
462
|
-
)
|
|
File without changes
|