pycoze 0.1.268__py3-none-any.whl → 0.1.270__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.
- pycoze/api/lib/tab_cls.py +9 -39
- {pycoze-0.1.268.dist-info → pycoze-0.1.270.dist-info}/METADATA +1 -1
- {pycoze-0.1.268.dist-info → pycoze-0.1.270.dist-info}/RECORD +6 -6
- {pycoze-0.1.268.dist-info → pycoze-0.1.270.dist-info}/LICENSE +0 -0
- {pycoze-0.1.268.dist-info → pycoze-0.1.270.dist-info}/WHEEL +0 -0
- {pycoze-0.1.268.dist-info → pycoze-0.1.270.dist-info}/top_level.txt +0 -0
pycoze/api/lib/tab_cls.py
CHANGED
@@ -1,59 +1,29 @@
|
|
1
1
|
import os
|
2
|
-
from
|
3
|
-
from view import ViewCls, WebsiteViewCls, FileViewCls, DirectoryViewCls, WorkflowCls
|
2
|
+
from .view import ViewCls, WorkflowCls
|
4
3
|
import time
|
5
|
-
from typing import Union
|
6
4
|
from pycoze import utils
|
7
5
|
|
8
6
|
|
9
7
|
socket = utils.socket
|
8
|
+
params = utils.params
|
10
9
|
|
11
10
|
class TabCls:
|
12
11
|
|
13
|
-
def
|
14
|
-
|
15
|
-
item_path = os.path.abspath(item_path)
|
16
|
-
if os.path.isdir(item_path):
|
17
|
-
return self.open_dir(item_path)
|
18
|
-
else:
|
19
|
-
return self.open_file(item_path)
|
20
|
-
|
21
|
-
def open_file(self, item_path: str) -> Union[FileViewCls, WebsiteViewCls, WorkflowCls]:
|
22
|
-
if not os.path.isabs(item_path):
|
23
|
-
item_path = os.path.abspath(item_path)
|
24
|
-
location = ["FileOrDir", item_path]
|
25
|
-
socket.post("add-tab", {"location": location, "name": os.path.basename(item_path)})
|
26
|
-
lower_suffix = item_path.lower().split(".")[-1]
|
27
|
-
if lower_suffix == 'workflow':
|
28
|
-
return WorkflowCls(location)
|
29
|
-
if len(location) > 1 and (location[0] == "Website" or location[1].endswith(".website") or location[1].endswith(".html") or location[1].endswith(".ipynb")):
|
30
|
-
return WebsiteViewCls(location)
|
31
|
-
return FileViewCls(location)
|
32
|
-
|
33
|
-
def open_dir(self, item_path: str) -> DirectoryViewCls:
|
12
|
+
def open_workflow(self, workflow_id: str, wait_for_open) -> WorkflowCls:
|
13
|
+
item_path = os.path.join(params["workspacePath"], 'workflow', workflow_id)
|
34
14
|
if not os.path.isabs(item_path):
|
35
15
|
item_path = os.path.abspath(item_path)
|
36
16
|
location = ["FileOrDir", item_path]
|
37
|
-
socket.post("add-tab", {"location": location, "name":
|
38
|
-
|
17
|
+
socket.post("add-tab", {"location": location, "name": "todo"})
|
18
|
+
if wait_for_open:
|
19
|
+
self._wait_for_tab_open(location)
|
20
|
+
return WorkflowCls(location)
|
39
21
|
|
40
22
|
def get_active(self) -> ViewCls:
|
41
23
|
result = socket.post_and_recv_result("get-active-tab", {})
|
42
24
|
return self._result_to_view(result)
|
43
|
-
|
44
|
-
def _result_to_view(self, result: list[str]) -> ViewCls:
|
45
|
-
if result[0] == "Website":
|
46
|
-
return WebsiteViewCls(result)
|
47
|
-
elif result[0] == "FileOrDir":
|
48
|
-
if os.path.isdir(result[1]):
|
49
|
-
return DirectoryViewCls(result)
|
50
|
-
else:
|
51
|
-
if result[1].lower().split(".")[-1] == 'workflow':
|
52
|
-
return WorkflowCls(result)
|
53
|
-
return FileViewCls(result)
|
54
|
-
return ViewCls(result)
|
55
25
|
|
56
|
-
def
|
26
|
+
def _wait_for_tab_open(self, location: list[str] | ViewCls):
|
57
27
|
times = 0
|
58
28
|
while not self.is_tab_open(location):
|
59
29
|
time.sleep(0.01)
|
@@ -7,7 +7,7 @@ pycoze/ai/llm/text_to_image_prompt.py,sha256=0bx2C_YRvjAo7iphHGp1-pmGKsKqwur7dM0
|
|
7
7
|
pycoze/ai/llm/think.py,sha256=sUgTBdGzcZtL3r-Wx8M3lDuVUmDVz8g3qC0VU8uiKAI,5143
|
8
8
|
pycoze/api/__init__.py,sha256=GGRRRPop0ZxdXe5JRhg2XvHITGIWfNcHA25opJZ0f1w,313
|
9
9
|
pycoze/api/lib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
10
|
-
pycoze/api/lib/tab_cls.py,sha256=
|
10
|
+
pycoze/api/lib/tab_cls.py,sha256=3VhrosueDdnUmKQp4megOU2Z_mH5UnX96vo3NdnANe0,2482
|
11
11
|
pycoze/api/lib/view.py,sha256=sl3qOC-IbfJaUg1-nLtEpm-0sDxyI9UOhhrnITaFsFs,7258
|
12
12
|
pycoze/api/lib/window_cls.py,sha256=Yezy-SR_EwVtUjrgXnHRC69WGgXVaXeJHjaxn09Ophg,1737
|
13
13
|
pycoze/bot/__init__.py,sha256=JxnRoCCqx_LFyVb3pLu0qYCsH8ZLuAaMXAtvVUuCHuE,78
|
@@ -35,8 +35,8 @@ pycoze/utils/arg.py,sha256=jop1tBfe5hYkHW1NSpCeaZBEznkgguBscj_7M2dWfrs,503
|
|
35
35
|
pycoze/utils/env.py,sha256=5pWlXfM1F5ZU9hhv1rHlDEanjEW5wf0nbyez9bNRqqA,559
|
36
36
|
pycoze/utils/socket.py,sha256=yyYgx7G40x58sV466OQH0vj3i55xgR3uMDEjbQMbGks,2413
|
37
37
|
pycoze/utils/text_or_file.py,sha256=gpxZVWt2DW6YiEg_MnMuwg36VNf3TX383QD_1oZNB0Y,551
|
38
|
-
pycoze-0.1.
|
39
|
-
pycoze-0.1.
|
40
|
-
pycoze-0.1.
|
41
|
-
pycoze-0.1.
|
42
|
-
pycoze-0.1.
|
38
|
+
pycoze-0.1.270.dist-info/LICENSE,sha256=QStd_Qsd0-kAam_-sOesCIp_uKrGWeoKwt9M49NVkNU,1090
|
39
|
+
pycoze-0.1.270.dist-info/METADATA,sha256=7u5fMz76_EV_QxwdvfOSQfn0g93kDjdDHPsou4konfU,699
|
40
|
+
pycoze-0.1.270.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
41
|
+
pycoze-0.1.270.dist-info/top_level.txt,sha256=76dPeDhKvOCleL3ZC5gl1-y4vdS1tT_U1hxWVAn7sFo,7
|
42
|
+
pycoze-0.1.270.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|