sunholo 0.131.6__py3-none-any.whl → 0.131.8__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.
- sunholo/discovery_engine/cli.py +25 -5
- {sunholo-0.131.6.dist-info → sunholo-0.131.8.dist-info}/METADATA +1 -1
- {sunholo-0.131.6.dist-info → sunholo-0.131.8.dist-info}/RECORD +7 -7
- {sunholo-0.131.6.dist-info → sunholo-0.131.8.dist-info}/WHEEL +0 -0
- {sunholo-0.131.6.dist-info → sunholo-0.131.8.dist-info}/entry_points.txt +0 -0
- {sunholo-0.131.6.dist-info → sunholo-0.131.8.dist-info}/licenses/LICENSE.txt +0 -0
- {sunholo-0.131.6.dist-info → sunholo-0.131.8.dist-info}/top_level.txt +0 -0
sunholo/discovery_engine/cli.py
CHANGED
@@ -8,7 +8,7 @@ try:
|
|
8
8
|
# Assuming sun_rich is in your project structure relative to this file
|
9
9
|
from ..cli.sun_rich import console
|
10
10
|
from google.protobuf.json_format import MessageToDict
|
11
|
-
|
11
|
+
import proto
|
12
12
|
except ImportError:
|
13
13
|
# Fallback if rich is not available or path is wrong
|
14
14
|
class ConsoleFallback:
|
@@ -31,6 +31,26 @@ else:
|
|
31
31
|
discoveryengine = None # Set to None if import failed
|
32
32
|
|
33
33
|
|
34
|
+
def convert_composite_to_native(value):
|
35
|
+
"""
|
36
|
+
Recursively converts a proto MapComposite or RepeatedComposite object to native Python types.
|
37
|
+
|
38
|
+
Args:
|
39
|
+
value: The proto object, which could be a MapComposite, RepeatedComposite, or a primitive.
|
40
|
+
|
41
|
+
Returns:
|
42
|
+
The equivalent Python dictionary, list, or primitive type.
|
43
|
+
"""
|
44
|
+
if isinstance(value, proto.marshal.collections.maps.MapComposite):
|
45
|
+
# Convert MapComposite to a dictionary, recursively processing its values
|
46
|
+
return {key: convert_composite_to_native(val) for key, val in value.items()}
|
47
|
+
elif isinstance(value, proto.marshal.collections.repeated.RepeatedComposite):
|
48
|
+
# Convert RepeatedComposite to a list, recursively processing its elements
|
49
|
+
return [convert_composite_to_native(item) for item in value]
|
50
|
+
else:
|
51
|
+
# If it's a primitive value, return it as is
|
52
|
+
return value
|
53
|
+
|
34
54
|
# --- Command Handler Functions ---
|
35
55
|
|
36
56
|
def discovery_engine_command(args):
|
@@ -401,13 +421,13 @@ def search_engine_command(args):
|
|
401
421
|
|
402
422
|
struct_dict = doc.struct_data.to_dict()
|
403
423
|
metadata_output = json.dumps(struct_dict, indent=2)
|
404
|
-
|
424
|
+
else:
|
405
425
|
try:
|
406
|
-
|
407
|
-
|
426
|
+
struct_dict = convert_composite_to_native(doc.struct_data)
|
427
|
+
metadata_output = struct_dict
|
408
428
|
except Exception as json_err:
|
409
429
|
console.print(f"[yellow] Warning: Could not convert metadata Struct to JSON: {json_err}[/yellow]")
|
410
|
-
metadata_output =
|
430
|
+
metadata_output = doc.struct_data
|
411
431
|
console.print(f" Metadata: {json.dumps(metadata_output, indent=2)}")
|
412
432
|
# Display Snippets if requested and available
|
413
433
|
if args.return_snippet and 'snippets' in doc.derived_struct_data:
|
@@ -73,7 +73,7 @@ sunholo/database/sql/sb/return_sources.sql,sha256=89KAnxfK8n_qGK9jy1OQT8f9n4uYUt
|
|
73
73
|
sunholo/database/sql/sb/setup.sql,sha256=CvoFvZQev2uWjmFa3aj3m3iuPFzAAJZ0S7Qi3L3-zZI,89
|
74
74
|
sunholo/discovery_engine/__init__.py,sha256=hLgqRDJ22Aov9o2QjAEfsVgnL3kMdM-g5p8RJ9OyKdQ,130
|
75
75
|
sunholo/discovery_engine/chunker_handler.py,sha256=wkvXl4rFtYfN6AZUKdW9_QD49Whf77BukDbO82UwlAg,7480
|
76
|
-
sunholo/discovery_engine/cli.py,sha256=
|
76
|
+
sunholo/discovery_engine/cli.py,sha256=RiYQYPI-vXPTjoOnjX_KE-diu21GUXnPe6yD5fSjA64,33722
|
77
77
|
sunholo/discovery_engine/create_new.py,sha256=WUi4_xh_dFaGX3xA9jkNKZhaR6LCELjMPeRb0hyj4FU,1226
|
78
78
|
sunholo/discovery_engine/discovery_engine_client.py,sha256=nV4loBBnOqGPRlEbFIFRJEB6cXKDVgJOMRMdf4-v510,51775
|
79
79
|
sunholo/discovery_engine/get_ai_search_chunks.py,sha256=I6Dt1CznqEvE7XIZ2PkLqopmjpO96iVEWJJqL5cJjOU,5554
|
@@ -168,9 +168,9 @@ sunholo/vertex/init.py,sha256=1OQwcPBKZYBTDPdyU7IM4X4OmiXLdsNV30C-fee2scQ,2875
|
|
168
168
|
sunholo/vertex/memory_tools.py,sha256=tBZxqVZ4InTmdBvLlOYwoSEWu4-kGquc-gxDwZCC4FA,7667
|
169
169
|
sunholo/vertex/safety.py,sha256=S9PgQT1O_BQAkcqauWncRJaydiP8Q_Jzmu9gxYfy1VA,2482
|
170
170
|
sunholo/vertex/type_dict_to_json.py,sha256=uTzL4o9tJRao4u-gJOFcACgWGkBOtqACmb6ihvCErL8,4694
|
171
|
-
sunholo-0.131.
|
172
|
-
sunholo-0.131.
|
173
|
-
sunholo-0.131.
|
174
|
-
sunholo-0.131.
|
175
|
-
sunholo-0.131.
|
176
|
-
sunholo-0.131.
|
171
|
+
sunholo-0.131.8.dist-info/licenses/LICENSE.txt,sha256=SdE3QjnD3GEmqqg9EX3TM9f7WmtOzqS1KJve8rhbYmU,11345
|
172
|
+
sunholo-0.131.8.dist-info/METADATA,sha256=E4kW3Fo3CefMTUqkSaMBgDkAptZmtGO1hQAiv-hH_KE,10067
|
173
|
+
sunholo-0.131.8.dist-info/WHEEL,sha256=lTU6B6eIfYoiQJTZNc-fyaR6BpL6ehTzU3xGYxn2n8k,91
|
174
|
+
sunholo-0.131.8.dist-info/entry_points.txt,sha256=bZuN5AIHingMPt4Ro1b_T-FnQvZ3teBes-3OyO0asl4,49
|
175
|
+
sunholo-0.131.8.dist-info/top_level.txt,sha256=wt5tadn5--5JrZsjJz2LceoUvcrIvxjHJe-RxuudxAk,8
|
176
|
+
sunholo-0.131.8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|