zrb 1.0.0a17__py3-none-any.whl → 1.0.0a19__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.
Files changed (144) hide show
  1. zrb/__init__.py +2 -0
  2. zrb/builtin/project/add/fastapp/fastapp_task.py +25 -39
  3. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/.flake8 +3 -0
  4. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/column/create_column_task.py +14 -0
  5. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/add_entity_task.py +128 -0
  6. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/add_entity_util.py +213 -0
  7. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/entity/any_client_method.template.py → my_app_name/_zrb/entity/template/any_client_method.py} +1 -1
  8. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/entity/module_template → my_app_name/_zrb/entity/template/app_template/module/my_module}/service/my_entity/my_entity_usecase.py +4 -5
  9. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/entity/template/app_template/module/my_module/service/my_entity/repository/factory.py +13 -0
  10. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/entity/module_template → my_app_name/_zrb/entity/template/app_template/module/my_module}/service/my_entity/repository/my_entity_db_repository.py +4 -4
  11. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/entity/module_template → my_app_name/_zrb/entity/template/app_template/module/my_module}/service/my_entity/repository/my_entity_repository.py +1 -2
  12. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/format_task.py +17 -0
  13. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb → my_app_name/_zrb}/input.py +1 -4
  14. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/add_module_task.py +85 -0
  15. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/add_module_util.py +154 -0
  16. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/api_client.py +6 -0
  17. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/direct_client.py +6 -0
  18. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/_zrb/module/template/app_template/module/my_module/client/factory.py +9 -0
  19. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/migration/env.py +2 -4
  20. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/migration/script.py.mako +1 -0
  21. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/route.py +3 -3
  22. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb → my_app_name/_zrb}/task.py +12 -14
  23. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb → my_app_name/_zrb}/util.py +1 -1
  24. zrb/builtin/project/add/fastapp/fastapp_template/{_zrb → my_app_name/_zrb}/venv_task.py +1 -1
  25. zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/app.py +2 -2
  26. zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/base_db_repository.py +1 -1
  27. zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/db_engine.py +1 -1
  28. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/main.py +7 -0
  29. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/migrate.py +3 -0
  30. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/client/any_client.py +1 -1
  31. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/api_client.py +7 -0
  32. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/direct_client.py +6 -0
  33. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/client/factory.py +9 -0
  34. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/migration/env.py +2 -4
  35. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/migration/script.py.mako +1 -0
  36. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/migration_metadata.py +1 -1
  37. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/route.py +4 -4
  38. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/auth/service/user/repository/factory.py +13 -0
  39. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/service/user/repository/user_db_repository.py +4 -4
  40. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/service/user/repository/user_repository.py +1 -2
  41. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/service/user/user_usecase.py +4 -5
  42. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/gateway/migration/env.py +2 -4
  43. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/gateway/migration/script.py.mako +1 -0
  44. zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/gateway/route.py +5 -5
  45. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/module/gateway/subroute/auth.py +0 -0
  46. zrb/builtin/project/add/fastapp/fastapp_template/my_app_name/schema/__init__.py +0 -0
  47. zrb/builtin/project/add/fastapp/fastapp_util.py +29 -5
  48. zrb/builtin/python.py +4 -1
  49. zrb/builtin/todo.py +35 -14
  50. zrb/callback/callback.py +0 -1
  51. zrb/config.py +1 -0
  52. zrb/content_transformer/content_transformer.py +5 -3
  53. zrb/context/any_context.py +6 -6
  54. zrb/group/group.py +0 -1
  55. zrb/input/any_input.py +4 -0
  56. zrb/input/base_input.py +4 -4
  57. zrb/input/bool_input.py +1 -1
  58. zrb/input/float_input.py +2 -2
  59. zrb/input/int_input.py +1 -1
  60. zrb/input/option_input.py +2 -2
  61. zrb/input/password_input.py +2 -2
  62. zrb/input/text_input.py +2 -2
  63. zrb/runner/cli.py +2 -31
  64. zrb/runner/common_util.py +31 -0
  65. zrb/runner/web_app.py +25 -6
  66. zrb/runner/web_controller/static/pico.min.css +1 -1
  67. zrb/runner/web_controller/static/task-ui/common-util.js +63 -0
  68. zrb/runner/web_controller/static/task-ui/current-session.js +164 -0
  69. zrb/runner/web_controller/static/task-ui/event.js +120 -0
  70. zrb/runner/web_controller/static/task-ui/past-session.js +138 -0
  71. zrb/runner/web_controller/task_ui/controller.py +20 -19
  72. zrb/runner/web_controller/task_ui/view.html +12 -15
  73. zrb/session_state_logger/any_session_state_logger.py +0 -1
  74. zrb/session_state_logger/file_session_state_logger.py +0 -1
  75. zrb/task/base_trigger.py +0 -1
  76. zrb/task/llm_task.py +0 -1
  77. zrb/task/make_task.py +0 -1
  78. zrb/task/scaffolder.py +6 -4
  79. zrb/task/scheduler.py +0 -1
  80. zrb/util/cmd/command.py +0 -1
  81. zrb/util/codemod/append_code_to_class.py +4 -4
  82. zrb/util/codemod/append_code_to_function.py +2 -2
  83. zrb/util/codemod/append_code_to_method.py +2 -2
  84. zrb/util/codemod/prepend_code_to_module.py +2 -2
  85. zrb/util/file.py +1 -1
  86. zrb/util/todo.py +100 -17
  87. zrb/xcom/xcom.py +0 -1
  88. {zrb-1.0.0a17.dist-info → zrb-1.0.0a19.dist-info}/METADATA +1 -1
  89. zrb-1.0.0a19.dist-info/RECORD +241 -0
  90. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/column/create_column_task.py +0 -11
  91. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/factory.py +0 -13
  92. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/task.py +0 -260
  93. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/task.py +0 -143
  94. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/api_client.py +0 -6
  95. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/direct_client.py +0 -6
  96. zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/factory.py +0 -9
  97. zrb/builtin/project/add/fastapp/fastapp_template/main.py +0 -7
  98. zrb/builtin/project/add/fastapp/fastapp_template/migrate.py +0 -3
  99. zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/api_client.py +0 -7
  100. zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/direct_client.py +0 -6
  101. zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/factory.py +0 -9
  102. zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/repository/factory.py +0 -13
  103. zrb/runner/web_controller/task_ui/partial/common-util.js +0 -37
  104. zrb/runner/web_controller/task_ui/partial/main.js +0 -195
  105. zrb/runner/web_controller/task_ui/partial/show-existing-session.js +0 -97
  106. zrb/runner/web_controller/task_ui/partial/visualize-history.js +0 -104
  107. zrb-1.0.0a17.dist-info/RECORD +0 -234
  108. /zrb/builtin/project/add/fastapp/fastapp_template/{.gitignore → my_app_name/.gitignore} +0 -0
  109. /zrb/builtin/project/add/fastapp/fastapp_template/{README.md → my_app_name/README.md} +0 -0
  110. /zrb/builtin/project/add/fastapp/fastapp_template/{__init__.py → my_app_name/__init__.py} +0 -0
  111. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb → my_app_name/_zrb}/config.py +0 -0
  112. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/entity/schema.template.py → my_app_name/_zrb/entity/template/app_template/schema/my_entity.py} +0 -0
  113. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb → my_app_name/_zrb}/group.py +0 -0
  114. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template/migration/versions/.gitkeep → my_app_name/_zrb/module/template/app_template/module/gateway/subroute/my_module.py} +0 -0
  115. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/alembic.ini +0 -0
  116. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/client/any_client.py +0 -0
  117. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/migration/README +0 -0
  118. /zrb/builtin/project/add/fastapp/fastapp_template/{module/gateway → my_app_name/_zrb/module/template/app_template/module/my_module}/migration/versions/.gitkeep +0 -0
  119. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/migration_metadata.py +0 -0
  120. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/module_template → my_app_name/_zrb/module/template/app_template/module/my_module}/service/__init__.py +0 -0
  121. /zrb/builtin/project/add/fastapp/fastapp_template/{_zrb/module/template/task_definition.py → my_app_name/_zrb/module/template/module_task_definition.py} +0 -0
  122. /zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/__init__.py +0 -0
  123. /zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/base_usecase.py +0 -0
  124. /zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/error.py +0 -0
  125. /zrb/builtin/project/add/fastapp/fastapp_template/{common → my_app_name/common}/schema.py +0 -0
  126. /zrb/builtin/project/add/fastapp/fastapp_template/{config.py → my_app_name/config.py} +0 -0
  127. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/__init__.py +0 -0
  128. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/alembic.ini +0 -0
  129. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/migration/README +0 -0
  130. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/migration/versions/3093c7336477_add_user_table.py +0 -0
  131. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/service/__init__.py +0 -0
  132. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/service/user/__init__.py +0 -0
  133. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/auth/service/user/repository/__init__.py +0 -0
  134. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/gateway/alembic.ini +0 -0
  135. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/gateway/migration/README +0 -0
  136. /zrb/builtin/project/add/fastapp/fastapp_template/{schema/__init__.py → my_app_name/module/gateway/migration/versions/.gitkeep} +0 -0
  137. /zrb/builtin/project/add/fastapp/fastapp_template/{module → my_app_name/module}/gateway/migration_metadata.py +0 -0
  138. /zrb/builtin/project/add/fastapp/fastapp_template/{requirements.txt → my_app_name/requirements.txt} +0 -0
  139. /zrb/builtin/project/add/fastapp/fastapp_template/{schema → my_app_name/schema}/permission.py +0 -0
  140. /zrb/builtin/project/add/fastapp/fastapp_template/{schema → my_app_name/schema}/role.py +0 -0
  141. /zrb/builtin/project/add/fastapp/fastapp_template/{schema → my_app_name/schema}/user.py +0 -0
  142. /zrb/builtin/project/add/fastapp/fastapp_template/{template.env → my_app_name/template.env} +0 -0
  143. {zrb-1.0.0a17.dist-info → zrb-1.0.0a19.dist-info}/WHEEL +0 -0
  144. {zrb-1.0.0a17.dist-info → zrb-1.0.0a19.dist-info}/entry_points.txt +0 -0
