cmdop 0.1.24__py3-none-any.whl → 0.1.26__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.
- cmdop/__init__.py +9 -4
- cmdop/_generated/rpc_messages/browser_pb2.py +138 -138
- cmdop/_generated/rpc_messages/browser_pb2.pyi +6 -2
- cmdop/api/generated/machines/__init__.py +1 -1
- cmdop/api/generated/machines/enums.py +0 -112
- cmdop/api/generated/machines/machines__api__machine_sharing/client.py +21 -6
- cmdop/api/generated/machines/machines__api__machine_sharing/models.py +46 -19
- cmdop/api/generated/machines/machines__api__machine_sharing/sync_client.py +20 -5
- cmdop/api/generated/machines/machines__api__machines/client.py +90 -25
- cmdop/api/generated/machines/machines__api__machines/models.py +143 -125
- cmdop/api/generated/machines/machines__api__machines/sync_client.py +84 -19
- cmdop/api/generated/machines/schema.json +72 -0
- cmdop/api/generated/system/__init__.py +1 -1
- cmdop/api/generated/system/enums.py +0 -52
- cmdop/api/generated/system/schema.json +54 -0
- cmdop/api/generated/system/system__api__oauth/client.py +42 -12
- cmdop/api/generated/system/system__api__oauth/models.py +111 -85
- cmdop/api/generated/system/system__api__oauth/sync_client.py +38 -8
- cmdop/api/generated/system/system__api__system/client.py +98 -23
- cmdop/api/generated/system/system__api__system/models.py +83 -83
- cmdop/api/generated/system/system__api__system/sync_client.py +94 -19
- cmdop/api/generated/workspaces/__init__.py +1 -1
- cmdop/api/generated/workspaces/enums.py +0 -137
- cmdop/api/generated/workspaces/schema.json +47 -0
- cmdop/api/generated/workspaces/workspaces__api__workspaces/client.py +156 -41
- cmdop/api/generated/workspaces/workspaces__api__workspaces/models.py +126 -85
- cmdop/api/generated/workspaces/workspaces__api__workspaces/sync_client.py +145 -29
- cmdop/helpers/__init__.py +0 -4
- cmdop/helpers/network_analyzer.py +28 -9
- cmdop/services/browser/capabilities/visual.py +1 -1
- cmdop/services/browser/service/sync.py +4 -0
- {cmdop-0.1.24.dist-info → cmdop-0.1.26.dist-info}/METADATA +24 -14
- {cmdop-0.1.24.dist-info → cmdop-0.1.26.dist-info}/RECORD +35 -37
- cmdop/helpers/cleaner.py +0 -53
- cmdop/helpers/formatting.py +0 -15
- {cmdop-0.1.24.dist-info → cmdop-0.1.26.dist-info}/WHEEL +0 -0
- {cmdop-0.1.24.dist-info → cmdop-0.1.26.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
cmdop/__init__.py,sha256=
|
|
1
|
+
cmdop/__init__.py,sha256=YoLf9cziSSoOYsiDoTLlGpm5kV8kTptdMl4e4ccK4xc,5271
|
|
2
2
|
cmdop/client.py,sha256=nTotStZPBfYN3TrHH-OlEJMSVAXskYMQRkocsFmyaBY,14601
|
|
3
3
|
cmdop/config.py,sha256=vpw1aGCyS4NKlZyzVur81Lt06QmN3FnscZji0bypUi0,4398
|
|
4
4
|
cmdop/discovery.py,sha256=HNxSOa5tSuG7ppfFs21XdviW5ucjpRswVPguhX5j8Dg,7479
|
|
@@ -80,8 +80,8 @@ cmdop/_generated/rpc_messages/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5N
|
|
|
80
80
|
cmdop/_generated/rpc_messages/agent_pb2.py,sha256=1KCs4kwuuTwZm9Y8ql7t6Jjsutuepbq85E6DGVDWa84,3393
|
|
81
81
|
cmdop/_generated/rpc_messages/agent_pb2.pyi,sha256=F7gy0PQlJ4cRQCli7U4v5A87-Lsw2_x0nV4hFXG1qj0,3866
|
|
82
82
|
cmdop/_generated/rpc_messages/agent_pb2_grpc.py,sha256=ABbaG1eMcaWPZKdPoom2F-IjjVqjYNMDOjMp8X6QLHE,898
|
|
83
|
-
cmdop/_generated/rpc_messages/browser_pb2.py,sha256=
|
|
84
|
-
cmdop/_generated/rpc_messages/browser_pb2.pyi,sha256=
|
|
83
|
+
cmdop/_generated/rpc_messages/browser_pb2.py,sha256=B5aagQMy78DbXbKnFWvnTjo9PRbEcDflNlp6dQSnmTw,24944
|
|
84
|
+
cmdop/_generated/rpc_messages/browser_pb2.pyi,sha256=8C54gxuY7VDkw9iS_TY662AJAfn-tSPuNnFRRyqHQYo,38206
|
|
85
85
|
cmdop/_generated/rpc_messages/browser_pb2_grpc.py,sha256=P8F8QYLT_kedGq7AXj37Us2hFQOaevdfYMHl0tTdY48,900
|
|
86
86
|
cmdop/_generated/rpc_messages/device_pb2.py,sha256=nKj7axhR-FVSQoQUd4ENXpc5PU_UCjSlExajLIoeZY8,2435
|
|
87
87
|
cmdop/_generated/rpc_messages/device_pb2.pyi,sha256=u5oLfTHuOSpYwMiVe2tw0vVQLLFvYgK3lxw-Vky1ZkA,1974
|
|
@@ -109,51 +109,49 @@ cmdop/_generated/rpc_messages/terminal_pb2.pyi,sha256=j4_WhvUJOf115rohC7dxljrqDP
|
|
|
109
109
|
cmdop/_generated/rpc_messages/terminal_pb2_grpc.py,sha256=8k9MxEHVhlxJzOxwKWhhbLzTw8LM1RDvuR6EtaEujD0,901
|
|
110
110
|
cmdop/api/__init__.py,sha256=pCJvQs5L1HBjDBxJ6O3jmnxgsIvPcCAH_X_qLRKKRsA,298
|
|
111
111
|
cmdop/api/generated/__init__.py,sha256=CSM3sK6tqDyEvwmCgk3o6skF3HYSqjcwE1NOmy5LJc0,51
|
|
112
|
-
cmdop/api/generated/machines/__init__.py,sha256=
|
|
112
|
+
cmdop/api/generated/machines/__init__.py,sha256=XAKW6tOdln44bAXVpX9tWfvu49eaFHCagYO7vvuzhKU,6324
|
|
113
113
|
cmdop/api/generated/machines/client.py,sha256=D9A81YhTh3kD9OL5uwrwmSWtZkO85rkIpDoW7Bb-lu0,2488
|
|
114
|
-
cmdop/api/generated/machines/enums.py,sha256=
|
|
114
|
+
cmdop/api/generated/machines/enums.py,sha256=QGF8W57cPdoYEiBZ6cog2qQeEfOSW3QLnoEaBmANB_Y,1106
|
|
115
115
|
cmdop/api/generated/machines/logger.py,sha256=K-HR1NHAou-rgjEasPAqdjeVWmqtbnRXUXp5jLdTBI4,7657
|
|
116
116
|
cmdop/api/generated/machines/retry.py,sha256=M8s4OiWZDcnjPa300zkgJ2Ws7vHfx4qF-WQZ9MSVM8s,8186
|
|
117
|
-
cmdop/api/generated/machines/schema.json,sha256=
|
|
117
|
+
cmdop/api/generated/machines/schema.json,sha256=ovqkZp33ftTxP2ECJUNduulm0rRNZZd3vKRE7HPtWkU,80333
|
|
118
118
|
cmdop/api/generated/machines/sync_client.py,sha256=jgPMpXiA6fVMNRHEiHjDNegUJm1NaY_2D_gQ146Q8Y8,1755
|
|
119
119
|
cmdop/api/generated/machines/machines__api__machine_sharing/__init__.py,sha256=PjOOszrj630iP32zMKuphxhxV-QFXrPrLsasi9BFepU,161
|
|
120
|
-
cmdop/api/generated/machines/machines__api__machine_sharing/client.py,sha256=
|
|
121
|
-
cmdop/api/generated/machines/machines__api__machine_sharing/models.py,sha256=
|
|
122
|
-
cmdop/api/generated/machines/machines__api__machine_sharing/sync_client.py,sha256=
|
|
120
|
+
cmdop/api/generated/machines/machines__api__machine_sharing/client.py,sha256=BX3Ls48X1pONVmhh31f6dM8kKXYt6tgiK573o2-7_Ww,2788
|
|
121
|
+
cmdop/api/generated/machines/machines__api__machine_sharing/models.py,sha256=u9tdUqHli_rtkYbuVXJ3xoqSZcM5LOkkUYVgkjwsiaQ,3524
|
|
122
|
+
cmdop/api/generated/machines/machines__api__machine_sharing/sync_client.py,sha256=BLXf9zMAwRYwPKgsNM6FNfjAMpU2jadDmBAYtH2UTcQ,2748
|
|
123
123
|
cmdop/api/generated/machines/machines__api__machines/__init__.py,sha256=1etKMhHggOodMXQkvCDbCjN1zVzB5Y7CUCoJpJRxLlc,149
|
|
124
|
-
cmdop/api/generated/machines/machines__api__machines/client.py,sha256=
|
|
125
|
-
cmdop/api/generated/machines/machines__api__machines/models.py,sha256=
|
|
126
|
-
cmdop/api/generated/machines/machines__api__machines/sync_client.py,sha256=
|
|
127
|
-
cmdop/api/generated/system/__init__.py,sha256=
|
|
124
|
+
cmdop/api/generated/machines/machines__api__machines/client.py,sha256=gWSbenXxYxO2DRFzaqK17WMmmtjwJfuxutBFAeBSnY4,10138
|
|
125
|
+
cmdop/api/generated/machines/machines__api__machines/models.py,sha256=TfQgghJQMfsQp-vKDzTB71HEs9iYeNLUwEIKKvoDrbo,13096
|
|
126
|
+
cmdop/api/generated/machines/machines__api__machines/sync_client.py,sha256=ibxV_HTW4k0g_NotQWmQk1ZmXY6wOKu2XUR4WQ1S5QE,9938
|
|
127
|
+
cmdop/api/generated/system/__init__.py,sha256=S1X9spyeW4v7mW5vuRaqz0ZJ-X4_JOyHZvR2tUoUPCA,6240
|
|
128
128
|
cmdop/api/generated/system/client.py,sha256=Yj8e-lv0hqndI-VMQPP0TS1qms5-Eh0wBW9nwaLbjSM,2426
|
|
129
|
-
cmdop/api/generated/system/enums.py,sha256=
|
|
129
|
+
cmdop/api/generated/system/enums.py,sha256=EAAsq7wAqipxaQC5L3M7vQ4dLNYF1KfryF4JYQrWZcw,1780
|
|
130
130
|
cmdop/api/generated/system/logger.py,sha256=K-HR1NHAou-rgjEasPAqdjeVWmqtbnRXUXp5jLdTBI4,7657
|
|
131
131
|
cmdop/api/generated/system/retry.py,sha256=M8s4OiWZDcnjPa300zkgJ2Ws7vHfx4qF-WQZ9MSVM8s,8186
|
|
132
|
-
cmdop/api/generated/system/schema.json,sha256=
|
|
132
|
+
cmdop/api/generated/system/schema.json,sha256=8KxHH21gza-nT1VwSaStg3azl-yLSeLJmJT24bk5gxU,74984
|
|
133
133
|
cmdop/api/generated/system/sync_client.py,sha256=OeAh7i-6V4om8osgo3voBWYs4smTR0_linU5Vh7TBrk,1693
|
|
134
134
|
cmdop/api/generated/system/system__api__oauth/__init__.py,sha256=YMOwaanZUsG250b7y9fvn9lP44dJuxCLZls1lFzoG8o,139
|
|
135
|
-
cmdop/api/generated/system/system__api__oauth/client.py,sha256=
|
|
136
|
-
cmdop/api/generated/system/system__api__oauth/models.py,sha256=
|
|
137
|
-
cmdop/api/generated/system/system__api__oauth/sync_client.py,sha256=
|
|
135
|
+
cmdop/api/generated/system/system__api__oauth/client.py,sha256=Hy30CczkvvSIxoRpHZdO6usPeCZQItLW2BPuqgcdHaU,4697
|
|
136
|
+
cmdop/api/generated/system/system__api__oauth/models.py,sha256=YBxb0cc3veN5048b_uy3piYvZ2bY8h6sKQhvaT1JLVc,8576
|
|
137
|
+
cmdop/api/generated/system/system__api__oauth/sync_client.py,sha256=73PIWkike_6GYZ8o_MMcwWcgebkBNr6Yo2uB2Cd2Rh4,4621
|
|
138
138
|
cmdop/api/generated/system/system__api__system/__init__.py,sha256=1j6Q3xUSvNVqCCCqeeKyfkil35W26QEb3U0a0vXbsnY,141
|
|
139
|
-
cmdop/api/generated/system/system__api__system/client.py,sha256=
|
|
140
|
-
cmdop/api/generated/system/system__api__system/models.py,sha256=
|
|
141
|
-
cmdop/api/generated/system/system__api__system/sync_client.py,sha256=
|
|
142
|
-
cmdop/api/generated/workspaces/__init__.py,sha256=
|
|
139
|
+
cmdop/api/generated/system/system__api__system/client.py,sha256=InwAqbXcrzu_sgIwl9PYxs4zwWFYgNZ2Eza4iIsdtEc,10667
|
|
140
|
+
cmdop/api/generated/system/system__api__system/models.py,sha256=uGYvD9gtEsOOcn6iPw9FpDh9jjv8R-pPFOilgyfvt3Q,6606
|
|
141
|
+
cmdop/api/generated/system/system__api__system/sync_client.py,sha256=fMxzZhL-c29Y-DJpu35a9ax0ZV1Ykl0nN_JNOrzceG0,10443
|
|
142
|
+
cmdop/api/generated/workspaces/__init__.py,sha256=apDTq9jO5ONzGe2REahC9RkRNu0rztBRj-_t8YYSQUA,6157
|
|
143
143
|
cmdop/api/generated/workspaces/client.py,sha256=Qz5pVLl75AnIP3vOM776JopXOiKa8Dr_Dg_E-OtE9J8,2354
|
|
144
|
-
cmdop/api/generated/workspaces/enums.py,sha256=
|
|
144
|
+
cmdop/api/generated/workspaces/enums.py,sha256=HLStAxzOH6kiAaBWa3RkYSpXOubO3ufsAAzJxVINfDw,1473
|
|
145
145
|
cmdop/api/generated/workspaces/logger.py,sha256=K-HR1NHAou-rgjEasPAqdjeVWmqtbnRXUXp5jLdTBI4,7657
|
|
146
146
|
cmdop/api/generated/workspaces/retry.py,sha256=M8s4OiWZDcnjPa300zkgJ2Ws7vHfx4qF-WQZ9MSVM8s,8186
|
|
147
|
-
cmdop/api/generated/workspaces/schema.json,sha256=
|
|
147
|
+
cmdop/api/generated/workspaces/schema.json,sha256=gwEyJhG1SwwRvoOjmYE3LisZCeQdIxcBYsoq1ZEwTZg,69590
|
|
148
148
|
cmdop/api/generated/workspaces/sync_client.py,sha256=TUOpviPXdEmpR8sqGAz1r75FFVYzuaVjmhJtJ3s8-d8,1601
|
|
149
149
|
cmdop/api/generated/workspaces/workspaces__api__workspaces/__init__.py,sha256=WoUZ62g6b2qhM4X2f8iGMjHHAD1FwqvhJTMBRp3Ryrg,157
|
|
150
|
-
cmdop/api/generated/workspaces/workspaces__api__workspaces/client.py,sha256=
|
|
151
|
-
cmdop/api/generated/workspaces/workspaces__api__workspaces/models.py,sha256=
|
|
152
|
-
cmdop/api/generated/workspaces/workspaces__api__workspaces/sync_client.py,sha256=
|
|
153
|
-
cmdop/helpers/__init__.py,sha256=
|
|
154
|
-
cmdop/helpers/
|
|
155
|
-
cmdop/helpers/formatting.py,sha256=lLYUEyzZLUSXq2xHB2w3i72QoP_baHjtFpP-7mb-V-s,341
|
|
156
|
-
cmdop/helpers/network_analyzer.py,sha256=6ee-1J2JLKl9gHvwMfPDE6k54QL8tiLtZ2G3MwpWfsE,12018
|
|
150
|
+
cmdop/api/generated/workspaces/workspaces__api__workspaces/client.py,sha256=RcBOR3WCicf5xSjsZApJ9oQ3a0PGpZD6z-2R0IbxRHQ,16547
|
|
151
|
+
cmdop/api/generated/workspaces/workspaces__api__workspaces/models.py,sha256=KCmK-CUuODGIqREu3WBlKKic9SElk7MY3OkD8zNVS78,10230
|
|
152
|
+
cmdop/api/generated/workspaces/workspaces__api__workspaces/sync_client.py,sha256=BKpMmMYzGw6pmDItC_TpJ_mvuI1zmDppXObWncWszE4,16147
|
|
153
|
+
cmdop/helpers/__init__.py,sha256=EGoWhmQojGlwic4oISx7pwFq5WDSfdNh9hhTxzwdkbs,220
|
|
154
|
+
cmdop/helpers/network_analyzer.py,sha256=ZiTRv39S_kTAppTVbq97DYLExS2WsDLCxf_N4rtnkf0,13025
|
|
157
155
|
cmdop/models/__init__.py,sha256=W6P1oo6JkUAeVEV59HzFT646hXM0pk_obXHfHbX4tAc,1594
|
|
158
156
|
cmdop/models/agent.py,sha256=Z1QDfr1-DTFVl5oPvbH2ZUBLXPHUlitiCRfG7y_OzYg,5495
|
|
159
157
|
cmdop/models/base.py,sha256=1SR1ka5p-rHHkk4k9pPwbraxX_CsTG830CosGNPn1JA,7425
|
|
@@ -180,7 +178,7 @@ cmdop/services/browser/capabilities/input.py,sha256=uYmWGqturMDent44Us80oT_nk4kF
|
|
|
180
178
|
cmdop/services/browser/capabilities/network.py,sha256=tZV4Oh_J5zUjEe9GBLQBDXEVh9EVTecPbyjE7lIUrd0,7775
|
|
181
179
|
cmdop/services/browser/capabilities/scroll.py,sha256=sh0VuOPOv81BZg80-n8TABOj5RpshJT12qJwm4F_OY0,4808
|
|
182
180
|
cmdop/services/browser/capabilities/timing.py,sha256=NH34G_4Kfukh6JCdhLRGoouA-uNTbx9ly7ybP9Kh558,1868
|
|
183
|
-
cmdop/services/browser/capabilities/visual.py,sha256=
|
|
181
|
+
cmdop/services/browser/capabilities/visual.py,sha256=AecHna1jqIzgQdsYHiPlZjp-Rr8ivW4EE7IWf1Hyeko,3671
|
|
184
182
|
cmdop/services/browser/js/__init__.py,sha256=gTiZguikKfztDtggZTux2FqhT8YTjyHCzQR4TEnT7z4,1177
|
|
185
183
|
cmdop/services/browser/js/core.py,sha256=QXCCX_al5tMgz7aCwMqhIs1aRe_IdG8teOJniaumA5Q,995
|
|
186
184
|
cmdop/services/browser/js/fetch.py,sha256=WPy_H4LLkneSx06wpfnx4Sx_0Okf2ENXi6bveCd9ZCg,2188
|
|
@@ -189,7 +187,7 @@ cmdop/services/browser/js/scroll.py,sha256=yiOMAaR8ac8jCiWgNCVIt1pUGxdvktMUtzv-A
|
|
|
189
187
|
cmdop/services/browser/service/__init__.py,sha256=AZH_r2FsxLfJGCVBaaAPw3dTGaUlgIFdlYd_RR8KxSg,100
|
|
190
188
|
cmdop/services/browser/service/_helpers.py,sha256=w8foDUGZcD4HyF5eyLZUFxbx_fctAFsYRovvsksi3l4,1584
|
|
191
189
|
cmdop/services/browser/service/aio.py,sha256=0E2D4igQb3YzAakdXsRMt8PEd0rFxI2gXfimwq_6nzk,767
|
|
192
|
-
cmdop/services/browser/service/sync.py,sha256=
|
|
190
|
+
cmdop/services/browser/service/sync.py,sha256=rEDuzg2IN1ZJtvrAmW5ps7Dt2IfWTtzIpQMz8cXp4Bs,23243
|
|
193
191
|
cmdop/streaming/__init__.py,sha256=kG9UlJRqv8ndcwKMzWUddPlZT61pFO_Uf_c08A_8TxA,877
|
|
194
192
|
cmdop/streaming/base.py,sha256=r7Q2QlRxgULzs9vlSGcOC_fwAQ_cF3Z3M7WsPQtxG5I,2990
|
|
195
193
|
cmdop/streaming/handlers.py,sha256=FDEhADmCEFRbifvr9dU1X3C-K_96noz89Bl3tuDa_rQ,2616
|
|
@@ -200,7 +198,7 @@ cmdop/transport/base.py,sha256=2pkV8i9epgp_21dyReCfX47abRUrnALm0W5BXb-Fuz0,5571
|
|
|
200
198
|
cmdop/transport/discovery.py,sha256=rcGAuVrR1l6jwcP0dqZxVhX1NsFK7sRHygFMCLmmUbA,10673
|
|
201
199
|
cmdop/transport/local.py,sha256=ob6tWVxSdKwblHSMK8CkgjyuSdQoAeWgy5OAUd5ZNuE,7411
|
|
202
200
|
cmdop/transport/remote.py,sha256=FNVqus9wOv7LlxKarXjLmSyvJiHwhvPbNDOPv1IQkmE,4329
|
|
203
|
-
cmdop-0.1.
|
|
204
|
-
cmdop-0.1.
|
|
205
|
-
cmdop-0.1.
|
|
206
|
-
cmdop-0.1.
|
|
201
|
+
cmdop-0.1.26.dist-info/METADATA,sha256=yoBVrJGRJhJNBV9OYfng50ZlGxTjZABBVuInKSMBxDU,9790
|
|
202
|
+
cmdop-0.1.26.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
203
|
+
cmdop-0.1.26.dist-info/licenses/LICENSE,sha256=6hyzbI1QVXW6B-XT7PaQ6UG9lns11Y_nnap8uUKGUqo,1062
|
|
204
|
+
cmdop-0.1.26.dist-info/RECORD,,
|
cmdop/helpers/cleaner.py
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"""JSON cleaning utilities for LLM consumption."""
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
|
|
5
|
-
from typing import Any
|
|
6
|
-
|
|
7
|
-
from toon_python import encode as toon_encode
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
class JsonCleaner:
|
|
11
|
-
"""
|
|
12
|
-
Clean JSON and convert to TOON format for LLM.
|
|
13
|
-
|
|
14
|
-
Usage:
|
|
15
|
-
cleaner = JsonCleaner(noise_keys={"Photos", "images"})
|
|
16
|
-
toon_text = cleaner.to_toon(data)
|
|
17
|
-
"""
|
|
18
|
-
|
|
19
|
-
DEFAULT_NOISE_KEYS = frozenset({
|
|
20
|
-
"statusItemTypes",
|
|
21
|
-
"attributes",
|
|
22
|
-
"ordering",
|
|
23
|
-
"updatedDate",
|
|
24
|
-
})
|
|
25
|
-
|
|
26
|
-
def __init__(self, noise_keys: set[str] | None = None):
|
|
27
|
-
self.noise_keys = self.DEFAULT_NOISE_KEYS | (noise_keys or set())
|
|
28
|
-
|
|
29
|
-
def compact(self, data: Any) -> Any:
|
|
30
|
-
"""Remove nulls, empty values, noise keys. Simplify {code,title}->title."""
|
|
31
|
-
def _process(obj: Any) -> Any:
|
|
32
|
-
if isinstance(obj, dict):
|
|
33
|
-
# Simplify {code, title} pattern
|
|
34
|
-
keys = set(obj.keys())
|
|
35
|
-
if keys <= {"code", "title", "description"} and "title" in keys:
|
|
36
|
-
return obj.get("title") or obj.get("code")
|
|
37
|
-
# Clean dict
|
|
38
|
-
result = {}
|
|
39
|
-
for k, v in obj.items():
|
|
40
|
-
if k in self.noise_keys:
|
|
41
|
-
continue
|
|
42
|
-
cleaned = _process(v)
|
|
43
|
-
if cleaned is not None and cleaned != "" and cleaned != [] and cleaned != {}:
|
|
44
|
-
result[k] = cleaned
|
|
45
|
-
return result
|
|
46
|
-
elif isinstance(obj, list):
|
|
47
|
-
return [_process(item) for item in obj if _process(item) not in (None, "", [], {})]
|
|
48
|
-
return obj
|
|
49
|
-
return _process(data)
|
|
50
|
-
|
|
51
|
-
def to_toon(self, data: Any) -> str:
|
|
52
|
-
"""Compact and convert to TOON format."""
|
|
53
|
-
return toon_encode(self.compact(data))
|
cmdop/helpers/formatting.py
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"""JSON formatting utilities."""
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
|
|
5
|
-
from toon_python import encode as toon_encode
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
def json_to_toon(data: dict | list) -> str:
|
|
9
|
-
"""
|
|
10
|
-
Convert JSON to TOON format (saves 30-50% tokens).
|
|
11
|
-
|
|
12
|
-
Example:
|
|
13
|
-
{"name": "Alice", "age": 25} → "name: Alice\\nage: 25"
|
|
14
|
-
"""
|
|
15
|
-
return toon_encode(data)
|
|
File without changes
|
|
File without changes
|