codemie-sdk-python 0.1.292__tar.gz → 0.1.294__tar.gz
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.
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/PKG-INFO +1 -1
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/pyproject.toml +1 -1
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/__init__.py +12 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/client/client.py +7 -0
- codemie_sdk_python-0.1.294/src/codemie_sdk/models/mermaid.py +25 -0
- codemie_sdk_python-0.1.294/src/codemie_sdk/services/mermaid.py +67 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/README.md +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/auth/__init__.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/auth/credentials.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/client/__init__.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/exceptions.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/__init__.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/admin.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/analytics.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/assistant.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/common.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/conversation.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/datasource.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/file_operation.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/guardrails.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/integration.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/llm.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/task.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/user.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/workflow.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/workflow_execution_payload.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/workflow_state.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/workflow_thoughts.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/admin.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/analytics.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/assistant.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/codemie_guardrails.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/conversation.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/datasource.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/files.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/integration.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/llm.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/task.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/user.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/vendor_assistant.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/vendor_guardrail.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/vendor_knowledgebase.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/vendor_workflow.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/webhook.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/workflow.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/workflow_execution.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/utils/__init__.py +0 -0
- {codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/utils/http.py +0 -0
|
@@ -100,6 +100,13 @@ from .services.vendor_knowledgebase import VendorKnowledgeBaseService
|
|
|
100
100
|
from .services.vendor_guardrail import VendorGuardrailService
|
|
101
101
|
from .services.codemie_guardrails import CodemieGuardrailService
|
|
102
102
|
from .services.analytics import AnalyticsService
|
|
103
|
+
from .models.mermaid import (
|
|
104
|
+
MermaidDiagramRequest,
|
|
105
|
+
MermaidDiagramResponse,
|
|
106
|
+
ContentType,
|
|
107
|
+
ResponseType,
|
|
108
|
+
)
|
|
109
|
+
from .services.mermaid import MermaidService
|
|
103
110
|
|
|
104
111
|
__version__ = "0.2.12"
|
|
105
112
|
__all__ = [
|
|
@@ -174,4 +181,9 @@ __all__ = [
|
|
|
174
181
|
"AnalyticsQueryParams",
|
|
175
182
|
"PaginatedAnalyticsQueryParams",
|
|
176
183
|
"AnalyticsService",
|
|
184
|
+
"MermaidDiagramRequest",
|
|
185
|
+
"MermaidDiagramResponse",
|
|
186
|
+
"ContentType",
|
|
187
|
+
"ResponseType",
|
|
188
|
+
"MermaidService",
|
|
177
189
|
]
|
|
@@ -10,6 +10,7 @@ from ..services.conversation import ConversationService
|
|
|
10
10
|
from ..services.datasource import DatasourceService
|
|
11
11
|
from ..services.llm import LLMService
|
|
12
12
|
from ..services.integration import IntegrationService
|
|
13
|
+
from ..services.mermaid import MermaidService
|
|
13
14
|
from ..services.task import TaskService
|
|
14
15
|
from ..services.user import UserService
|
|
15
16
|
from ..services.workflow import WorkflowService
|
|
@@ -80,6 +81,9 @@ class CodeMieClient:
|
|
|
80
81
|
self._api_domain, self._token, verify_ssl=verify_ssl
|
|
81
82
|
)
|
|
82
83
|
self.llms = LLMService(self._api_domain, self._token, verify_ssl=verify_ssl)
|
|
84
|
+
self.mermaid = MermaidService(
|
|
85
|
+
self._api_domain, self._token, verify_ssl=verify_ssl
|
|
86
|
+
)
|
|
83
87
|
self.integrations = IntegrationService(
|
|
84
88
|
self._api_domain, self._token, verify_ssl=verify_ssl
|
|
85
89
|
)
|
|
@@ -150,6 +154,9 @@ class CodeMieClient:
|
|
|
150
154
|
self.llms = LLMService(
|
|
151
155
|
self._api_domain, self._token, verify_ssl=self._verify_ssl
|
|
152
156
|
)
|
|
157
|
+
self.mermaid = MermaidService(
|
|
158
|
+
self._api_domain, self._token, verify_ssl=self._verify_ssl
|
|
159
|
+
)
|
|
153
160
|
self.integrations = IntegrationService(
|
|
154
161
|
self._api_domain, self._token, verify_ssl=self._verify_ssl
|
|
155
162
|
)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"""Models for mermaid diagram operations."""
|
|
2
|
+
|
|
3
|
+
from typing import Literal
|
|
4
|
+
from pydantic import BaseModel, ConfigDict, Field
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class MermaidDiagramRequest(BaseModel):
|
|
8
|
+
"""Request model for mermaid diagram generation."""
|
|
9
|
+
|
|
10
|
+
model_config = ConfigDict(extra="ignore")
|
|
11
|
+
|
|
12
|
+
code: str = Field(..., description="Mermaid diagram code")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class MermaidDiagramResponse(BaseModel):
|
|
16
|
+
"""Response model for mermaid diagram generation (FILE mode)."""
|
|
17
|
+
|
|
18
|
+
model_config = ConfigDict(extra="ignore")
|
|
19
|
+
|
|
20
|
+
file_url: str = Field(..., description="URL to the generated diagram file")
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
# Type aliases for clarity
|
|
24
|
+
ContentType = Literal["svg", "png"]
|
|
25
|
+
ResponseType = Literal["file", "raw"]
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"""Mermaid diagram service implementation."""
|
|
2
|
+
|
|
3
|
+
from typing import Union
|
|
4
|
+
import requests
|
|
5
|
+
|
|
6
|
+
from ..models.mermaid import (
|
|
7
|
+
MermaidDiagramRequest,
|
|
8
|
+
MermaidDiagramResponse,
|
|
9
|
+
ContentType,
|
|
10
|
+
ResponseType,
|
|
11
|
+
)
|
|
12
|
+
from ..utils import ApiRequestHandler
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class MermaidService:
|
|
16
|
+
"""Service for generating mermaid diagrams."""
|
|
17
|
+
|
|
18
|
+
def __init__(self, api_domain: str, token: str, verify_ssl: bool = True):
|
|
19
|
+
"""Initialize the mermaid service.
|
|
20
|
+
|
|
21
|
+
Args:
|
|
22
|
+
api_domain: Base URL for the CodeMie API
|
|
23
|
+
token: Authentication token
|
|
24
|
+
verify_ssl: Whether to verify SSL certificates
|
|
25
|
+
"""
|
|
26
|
+
self._api = ApiRequestHandler(api_domain, token, verify_ssl)
|
|
27
|
+
|
|
28
|
+
def generate_diagram(
|
|
29
|
+
self,
|
|
30
|
+
code: str,
|
|
31
|
+
content_type: ContentType = "svg",
|
|
32
|
+
response_type: ResponseType = "file",
|
|
33
|
+
) -> Union[MermaidDiagramResponse, bytes]:
|
|
34
|
+
"""Generate a mermaid diagram from mermaid code.
|
|
35
|
+
|
|
36
|
+
Args:
|
|
37
|
+
code: Mermaid diagram code (including theme directives if needed)
|
|
38
|
+
content_type: Output format - "svg" or "png" (default: "svg")
|
|
39
|
+
response_type: Response format - "file" (returns URL) or "raw" (returns binary data) (default: "file")
|
|
40
|
+
|
|
41
|
+
Returns:
|
|
42
|
+
MermaidDiagramResponse with file_url if response_type="file",
|
|
43
|
+
or bytes with raw diagram data if response_type="raw"
|
|
44
|
+
|
|
45
|
+
Raises:
|
|
46
|
+
ApiError: If diagram generation fails or invalid mermaid code
|
|
47
|
+
"""
|
|
48
|
+
request = MermaidDiagramRequest(code=code)
|
|
49
|
+
|
|
50
|
+
# Build endpoint with query parameters
|
|
51
|
+
endpoint = f"/v1/files/diagram/mermaid?content_type={content_type}&response_type={response_type}"
|
|
52
|
+
|
|
53
|
+
if response_type == "file":
|
|
54
|
+
return self._api.post(
|
|
55
|
+
endpoint,
|
|
56
|
+
response_model=MermaidDiagramResponse,
|
|
57
|
+
json_data=request.model_dump(),
|
|
58
|
+
wrap_response=False,
|
|
59
|
+
)
|
|
60
|
+
else:
|
|
61
|
+
# For raw mode, return binary content
|
|
62
|
+
response = self._api.post(
|
|
63
|
+
endpoint,
|
|
64
|
+
response_model=requests.Response,
|
|
65
|
+
json_data=request.model_dump(),
|
|
66
|
+
)
|
|
67
|
+
return response.content
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/auth/credentials.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/client/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/assistant.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/datasource.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/file_operation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/guardrails.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_assistant.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_guardrail.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/vendor_workflow.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/models/workflow_state.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/analytics.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/assistant.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/conversation.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/datasource.py
RENAMED
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/webhook.py
RENAMED
|
File without changes
|
{codemie_sdk_python-0.1.292 → codemie_sdk_python-0.1.294}/src/codemie_sdk/services/workflow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|