@@ -1,195 +0,0 @@
1
- window.addEventListener("load", async function () {
2
- // Get current session
3
- if (SESSION_NAME != "") {
4
- pollSession();
5
- }
6
- // set maxStartDate to today
7
- const tomorrow = new Date();
8
- tomorrow.setDate(tomorrow.getDate() + 1); // Move to the next day
9
- tomorrow.setHours(0, 0, 0, 0);
10
- const formattedTomorrow = toLocalDateInputValue(tomorrow);
11
- const maxStartAtInput = document.getElementById("max-start-at-input");
12
- maxStartAtInput.value = formattedTomorrow;
13
- // set minStartDate to yesterday
14
- const today = new Date();
15
- today.setHours(0, 0, 0, 0); // Set time to 00:00:00
16
- const formattedToday = toLocalDateInputValue(today);
17
- const minStartAtInput = document.getElementById("min-start-at-input");
18
- minStartAtInput.value = formattedToday;
19
- // Update session
20
- pollExistingSessions(PAGE);
21
- });
22
-
23
- async function pollExistingSessions() {
24
- while (true) {
25
- await getExistingSessions(PAGE);
26
- await delay(5000);
27
- }
28
- }
29
-
30
- async function getExistingSessions(page) {
31
- PAGE=page
32
- const minStartAtInput = document.getElementById("min-start-at-input");
33
- const minStartAt = formatDate(minStartAtInput.value);
34
- const maxStartAtInput = document.getElementById("max-start-at-input");
35
- const maxStartAt = formatDate(maxStartAtInput.value);
36
- console.log(minStartAt);
37
- const queryString = new URLSearchParams({
38
- page: page,
39
- from: minStartAt,
40
- to: maxStartAt,
41
- }).toString();
42
- try {
43
- // Send the AJAX request
44
- const response = await fetch(`${API_URL}list?${queryString}`, {
45
- method: "GET",
46
- headers: {
47
- "Content-Type": "application/json"
48
- },
49
- });
50
- const {total, data} = await response.json();
51
- showExistingSession(page, total, data);
52
- console.log("Success:", data);
53
- } catch (error) {
54
- console.error("Error:", error);
55
- }
56
- }
57
-
58
-
59
- function toLocalDateInputValue(date) {
60
- const year = date.getFullYear();
61
- const month = String(date.getMonth() + 1).padStart(2, '0'); // Months are 0-indexed
62
- const day = String(date.getDate()).padStart(2, '0');
63
- const hours = String(date.getHours()).padStart(2, '0');
64
- const minutes = String(date.getMinutes()).padStart(2, '0');
65
- return `${year}-${month}-${day}T${hours}:${minutes}`;
66
- }
67
-
68
-
69
- function formatDate(dateString) {
70
- const date = new Date(dateString);
71
- const year = date.getFullYear();
72
- const month = String(date.getMonth() + 1).padStart(2, '0');
73
- const day = String(date.getDate()).padStart(2, '0');
74
- const hours = String(date.getHours()).padStart(2, '0');
75
- const minutes = String(date.getMinutes()).padStart(2, '0');
76
- const seconds = String(date.getSeconds()).padStart(2, '0');
77
- return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
78
- }
79
-
80
- function openDialog(event) {
81
- event.preventDefault();
82
- const dialog = document.getElementById("session-history-dialog")
83
- dialog.showModal();
84
- }
85
-
86
-
87
- function closeDialog(event) {
88
- event.preventDefault();
89
- const dialog = document.getElementById("session-history-dialog")
90
- dialog.close();
91
- }
92
-
93
-
94
- async function submitForm(event) {
95
- // Prevent the form from submitting the traditional way
96
- event.preventDefault();
97
- // Select the form
98
- const form = document.getElementById("submit-task-form");
99
- // Initialize an empty object to hold form data
100
- const formData = {};
101
- // Iterate through each input in the form
102
- Array.from(form.elements).forEach(element => {
103
- // Only include inputs with a name attribute and ignore buttons
104
- if (element.name && (element.type !== "button" && element.type !== "submit")) {
105
- formData[element.name] = element.value;
106
- }
107
- });
108
- // Convert formData to JSON
109
- const jsonData = JSON.stringify(formData);
110
- try {
111
- // Send the AJAX request
112
- const response = await fetch(API_URL, {
113
- method: "POST",
114
- headers: {
115
- "Content-Type": "application/json"
116
- },
117
- body: jsonData
118
- });
119
- const data = await response.json();
120
- console.log("Success:", data);
121
- SESSION_NAME = data.session_name;
122
- history.pushState(null, "", `${CURRENT_URL}${SESSION_NAME}`);
123
- getExistingSessions(0);
124
- await pollSession();
125
- } catch (error) {
126
- console.error("Error:", error);
127
- }
128
- }
129
-
130
-
131
- async function pollSession() {
132
- const resultTextarea = document.getElementById("result-textarea");
133
- const logTextarea = document.getElementById("log-textarea");
134
- const submitTaskForm = document.getElementById("submit-task-form");
135
- let isFinished = false;
136
- let errorCount = 0;
137
- while (!isFinished) {
138
- try {
139
- const data = await getSession();
140
- // update inputs
141
- const dataInputs = data.input;
142
- for (const inputName in dataInputs) {
143
- const inputValue = dataInputs[inputName];
144
- const input = submitTaskForm.querySelector(`[name="${inputName}"]`);
145
- input.value = inputValue;
146
- }
147
- resultLineCount = data.final_result.split("\n").length;
148
- resultTextarea.rows = resultLineCount <= 5 ? resultLineCount : 5;
149
- // update text areas
150
- resultTextarea.value = data.final_result;
151
- logTextarea.value = data.log.join("\n");
152
- logTextarea.scrollTop = logTextarea.scrollHeight;
153
- // visualize history
154
- visualizeHistory(data.task_status, data.finished);
155
- if (data.finished) {
156
- isFinished = true;
157
- } else {
158
- await delay(200);
159
- }
160
- } catch (error) {
161
- console.error("Error fetching session status:", error);
162
- errorCount++;
163
- if (errorCount > 5) {
164
- console.error("Exceeding maximum error count, quitting");
165
- return;
166
- }
167
- continue;
168
- }
169
- }
170
- }
171
-
172
-
173
- async function getSession() {
174
- try {
175
- const response = await fetch(`${API_URL}${SESSION_NAME}`, {
176
- method: "GET",
177
- headers: {
178
- "Content-Type": "application/json"
179
- },
180
- });
181
- return await response.json();
182
- } catch (error) {
183
- console.error("Error:", error);
184
- }
185
- }
186
-
187
-
188
- function rstripSlash(str) {
189
- return str.replace(/\/+$/, ""); // Removes one or more trailing slashes
190
- }
191
-
192
-
193
- function delay(ms) {
194
- return new Promise(resolve => setTimeout(resolve, ms));
195
- }
@@ -1,97 +0,0 @@
1
- function showExistingSession(page, total, data) {
2
- const ul = document.getElementById("session-history-ul");
3
- ul.innerHTML = ''; // Clear existing content
4
- data.forEach(item => {
5
- const taskStatus = item.task_status[item.main_task_name];
6
- const finalStatus = getFinalTaskStatus(taskStatus);
7
- const finalColor = getFinalColor(finalStatus);
8
- const taskHistories = taskStatus.history;
9
- const taskStartTime = taskHistories.length > 0 ? taskHistories[0].time : ""
10
- const li = document.createElement('li');
11
- const a = document.createElement('a');
12
- const dateSpan = document.createElement('span');
13
- const statusSpan = document.createElement('span');
14
- a.textContent = item.name;
15
- a.target = '_blank';
16
- a.href = `${UI_URL}${item.name}`;
17
- li.appendChild(a);
18
- statusSpan.style.marginLeft = "10px";
19
- statusSpan.style.display = 'inline-block';
20
- statusSpan.style.width = '15px';
21
- statusSpan.style.height = '15px';
22
- statusSpan.style.borderRadius = '50%';
23
- statusSpan.style.border = '2px solid black';
24
- statusSpan.style.backgroundColor = finalColor;
25
- li.appendChild(statusSpan);
26
- dateSpan.style.marginLeft = "10px";
27
- dateSpan.textContent = taskStartTime;
28
- li.appendChild(dateSpan);
29
- ul.appendChild(li);
30
- });
31
- const paginationUl = document.getElementById("session-history-pagination-ul");
32
- paginationUl.innerHTML = ''; // Clear previous pagination
33
-
34
- const totalPages = Math.ceil(total / 10); // Calculate total pages based on page size
35
- const maxPagesToShow = 5; // Number of pages to display around the current page
36
- const halfMaxPages = Math.floor(maxPagesToShow / 2);
37
-
38
- // Add first page and previous controls
39
- if (page > 0) {
40
- paginationUl.appendChild(createPageLink("⟪", 0)); // Go to first page
41
- paginationUl.appendChild(createPageLink("⟨", page - 1)); // Go to previous page
42
- }
43
-
44
- let startPage = Math.max(0, page - halfMaxPages);
45
- let endPage = Math.min(totalPages - 1, page + halfMaxPages);
46
-
47
- if (page <= halfMaxPages) {
48
- endPage = Math.min(totalPages - 1, maxPagesToShow - 1);
49
- } else if (page + halfMaxPages >= totalPages) {
50
- startPage = Math.max(0, totalPages - maxPagesToShow);
51
- }
52
-
53
- if (startPage > 1) {
54
- paginationUl.appendChild(createEllipsis());
55
- }
56
-
57
- // Add page links within the calculated range
58
- for (let i = startPage; i <= endPage; i++) {
59
- if (i === page) {
60
- const pageLi = document.createElement('li');
61
- pageLi.textContent = i + 1;
62
- paginationUl.append(pageLi)
63
- } else {
64
- paginationUl.appendChild(createPageLink(i + 1, i))
65
- }
66
- }
67
-
68
- // Add ellipsis after the end page if needed
69
- if (endPage < totalPages - 2) {
70
- paginationUl.appendChild(createEllipsis());
71
- }
72
-
73
- // Add next and last page controls
74
- if (page < totalPages - 1) {
75
- paginationUl.appendChild(createPageLink("⟩", page + 1)); // Go to next page
76
- paginationUl.appendChild(createPageLink("⟫", totalPages - 1)); // Go to last page
77
- }
78
- }
79
-
80
- function createPageLink(text, page) {
81
- const li = document.createElement('li');
82
- const link = document.createElement('a');
83
- link.textContent = text;
84
- link.href = '#';
85
- link.onclick = (e) => {
86
- e.preventDefault();
87
- getExistingSessions(page);
88
- };
89
- li.appendChild(link);
90
- return li;
91
- }
92
-
93
- function createEllipsis() {
94
- const li = document.createElement('li');
95
- li.textContent = '...';
96
- return li;
97
- }
@@ -1,104 +0,0 @@
1
- function visualizeHistory(allTaskStatus, finished) {
2
- const taskNames = Object.keys(allTaskStatus);
3
- const now = Date.now();
4
-
5
- // Set up canvas context
6
- const canvas = document.getElementById("history-canvas");
7
- canvas.height = taskNames.length * 50 + 10;
8
- const ctx = canvas.getContext("2d");
9
- ctx.clearRect(0, 0, canvas.width, canvas.height);
10
- ctx.fillStyle = "#EEE";
11
- ctx.fillRect(0, 0, canvas.width, canvas.height);
12
-
13
- // Calculate start and end times
14
- let minDateTime = null;
15
- let maxDateTime = null;
16
- for (let taskName in allTaskStatus) {
17
- let history = allTaskStatus[taskName].history;
18
- if (history.length == 0) {
19
- continue;
20
- }
21
- let startTime = new Date(history[0].time);
22
- if (minDateTime === null || minDateTime > startTime) {
23
- minDateTime = startTime;
24
- }
25
- let lastTime = new Date(history[history.length - 1].time);
26
- if (maxDateTime === null || maxDateTime < lastTime) {
27
- maxDateTime = lastTime;
28
- }
29
- }
30
- if (minDateTime === null || maxDateTime === null) {
31
- return
32
- }
33
- if (!finished) {
34
- maxDateTime = now;
35
- }
36
- if (maxDateTime - minDateTime == 0) {
37
- maxDateTime.setSeconds(maxDateTime.getSeconds() + 1)
38
- }
39
- // Canvas settings
40
- const chartWidth = canvas.width;
41
- const barHeight = 20;
42
- const gap = 10;
43
- const timeScale = (chartWidth - 200) / (maxDateTime - minDateTime);
44
-
45
- // Draw labels and bars
46
- taskNames.forEach((taskName, index) => {
47
- const taskHistories = allTaskStatus[taskName].history;
48
- if (taskHistories.length == 0) {
49
- return
50
- }
51
- // Get last status
52
- const finalStatus = getFinalTaskStatus(allTaskStatus[taskName]);
53
- const startDateTime = new Date(taskHistories[0].time);
54
- const endDateTime = getTaskEndDateTime(allTaskStatus[taskName], now);
55
- const startX = 100 + (startDateTime - minDateTime) * timeScale;
56
- const barWidth = (endDateTime - startDateTime) * timeScale;
57
- const startY = index * (barHeight + gap + 20) + 5;
58
-
59
- // Draw task label
60
- ctx.fillStyle = "#000";
61
- ctx.font = "12px Arial";
62
- ctx.textAlign = "right";
63
- ctx.fillText(taskName, 90, startY + barHeight / 1.5);
64
-
65
- // Draw task bar
66
- ctx.fillStyle = getFinalColor(finalStatus);
67
- ctx.fillRect(startX, startY, barWidth, barHeight);
68
-
69
- ctx.fillStyle = "#000";
70
- ctx.textAlign = "left";
71
- // Combine captions if time overlap
72
- let labels = {};
73
- for (let taskHistory of taskHistories) {
74
- let status = taskHistory.status;
75
- let dateTime = new Date(taskHistory.time);
76
- let statusStartX = 100 + (dateTime - minDateTime) * timeScale;
77
- if (!(statusStartX in labels)) {
78
- labels[statusStartX] = {dateTime: dateTime, caption: status};
79
- } else {
80
- labels[statusStartX].caption += `, ${status}`
81
- }
82
- }
83
- // Draw start and end time below the bar
84
- for (let statusStartX in labels) {
85
- const {dateTime, caption} = labels[statusStartX];
86
- const [dateStr, timeStr] = dateTime.toISOString().split("T");
87
- ctx.font = "10px Arial";
88
- ctx.fillText(caption, statusStartX, startY + 10);
89
- ctx.font = "8px Arial";
90
- ctx.fillText(dateStr, statusStartX, startY + barHeight + 10);
91
- ctx.fillText(timeStr, statusStartX, startY + barHeight + 20);
92
- }
93
- });
94
- }
95
-
96
- function getTaskEndDateTime(taskStatus, now) {
97
- if (taskStatus.is_completed || taskStatus.is_terminated || taskStatus.is_skipped || taskStatus.is_permanently_failed) {
98
- histories = taskStatus.history;
99
- if (histories.length > 0) {
100
- return new Date(histories[histories.length - 1].time);
101
- }
102
- }
103
- return now;
104
- }
@@ -1,234 +0,0 @@
1
- zrb/__init__.py,sha256=ESskletjBpLO78a6wLigi9wnEGtmhfc3i_rbyMvrSyU,2767
2
- zrb/__main__.py,sha256=tCRJm0qtx646ojZP8Rtgu8t_SDdSpply21HbR5poVvk,744
3
- zrb/attr/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- zrb/attr/type.py,sha256=4TV5gPYMMrKh5V-yB6iRYKCbsXAH_AvGXMsjxKLHcUs,568
5
- zrb/builtin/__init__.py,sha256=xTpG014FKCt-HSe_80V27rFbYS66jrDuryeeilVd5f8,1763
6
- zrb/builtin/base64.py,sha256=1YnSwASp7OEAvQcsnHZGpJEvYoI1Z2zTIJ1bCDHfcPQ,921
7
- zrb/builtin/git.py,sha256=xHzg0srhp1uOSXWvwA--Fo8idkt0G9010iJ8uIndzg4,5463
8
- zrb/builtin/git_subtree.py,sha256=GwI8befmvXEoX1xyZ4jkeG8nsyCkuRG1lzPiGss3yqw,3493
9
- zrb/builtin/group.py,sha256=3xfEx9aEDcq6rDprGKYGqOXN2i0ts4W_RQVErL51o1o,1594
10
- zrb/builtin/llm/llm_chat.py,sha256=ATENrihXUMkQ8IoarhacohUe-I_43yb7c0Tl5f69mAI,1397
11
- zrb/builtin/llm/tool/cli.py,sha256=n8THj513k1vrXUoZrTcxESmdZzhBOP1-L3Dmup5ZW54,225
12
- zrb/builtin/llm/tool/rag.py,sha256=vH4ztOATqpVqFaXEccZ2DkZ5nxioMy3t9yaaUUhAKwI,6831
13
- zrb/builtin/llm/tool/web.py,sha256=cc-3vg8vKRq-uOk-7Z1Xe70Sn1omNqZCvePUcRptEgw,2216
14
- zrb/builtin/md5.py,sha256=0pNlrfZA0wlZlHvFHLgyqN0JZJWGKQIF5oXxO44_OJk,949
15
- zrb/builtin/project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- zrb/builtin/project/add/fastapp/fastapp_input.py,sha256=fYD6n8-PlrTyz1Kq5GYAt0PQsyUp2qsPKRJ68hINSXE,314
17
- zrb/builtin/project/add/fastapp/fastapp_task.py,sha256=teKjtMeOka1HjETwd_y2rGHCjZL27aN0k9FxIl8Licg,2734
18
- zrb/builtin/project/add/fastapp/fastapp_template/.gitignore,sha256=1BMFpr_M5OyTs-weCZZlVlf85sWikzdbvmKu86YD7G0,28
19
- zrb/builtin/project/add/fastapp/fastapp_template/README.md,sha256=MAo7ZFbg7LLiAfQbXcippMgjJ2-VXMKtiTDEZ3I4AAg,221
20
- zrb/builtin/project/add/fastapp/fastapp_template/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/column/create_column_task.py,sha256=IEdWRyR2dlXJFZtccwMeeAQulRSIOoojbreq1PZ-a4Q,275
22
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/config.py,sha256=PZw_cL9OQr6s2f1wMt4QC3hBk1JP7DtXBWFKNhJZE6o,547
23
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/any_client_method.template.py,sha256=JXG_EPl7JJAZU9RKPTwqECwFotPGwB5KR5B049Veccc,602
24
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/module_template/service/my_entity/my_entity_usecase.py,sha256=i_VGd1T76xX5Yz-23cjhsnbcEJXh5vWLQtlUNXKxTkA,2360
25
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/factory.py,sha256=9deiKrwcAG2yvGQzEVvooqM_hg6jeynKsh94NbL0e7Q,529
26
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/my_entity_db_repository.py,sha256=QNqImFpEfunHyrlIoJ1pyKJ5kO8rgvpyKTF7KnOqHHw,1101
27
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/module_template/service/my_entity/repository/my_entity_repository.py,sha256=Rjw9i4K7d_wVQwg1x_i3i3lsNqwO3eGTrjbl7oY_wVg,914
28
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/schema.template.py,sha256=O98QJ0mH2obF_rY0dFopSEWrZ9PWm78ns2ESrjKBMgc,666
29
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/entity/task.py,sha256=QfxAtKnBiyIBJi8bt2Vgn-qNrfI-dXfx6OXiHuQVxuA,9179
30
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/group.py,sha256=S0sKnnABSGy3YzaExH40xJjm4UsEX6AyDE1u94ewk6A,648
31
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/input.py,sha256=EWw0SPH6cLgkhrvtGsVg3rb6KM1Nl9VswaMhvJZHAm8,1076
32
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/task.py,sha256=e7jVaT-6_FmBqW9Gw4AByHQj_XQR3PGhLOSjVb7WBOw,4835
33
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
34
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/any_client.py,sha256=6ZI13OocD7BDF6z6RdIUL6Rk9oDzT5L55bkaN1HjmZE,104
35
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/api_client.py,sha256=PLIgpGeL17bFljP7wgSfo-bd23FfXTuDCI4J7koHVT4,178
36
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/direct_client.py,sha256=We2Sd1GgBamt9GMCbLt_O1AAlWPhgSaRGOw1Q6l9dgo,208
37
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/client/factory.py,sha256=WkU1DIBZoMGvHpVw63-ei-zed7jrIETyGdMyIAIEWto,443
38
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
39
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/migration/env.py,sha256=pVFeYeFx6jKCPL-EgeFpPxUxjNhm-PXtAYz53l-HwyA,3499
40
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
41
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/migration/versions/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/migration_metadata.py,sha256=NbIb5ncy6x5RrFD2TZMDwxBK_wDTyJEIvieMRmNpf9M,55
43
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/route.py,sha256=8aK7Aha2WrT-mIDS_NcoBromjbxNTk2jh-Ir7g-obDA,963
44
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/module_template/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/module/template/task_definition.py,sha256=uWeBptdMZfX-PZ2OdB_4DnUpIc-AZcZqb9wAehBdx7w,927
46
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/task.py,sha256=95cDBuP7RgsVeox5i7L9Q-RWQNNtDWkde0hxXq_hOU4,4517
47
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/util.py,sha256=O729fQKUrEBGZ3e7p9U1LnxTdgRt1qQ8sh-ubtOk-a4,3328
48
- zrb/builtin/project/add/fastapp/fastapp_template/_zrb/venv_task.py,sha256=Oj_k-AANcwuXHBAafefzPkrVqJH0PfHqjzWCMbQfVMk,477
49
- zrb/builtin/project/add/fastapp/fastapp_template/common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
50
- zrb/builtin/project/add/fastapp/fastapp_template/common/app.py,sha256=uWBOlwBgD7vDeuUNNTJmo__0ZzzZsZjm5BzwI6uz2Jg,488
51
- zrb/builtin/project/add/fastapp/fastapp_template/common/base_db_repository.py,sha256=tyE5ZKapKtRrjbAww2kG8eSXGhfREas0vtwd3XjD37k,6023
52
- zrb/builtin/project/add/fastapp/fastapp_template/common/base_usecase.py,sha256=3zVrV_DeTWQmDYf0RisjOyCyUbzJI0v1AP65_gC_9Sc,10030
53
- zrb/builtin/project/add/fastapp/fastapp_template/common/db_engine.py,sha256=8uDn6eLloVnw58Z2gA77-K8cWE0G6DGzDVEvyIqt41M,189
54
- zrb/builtin/project/add/fastapp/fastapp_template/common/error.py,sha256=hgRvoCH3C7t_iZuLThiqJVs20zUasQWbH_8jDceF8nk,243
55
- zrb/builtin/project/add/fastapp/fastapp_template/common/schema.py,sha256=dbRryeP5u7ObGX3GjF9ZID00yXffOp-AxyXu8oVJP0I,82
56
- zrb/builtin/project/add/fastapp/fastapp_template/config.py,sha256=FRhDQ6ZTvvdYu-I6nRhc9wxA3nYaYMpkl8q-FeZZcdA,1024
57
- zrb/builtin/project/add/fastapp/fastapp_template/main.py,sha256=npRXgrPmAN32rjbykKP--Lth3PGKoaj51wTVjcl0k-w,223
58
- zrb/builtin/project/add/fastapp/fastapp_template/migrate.py,sha256=bpIKOHZ0sV3sJrUznhKt72tKXe-Uoq9dJ7f2Uh7E0g8,92
59
- zrb/builtin/project/add/fastapp/fastapp_template/module/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
61
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/any_client.py,sha256=vSrNVAyarXo7VUatF4-x8VaH0dTbJLqBEqmM_lDtgwk,772
62
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/api_client.py,sha256=UHoAbiU1sS8UxS7mCeSzFJjzpaK79LxOGX9IX5GsB_I,298
63
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/direct_client.py,sha256=mLjt1AB_26lfwPBvRXAHg0Wbb8SGRT44R86nGpDdZDI,224
64
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/client/factory.py,sha256=pZMWAm7xxqNOHYIXzs94g8wG2GE8KYbTxIACO_rbGh0,410
65
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
66
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/migration/env.py,sha256=66zA_MPR6CCEe3yYKDibtv4eRZx4p6ZX-8waFxmzQZE,3489
67
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
68
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/migration/versions/3093c7336477_add_user_table.py,sha256=j4tkh9NaTKNMefcy1dUdgRI5CzydUidli7i0Q6Ap-7Q,1021
69
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/migration_metadata.py,sha256=ONHEUZn4EDxKKiOt0UD9_8g7-XujRaXX0zU_PsjHZ0c,162
70
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/route.py,sha256=8rLVEeol9p46hbHPmLkZp8atjFbjTag0IRkVJ0HVOEs,1109
71
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/repository/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/repository/factory.py,sha256=lxEjwTJlc5U7tY0E4ljSAmqEhn_0IyOdPr0vX8bIZog,469
75
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/repository/user_db_repository.py,sha256=dq-VdKQXBbYZyqVCdloNvIC-f4VOmVW1Rm_YkS6W-38,1603
76
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/repository/user_repository.py,sha256=JEmbYpbkybJOCgC2rtfULc2i8baih-8WRr-a5MT03u8,967
77
- zrb/builtin/project/add/fastapp/fastapp_template/module/auth/service/user/user_usecase.py,sha256=dFCw7aoIn5mB7nHNpyVkVfRCfyl9xnD022hERlqhMNU,2012
78
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/alembic.ini,sha256=mgQyBAIwdkZZJWLu_FQWPx1FkyaARCNp6-rLqSVvMbA,3723
79
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/migration/README,sha256=MVlc9TYmr57RbhXET6QxgyCcwWP7w-vLkEsirENqiIQ,38
80
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/migration/env.py,sha256=q7KtNXDlHgO8DATx--CesiUHDcDM-oYtCyw75E7ILvs,3495
81
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/migration/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvDgl93dMj8,635
82
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/migration/versions/.gitkeep,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
83
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/migration_metadata.py,sha256=NbIb5ncy6x5RrFD2TZMDwxBK_wDTyJEIvieMRmNpf9M,55
84
- zrb/builtin/project/add/fastapp/fastapp_template/module/gateway/route.py,sha256=pm4pUsF4enaGbu-sp6stpX5_Gj21wIkpz7EjbKxX5jo,1492
85
- zrb/builtin/project/add/fastapp/fastapp_template/requirements.txt,sha256=B8CigKAHjauuEyQaKQ-U9g3pAbe70femEScpZgblNbI,90
86
- zrb/builtin/project/add/fastapp/fastapp_template/schema/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
- zrb/builtin/project/add/fastapp/fastapp_template/schema/permission.py,sha256=vK8Qb5dDd_b5Y9gpehUr5OMSKggp1NlkWSz8ePAa0No,769
88
- zrb/builtin/project/add/fastapp/fastapp_template/schema/role.py,sha256=LoMpPZtdR6RvtmR7tOA-z-8gzOeNXOyUaawvLoBzlIM,703
89
- zrb/builtin/project/add/fastapp/fastapp_template/schema/user.py,sha256=c9pnEyPHA7P1mHVcvxoqL1tFJK7vX8i5Kel9OLks-iA,678
90
- zrb/builtin/project/add/fastapp/fastapp_template/template.env,sha256=DquDUGa12Jzg24ATq_I6M-TglO-2vDwr5kE768DoJ-w,61
91
- zrb/builtin/project/add/fastapp/fastapp_util.py,sha256=0ULsWfJ0XQrdU2SRKL0RLapM_XFTRDxxqp9vbNh1UVs,652
92
- zrb/builtin/project/create/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
93
- zrb/builtin/project/create/project-template/README.md,sha256=BHeWF_txdTDzKewWdWfGhO3YOTiW8E3YwTMnd0T1LVA,39
94
- zrb/builtin/project/create/project-template/zrb_init.py,sha256=kY0x5MrkIVl3l1GtN2ROrYGNpsfN2dgRT84LCcSrGUs,44
95
- zrb/builtin/project/create/project_task.py,sha256=B6ao8sd26mtLAkxwqjqiHy47PuACslYQtwAGcutgq7I,1140
96
- zrb/builtin/python.py,sha256=herHFZl5wHsMFcqHhpisg9Ql3pQXqoCuTTwzNUTXzkw,281
97
- zrb/builtin/setup/asdf/asdf.py,sha256=n_dWoyYa7vZ9tBCy8hgxmSWZ-XHltC1R70mIVZQhnXY,2419
98
- zrb/builtin/setup/asdf/asdf_helper.py,sha256=6jARtyIAE1H82HKVQ84D25RrMAsAip_gD28X9ZlaTCk,1205
99
- zrb/builtin/setup/common_input.py,sha256=M8q9Unt7dCfBHTHqV3__Mxk9YC2Pl3DDtxat2BanZCQ,870
100
- zrb/builtin/setup/latex/ubuntu.py,sha256=er9wJAT4CpmghIaiIPFb3FvgqAn1aqU5UgX7GHL3FjA,577
101
- zrb/builtin/setup/tmux/tmux.py,sha256=4CswI40w3W6vsNckO7oEYnI7ySAeGhA80FsYzoq6HWQ,1410
102
- zrb/builtin/setup/tmux/tmux_config.sh,sha256=wQCb4Q-mNkxIPOcvpN84X9RUWkGY16u3Vd-pOhVidgg,416
103
- zrb/builtin/setup/tmux/tmux_helper.py,sha256=M03l0wfL25TzGGp6lnVfX40ayT_x7N2lz-nz2chO7PU,396
104
- zrb/builtin/setup/ubuntu.py,sha256=oOSN7Eq7arEpY2i0vWHPR2owio6dqqOvceteYrgmbYw,1019
105
- zrb/builtin/shell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
106
- zrb/builtin/shell/autocomplete/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
- zrb/builtin/shell/autocomplete/bash.py,sha256=-7YDVV7txgJH9mAYSYN0jmvUEeDIzWFvVNY-cY0myF8,1181
108
- zrb/builtin/shell/autocomplete/subcmd.py,sha256=WZI6cGWJcn80zSyxOHG7sCMO3Ucix3mZf4xm_xyB_Y0,606
109
- zrb/builtin/shell/autocomplete/zsh.py,sha256=9hlq0Wt3fhRz326mAQTypEd4_4lZdrbBx_3A-Ti3mvw,1022
110
- zrb/builtin/todo.py,sha256=RA_aTCvZglripQVRhJsd-c0YUb9bh8FNo0kkYqFtrnM,9925
111
- zrb/callback/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
112
- zrb/callback/any_callback.py,sha256=Yhdv5UWHAZSVzj5K2JdxcVQx8x8VX8aZJEivj3NTfZc,247
113
- zrb/callback/callback.py,sha256=IQ7r9EnXYHHcNXKBJAk4WFqCqj7WDvflAuCyu5y-27I,849
114
- zrb/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
115
- zrb/cmd/cmd_result.py,sha256=L8bQJzWCpcYexIxHBNsXj2pT3BtLmWex0iJSMkvimOA,597
116
- zrb/cmd/cmd_val.py,sha256=hr8Ge0FRe7FZStvkDYnd1MUOOiJW2lDOQqBv338Ymas,963
117
- zrb/config.py,sha256=dlS_ouMmDpct427c8wjjoS2iWTLlotTCqX1Q9ScJRJI,3025
118
- zrb/content_transformer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
119
- zrb/content_transformer/any_content_transformer.py,sha256=3XHM6ZdsJFXxRD7YlUkv0Gn7-mexsH8c8zdHt3C0x8k,741
120
- zrb/content_transformer/content_transformer.py,sha256=pGiwUbQjoqE5DDShgzkKhR9dP9Gef5GUmYe0WOfq8lE,1967
121
- zrb/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
122
- zrb/context/any_context.py,sha256=KZy6NtX9cg7r9FCY-wHMTx5RNoDqH5077Rjv56Wdp4M,6245
123
- zrb/context/any_shared_context.py,sha256=p1i9af_CUDz5Mf1h1kBZMAa2AEhf17I3O5IgAcjRLoY,1768
124
- zrb/context/context.py,sha256=RWjluPpNBAZ_qjfza5fP-ScnEsZk2pD5rroYWQSfjAE,6201
125
- zrb/context/shared_context.py,sha256=47Tnnor1ttpwpe_N07rMNM1jgIYPY9abMe1Q5igkMtE,2735
126
- zrb/dot_dict/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
127
- zrb/dot_dict/dot_dict.py,sha256=ubw_x8I7AOJ59xxtFVJ00VGmq_IYdZP3mUhNlO4nEK0,556
128
- zrb/env/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
129
- zrb/env/any_env.py,sha256=_Xd56VO09mPeogkWcZ7H8mQkWU7dmZP7ImKfxPfvlLQ,211
130
- zrb/env/env.py,sha256=zT-xj0l5G_lp_ginV_InuBr5qTqZMcGaMKE_p5FoqlU,1061
131
- zrb/env/env_file.py,sha256=dccsR_cjXp1Q_qz692YPaZSny3Xa049V5NAZ-WLDDEQ,746
132
- zrb/env/env_map.py,sha256=CKMmXUbuvf6h2rgFWj-WvW_xLZNgG3TtWdfrqHDe4qk,1253
133
- zrb/group/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
134
- zrb/group/any_group.py,sha256=1rNcsi5eu_86JAx_6Jy46SK4BTeppcb89MORynJd-4o,1115
135
- zrb/group/group.py,sha256=KVaBZQ9Evihm84JCg5ZayWMbbA6iNTUiLmMgCk4OTcc,1862
136
- zrb/input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
- zrb/input/any_input.py,sha256=07KgoPusxLMOwBHRjiImL955J33qC-24qGf_3My6fCE,701
138
- zrb/input/base_input.py,sha256=DfDnYQZ84Xc19FEynGuNQKSDrbdcMaCOxramnncaac0,3165
139
- zrb/input/bool_input.py,sha256=m_mwzFtcAs26QIjVSiEDcqTQBukRtQ535RPGmH-b1_A,1384
140
- zrb/input/float_input.py,sha256=FqpAIsszHw7-eFyOzVmXaXNcCCLEL1_M3XwsevsNWX0,1005
141
- zrb/input/int_input.py,sha256=1knorHwOvSLuCPkcqA9iuYQG6Huy-8Vel5JNZqEFc44,1006
142
- zrb/input/option_input.py,sha256=xG0K6uQCqEpsO0pRsOyPWPEE77PYl65t2VwtCfeHYbA,1941
143
- zrb/input/password_input.py,sha256=C0h3kWJDI5KdXXQa-IXTQzyuCfjbx5tO34mn7kjmf2M,1313
144
- zrb/input/str_input.py,sha256=NevZHX9rf1g8eMatPyy-kUX3DglrVAQpzvVpKAzf7bA,81
145
- zrb/input/text_input.py,sha256=2WCCMNhC2HPr78G7pn5ZVjBNfS1u9TqbBj4YYbEtqWc,3035
146
- zrb/runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
147
- zrb/runner/cli.py,sha256=iDO4Be9WoBmvhHyW6ADywnfgSuf6OchiyubH4IqVGMs,7593
148
- zrb/runner/web_app.py,sha256=MgZ8xAIg8y2sdofiSTlK64Bb_2JZcqx1_hhbhrp-WUg,6356
149
- zrb/runner/web_controller/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
150
- zrb/runner/web_controller/group_info_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
151
- zrb/runner/web_controller/group_info_ui/controller.py,sha256=zRbbJpmpu6jX6iaEZUMgGmyaIgUd4wS9Entc8o5ZC14,2763
152
- zrb/runner/web_controller/group_info_ui/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
153
- zrb/runner/web_controller/group_info_ui/partial/group_li.html,sha256=n9d_EBEMUg1rGmNhkYloCwc1jHmwovw3ScxEB_fNL-w,61
154
- zrb/runner/web_controller/group_info_ui/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
155
- zrb/runner/web_controller/group_info_ui/partial/task_li.html,sha256=x5Pqa_iN0IyUvzojseGUrHm2Y-xUeO8OFb7Zagui2g0,62
156
- zrb/runner/web_controller/group_info_ui/view.html,sha256=7yIMx0yxSsmdmwPvXkm8tLgbmw7iqW068xzfFROmh9Y,836
157
- zrb/runner/web_controller/home_page/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
158
- zrb/runner/web_controller/home_page/controller.py,sha256=QBKTJYHaiu2n9IM32X-KigNTIVO2YsS5Kgre2aU_1As,2178
159
- zrb/runner/web_controller/home_page/partial/group_info.html,sha256=njcPd6_imhPiUy3eGqtDpY_oX2R9nEh2dJQsh5PAl3M,35
160
- zrb/runner/web_controller/home_page/partial/group_li.html,sha256=gHF-RP8LG2ur8_mo1JwPXAZWvPM8BevAsdYrsv0uN6U,60
161
- zrb/runner/web_controller/home_page/partial/task_info.html,sha256=dKHHuLIXi37XBbq0Xv2mYFcmJ3oAmz5vH1yKgpunfdE,34
162
- zrb/runner/web_controller/home_page/partial/task_li.html,sha256=m-fs4VhbX27fZKgxBA0_Gv_Utntq5aaXD4sFk3zNMlk,61
163
- zrb/runner/web_controller/home_page/view.html,sha256=RuYx2V52_kTzb4Fkjpc2H97ZpSvlSB8ElbMng2uMDUI,606
164
- zrb/runner/web_controller/static/favicon-32x32.png,sha256=yu9AIU4k_qD4YHpul6XwJgOxIbmu0thv9ymm2QOsrAk,1456
165
- zrb/runner/web_controller/static/pico.min.css,sha256=3V_VWRr9ge4h3MEXrYXAFNw_HxncLXt9EB6grMKSdMI,82194
166
- zrb/runner/web_controller/task_ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
167
- zrb/runner/web_controller/task_ui/controller.py,sha256=t01JQgRKO8L0--BbimDtAEmp-oI872IvNE_bvNh0Fs8,2498
168
- zrb/runner/web_controller/task_ui/partial/common-util.js,sha256=Un5HxlFMzNa16UBJZEWvEldFJaZpt6O3Qddd9Zlw0Io,931
169
- zrb/runner/web_controller/task_ui/partial/input.html,sha256=DDOCdHfwrU8ZF1SSNb0KDaQzbhzn-gipEGaa_ZH5k9I,154
170
- zrb/runner/web_controller/task_ui/partial/main.js,sha256=3rjahRpypoQ6U2FwDTg21Zx7qt9zfbgzSxk6b6mNOQY,6514
171
- zrb/runner/web_controller/task_ui/partial/show-existing-session.js,sha256=o5J-O5poWMIL1ujBXparwA4YalFuGXyA8S_wFw8obsM,3637
172
- zrb/runner/web_controller/task_ui/partial/visualize-history.js,sha256=xKFmE-eXy9PXTWXhG_aQZ15DWStSGRrA8xzHntO-rmY,3916
173
- zrb/runner/web_controller/task_ui/view.html,sha256=SARL-Dt03ar8IT9RJt7ULJLsjRm5u8K_F4VFwQwhxAs,2668
174
- zrb/runner/web_util.py,sha256=FBMnS7qMp31ogm0pCZBObNjrlopIwzYM7UuZjCX1n8Q,428
175
- zrb/session/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
176
- zrb/session/any_session.py,sha256=x57mS15E-AfUjdVxwOWEzCBjW32zjer7WoeBw0guoDc,5266
177
- zrb/session/session.py,sha256=b89UdwPs0U9XXmTHNhCXFmcYXxuRVhNr94Dp_bVO3n4,9827
178
- zrb/session_state_log/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
179
- zrb/session_state_log/session_state_log.py,sha256=VVghDMU72PbrvnzQ7MJuc-KTJ5P5fX0FYuCh3Rlwd9M,709
180
- zrb/session_state_logger/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
181
- zrb/session_state_logger/any_session_state_logger.py,sha256=W_G1fCw9ZVj4LRTplTpBZlXR-wNueGtc26jF5Gzmh74,611
182
- zrb/session_state_logger/default_session_state_logger.py,sha256=w_cAaNUg1ZmJk-ge1kh3xtag3SApC3ZdB3VbxUvU5Ro,197
183
- zrb/session_state_logger/file_session_state_logger.py,sha256=kX11XmLBztV6xDWbgx6KPUlMe0ubfmMv42evduSbeYU,3667
184
- zrb/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
185
- zrb/task/any_task.py,sha256=9rCdKe-Sayr34Han9AsbhRxFpkbk6Rteg1DOyETulwQ,4917
186
- zrb/task/base_task.py,sha256=Vn_MTR5aa3jIEWmh5LXpzezh-JwaEXPbjGKptx-Q-U8,19161
187
- zrb/task/base_trigger.py,sha256=milE5BNeIeq8jGCP38qTfstSvrc0CkSnO2sV-vlhzsM,4491
188
- zrb/task/cmd_task.py,sha256=P8V0RUtzrI4qFdQbgJo_hoRV1E5nDwFdZhCh6BHkTkg,10184
189
- zrb/task/http_check.py,sha256=TwQCql3589a4-H2c7hgS1HayyU-NdBAdJ4qQNTvjXHM,2474
190
- zrb/task/llm_task.py,sha256=xeN6MCFg4uuOPJTGODVY0pSG6vP7cuyO8OQp8FPG3eE,8543
191
- zrb/task/make_task.py,sha256=ldXRfe3rA8utJrEPjWrie-_tg6NM2G8sFnZ0UNqzT08,2179
192
- zrb/task/rsync_task.py,sha256=vENITMBXShKgj-NNgjM8eUK2ujU3wD8MUvyS_69ePEA,6227
193
- zrb/task/scaffolder.py,sha256=8ylMK6wA2HYK7PnKk3TBJnW9l2PhlDC5My0DJKJaWvo,6612
194
- zrb/task/scheduler.py,sha256=kggRClk_RrAa5fAHfkqM6c-e2tUQiFSeyeLuFT26UZ4,3047
195
- zrb/task/task.py,sha256=KCrCaWYOQQvv1RJsYtHDeo9RBFmlXQ28oKyEFU4Q7pA,73
196
- zrb/task/tcp_check.py,sha256=UQ3rMrwDwhuvz-lf1qx6Z3D4mWPqdJIjxqcIKCOKVes,2420
197
- zrb/task_status/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
198
- zrb/task_status/task_status.py,sha256=aRygkj0DKrOYWgz2eF5wNmYcpVbLeklxL521BqIQN4A,3005
199
- zrb/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
200
- zrb/util/attr.py,sha256=HkXd2N-eUXw2o4WWWJpo2q8N0kS7k08jsMLXpK_3zq0,2353
201
- zrb/util/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
202
- zrb/util/cli/style.py,sha256=wxdtE18d4Q3GV7aojinD-XN9iWvazfvLs9MTJPlCNQU,3805
203
- zrb/util/cli/subcommand.py,sha256=gYr-CzVeKFQhY43s_FDstPwn8r-ypUz1Q2Rv_l2r-ck,1027
204
- zrb/util/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
205
- zrb/util/cmd/command.py,sha256=B5cwzDKo63G-5lEeTStsBf24B4PoWRWgC63hUnJLAO0,3433
206
- zrb/util/cmd/remote.py,sha256=VklVORobTmE7FqdtYsVLq9xkSYTR2W5r2Zou0-soidw,710
207
- zrb/util/codemod/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
208
- zrb/util/codemod/append_code_to_class.py,sha256=73wWRzeAYfygK77Hzba2vaCjtq0mzX7TOqogUbi7UBw,1361
209
- zrb/util/codemod/append_code_to_function.py,sha256=IQh3dv5kZCry-dCFT2LGEUKUX30LdDvgcs-lylqNIF0,1491
210
- zrb/util/codemod/append_code_to_method.py,sha256=5JDDxuuyS8w-2pFcNGWvpfCYdqVRftUb2eOWKlDSa0M,2362
211
- zrb/util/codemod/append_key_to_dict.py,sha256=ZVaAXCZEXs_j3NrCjvXoOYeDFF0RCLYe7y-dJZIcBvI,2113
212
- zrb/util/codemod/append_param_to_function_call.py,sha256=V8hQor4z0dTSiLzQ7pYOZI2TclUlwc-ZNe5KpqlH7X8,1570
213
- zrb/util/codemod/prepend_code_to_module.py,sha256=XDTd_-PqPJOFD4kcvvXlXyvFcomv6CP_UeZZpIfsp5c,521
214
- zrb/util/codemod/prepend_parent_to_class.py,sha256=xOcDHv1cXXV_VqLHVifr6jvDoWk_iOLammhNxsWc6r8,1417
215
- zrb/util/codemod/prepend_property_to_class.py,sha256=9L11WaYIUF53Kn_ZMT51ylhm7xTxttNjPp83Mnm9iUQ,2079
216
- zrb/util/cron.py,sha256=9fTGatUMYCRgmDFGg-z6_XerT4U5Vq72nD05NnEVUm4,2852
217
- zrb/util/file.py,sha256=qNXknujTOkx-SxRVwbt_68oeqCZ54iS8klo3RT__iPc,583
218
- zrb/util/git.py,sha256=o_kLF1fySv5uQdLlhY-ztc-z0zLOdcDf0IpuPAl2ciA,4733
219
- zrb/util/git_subtree.py,sha256=US8oCHUOKgt14Ie6SaEelwTs__jLGLPsDQZvI-1P4KY,2640
220
- zrb/util/group.py,sha256=Bg7HrSycoK110U5s_Tca6-uUQuZ5CMgb8wxZSrvDQ98,2790
221
- zrb/util/llm/tool.py,sha256=9ezbPEAyMKLWABgeqAimJ82KBFl7ciWNFVGhtllXg6s,2106
222
- zrb/util/load.py,sha256=i8_83ApWJXlZlbFMNfEptrOzfXdvtaIhAErsd6tU9y8,1649
223
- zrb/util/run.py,sha256=DGHUP9x1Q8V8UF3FbpmjLGuhVVCCLfjTH2teT8qXlNI,207
224
- zrb/util/string/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
225
- zrb/util/string/conversion.py,sha256=636sfF1a3_bpzXNw5bdSzbJzwakyAoo70KT3_ItgZEo,4333
226
- zrb/util/string/format.py,sha256=c9dUrsl_DII7jZZPJi9NBTvxKnrzZDPcQuksW6FJ_Lk,611
227
- zrb/util/string/name.py,sha256=8picJfUBXNpdh64GNaHv3om23QHhUZux7DguFLrXHp8,1163
228
- zrb/util/todo.py,sha256=nx8tbvTdzorUW-iRxqDy7zJz3i7Q1McoFBEWL0fTO9Q,13472
229
- zrb/xcom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
230
- zrb/xcom/xcom.py,sha256=P4aYHdE3FRsTsNrXGyW8N44IWZjw-vG_qys1Ymn3aBg,1572
231
- zrb-1.0.0a17.dist-info/METADATA,sha256=1pj_u68_qNoBkWQXDjsyI1hmP00w3Bm-3yDqztCs-MM,4106
232
- zrb-1.0.0a17.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
233
- zrb-1.0.0a17.dist-info/entry_points.txt,sha256=-Pg3ElWPfnaSM-XvXqCxEAa-wfVI6BEgcs386s8C8v8,46
234
- zrb-1.0.0a17.dist-info/RECORD,,