mito-ai 0.1.42__tar.gz → 0.1.44__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.
Files changed (1034) hide show
  1. {mito_ai-0.1.42 → mito_ai-0.1.44}/PKG-INFO +1 -1
  2. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/__init__.py +3 -3
  3. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/_version.py +1 -1
  4. {mito_ai-0.1.42/mito_ai/app_builder → mito_ai-0.1.44/mito_ai/app_deploy}/__init__.py +1 -1
  5. {mito_ai-0.1.42/mito_ai/app_builder → mito_ai-0.1.44/mito_ai/app_deploy}/handlers.py +39 -28
  6. {mito_ai-0.1.42/mito_ai/app_builder → mito_ai-0.1.44/mito_ai/app_deploy}/models.py +13 -13
  7. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/app_manager/handlers.py +38 -0
  8. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/app_manager/models.py +16 -3
  9. mito_ai-0.1.44/mito_ai/app_manager/utils.py +24 -0
  10. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/agent_execution_handler.py +1 -1
  11. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/chat_completion_handler.py +2 -2
  12. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/utils.py +27 -5
  13. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/handlers.py +13 -0
  14. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/models.py +4 -3
  15. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/agent_system_message.py +6 -4
  16. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/utils.py +1 -2
  17. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/providers.py +5 -11
  18. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/file_uploads/handlers.py +49 -26
  19. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/build_log.json +1 -1
  20. {mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai → mito_ai-0.1.44/mito_ai/labextension}/package.json +2 -2
  21. {mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai → mito_ai-0.1.44/mito_ai/labextension}/schemas/mito_ai/package.json.orig +1 -1
  22. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/schemas/mito_ai/toolbar-buttons.json +0 -5
  23. mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.a9a35b6fcc54a7bcb32c.js → mito_ai-0.1.44/mito_ai/labextension/static/lib_index_js.cf2e3ad2797fbb53826b.js +1692 -877
  24. mito_ai-0.1.44/mito_ai/labextension/static/lib_index_js.cf2e3ad2797fbb53826b.js.map +1 -0
  25. mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.c7d9d8635826165de52e.js → mito_ai-0.1.44/mito_ai/labextension/static/remoteEntry.5482493d1270f55b7283.js +5 -5
  26. mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.c7d9d8635826165de52e.js.map → mito_ai-0.1.44/mito_ai/labextension/static/remoteEntry.5482493d1270f55b7283.js.map +1 -1
  27. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/streamlit_agent_handler.py +1 -1
  28. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/streamlit_utils.py +10 -0
  29. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_preview/handlers.py +47 -71
  30. mito_ai-0.1.44/mito_ai/streamlit_preview/utils.py +41 -0
  31. mito_ai-0.1.44/mito_ai/tests/completions/completion_handlers_utils_test.py +190 -0
  32. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/file_uploads/test_handlers.py +15 -0
  33. mito_ai-0.1.44/mito_ai/tests/streamlit_preview/test_streamlit_preview_handler.py +88 -0
  34. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/streamlit_preview/test_streamlit_preview_manager.py +4 -1
  35. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/telemetry_utils.py +15 -5
  36. {mito_ai-0.1.42 → mito_ai-0.1.44}/package.json +1 -1
  37. {mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai/schemas/mito_ai → mito_ai-0.1.44/schema}/toolbar-buttons.json +0 -5
  38. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatHistoryManager.tsx +39 -22
  39. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/ChatDropdown.tsx +40 -11
  40. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/ChatInput.tsx +27 -44
  41. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/ChatMessage.tsx +2 -2
  42. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/Citation.tsx +1 -1
  43. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatTaskpane.tsx +49 -34
  44. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatWidget.tsx +2 -2
  45. mito_ai-0.1.44/src/Extensions/AiChat/utils.tsx +35 -0
  46. mito_ai-0.1.44/src/Extensions/AiChat/validationUtils.ts +66 -0
  47. mito_ai-0.1.44/src/Extensions/AppDeploy/AppDeployPlugin.ts +67 -0
  48. mito_ai-0.1.44/src/Extensions/AppDeploy/DeployAppNotification.tsx +99 -0
  49. mito_ai-0.1.42/src/Extensions/AppBuilder/NotebookToStreamlit.tsx → mito_ai-0.1.44/src/Extensions/AppDeploy/DeployStreamlitApp.ts +30 -39
  50. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AppManager/AppsList.tsx +3 -3
  51. mito_ai-0.1.44/src/Extensions/AppManager/CheckAppStatusAPI.ts +40 -0
  52. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AppManager/ListAppsAPI.ts +3 -3
  53. mito_ai-0.1.44/src/Extensions/AppPreview/StreamlitPreviewPlugin.tsx +183 -0
  54. mito_ai-0.1.44/src/Extensions/AppPreview/utils.ts +32 -0
  55. mito_ai-0.1.44/src/Extensions/ContextManager/ContextManagerPlugin.ts +147 -0
  56. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/ContextManager/FileInspector.tsx +8 -18
  57. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/ContextManager/VariableInspector.tsx +4 -2
  58. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/InlineCompleter/provider.ts +3 -2
  59. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/SettingsManagerPlugin.tsx +4 -2
  60. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/SettingsWidget.tsx +23 -9
  61. mito_ai-0.1.44/src/Extensions/SettingsManager/profiler/CapturedRequestsSection.tsx +73 -0
  62. mito_ai-0.1.44/src/Extensions/SettingsManager/profiler/ContextManagerSection.tsx +68 -0
  63. mito_ai-0.1.44/src/Extensions/SettingsManager/profiler/ProfilerPage.tsx +89 -0
  64. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/ToolbarButtons/ToolbarButtonsPlugin.tsx +4 -22
  65. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/commands.tsx +1 -1
  66. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/AttachFileButton.tsx +0 -1
  67. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/ModelSelector.tsx +1 -3
  68. mito_ai-0.1.44/src/icons/App/DeployIcon.svg +10 -0
  69. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/index.ts +6 -0
  70. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/index.ts +3 -3
  71. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/restAPI/RestAPI.tsx +3 -3
  72. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/ChatDropdown.test.tsx +50 -36
  73. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/ChatHistoryManager.test.tsx +21 -8
  74. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/ChatInput.test.tsx +7 -4
  75. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/ModelSelector.test.tsx +3 -3
  76. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/getBase64EncodedCellOutput.test.tsx +34 -25
  77. mito_ai-0.1.44/src/tests/AiChat/validationUtils.test.tsx +313 -0
  78. {mito_ai-0.1.42/src/tests/AppBuilder → mito_ai-0.1.44/src/tests/AppDeploy}/NotebookToStreamlit.test.tsx +41 -40
  79. {mito_ai-0.1.42/src/tests/AppBuilder → mito_ai-0.1.44/src/tests/AppDeploy}/auth.test.ts +2 -2
  80. {mito_ai-0.1.42/src/tests/AppBuilder → mito_ai-0.1.44/src/tests/AppDeploy}/requirementsUtils.test.tsx +1 -1
  81. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AppManager/AppsList.test.tsx +9 -9
  82. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AppManager/ListAppsAPI.test.tsx +11 -11
  83. mito_ai-0.1.44/src/tests/ContextManager/ContextManagerPlugin.test.tsx +158 -0
  84. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/agentActions.tsx +37 -54
  85. mito_ai-0.1.44/src/utils/cellMetadata.ts +56 -0
  86. mito_ai-0.1.42/src/utils/notebook.tsx → mito_ai-0.1.44/src/utils/cellOutput.ts +11 -344
  87. mito_ai-0.1.44/src/utils/constants.ts +8 -0
  88. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/models.ts +2 -5
  89. mito_ai-0.1.44/src/utils/notebook.tsx +342 -0
  90. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/user.tsx +10 -0
  91. mito_ai-0.1.42/src/websockets/appBuilder/appBuilderModels.ts → mito_ai-0.1.44/src/websockets/appDeploy/appDeployModels.ts +7 -7
  92. mito_ai-0.1.42/src/websockets/appBuilder/appBuilderWebsocketClient.ts → mito_ai-0.1.44/src/websockets/appDeploy/appDeployWebsocketClient.ts +13 -13
  93. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/websockets/appManager/appManagerModels.ts +26 -1
  94. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/websockets/appManager/appManagerWebsocketClient.ts +5 -4
  95. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/websockets/completions/CompletionModels.ts +6 -2
  96. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/websockets/completions/CompletionsWebsocketClient.ts +17 -0
  97. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/AppsList.css +1 -1
  98. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ChatDropdown.css +2 -0
  99. mito_ai-0.1.44/style/ProfilerPage.css +46 -0
  100. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/SelectedContextContainer.css +6 -4
  101. mito_ai-0.1.44/style/StreamlitPreviewPlugin.css +34 -0
  102. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/build_log.json +1 -1
  103. {mito_ai-0.1.42/mito_ai/labextension → mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai}/package.json +2 -2
  104. {mito_ai-0.1.42/mito_ai/labextension → mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai}/schemas/mito_ai/package.json.orig +1 -1
  105. {mito_ai-0.1.42/schema → mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai/schemas/mito_ai}/toolbar-buttons.json +0 -5
  106. mito_ai-0.1.42/mito_ai/labextension/static/lib_index_js.a9a35b6fcc54a7bcb32c.js → mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.cf2e3ad2797fbb53826b.js +1692 -877
  107. mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.cf2e3ad2797fbb53826b.js.map +1 -0
  108. mito_ai-0.1.42/mito_ai/labextension/static/remoteEntry.c7d9d8635826165de52e.js → mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.5482493d1270f55b7283.js +5 -5
  109. mito_ai-0.1.42/mito_ai/labextension/static/remoteEntry.c7d9d8635826165de52e.js.map → mito_ai-0.1.44/venv/share/jupyter/labextensions/mito_ai/static/remoteEntry.5482493d1270f55b7283.js.map +1 -1
  110. mito_ai-0.1.42/mito_ai/labextension/static/lib_index_js.a9a35b6fcc54a7bcb32c.js.map +0 -1
  111. mito_ai-0.1.42/mito_ai/tests/completions/completion_handlers_utils_test.py +0 -51
  112. mito_ai-0.1.42/src/Extensions/AiChat/utils.tsx +0 -50
  113. mito_ai-0.1.42/src/Extensions/AppBuilder/AppBuilderPlugin.ts +0 -67
  114. mito_ai-0.1.42/src/Extensions/AppBuilder/DeployAppNotification.tsx +0 -54
  115. mito_ai-0.1.42/src/Extensions/AppBuilder/cellConversionUtils.tsx +0 -76
  116. mito_ai-0.1.42/src/Extensions/AppBuilder/visualization_test_notebook.ipynb +0 -636
  117. mito_ai-0.1.42/src/Extensions/ContextManager/ContextManagerPlugin.ts +0 -98
  118. mito_ai-0.1.42/src/Extensions/StreamlitPreview/StreamlitPreviewPlugin.tsx +0 -159
  119. mito_ai-0.1.42/src/tests/AppBuilder/transformInvalidLines.test.tsx +0 -78
  120. mito_ai-0.1.42/src/tests/AppBuilder/transformMitoAppInput.test.tsx +0 -82
  121. mito_ai-0.1.42/src/tests/ContextManager/ContextManagerPlugin.test.tsx +0 -89
  122. mito_ai-0.1.42/venv/share/jupyter/labextensions/mito_ai/static/lib_index_js.a9a35b6fcc54a7bcb32c.js.map +0 -1
  123. {mito_ai-0.1.42 → mito_ai-0.1.44}/.babelrc +0 -0
  124. {mito_ai-0.1.42 → mito_ai-0.1.44}/.copier-answers.yml +0 -0
  125. {mito_ai-0.1.42 → mito_ai-0.1.44}/.eslintrc.js +0 -0
  126. {mito_ai-0.1.42 → mito_ai-0.1.44}/.gitignore +0 -0
  127. {mito_ai-0.1.42 → mito_ai-0.1.44}/.prettierignore +0 -0
  128. {mito_ai-0.1.42 → mito_ai-0.1.44}/.yarnrc.yml +0 -0
  129. {mito_ai-0.1.42 → mito_ai-0.1.44}/CLAUDE.md +0 -0
  130. {mito_ai-0.1.42 → mito_ai-0.1.44}/LICENSE +0 -0
  131. {mito_ai-0.1.42 → mito_ai-0.1.44}/README.md +0 -0
  132. {mito_ai-0.1.42 → mito_ai-0.1.44}/app-experiments/Bike_Violations_B_Summons.csv +0 -0
  133. {mito_ai-0.1.42 → mito_ai-0.1.44}/app-experiments/bike-violations.ipynb +0 -0
  134. {mito_ai-0.1.42 → mito_ai-0.1.44}/app-experiments/cfo dashboard.ipynb +0 -0
  135. {mito_ai-0.1.42 → mito_ai-0.1.44}/app-experiments/meta acquisitions retro.ipynb +0 -0
  136. {mito_ai-0.1.42 → mito_ai-0.1.44}/babel.config.js +0 -0
  137. {mito_ai-0.1.42 → mito_ai-0.1.44}/declarations.d.ts +0 -0
  138. {mito_ai-0.1.42 → mito_ai-0.1.44}/dev/README.md +0 -0
  139. {mito_ai-0.1.42 → mito_ai-0.1.44}/dev/generate_ai_chats.py +0 -0
  140. {mito_ai-0.1.42 → mito_ai-0.1.44}/jest.config.js +0 -0
  141. {mito_ai-0.1.42 → mito_ai-0.1.44}/jupyter-config/jupyter_server_config.d/mito_ai.json +0 -0
  142. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/anthropic_client.py +0 -0
  143. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/app_manager/__init__.py +0 -0
  144. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/auth/README.md +0 -0
  145. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/auth/__init__.py +0 -0
  146. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/auth/handlers.py +0 -0
  147. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/auth/urls.py +0 -0
  148. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/__init__.py +0 -0
  149. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/agent_auto_error_fixup_handler.py +0 -0
  150. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/code_explain_handler.py +0 -0
  151. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/completion_handler.py +0 -0
  152. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/inline_completer_handler.py +0 -0
  153. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/completion_handlers/smart_debug_handler.py +0 -0
  154. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/message_history.py +0 -0
  155. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/__init__.py +0 -0
  156. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/agent_execution_prompt.py +0 -0
  157. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/agent_smart_debug_prompt.py +0 -0
  158. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/chat_name_prompt.py +0 -0
  159. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/chat_prompt.py +0 -0
  160. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/chat_system_message.py +0 -0
  161. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/explain_code_prompt.py +0 -0
  162. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/inline_completer_prompt.py +0 -0
  163. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/prompt_constants.py +0 -0
  164. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/completions/prompt_builders/smart_debug_prompt.py +0 -0
  165. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/constants.py +0 -0
  166. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/__init__.py +0 -0
  167. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/crawlers/__init__.py +0 -0
  168. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/crawlers/base_crawler.py +0 -0
  169. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/crawlers/constants.py +0 -0
  170. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/crawlers/snowflake.py +0 -0
  171. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/handlers.py +0 -0
  172. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/models.py +0 -0
  173. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/urls.py +0 -0
  174. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/db/utils.py +0 -0
  175. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/mssql/compose.yml +0 -0
  176. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/mssql/init/setup.sql +0 -0
  177. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/mysql/compose.yml +0 -0
  178. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/mysql/init/setup.sql +0 -0
  179. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/oracle/compose.yml +0 -0
  180. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/oracle/init/setup.sql +0 -0
  181. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/postgres/compose.yml +0 -0
  182. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/docker/postgres/init/setup.sql +0 -0
  183. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/enterprise/__init__.py +0 -0
  184. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/enterprise/utils.py +0 -0
  185. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/file_uploads/__init__.py +0 -0
  186. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/file_uploads/urls.py +0 -0
  187. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/gemini_client.py +0 -0
  188. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/node_modules_process_browser_js.4b128e94d31a81ebd209.js +0 -0
  189. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/node_modules_process_browser_js.4b128e94d31a81ebd209.js.map +0 -0
  190. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/style.js +0 -0
  191. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/style_index_js.5876024bb17dbd6a3ee6.js +0 -0
  192. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/style_index_js.5876024bb17dbd6a3ee6.js.map +0 -0
  193. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_apis_signOut_mjs-node_module-75790d.688c25857e7b81b1740f.js +0 -0
  194. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_apis_signOut_mjs-node_module-75790d.688c25857e7b81b1740f.js.map +0 -0
  195. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_tokenProvider_tokenProvider_-72f1c8.a917210f057fcfe224ad.js +0 -0
  196. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_tokenProvider_tokenProvider_-72f1c8.a917210f057fcfe224ad.js.map +0 -0
  197. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_dist_esm_index_mjs.6bac1a8c4cc93f15f6b7.js +0 -0
  198. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_dist_esm_index_mjs.6bac1a8c4cc93f15f6b7.js.map +0 -0
  199. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_ui-react_dist_esm_index_mjs.4fcecd65bef9e9847609.js +0 -0
  200. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_aws-amplify_ui-react_dist_esm_index_mjs.4fcecd65bef9e9847609.js.map +0 -0
  201. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_react-dom_client_js-node_modules_aws-amplify_ui-react_dist_styles_css.b43d4249e4d3dac9ad7b.js +0 -0
  202. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_react-dom_client_js-node_modules_aws-amplify_ui-react_dist_styles_css.b43d4249e4d3dac9ad7b.js.map +0 -0
  203. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_semver_index_js.3f6754ac5116d47de76b.js +0 -0
  204. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_semver_index_js.3f6754ac5116d47de76b.js.map +0 -0
  205. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js +0 -0
  206. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/labextension/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js.map +0 -0
  207. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/log/handlers.py +0 -0
  208. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/log/urls.py +0 -0
  209. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/logger.py +0 -0
  210. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/openai_client.py +0 -0
  211. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/rules/handlers.py +0 -0
  212. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/rules/urls.py +0 -0
  213. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/rules/utils.py +0 -0
  214. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/settings/handlers.py +0 -0
  215. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/settings/urls.py +0 -0
  216. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/settings/utils.py +0 -0
  217. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/agent_utils.py +0 -0
  218. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/prompts/prompt_constants.py +0 -0
  219. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/prompts/prompt_utils.py +0 -0
  220. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/prompts/streamlit_app_creation_prompt.py +0 -0
  221. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/prompts/streamlit_error_correction_prompt.py +0 -0
  222. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/prompts/streamlit_finish_todo_prompt.py +0 -0
  223. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/streamlit_system_prompt.py +0 -0
  224. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_conversion/validate_streamlit_app.py +0 -0
  225. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_preview/__init__.py +0 -0
  226. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_preview/manager.py +0 -0
  227. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/streamlit_preview/urls.py +0 -0
  228. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/__init__.py +0 -0
  229. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/conftest.py +0 -0
  230. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/create_agent_system_message_prompt_test.py +0 -0
  231. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/data/prompt_lg.py +0 -0
  232. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/data/prompt_sm.py +0 -0
  233. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/data/prompt_xl.py +0 -0
  234. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/data/stock_data.sqlite3 +0 -0
  235. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/conftest.py +0 -0
  236. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/connections_test.py +0 -0
  237. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/mssql_test.py +0 -0
  238. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/mysql_test.py +0 -0
  239. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/oracle_test.py +0 -0
  240. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/postgres_test.py +0 -0
  241. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/schema_test.py +0 -0
  242. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/sqlite_test.py +0 -0
  243. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/db/test_db_constants.py +0 -0
  244. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/file_uploads/__init__.py +0 -0
  245. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/message_history/test_generate_short_chat_name.py +0 -0
  246. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/message_history/test_message_history_utils.py +0 -0
  247. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/open_ai_utils_test.py +0 -0
  248. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/performance_test.py +0 -0
  249. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_anthropic_client.py +0 -0
  250. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_azure.py +0 -0
  251. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_capabilities.py +0 -0
  252. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_gemini_client.py +0 -0
  253. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_mito_server_utils.py +0 -0
  254. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_model_resolution.py +0 -0
  255. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_openai_client.py +0 -0
  256. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_provider_completion_exception.py +0 -0
  257. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_provider_limits.py +0 -0
  258. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_providers.py +0 -0
  259. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_retry_logic.py +0 -0
  260. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/test_stream_mito_server_utils.py +0 -0
  261. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/providers/utils.py +0 -0
  262. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/rules/conftest.py +0 -0
  263. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/rules/rules_test.py +0 -0
  264. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/server_limits_test.py +0 -0
  265. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/settings/conftest.py +0 -0
  266. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/settings/settings_test.py +0 -0
  267. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/settings/test_settings_constants.py +0 -0
  268. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/streamlit_conversion/__init__.py +0 -0
  269. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/streamlit_conversion/test_streamlit_agent_handler.py +0 -0
  270. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/streamlit_conversion/test_streamlit_utils.py +0 -0
  271. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/streamlit_conversion/test_validate_streamlit_app.py +0 -0
  272. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/test_constants.py +0 -0
  273. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/test_telemetry.py +0 -0
  274. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/utils/__init__.py +0 -0
  275. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/utils/test_anthropic_utils.py +0 -0
  276. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/utils/test_gemini_utils.py +0 -0
  277. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/tests/version_check_test.py +0 -0
  278. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/__init__.py +0 -0
  279. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/anthropic_utils.py +0 -0
  280. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/create.py +0 -0
  281. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/db.py +0 -0
  282. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/gemini_utils.py +0 -0
  283. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/message_history_utils.py +0 -0
  284. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/mito_server_utils.py +0 -0
  285. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/open_ai_utils.py +0 -0
  286. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/provider_utils.py +0 -0
  287. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/schema.py +0 -0
  288. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/server_limits.py +0 -0
  289. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/utils.py +0 -0
  290. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/version_utils.py +0 -0
  291. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/utils/websocket_base.py +0 -0
  292. {mito_ai-0.1.42 → mito_ai-0.1.44}/mito_ai/version_check.py +0 -0
  293. {mito_ai-0.1.42 → mito_ai-0.1.44}/mypy.ini +0 -0
  294. {mito_ai-0.1.42 → mito_ai-0.1.44}/package-lock.json +0 -0
  295. {mito_ai-0.1.42 → mito_ai-0.1.44}/pyproject.toml +0 -0
  296. {mito_ai-0.1.42 → mito_ai-0.1.44}/requirements.txt +0 -0
  297. {mito_ai-0.1.42 → mito_ai-0.1.44}/setup.py +0 -0
  298. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/AiChatPlugin.ts +0 -0
  299. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/CTACarousel.tsx +0 -0
  300. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/AlertBlock.tsx +0 -0
  301. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/AssistantCodeBlock.tsx +0 -0
  302. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/ChatDropdownItems.tsx +0 -0
  303. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/CodeBlockToolbar.tsx +0 -0
  304. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/MarkdownBlock.tsx +0 -0
  305. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/PythonCode.tsx +0 -0
  306. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/RevertQuestionnaire.tsx +0 -0
  307. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/ScrollableSuggestions.tsx +0 -0
  308. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/ChatMessage/UserCodeBlock.tsx +0 -0
  309. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/CodeDiffDisplay.tsx +0 -0
  310. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/FirstMessage.ts +0 -0
  311. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/jupyterSettingsManager.ts +0 -0
  312. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AiChat/token.ts +0 -0
  313. {mito_ai-0.1.42/src/Extensions/AppBuilder → mito_ai-0.1.44/src/Extensions/AppDeploy}/auth-popup-deploy.tsx +0 -0
  314. {mito_ai-0.1.42/src/Extensions/AppBuilder → mito_ai-0.1.44/src/Extensions/AppDeploy}/auth.ts +0 -0
  315. {mito_ai-0.1.42/src/Extensions/AppBuilder → mito_ai-0.1.44/src/Extensions/AppDeploy}/authPopupUtils.tsx +0 -0
  316. {mito_ai-0.1.42/src/Extensions/AppBuilder → mito_ai-0.1.44/src/Extensions/AppDeploy}/aws-config.ts +0 -0
  317. {mito_ai-0.1.42/src/Extensions/AppBuilder → mito_ai-0.1.44/src/Extensions/AppDeploy}/fileUtils.tsx +0 -0
  318. {mito_ai-0.1.42/src/Extensions/AppBuilder → mito_ai-0.1.44/src/Extensions/AppDeploy}/requirementsUtils.tsx +0 -0
  319. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/AppManager/ManageAppsPlugin.ts +0 -0
  320. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/ErrorMimeRenderer/CollapsibleWarningBlock.tsx +0 -0
  321. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/ErrorMimeRenderer/ErrorMimeRendererPlugin.tsx +0 -0
  322. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/ErrorMimeRenderer/errorUtils.tsx +0 -0
  323. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/InlineCompleter/index.ts +0 -0
  324. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/NotebookFooter/NotebookFooter.tsx +0 -0
  325. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/NotebookFooter/index.tsx +0 -0
  326. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/database/ConnectionForm.tsx +0 -0
  327. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/database/ConnectionList.tsx +0 -0
  328. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/database/DatabasePage.tsx +0 -0
  329. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/database/GettingStartedVideo.tsx +0 -0
  330. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/database/model.ts +0 -0
  331. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/general/GeneralPage.tsx +0 -0
  332. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/rules/RulesForm.tsx +0 -0
  333. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/rules/RulesPage.tsx +0 -0
  334. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/rules/models.ts +0 -0
  335. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/SettingsManager/support/SupportPage.tsx +0 -0
  336. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/VersionCheck/index.ts +0 -0
  337. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/emptyCell/EmptyCellPlugin.ts +0 -0
  338. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/emptyCell/emptyCell.ts +0 -0
  339. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/Extensions/status/index.tsx +0 -0
  340. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/AgentComponents/AgentComponentHeader.tsx +0 -0
  341. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/AgentComponents/AssumptionToolUI.tsx +0 -0
  342. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/AgentComponents/ErrorFixupToolUI.tsx +0 -0
  343. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/AgentComponents/GetCellOutputToolUI.tsx +0 -0
  344. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/AgentComponents/RunAllCellsToolUI.tsx +0 -0
  345. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/DatabaseButton.tsx +0 -0
  346. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/DropdownMenu.tsx +0 -0
  347. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/IconButton.tsx +0 -0
  348. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/LoadingCircle.tsx +0 -0
  349. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/LoadingDots.tsx +0 -0
  350. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/NextStepsPills.tsx +0 -0
  351. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/SelectedContextContainer.tsx +0 -0
  352. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/TextAndIconButton.tsx +0 -0
  353. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/TextButton.tsx +0 -0
  354. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/components/ToggleButton.tsx +0 -0
  355. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/hooks/useDebouncedEffect.tsx +0 -0
  356. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/hooks/useDebouncedFunction.tsx +0 -0
  357. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/AcceptIcon.tsx +0 -0
  358. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/AiIcon.tsx +0 -0
  359. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/AlertIcon.tsx +0 -0
  360. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/AppBuilderExcludeCellIcon.svg +0 -0
  361. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/AppBuilderIncludeCellIcon.svg +0 -0
  362. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/ChatIcon.svg +0 -0
  363. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/ChatIcon.tsx +0 -0
  364. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/Check.tsx +0 -0
  365. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/CodeIcon.tsx +0 -0
  366. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/CopyIcon.tsx +0 -0
  367. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/DatabaseIcon.tsx +0 -0
  368. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/DatabaseOutlineIcon.tsx +0 -0
  369. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/ErrorIcon.tsx +0 -0
  370. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/ExpandIcon.tsx +0 -0
  371. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/GarbageIcon.tsx +0 -0
  372. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/LightbulbIcon.svg +0 -0
  373. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/MagicWand.tsx +0 -0
  374. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/MagnifyingGlassIcon.tsx +0 -0
  375. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/MitoLogo.tsx +0 -0
  376. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/NotebookFooter/CodeIcon.tsx +0 -0
  377. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/NotebookFooter/TextIcon.tsx +0 -0
  378. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/NucleausIcon.tsx +0 -0
  379. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/NucleusIcon.svg +0 -0
  380. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/OpenIndicatorIcon.svg +0 -0
  381. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/PaperClipIcon.tsx +0 -0
  382. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/Pencil.tsx +0 -0
  383. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/PhotoIcon.tsx +0 -0
  384. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/PlayButtonIcon.tsx +0 -0
  385. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/RejectIcon.tsx +0 -0
  386. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/RobotHeadIcon.tsx +0 -0
  387. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/RuleIcon.tsx +0 -0
  388. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/SupportIcon.tsx +0 -0
  389. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/UndoIcon.tsx +0 -0
  390. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/WrenchAndScrewdriverIcon.tsx +0 -0
  391. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/icons/XMark.tsx +0 -0
  392. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/restAPI/utils.ts +0 -0
  393. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/AssistantCodeBlock.test.tsx +0 -0
  394. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/CTACarousel.test.tsx +0 -0
  395. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/ChatMessage.test.tsx +0 -0
  396. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/CodeBlockToolbar.test.tsx +0 -0
  397. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/NextSteps.test.tsx +0 -0
  398. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/RestoreCheckpoint.test.tsx +0 -0
  399. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AiChat/UserCodeBlock.test.tsx +0 -0
  400. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/AppManager/ManageAppsPlugin.test.tsx +0 -0
  401. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/NotebookFooter/notebookFooter.test.tsx +0 -0
  402. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/SettingsManager/ConnectionList.test.tsx +0 -0
  403. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/__mocks__/fileMock.js +0 -0
  404. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/__mocks__/jupyterMocks.ts +0 -0
  405. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/__mocks__/openaiMocks.ts +0 -0
  406. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/__mocks__/styleMock.js +0 -0
  407. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/setup/setupTests.js +0 -0
  408. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/utils/blacklistedWords.test.tsx +0 -0
  409. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/tests/utils/processChatHistoryForErrorGrouping.test.tsx +0 -0
  410. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/arrays.tsx +0 -0
  411. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/blacklistedWords.tsx +0 -0
  412. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/chatHistory.tsx +0 -0
  413. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/checkpoint.tsx +0 -0
  414. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/classNames.tsx +0 -0
  415. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/codeDiff.tsx +0 -0
  416. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/copyToClipboard.tsx +0 -0
  417. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/errors.tsx +0 -0
  418. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/fileName.tsx +0 -0
  419. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/nodeToPng.tsx +0 -0
  420. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/scroll.tsx +0 -0
  421. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/scrollMask.ts +0 -0
  422. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/sleep.ts +0 -0
  423. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/strings.tsx +0 -0
  424. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/stripe.tsx +0 -0
  425. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/version_check.ts +0 -0
  426. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/utils/waitForNotebookReady.ts +0 -0
  427. {mito_ai-0.1.42 → mito_ai-0.1.44}/src/websockets/BaseWebsocketClient.ts +0 -0
  428. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/AgentComponentHeader.css +0 -0
  429. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/AgentToolUIComponent.css +0 -0
  430. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/AlertBlock.css +0 -0
  431. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/AssumptionTool.css +0 -0
  432. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/AuthPopup.css +0 -0
  433. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/CTACarousel.css +0 -0
  434. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ChatInput.css +0 -0
  435. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ChatMessage.css +0 -0
  436. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ChatTaskpane.css +0 -0
  437. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/Citation.css +0 -0
  438. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/CodeBlock.css +0 -0
  439. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ConnectionForm.css +0 -0
  440. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/DatabasePage.css +0 -0
  441. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/DropdownMenu.css +0 -0
  442. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ErrorFixupToolUI.css +0 -0
  443. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ErrorMimeRendererPlugin.css +0 -0
  444. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/IconButton.css +0 -0
  445. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ManageAppsWidget.css +0 -0
  446. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/MarkdownMessage.css +0 -0
  447. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ModelSelector.css +0 -0
  448. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/NextStepsPills.css +0 -0
  449. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/NotebookFooter.css +0 -0
  450. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/PythonCode.css +0 -0
  451. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/RevertQuestionnaire.css +0 -0
  452. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/RulesForm.css +0 -0
  453. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/SettingsWidget.css +0 -0
  454. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/TextAndIconButton.css +0 -0
  455. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/TextButton.css +0 -0
  456. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/ToggleButton.css +0 -0
  457. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/base.css +0 -0
  458. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/button.css +0 -0
  459. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/icons.css +0 -0
  460. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/index.css +0 -0
  461. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/index.js +0 -0
  462. {mito_ai-0.1.42 → mito_ai-0.1.44}/style/statusItem.css +0 -0
  463. {mito_ai-0.1.42 → mito_ai-0.1.44}/tsconfig.json +0 -0
  464. {mito_ai-0.1.42 → mito_ai-0.1.44}/tsconfig.test.json +0 -0
  465. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/Activate.ps1 +0 -0
  466. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/activate +0 -0
  467. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/activate.csh +0 -0
  468. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/activate.fish +0 -0
  469. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/debugpy +0 -0
  470. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/debugpy-adapter +0 -0
  471. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/distro +0 -0
  472. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/docutils +0 -0
  473. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/f2py +0 -0
  474. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/hatch-jupyter-builder +0 -0
  475. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/hatchling +0 -0
  476. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/httpx +0 -0
  477. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/ipython +0 -0
  478. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/ipython3 +0 -0
  479. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jlpm +0 -0
  480. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jsonpointer +0 -0
  481. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jsonschema +0 -0
  482. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter +0 -0
  483. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-dejavu +0 -0
  484. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-events +0 -0
  485. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-execute +0 -0
  486. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-kernel +0 -0
  487. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-kernelspec +0 -0
  488. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-lab +0 -0
  489. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-labextension +0 -0
  490. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-labhub +0 -0
  491. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-migrate +0 -0
  492. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-nbconvert +0 -0
  493. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-run +0 -0
  494. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-server +0 -0
  495. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-troubleshoot +0 -0
  496. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/jupyter-trust +0 -0
  497. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/keyring +0 -0
  498. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/markdown-it +0 -0
  499. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/normalizer +0 -0
  500. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/numpy-config +0 -0
  501. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/openai +0 -0
  502. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pip +0 -0
  503. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pip3 +0 -0
  504. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pip3.11 +0 -0
  505. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pipreqs +0 -0
  506. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pybabel +0 -0
  507. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pygmentize +0 -0
  508. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyjson5 +0 -0
  509. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyrsa-decrypt +0 -0
  510. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyrsa-encrypt +0 -0
  511. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyrsa-keygen +0 -0
  512. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyrsa-priv2pub +0 -0
  513. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyrsa-sign +0 -0
  514. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/pyrsa-verify +0 -0
  515. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/python +0 -0
  516. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/python3 +0 -0
  517. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/python3.11 +0 -0
  518. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2html +0 -0
  519. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2html4 +0 -0
  520. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2html5 +0 -0
  521. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2latex +0 -0
  522. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2man +0 -0
  523. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2odt +0 -0
  524. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2pseudoxml +0 -0
  525. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2s5 +0 -0
  526. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2xetex +0 -0
  527. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/rst2xml +0 -0
  528. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/send2trash +0 -0
  529. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/streamlit +0 -0
  530. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/streamlit.cmd +0 -0
  531. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/tqdm +0 -0
  532. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/trove-classifiers +0 -0
  533. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/twine +0 -0
  534. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/unidiff +0 -0
  535. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/watchmedo +0 -0
  536. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/websockets +0 -0
  537. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/bin/wsdump +0 -0
  538. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/jupyter_notebook_config.d/jupyterlab.json +0 -0
  539. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/jupyter_server_config.d/jupyter-lsp-jupyter-server.json +0 -0
  540. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/jupyter_server_config.d/jupyter_server_terminals.json +0 -0
  541. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/jupyter_server_config.d/jupyterlab.json +0 -0
  542. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/jupyter_server_config.d/mito_ai.json +0 -0
  543. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/jupyter_server_config.d/notebook_shim.json +0 -0
  544. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/etc/jupyter/nbconfig/notebook.d/pydeck.json +0 -0
  545. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/include/site/python3.11/greenlet/greenlet.h +0 -0
  546. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/pyvenv.cfg +0 -0
  547. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/applications/jupyterlab.desktop +0 -0
  548. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/icons/hicolor/scalable/apps/jupyterlab.svg +0 -0
  549. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/kernels/python3/kernel.json +0 -0
  550. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/kernels/python3/logo-32x32.png +0 -0
  551. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/kernels/python3/logo-64x64.png +0 -0
  552. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/kernels/python3/logo-svg.svg +0 -0
  553. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/commands.json +0 -0
  554. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/context-menu.json +0 -0
  555. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/package.json.orig +0 -0
  556. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/property-inspector.json +0 -0
  557. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/shell.json +0 -0
  558. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/application-extension/top-bar.json +0 -0
  559. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/kernels-settings.json +0 -0
  560. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/notification.json +0 -0
  561. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/package.json.orig +0 -0
  562. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/palette.json +0 -0
  563. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/print.json +0 -0
  564. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/sanitizer.json +0 -0
  565. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/sessionDialogs.json +0 -0
  566. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/themes.json +0 -0
  567. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/apputils-extension/utilityCommands.json +0 -0
  568. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/cell-toolbar-extension/package.json.orig +0 -0
  569. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/cell-toolbar-extension/plugin.json +0 -0
  570. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/celltags-extension/package.json.orig +0 -0
  571. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/celltags-extension/plugin.json +0 -0
  572. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/codemirror-extension/package.json.orig +0 -0
  573. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/codemirror-extension/plugin.json +0 -0
  574. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/completer-extension/inline-completer.json +0 -0
  575. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/completer-extension/manager.json +0 -0
  576. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/completer-extension/package.json.orig +0 -0
  577. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/completer.json +0 -0
  578. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/foreign.json +0 -0
  579. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/package.json.orig +0 -0
  580. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/console-extension/tracker.json +0 -0
  581. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/csvviewer-extension/csv.json +0 -0
  582. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/csvviewer-extension/package.json.orig +0 -0
  583. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/csvviewer-extension/tsv.json +0 -0
  584. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/debugger-extension/main.json +0 -0
  585. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/debugger-extension/package.json.orig +0 -0
  586. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/docmanager-extension/download.json +0 -0
  587. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/docmanager-extension/package.json.orig +0 -0
  588. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/docmanager-extension/plugin.json +0 -0
  589. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/documentsearch-extension/package.json.orig +0 -0
  590. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/documentsearch-extension/plugin.json +0 -0
  591. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/extensionmanager-extension/package.json.orig +0 -0
  592. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/extensionmanager-extension/plugin.json +0 -0
  593. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/browser.json +0 -0
  594. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/download.json +0 -0
  595. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/open-browser-tab.json +0 -0
  596. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/open-with.json +0 -0
  597. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/package.json.orig +0 -0
  598. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/filebrowser-extension/widget.json +0 -0
  599. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/fileeditor-extension/completer.json +0 -0
  600. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/fileeditor-extension/package.json.orig +0 -0
  601. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/fileeditor-extension/plugin.json +0 -0
  602. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/about.json +0 -0
  603. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/jupyter-forum.json +0 -0
  604. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/launch-classic.json +0 -0
  605. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/help-extension/package.json.orig +0 -0
  606. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/htmlviewer-extension/package.json.orig +0 -0
  607. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/htmlviewer-extension/plugin.json +0 -0
  608. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/hub-extension/menu.json +0 -0
  609. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/hub-extension/package.json.orig +0 -0
  610. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/imageviewer-extension/package.json.orig +0 -0
  611. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/imageviewer-extension/plugin.json +0 -0
  612. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/consoles.json +0 -0
  613. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/inspector.json +0 -0
  614. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/notebooks.json +0 -0
  615. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/inspector-extension/package.json.orig +0 -0
  616. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/launcher-extension/package.json.orig +0 -0
  617. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/launcher-extension/plugin.json +0 -0
  618. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/logconsole-extension/package.json.orig +0 -0
  619. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/logconsole-extension/plugin.json +0 -0
  620. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/lsp-extension/package.json.orig +0 -0
  621. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/lsp-extension/plugin.json +0 -0
  622. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/mainmenu-extension/package.json.orig +0 -0
  623. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/mainmenu-extension/plugin.json +0 -0
  624. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/markdownviewer-extension/package.json.orig +0 -0
  625. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/markdownviewer-extension/plugin.json +0 -0
  626. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/mathjax-extension/package.json.orig +0 -0
  627. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/mathjax-extension/plugin.json +0 -0
  628. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/metadataform-extension/metadataforms.json +0 -0
  629. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/metadataform-extension/package.json.orig +0 -0
  630. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/completer.json +0 -0
  631. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/export.json +0 -0
  632. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/package.json.orig +0 -0
  633. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/panel.json +0 -0
  634. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/tools.json +0 -0
  635. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/notebook-extension/tracker.json +0 -0
  636. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/running-extension/package.json.orig +0 -0
  637. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/running-extension/plugin.json +0 -0
  638. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/settingeditor-extension/form-ui.json +0 -0
  639. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/settingeditor-extension/package.json.orig +0 -0
  640. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/settingeditor-extension/plugin.json +0 -0
  641. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/shortcuts-extension/package.json.orig +0 -0
  642. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/shortcuts-extension/shortcuts.json +0 -0
  643. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/statusbar-extension/package.json.orig +0 -0
  644. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/statusbar-extension/plugin.json +0 -0
  645. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/terminal-extension/package.json.orig +0 -0
  646. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/terminal-extension/plugin.json +0 -0
  647. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/toc-extension/package.json.orig +0 -0
  648. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/toc-extension/registry.json +0 -0
  649. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/consoles.json +0 -0
  650. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/files.json +0 -0
  651. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/notebooks.json +0 -0
  652. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/tooltip-extension/package.json.orig +0 -0
  653. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/translation-extension/package.json.orig +0 -0
  654. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/translation-extension/plugin.json +0 -0
  655. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/indicator.json +0 -0
  656. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/menu.json +0 -0
  657. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/package.json.orig +0 -0
  658. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/schemas/@jupyterlab/workspaces-extension/sidebar.json +0 -0
  659. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/100.1d14ca44a3cc8849349f.js +0 -0
  660. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1039.3fe94e87219c0ed159d3.js +0 -0
  661. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1050.907735cc1f6aec7cf2c1.js +0 -0
  662. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1096.4f9e5660ada21f5261d9.js +0 -0
  663. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1101.bac978f5a571e6dbdfb8.js +0 -0
  664. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1189.c1482e88f0e949753db6.js +0 -0
  665. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1208.4b9ab7b231d39ebdbc3f.js +0 -0
  666. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1218.856189c1ebf3c45164d6.js +0 -0
  667. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1219.b5630aa3a46050fddc27.js +0 -0
  668. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1268.e75d8a6dd557ac8957ca.js +0 -0
  669. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1423.4bcf4453e1c1d12d872f.js +0 -0
  670. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1436.2c11d9dee0ad6f49e968.js +0 -0
  671. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1445.a0e099c27d073217031a.js +0 -0
  672. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1449.7026e8748d2a77e15d5b.js +0 -0
  673. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1491.010c623dd546db976e95.js +0 -0
  674. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1495.13603dd823bbf5eb08b3.js +0 -0
  675. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1673.b0ee25168543434bdbca.js +0 -0
  676. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1737.a5fc97075f693ec36fe6.js +0 -0
  677. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1832.b1ede2fe899bdec88938.js +0 -0
  678. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1834.7445ad0c82371ac40737.js +0 -0
  679. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1838.839690ff17ec3c532f0a.js +0 -0
  680. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1854.a3adb21bb07c26b23d26.js +0 -0
  681. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1887.56f83f163a18c61efb16.js +0 -0
  682. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1909.7487a09fefbe7f9eabb6.js +0 -0
  683. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1909.7487a09fefbe7f9eabb6.js.LICENSE.txt +0 -0
  684. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1954.f1c519cb1415c7da3e8c.js +0 -0
  685. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1960.f8d8ef8a91360e60f0b9.js +0 -0
  686. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1962.6a7da74e809b70d5200d.js +0 -0
  687. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1969.86e3168e52802569d650.js +0 -0
  688. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1986.26029e99ef54a5652df8.js +0 -0
  689. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1991.84fc123d7cfe8ae2948e.js +0 -0
  690. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/1cb1c39ea642f26a4dfe.woff +0 -0
  691. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2107.9d77a8b05beb94bc2d24.js +0 -0
  692. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2211.3123543dcc217549bbb0.js +0 -0
  693. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/227.9b0125afc448cb68150f.js +0 -0
  694. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/227.9b0125afc448cb68150f.js.LICENSE.txt +0 -0
  695. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2280.6614699f54522fffbc00.js +0 -0
  696. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/232.5419cbec68e3fd0cf431.js +0 -0
  697. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/232.5419cbec68e3fd0cf431.js.LICENSE.txt +0 -0
  698. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2353.ab70488f07a7c0a7a3fd.js +0 -0
  699. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/246.326a6482593e8a7bcd58.js +0 -0
  700. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2467.4227742ac4b60289f222.js +0 -0
  701. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/247.84259ab142dd8c151fc2.js +0 -0
  702. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2491.c169ecbc5fde2bcdb1b3.js +0 -0
  703. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2574.327dadfe49120269ff31.js +0 -0
  704. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2576.b98b7b23adeec4cb6932.js +0 -0
  705. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2590.99e505d19b964439aa31.js +0 -0
  706. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2633.ea053b40991eb5adbc69.js +0 -0
  707. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2641.e77441e7a3e0d12834c5.js +0 -0
  708. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/265.6f9e37c0b72db64203b1.js +0 -0
  709. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2658.d1cae1b08b068d864368.js +0 -0
  710. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/26683bf201fb258a2237.woff +0 -0
  711. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2681.a47f40e38ecd31ccd687.js +0 -0
  712. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2707.61050e600b0aa9624127.js +0 -0
  713. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2713.3ef1db57ed7760656121.js +0 -0
  714. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2729.cafaf0caf2c0c83ac9fe.js +0 -0
  715. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2794.05495c139ed000b57598.js +0 -0
  716. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2823.0b6015b5e03c08281f41.js +0 -0
  717. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2880.8483d51b11998bfe8e4b.js +0 -0
  718. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2957.bc5eb9549a0b15c44916.js +0 -0
  719. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/2959.b24c9f67d639376f5ead.js +0 -0
  720. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3012.76784a9e362e929f4138.js +0 -0
  721. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/30e889b58cbc51adfbb0.woff +0 -0
  722. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3111.33574d9124842f355bce.js +0 -0
  723. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3112.0757b31e24c5334fda73.js +0 -0
  724. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/321.0fb994fd384a54491584.js +0 -0
  725. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3233.a1961c28c7af4496e2ce.js +0 -0
  726. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3257.30af681f0c294efb65f7.js +0 -0
  727. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3257.30af681f0c294efb65f7.js.LICENSE.txt +0 -0
  728. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/32792104b5ef69eded90.woff +0 -0
  729. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3282.22e78350d54fcaf3c6c8.js +0 -0
  730. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3293.375c6685d72662fc062f.js +0 -0
  731. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3303.b5596c0715d2d58332fb.js +0 -0
  732. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3311.929458b55c8d47530db0.js +0 -0
  733. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3320.c21c1ae6d3d9fbc1e633.js +0 -0
  734. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3372.8eeafd96de9a7a205f40.js +0 -0
  735. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3381.0329d34dc7da4fd3217d.js +0 -0
  736. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/339.380593b40d8d41150a4e.js +0 -0
  737. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3441.301aa4e2c4f5df3951af.js +0 -0
  738. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/355254db9ca10a09a3b5.woff +0 -0
  739. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3577.61e9230c331e97d3b966.js +0 -0
  740. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3616.a4271ffcf2ac3b4c2338.js +0 -0
  741. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/36e0d72d8a7afc696a3e.woff +0 -0
  742. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3709.e33bc30c83272aa85628.js +0 -0
  743. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/373c04fd2418f5c77eea.eot +0 -0
  744. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3753.0ff17182ebfa4f5a9f17.js +0 -0
  745. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3763.97f563236ace19dad5d0.js +0 -0
  746. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3780.c9294dc98ae926717741.js +0 -0
  747. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3799.eaa0438bc5c41bad0516.js +0 -0
  748. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3824.5e23be1e37fce5b7c6b3.js +0 -0
  749. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3832.c6026c483bb46cc8e599.js +0 -0
  750. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/387.915321d3d732d4432fe3.js +0 -0
  751. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3974.79f68bca9a02c92dab5e.js +0 -0
  752. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3991.678edf189fe92a216c70.js +0 -0
  753. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3bc6ecaae7ecf6f8d7f8.woff +0 -0
  754. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3de784d07b9fa8f104c1.woff +0 -0
  755. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/3f6d3488cf65374f6f67.woff +0 -0
  756. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4001.80ab3ef5300d7ce2d1fe.js +0 -0
  757. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4010.79d13b7a2339da3b512a.js +0 -0
  758. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4053.4945facc348478fd59f4.js +0 -0
  759. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4068.9cc41f46f729f2c4369b.js +0 -0
  760. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4076.b4d803d8bf1bd6c97854.js +0 -0
  761. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4090.c672dc95f66409f269b3.js +0 -0
  762. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4266.155b468271987c81d948.js +0 -0
  763. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4278.28e59e523e9e18c3780c.js +0 -0
  764. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4296.721da424585874d0789e.js +0 -0
  765. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4323.b2bd8a329a81d30ed039.js +0 -0
  766. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4350.8c8a0e7a3ffe036494e1.js +0 -0
  767. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4353.8572f6845cfde92dc152.js +0 -0
  768. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4364.92085f4e837e40b109bf.js +0 -0
  769. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4372.645626a2452c190dbb22.js +0 -0
  770. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4372.645626a2452c190dbb22.js.LICENSE.txt +0 -0
  771. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4408.f24dd0edf35e08548967.js +0 -0
  772. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4462.c3c6de84bc9399e0290d.js +0 -0
  773. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4484.e1d2565d1a3daa5fe5f1.js +0 -0
  774. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4486.8d2f41ae787607b7bf31.js +0 -0
  775. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4528.43328125d98d6cfdfa99.js +0 -0
  776. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4579.9a0033bfeaf88fd6e7bd.js +0 -0
  777. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4611.bd2b768223b0cd570834.js +0 -0
  778. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4616.04cfbd55593c51921cc7.js +0 -0
  779. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4622.361d6c5b43a96badb09c.js +0 -0
  780. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4728.56c0b9d87316b2fa012e.js +0 -0
  781. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4728.56c0b9d87316b2fa012e.js.LICENSE.txt +0 -0
  782. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4735.7731d551ca68bcb58e9f.js +0 -0
  783. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4797.3740ef47b224a11a7fab.js +0 -0
  784. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/481e39042508ae313a60.woff +0 -0
  785. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4838.8db4c61349bfba200547.js +0 -0
  786. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4854.a2981d3617f3b4417315.js +0 -0
  787. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4855.29e8dc6982ba4873487d.js +0 -0
  788. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4878.f7557c5c99a54b40c49b.js +0 -0
  789. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4903.557453ee1877edd20e4b.js +0 -0
  790. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4915.a90f555f4dda5e1bf90b.js +0 -0
  791. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/492.5f186062d2dcdf79c86c.js +0 -0
  792. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4928.6cb408e4def87534970d.js +0 -0
  793. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/4981.eed4ddb90566e90e3df4.js +0 -0
  794. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5085.a38923f36b551620798a.js +0 -0
  795. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5086.ebd4b460a48d21b4011d.js +0 -0
  796. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5090.404be96d8a6eae1e719a.js +0 -0
  797. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5090.404be96d8a6eae1e719a.js.LICENSE.txt +0 -0
  798. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5121.8f997d0069f5083af019.js +0 -0
  799. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5171.f5f6cff6015f8045d948.js +0 -0
  800. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5211.83e78dadcef89cae04bf.js +0 -0
  801. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5224.8a6bbc774d20be66fdfb.js +0 -0
  802. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5244.eefac84704ad30f00af3.js +0 -0
  803. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5317.f4bba2e3d0f4fdd088f7.js +0 -0
  804. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5318.d5df5c275e925c22d780.js +0 -0
  805. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5338.38c32bdfb0695f9b501f.js +0 -0
  806. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5489.7710426bc179ba430a0e.js +0 -0
  807. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5492.44728a640c37a4b4aa0c.js +0 -0
  808. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5521.8d4f6dfc471f500e4311.js +0 -0
  809. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5541.2ccc5c66812290d6e52b.js +0 -0
  810. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5566.c76ea61eb723ee84e2cf.js +0 -0
  811. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5606.e03dfa10c124a03f36ba.js +0 -0
  812. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5734.0d2b90dbe8b291c04cf6.js +0 -0
  813. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5829.0e46d479b4ade4783661.js +0 -0
  814. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5847.930208c25e45ecf30657.js +0 -0
  815. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5862.be1ec453e8db6844c62d.js +0 -0
  816. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5877.72ab5a29e95ce21981e4.js +0 -0
  817. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5878.98e69565af23cd586d1e.js +0 -0
  818. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5929.d561797f8259994ecdd8.js +0 -0
  819. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5941.76697e0e2c0e494a6dec.js +0 -0
  820. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5942.05cbcd55c5f45ff7db43.js +0 -0
  821. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5947.781a0c5cf13af5f28744.js +0 -0
  822. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5987.7e967df5417044d337a4.js +0 -0
  823. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/5cda41563a095bd70c78.woff +0 -0
  824. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6003.94cdab770c801f3c46f7.js +0 -0
  825. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6060.52dca011e9f2f279fc5e.js +0 -0
  826. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6095.6e79e3bad86e054aa8c8.js +0 -0
  827. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6145.c422868290460078c013.js +0 -0
  828. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6166.2bc9ac8e2156c0701a52.js +0 -0
  829. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6170.65d899f43342f1e34bf1.js +0 -0
  830. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6180.c5301dd914d68e945d09.js +0 -0
  831. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6261.4e1b423d7871074c80cc.js +0 -0
  832. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6275.e99f9312900c481b467d.js +0 -0
  833. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6294.b3cb5e16527b9d09b4a2.js +0 -0
  834. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6372.edc0712a4be855493530.js +0 -0
  835. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6412.ebdf8da40f1ba8272df9.js +0 -0
  836. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6460.d9aaa1e48da295c6035d.js +0 -0
  837. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6492.804d51a693edf6978ef4.js +0 -0
  838. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6540.51c00e890179a4832552.js +0 -0
  839. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6540.51c00e890179a4832552.js.LICENSE.txt +0 -0
  840. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6571.07c13dd1772e70ad9077.js +0 -0
  841. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6701.28a953175321589c09e6.js +0 -0
  842. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6733.2d8d3e01d56d79a52e7e.js +0 -0
  843. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6733.2d8d3e01d56d79a52e7e.js.LICENSE.txt +0 -0
  844. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6767.4b82d96c237ca7e31bc6.js +0 -0
  845. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6831.1df8fa4cabb5b1c19803.js +0 -0
  846. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6843.dabcc3c9658bc6ded6d1.js +0 -0
  847. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6874.bb2f7fbc6ce56eecc800.js +0 -0
  848. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6896.af1d649e0efae70b7b1a.js +0 -0
  849. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6926.741390f54d0a4e945d2b.js +0 -0
  850. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6941.465bebbd3d8a024f5f15.js +0 -0
  851. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6986.c04d18ff2124b19fe09e.js +0 -0
  852. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/6993.c93f5a810fcf441cbb6f.js +0 -0
  853. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/709.037f037cc86b4d6a54f7.js +0 -0
  854. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7136.b312751fbb25b73f5e71.js +0 -0
  855. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/721921bab0d001ebff02.woff +0 -0
  856. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7250.b88d0a5e237ff5ff1aad.js +0 -0
  857. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7260.b47dcaccbe7991104e8a.js +0 -0
  858. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7269.962f078e97afc4f68e79.js +0 -0
  859. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/72bc573386dd1d48c5bb.woff +0 -0
  860. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/731.82a7b980b5b7f4b7a14f.js +0 -0
  861. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7318.7cc6b4b0b3151b205ecb.js +0 -0
  862. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7425.f1c25f6c8aaec77e8635.js +0 -0
  863. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7445.7c793c8e1720f8ec4f85.js +0 -0
  864. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7575.2e3e32236d5667bba43f.js +0 -0
  865. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7587.3112240b6b82407b0f16.js +0 -0
  866. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7694.1cbff84dccb512476b7c.js +0 -0
  867. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7756.93d0ab41829355a147ab.js +0 -0
  868. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7769.d39df7673ee2660a9ac4.js +0 -0
  869. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7803.0c8929610218552319bf.js +0 -0
  870. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/785.1438df201df83e9dc1d8.js +0 -0
  871. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7856.dd9523e57bed80f1f694.js +0 -0
  872. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7881.c5a234ce171f347c94e2.js +0 -0
  873. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7975.1799b2744bef603bdcbb.js +0 -0
  874. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7990.01eaa552261b6e12a74a.js +0 -0
  875. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/7990.01eaa552261b6e12a74a.js.LICENSE.txt +0 -0
  876. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/79d088064beb3826054f.eot +0 -0
  877. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8103.ed2b21471519b58a3d73.js +0 -0
  878. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8217.801fbb0b549a74238760.js +0 -0
  879. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8232.e31d5021e77a9b5215d6.js +0 -0
  880. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8313.aac706f5036a7209b3a8.js +0 -0
  881. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8326.9dda93079a9e4f1b9be6.js +0 -0
  882. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8366.0e597a2f594ae122cabf.js +0 -0
  883. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8368.c75a4b32ae45ec88465d.js +0 -0
  884. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/84.fe0a55d7756c37585fb4.js +0 -0
  885. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8418.42e29778d4b49fb54e8e.js +0 -0
  886. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/867.e814bf26fbfc77fc4f16.js +0 -0
  887. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/870673df72e70f87c91a.woff +0 -0
  888. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/874.be636e15937f9ef70121.js +0 -0
  889. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8753.56da17175b663d61f9d3.js +0 -0
  890. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8778.a3883f9acac5a903d6be.js +0 -0
  891. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8779.6eebdb56785e3d38a457.js +0 -0
  892. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8786.a2bc3dfc1ea13c04ba94.js +0 -0
  893. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8786.a2bc3dfc1ea13c04ba94.js.LICENSE.txt +0 -0
  894. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8816.d7ec52fb31e9c6749593.js +0 -0
  895. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8830.d5bb102ed8737ffe38cb.js +0 -0
  896. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8891.cd6317f066463bec2f1e.js +0 -0
  897. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/88b98cad3688915e50da.woff +0 -0
  898. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/89.933673451ca4a51053cb.js +0 -0
  899. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8ea8791754915a898a31.woff2 +0 -0
  900. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/8ea8dbb1b02e6f730f55.woff +0 -0
  901. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9023.2ff687d7ff50df3719fc.js +0 -0
  902. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9046.99c477ea375dcbb8c7ca.js +0 -0
  903. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9085.5a959b5878e7afd8a878.js +0 -0
  904. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9085.5a959b5878e7afd8a878.js.LICENSE.txt +0 -0
  905. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9094.236f7c2ae78baa2e2fa6.js +0 -0
  906. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9123.501219cd782693d6539f.js +0 -0
  907. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9137.179a3c47465e7fb8f067.js +0 -0
  908. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9213.637b19b3af73e170fa11.js +0 -0
  909. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9296.c82d1f1a8d9204ca6ed7.js +0 -0
  910. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9311.ad0012965aa52db7a3e3.js +0 -0
  911. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9329.1683d45b6478b7c81a24.js +0 -0
  912. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9400.90fd1d2212781c80b587.js +0 -0
  913. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9474.01b4e1d1e3376f4a5919.js +0 -0
  914. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9517.7056cafdf1da3a136d45.js +0 -0
  915. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/961.29c067b15a524e556eed.js +0 -0
  916. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/961.29c067b15a524e556eed.js.LICENSE.txt +0 -0
  917. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9652.a8d2e5854bcae4d40041.js +0 -0
  918. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9674eb1bd55047179038.svg +0 -0
  919. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9746.c7e86b432363dfd28caa.js +0 -0
  920. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9834b82ad26e2a37583d.woff2 +0 -0
  921. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9892.6d289e7baed8c64d88e2.js +0 -0
  922. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/9892.6d289e7baed8c64d88e2.js.LICENSE.txt +0 -0
  923. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/a009bea404f7a500ded4.woff +0 -0
  924. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/a3b9817780214caf01e8.svg +0 -0
  925. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/af04542b29eaac04550a.woff +0 -0
  926. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/af6397503fcefbd61397.ttf +0 -0
  927. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/af96f67d7accf5fd2a4a.woff +0 -0
  928. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/b418136e3b384baaadec.woff +0 -0
  929. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/be0a084962d8066884f7.svg +0 -0
  930. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/bootstrap.js +0 -0
  931. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/build_log.json +0 -0
  932. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/c49810b53ecc0d87d802.woff +0 -0
  933. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/c56da8d69f1a0208b8e0.woff +0 -0
  934. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/cb9e9e693192413cde2b.woff +0 -0
  935. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/cda59d6efffa685830fd.ttf +0 -0
  936. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/e4299464e7b012968eed.eot +0 -0
  937. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/e42a88444448ac3d6054.woff2 +0 -0
  938. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/e8711bbb871afd8e9dea.ttf +0 -0
  939. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/f9217f66874b0c01cd8c.woff +0 -0
  940. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/fc6ddf5df402b263cfb1.woff +0 -0
  941. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/index.html +0 -0
  942. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/index.out.js +0 -0
  943. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/jlab_core.8aca991c1d97720da49a.js +0 -0
  944. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/main.d65d083251e934338191.js +0 -0
  945. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/package.json +0 -0
  946. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/style.js +0 -0
  947. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/static/third-party-licenses.json +0 -0
  948. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-extension/index.css +0 -0
  949. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-extension/index.js +0 -0
  950. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-high-contrast-extension/index.css +0 -0
  951. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/themes/@jupyterlab/theme-dark-high-contrast-extension/index.js +0 -0
  952. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/themes/@jupyterlab/theme-light-extension/index.css +0 -0
  953. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/lab/themes/@jupyterlab/theme-light-extension/index.js +0 -0
  954. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/install.json +0 -0
  955. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/package.json +0 -0
  956. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/568.1e2faa2ba0bbe59c4780.js +0 -0
  957. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/747.67662283a5707eeb4d4c.js +0 -0
  958. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/remoteEntry.5cbb9d2323598fbda535.js +0 -0
  959. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/style.js +0 -0
  960. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/jupyterlab_pygments/static/third-party-licenses.json +0 -0
  961. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/node_modules_process_browser_js.4b128e94d31a81ebd209.js +0 -0
  962. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/node_modules_process_browser_js.4b128e94d31a81ebd209.js.map +0 -0
  963. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/style.js +0 -0
  964. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/style_index_js.5876024bb17dbd6a3ee6.js +0 -0
  965. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/style_index_js.5876024bb17dbd6a3ee6.js.map +0 -0
  966. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_apis_signOut_mjs-node_module-75790d.688c25857e7b81b1740f.js +0 -0
  967. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_apis_signOut_mjs-node_module-75790d.688c25857e7b81b1740f.js.map +0 -0
  968. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_tokenProvider_tokenProvider_-72f1c8.a917210f057fcfe224ad.js +0 -0
  969. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_auth_dist_esm_providers_cognito_tokenProvider_tokenProvider_-72f1c8.a917210f057fcfe224ad.js.map +0 -0
  970. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_dist_esm_index_mjs.6bac1a8c4cc93f15f6b7.js +0 -0
  971. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_dist_esm_index_mjs.6bac1a8c4cc93f15f6b7.js.map +0 -0
  972. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_ui-react_dist_esm_index_mjs.4fcecd65bef9e9847609.js +0 -0
  973. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_aws-amplify_ui-react_dist_esm_index_mjs.4fcecd65bef9e9847609.js.map +0 -0
  974. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_react-dom_client_js-node_modules_aws-amplify_ui-react_dist_styles_css.b43d4249e4d3dac9ad7b.js +0 -0
  975. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_react-dom_client_js-node_modules_aws-amplify_ui-react_dist_styles_css.b43d4249e4d3dac9ad7b.js.map +0 -0
  976. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_semver_index_js.3f6754ac5116d47de76b.js +0 -0
  977. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_semver_index_js.3f6754ac5116d47de76b.js.map +0 -0
  978. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js +0 -0
  979. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/labextensions/mito_ai/static/vendors-node_modules_vscode-diff_dist_index_js.ea55f1f9346638aafbcf.js.map +0 -0
  980. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/asciidoc/conf.json +0 -0
  981. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/asciidoc/index.asciidoc.j2 +0 -0
  982. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/base/cell_id_anchor.j2 +0 -0
  983. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/base/celltags.j2 +0 -0
  984. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/base/display_priority.j2 +0 -0
  985. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/base/jupyter_widgets.html.j2 +0 -0
  986. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/base/mathjax.html.j2 +0 -0
  987. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/base/null.j2 +0 -0
  988. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/basic/conf.json +0 -0
  989. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/basic/index.html.j2 +0 -0
  990. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/classic/base.html.j2 +0 -0
  991. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/classic/conf.json +0 -0
  992. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/classic/index.html.j2 +0 -0
  993. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/classic/static/style.css +0 -0
  994. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/compatibility/display_priority.tpl +0 -0
  995. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/compatibility/full.tpl +0 -0
  996. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/base.html.j2 +0 -0
  997. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/conf.json +0 -0
  998. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/index.html.j2 +0 -0
  999. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/mermaidjs.html.j2 +0 -0
  1000. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/static/index.css +0 -0
  1001. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/static/theme-dark.css +0 -0
  1002. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/lab/static/theme-light.css +0 -0
  1003. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/base.tex.j2 +0 -0
  1004. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/conf.json +0 -0
  1005. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/display_priority.j2 +0 -0
  1006. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/document_contents.tex.j2 +0 -0
  1007. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/index.tex.j2 +0 -0
  1008. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/null.j2 +0 -0
  1009. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/report.tex.j2 +0 -0
  1010. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/style_bw_ipython.tex.j2 +0 -0
  1011. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/style_bw_python.tex.j2 +0 -0
  1012. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/style_ipython.tex.j2 +0 -0
  1013. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/style_jupyter.tex.j2 +0 -0
  1014. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/latex/style_python.tex.j2 +0 -0
  1015. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/markdown/conf.json +0 -0
  1016. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/markdown/index.md.j2 +0 -0
  1017. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/python/conf.json +0 -0
  1018. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/python/index.py.j2 +0 -0
  1019. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/reveal/base.html.j2 +0 -0
  1020. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/reveal/cellslidedata.j2 +0 -0
  1021. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/reveal/conf.json +0 -0
  1022. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/reveal/index.html.j2 +0 -0
  1023. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/reveal/static/custom_reveal.css +0 -0
  1024. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/rst/conf.json +0 -0
  1025. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/rst/index.rst.j2 +0 -0
  1026. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/script/conf.json +0 -0
  1027. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/script/script.j2 +0 -0
  1028. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/webpdf/conf.json +0 -0
  1029. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbconvert/templates/webpdf/index.pdf.j2 +0 -0
  1030. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbextensions/pydeck/extensionRequires.js +0 -0
  1031. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbextensions/pydeck/index.js +0 -0
  1032. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/jupyter/nbextensions/pydeck/index.js.map +0 -0
  1033. {mito_ai-0.1.42 → mito_ai-0.1.44}/venv/share/man/man1/ipython.1 +0 -0
  1034. {mito_ai-0.1.42 → mito_ai-0.1.44}/yarn.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mito_ai
3
- Version: 0.1.42
3
+ Version: 0.1.44
4
4
  Summary: AI chat for JupyterLab
5
5
  Project-URL: Homepage, https://trymito.io
6
6
  Project-URL: Bug Tracker, https://github.com/mito-ds/monorepo/issues
@@ -5,7 +5,7 @@ from typing import List, Dict
5
5
  from jupyter_server.utils import url_path_join
6
6
  from mito_ai.completions.handlers import CompletionHandler
7
7
  from mito_ai.completions.providers import OpenAIProvider
8
- from mito_ai.app_builder.handlers import AppBuilderHandler
8
+ from mito_ai.app_deploy.handlers import AppDeployHandler
9
9
  from mito_ai.streamlit_preview.handlers import StreamlitPreviewHandler
10
10
  from mito_ai.log.urls import get_log_urls
11
11
  from mito_ai.version_check import VersionCheckHandler
@@ -71,8 +71,8 @@ def _load_jupyter_server_extension(server_app) -> None: # type: ignore
71
71
  {"llm": open_ai_provider},
72
72
  ),
73
73
  (
74
- url_path_join(base_url, "mito-ai", "app-builder"),
75
- AppBuilderHandler,
74
+ url_path_join(base_url, "mito-ai", "app-deploy"),
75
+ AppDeployHandler,
76
76
  {}
77
77
  ),
78
78
  (
@@ -1,4 +1,4 @@
1
1
  # This file is auto-generated by Hatchling. As such, do not:
2
2
  # - modify
3
3
  # - track in version control e.g. be sure to add to .gitignore
4
- __version__ = VERSION = '0.1.42'
4
+ __version__ = VERSION = '0.1.44'
@@ -3,4 +3,4 @@
3
3
 
4
4
  """App builder module for Mito AI."""
5
5
 
6
- from .handlers import AppBuilderHandler
6
+ from .handlers import AppDeployHandler
@@ -7,13 +7,14 @@ import logging
7
7
  from typing import Any, Union, Optional
8
8
  import zipfile
9
9
  import tempfile
10
+ from mito_ai.streamlit_conversion.streamlit_utils import get_app_path
10
11
  from mito_ai.utils.create import initialize_user
11
12
  from mito_ai.utils.version_utils import is_pro
12
13
  from mito_ai.utils.websocket_base import BaseWebSocketHandler
13
- from mito_ai.app_builder.models import (
14
- BuildAppReply,
15
- AppBuilderError,
16
- BuildAppRequest,
14
+ from mito_ai.app_deploy.models import (
15
+ DeployAppReply,
16
+ AppDeployError,
17
+ DeployAppRequest,
17
18
  ErrorMessage,
18
19
  MessageType
19
20
  )
@@ -23,8 +24,8 @@ from mito_ai.constants import ACTIVE_STREAMLIT_BASE_URL
23
24
  import requests
24
25
 
25
26
 
26
- class AppBuilderHandler(BaseWebSocketHandler):
27
- """Handler for app building requests."""
27
+ class AppDeployHandler(BaseWebSocketHandler):
28
+ """Handler for app deploy requests."""
28
29
 
29
30
  def initialize(self) -> None:
30
31
  """Initialize the WebSocket handler."""
@@ -57,6 +58,7 @@ class AppBuilderHandler(BaseWebSocketHandler):
57
58
  Args:
58
59
  message: The message received on the WebSocket.
59
60
  """
61
+
60
62
  start = time.time()
61
63
 
62
64
  # Convert bytes to string if needed
@@ -73,13 +75,13 @@ class AppBuilderHandler(BaseWebSocketHandler):
73
75
  parsed_message = self.parse_message(message)
74
76
  message_type = parsed_message.get('type')
75
77
 
76
- if message_type == MessageType.BUILD_APP.value:
78
+ if message_type == MessageType.DEPLOY_APP.value:
77
79
  # Handle build app request
78
- build_app_request = BuildAppRequest(**parsed_message)
79
- await self._handle_build_app(build_app_request)
80
+ deploy_app_request = DeployAppRequest(**parsed_message)
81
+ await self._handle_deploy_app(deploy_app_request)
80
82
  else:
81
83
  self.log.error(f"Unknown message type: {message_type}")
82
- error = AppBuilderError(
84
+ error = AppDeployError(
83
85
  error_type="InvalidRequest",
84
86
  title=f"Unknown message type: {message_type}"
85
87
  )
@@ -87,11 +89,11 @@ class AppBuilderHandler(BaseWebSocketHandler):
87
89
 
88
90
  except ValueError as e:
89
91
  self.log.error("Invalid app builder request", exc_info=e)
90
- error = AppBuilderError.from_exception(e)
92
+ error = AppDeployError.from_exception(e)
91
93
  self.reply(ErrorMessage(**error.__dict__))
92
94
  except Exception as e:
93
95
  self.log.error("Error handling app builder message", exc_info=e)
94
- error = AppBuilderError.from_exception(
96
+ error = AppDeployError.from_exception(
95
97
  e,
96
98
  hint="An error occurred while building the app. Please check the logs for details."
97
99
  )
@@ -100,7 +102,7 @@ class AppBuilderHandler(BaseWebSocketHandler):
100
102
  latency_ms = round((time.time() - start) * 1000)
101
103
  self.log.info(f"App builder handler processed in {latency_ms} ms.")
102
104
 
103
- async def _handle_build_app(self, message: BuildAppRequest) -> None:
105
+ async def _handle_deploy_app(self, message: DeployAppRequest) -> None:
104
106
  """Handle a build app request.
105
107
 
106
108
  Args:
@@ -109,17 +111,17 @@ class AppBuilderHandler(BaseWebSocketHandler):
109
111
  message_id = message.message_id
110
112
  notebook_path = message.notebook_path
111
113
  jwt_token = message.jwt_token
112
-
114
+
113
115
  if not message_id:
114
116
  self.log.error("Missing message_id in request")
115
117
  return
116
118
 
117
119
  if not notebook_path:
118
- error = AppBuilderError(
120
+ error = AppDeployError(
119
121
  error_type="InvalidRequest",
120
122
  title="Missing 'notebook_path' parameter"
121
123
  )
122
- self.reply(BuildAppReply(
124
+ self.reply(DeployAppReply(
123
125
  parent_id=message_id,
124
126
  url="",
125
127
  error=error
@@ -132,12 +134,12 @@ class AppBuilderHandler(BaseWebSocketHandler):
132
134
  is_valid = self._validate_jwt_token(jwt_token) if jwt_token else False
133
135
  if not is_valid or not jwt_token:
134
136
  self.log.error("JWT token validation failed")
135
- error = AppBuilderError(
137
+ error = AppDeployError(
136
138
  error_type="Unauthorized",
137
139
  title="Invalid authentication token",
138
140
  hint="Please sign in again to deploy your app."
139
141
  )
140
- self.reply(BuildAppReply(
142
+ self.reply(DeployAppReply(
141
143
  parent_id=message_id,
142
144
  url="",
143
145
  error=error
@@ -150,25 +152,34 @@ class AppBuilderHandler(BaseWebSocketHandler):
150
152
  notebook_path = str(notebook_path) if notebook_path else ""
151
153
 
152
154
  app_directory = os.path.dirname(notebook_path)
153
- app_path = os.path.join(app_directory, "app.py")
154
-
155
- if not os.path.exists(app_path):
156
- success_flag, app_path_result, result_message = await streamlit_handler(notebook_path)
157
- if not success_flag or app_path_result is None:
158
- raise Exception(result_message)
159
-
155
+
156
+ # Check if the app.py file exists
157
+ app_path = get_app_path(app_directory)
158
+ if app_path is None:
159
+ error = AppDeployError(
160
+ error_type="AppNotFound",
161
+ title="App not found",
162
+ hint="Please make sure the app.py file exists in the same directory as the notebook."
163
+ )
164
+ self.reply(DeployAppReply(
165
+ parent_id=message_id,
166
+ url="",
167
+ error=error
168
+ ))
169
+
170
+ # Finally, deploy the app
160
171
  deploy_url = await self._deploy_app(app_directory, jwt_token)
161
172
 
162
173
  # Send the response
163
- self.reply(BuildAppReply(
174
+ self.reply(DeployAppReply(
164
175
  parent_id=message_id,
165
176
  url=deploy_url
166
177
  ))
167
178
 
168
179
  except Exception as e:
169
180
  self.log.error(f"Error building app: {e}", exc_info=e)
170
- error = AppBuilderError.from_exception(e)
171
- self.reply(BuildAppReply(
181
+ error = AppDeployError.from_exception(e)
182
+ self.reply(DeployAppReply(
172
183
  parent_id=message_id,
173
184
  url="",
174
185
  error=error
@@ -7,13 +7,13 @@ from typing import Literal, Optional
7
7
 
8
8
 
9
9
  class MessageType(str, Enum):
10
- """Types of app builder messages."""
11
- BUILD_APP = "build-app"
10
+ """Types of app deploy messages."""
11
+ DEPLOY_APP = "deploy-app"
12
12
 
13
13
 
14
14
  @dataclass(frozen=True)
15
- class AppBuilderError:
16
- """Error information for app builder operations."""
15
+ class AppDeployError:
16
+ """Error information for app deploy operations."""
17
17
 
18
18
  # Error type.
19
19
  error_type: str
@@ -28,7 +28,7 @@ class AppBuilderError:
28
28
  hint: Optional[str] = None
29
29
 
30
30
  @classmethod
31
- def from_exception(cls, e: Exception, hint: Optional[str] = None) -> "AppBuilderError":
31
+ def from_exception(cls, e: Exception, hint: Optional[str] = None) -> "AppDeployError":
32
32
  """Create an error from an exception.
33
33
 
34
34
  Args:
@@ -47,7 +47,7 @@ class AppBuilderError:
47
47
 
48
48
 
49
49
  @dataclass(frozen=True)
50
- class ErrorMessage(AppBuilderError):
50
+ class ErrorMessage(AppDeployError):
51
51
  """Error message."""
52
52
 
53
53
  # Message type.
@@ -55,11 +55,11 @@ class ErrorMessage(AppBuilderError):
55
55
 
56
56
 
57
57
  @dataclass(frozen=True)
58
- class BuildAppRequest:
59
- """Request to build an app."""
58
+ class DeployAppRequest:
59
+ """Request to deploy an app."""
60
60
 
61
61
  # Request type.
62
- type: Literal["build-app"]
62
+ type: Literal["deploy-app"]
63
63
 
64
64
  # Message ID.
65
65
  message_id: str
@@ -72,8 +72,8 @@ class BuildAppRequest:
72
72
 
73
73
 
74
74
  @dataclass(frozen=True)
75
- class BuildAppReply:
76
- """Reply to a build app request."""
75
+ class DeployAppReply:
76
+ """Reply to a deplpy app request."""
77
77
 
78
78
  # ID of the request message this is replying to.
79
79
  parent_id: str
@@ -82,7 +82,7 @@ class BuildAppReply:
82
82
  url: str
83
83
 
84
84
  # Optional error information.
85
- error: Optional[AppBuilderError] = None
85
+ error: Optional[AppDeployError] = None
86
86
 
87
87
  # Type of reply.
88
- type: Literal["build-app"] = "build-app"
88
+ type: Literal["deploy-app"] = "deploy-app"
@@ -12,11 +12,14 @@ from mito_ai.app_manager.models import (
12
12
  AppManagerError,
13
13
  ManageAppRequest,
14
14
  ManageAppReply,
15
+ CheckAppStatusRequest,
16
+ CheckAppStatusReply,
15
17
  ErrorMessage,
16
18
  MessageType
17
19
  )
18
20
  from mito_ai.constants import ACTIVE_STREAMLIT_BASE_URL
19
21
  from mito_ai.logger import get_logger
22
+ from mito_ai.app_manager.utils import convert_utc_to_local_time
20
23
  import requests
21
24
 
22
25
 
@@ -56,6 +59,10 @@ class AppManagerHandler(BaseWebSocketHandler):
56
59
  # Handle manage app request
57
60
  manage_app_request = ManageAppRequest(**parsed_message)
58
61
  await self._handle_manage_app(manage_app_request)
62
+ elif message_type == MessageType.CHECK_APP_STATUS.value:
63
+ # Handle check app status request
64
+ check_status_request = CheckAppStatusRequest(**parsed_message)
65
+ await self._handle_check_app_status(check_status_request)
59
66
  else:
60
67
  self.log.error(f"Unknown message type: {message_type}")
61
68
  error_response = ErrorMessage(
@@ -102,6 +109,10 @@ class AppManagerHandler(BaseWebSocketHandler):
102
109
 
103
110
  apps_data = manage_apps_response.json()
104
111
 
112
+ for app in apps_data:
113
+ if 'last_deployed_at' in app:
114
+ app['last_deployed_at'] = convert_utc_to_local_time(app['last_deployed_at'])
115
+
105
116
  # Create successful response
106
117
  reply = ManageAppReply(
107
118
  apps=apps_data,
@@ -126,4 +137,31 @@ class AppManagerHandler(BaseWebSocketHandler):
126
137
  error=error,
127
138
  message_id=request.message_id
128
139
  )
140
+ self.reply(error_reply)
141
+
142
+ async def _handle_check_app_status(self, request: CheckAppStatusRequest) -> None:
143
+ """Handle a check app status request."""
144
+ self.log.info("In check app status")
145
+ try:
146
+ # Make a HEAD request to check if the app URL is accessible
147
+ response = requests.head(request.app_url, timeout=10, verify=False)
148
+ self.log.debug(f"Is app accessible: {response.status_code}")
149
+ is_accessible = response.status_code==200
150
+
151
+ # Create successful response
152
+ reply = CheckAppStatusReply(
153
+ is_accessible=is_accessible
154
+ )
155
+
156
+ self.reply(reply)
157
+
158
+ except Exception as e:
159
+ self.log.error(f"Error checking app status: {e}", exc_info=e)
160
+ error = AppManagerError.from_exception(e)
161
+
162
+ # Return error response
163
+ error_reply = CheckAppStatusReply(
164
+ is_accessible=False,
165
+ error=error
166
+ )
129
167
  self.reply(error_reply)
@@ -1,5 +1,4 @@
1
1
  # Copyright (c) Saga Inc.
2
-
3
2
  # Distributed under the terms of the GNU Affero General Public License v3.0 License.
4
3
 
5
4
  from dataclasses import dataclass, field
@@ -9,6 +8,7 @@ from typing import List, Optional
9
8
  class MessageType(str, Enum):
10
9
  """Types of app manager messages."""
11
10
  MANAGE_APP = "manage-app"
11
+ CHECK_APP_STATUS = "check-app-status"
12
12
 
13
13
 
14
14
  @dataclass(frozen=True)
@@ -16,7 +16,7 @@ class ManageAppRequest:
16
16
  """Request to manage apps."""
17
17
  type: str = "manage-app"
18
18
  jwt_token: Optional[str] = None
19
- message_id: Optional[str] = None
19
+ message_id: Optional[str] = None
20
20
 
21
21
  @dataclass(frozen=True)
22
22
  class App:
@@ -24,7 +24,7 @@ class App:
24
24
  app_name: str
25
25
  url: str
26
26
  status: str
27
- created_at: str
27
+ last_deployed_at: str
28
28
 
29
29
  @dataclass(frozen=True)
30
30
  class AppManagerError:
@@ -49,6 +49,19 @@ class ManageAppReply:
49
49
  error: Optional[AppManagerError] = None
50
50
  message_id: Optional[str] = None
51
51
 
52
+ @dataclass(frozen=True)
53
+ class CheckAppStatusRequest:
54
+ """Request to check app status."""
55
+ app_url: str
56
+ type: str = "check-app-status"
57
+
58
+ @dataclass(frozen=True)
59
+ class CheckAppStatusReply:
60
+ """Reply to a check app status request."""
61
+ is_accessible: bool
62
+ type: str = "check-app-status"
63
+ error: Optional[AppManagerError] = None
64
+
52
65
  @dataclass(frozen=True)
53
66
  class ErrorMessage:
54
67
  """Error message."""
@@ -0,0 +1,24 @@
1
+ # Copyright (c) Saga Inc.
2
+ # Distributed under the terms of the GNU Affero General Public License v3.0 License.
3
+
4
+ from datetime import datetime, timezone
5
+
6
+ def convert_utc_to_local_time(time_str: str) -> str:
7
+ """Convert UTC time to a user's local time"""
8
+ try:
9
+ # Remove the 'Z' suffix and parse the UTC datetime
10
+ utc_time_str = time_str.rstrip('Z')
11
+ utc_time = datetime.fromisoformat(utc_time_str)
12
+
13
+ # Set timezone to UTC
14
+ utc_time = utc_time.replace(tzinfo=timezone.utc)
15
+
16
+ # Convert to local timezone (system timezone)
17
+ local_time = utc_time.astimezone()
18
+
19
+ # Format as 'MMM DD HH:MM'
20
+ return local_time.strftime('%m-%d-%Y %H:%M')
21
+
22
+ except (ValueError, AttributeError) as e:
23
+ # Return original string if parsing fails
24
+ return time_str
@@ -38,7 +38,7 @@ class AgentExecutionHandler(CompletionHandler[AgentExecutionMetadata]):
38
38
  display_prompt = metadata.input
39
39
 
40
40
  # Add the prompt to the message history
41
- new_ai_optimized_message = create_ai_optimized_message(prompt, metadata.base64EncodedActiveCellOutput, metadata.base64EncodedUploadedImage)
41
+ new_ai_optimized_message = create_ai_optimized_message(prompt, metadata.base64EncodedActiveCellOutput, metadata.additionalContext)
42
42
  new_display_optimized_message: ChatCompletionMessageParam = {"role": "user", "content": display_prompt}
43
43
 
44
44
  await message_history.append_message(new_ai_optimized_message, new_display_optimized_message, model, provider, metadata.threadId)
@@ -47,7 +47,7 @@ class ChatCompletionHandler(CompletionHandler[ChatMessageMetadata]):
47
47
  display_prompt = f"```python{metadata.activeCellCode or ''}```{metadata.input}"
48
48
 
49
49
  # Add the prompt to the message history
50
- new_ai_optimized_message = create_ai_optimized_message(prompt, metadata.base64EncodedActiveCellOutput, metadata.base64EncodedUploadedImage)
50
+ new_ai_optimized_message = create_ai_optimized_message(prompt, metadata.base64EncodedActiveCellOutput, metadata.additionalContext)
51
51
  new_display_optimized_message: ChatCompletionMessageParam = {"role": "user", "content": display_prompt}
52
52
  await message_history.append_message(new_ai_optimized_message, new_display_optimized_message, model, provider, metadata.threadId)
53
53
 
@@ -110,7 +110,7 @@ class ChatCompletionHandler(CompletionHandler[ChatMessageMetadata]):
110
110
  display_prompt = f"```python{metadata.activeCellCode or ''}```{metadata.input}"
111
111
 
112
112
  # Add the prompt to the message history
113
- new_ai_optimized_message = create_ai_optimized_message(prompt, metadata.base64EncodedActiveCellOutput, metadata.base64EncodedUploadedImage)
113
+ new_ai_optimized_message = create_ai_optimized_message(prompt, metadata.base64EncodedActiveCellOutput, metadata.additionalContext)
114
114
  new_display_optimized_message: ChatCompletionMessageParam = {"role": "user", "content": display_prompt}
115
115
  await message_history.append_message(new_ai_optimized_message, new_display_optimized_message, model, provider, metadata.threadId)
116
116
 
@@ -1,6 +1,7 @@
1
1
  # Copyright (c) Saga Inc.
2
2
  # Distributed under the terms of the GNU Affero General Public License v3.0 License.
3
3
 
4
+ import base64
4
5
  from typing import Optional, Union, List, Dict, Any, cast
5
6
  from mito_ai.completions.message_history import GlobalMessageHistory
6
7
  from mito_ai.completions.models import ThreadID
@@ -75,16 +76,37 @@ async def append_agent_system_message(
75
76
  )
76
77
 
77
78
 
79
+ def extract_and_encode_images_from_additional_context(
80
+ additional_context: Optional[List[Dict[str, str]]],
81
+ ) -> List[str]:
82
+ encoded_images = []
83
+
84
+ for context in additional_context or []:
85
+ if context["type"].startswith("image/"):
86
+ try:
87
+ with open(context["value"], "rb") as image_file:
88
+ image_data = image_file.read()
89
+ base64_encoded = base64.b64encode(image_data).decode("utf-8")
90
+ encoded_images.append(f"data:{context['type']};base64,{base64_encoded}")
91
+ except (FileNotFoundError, IOError) as e:
92
+ print(f"Error reading image file {context['value']}: {e}")
93
+ continue
94
+
95
+ return encoded_images
96
+
97
+
78
98
  def create_ai_optimized_message(
79
99
  text: str,
80
100
  base64EncodedActiveCellOutput: Optional[str] = None,
81
- base64EncodedUploadedImage: Optional[str] = None,
101
+ additional_context: Optional[List[Dict[str, str]]] = None,
82
102
  ) -> ChatCompletionMessageParam:
83
103
 
84
104
  message_content: Union[str, List[Dict[str, Any]]]
85
- has_uploaded_image = (
86
- base64EncodedUploadedImage is not None and base64EncodedUploadedImage != ""
105
+ encoded_images = extract_and_encode_images_from_additional_context(
106
+ additional_context
87
107
  )
108
+
109
+ has_uploaded_image = len(encoded_images) > 0
88
110
  has_active_cell_output = (
89
111
  base64EncodedActiveCellOutput is not None
90
112
  and base64EncodedActiveCellOutput != ""
@@ -98,12 +120,12 @@ def create_ai_optimized_message(
98
120
  }
99
121
  ]
100
122
 
101
- if has_uploaded_image:
123
+ for img in encoded_images:
102
124
  message_content.append(
103
125
  {
104
126
  "type": "image_url",
105
127
  "image_url": {
106
- "url": f"data:image/png;base64,{base64EncodedUploadedImage}"
128
+ "url": img
107
129
  },
108
130
  }
109
131
  )
@@ -67,6 +67,7 @@ class CompletionHandler(JupyterHandler, WebSocketHandler):
67
67
  self._llm = llm
68
68
  self.is_pro = is_pro()
69
69
  self._selected_model = FALLBACK_MODEL
70
+ self.is_electron = False
70
71
  identify(llm.key_type)
71
72
 
72
73
  @property
@@ -128,6 +129,18 @@ class CompletionHandler(JupyterHandler, WebSocketHandler):
128
129
  parsed_message = json.loads(message)
129
130
  metadata_dict = parsed_message.get('metadata', {})
130
131
  type: MessageType = MessageType(parsed_message.get('type'))
132
+
133
+ # Extract environment information from the message
134
+ environment = parsed_message.get('environment', {})
135
+ if environment:
136
+ is_electron = environment.get('isElectron', None)
137
+ if is_electron is not None:
138
+ if is_electron != self.is_electron:
139
+ # If the is_electron status is different, log it
140
+ identify(key_type=self._llm.key_type, is_electron=is_electron)
141
+
142
+ self.is_electron = is_electron
143
+
131
144
  except ValueError as e:
132
145
  self.log.error("Invalid completion request.", exc_info=e)
133
146
  return
@@ -3,7 +3,7 @@
3
3
 
4
4
  import traceback
5
5
  from dataclasses import dataclass, field
6
- from typing import List, Literal, Optional, NewType, Dict
6
+ from typing import List, Literal, Optional, NewType, Dict, Any
7
7
  from openai.types.chat import ChatCompletionMessageParam
8
8
  from enum import Enum
9
9
  from pydantic import BaseModel
@@ -83,7 +83,6 @@ class ChatMessageMetadata():
83
83
  variables: Optional[List[str]] = None
84
84
  files: Optional[List[str]] = None
85
85
  base64EncodedActiveCellOutput: Optional[str] = None
86
- base64EncodedUploadedImage: Optional[str] = None
87
86
  index: Optional[int] = None
88
87
  stream: bool = False
89
88
  additionalContext: Optional[List[Dict[str, str]]] = None
@@ -97,7 +96,6 @@ class AgentExecutionMetadata():
97
96
  aiOptimizedCells: List[AIOptimizedCell]
98
97
  isChromeBrowser: bool
99
98
  base64EncodedActiveCellOutput: Optional[str] = None
100
- base64EncodedUploadedImage: Optional[str] = None
101
99
  variables: Optional[List[str]] = None
102
100
  files: Optional[List[str]] = None
103
101
  index: Optional[int] = None
@@ -157,6 +155,9 @@ class CompletionRequest:
157
155
  # Whether to stream the response (if supported by the model).
158
156
  stream: bool = False
159
157
 
158
+ # Environment information from the client
159
+ environment: Optional[Dict[str, Any]] = None
160
+
160
161
 
161
162
  @dataclass(frozen=True)
162
163
  class AICapabilities:
@@ -51,7 +51,8 @@ Format:
51
51
  code: str
52
52
  code_summary: str
53
53
  cell_type: 'code' | 'markdown'
54
- }}
54
+ }},
55
+ analysis_assumptions: Optional[List[str]]
55
56
  }}
56
57
 
57
58
  Important information:
@@ -60,7 +61,7 @@ Important information:
60
61
  3. The code should be the full contents of that updated code cell. The code that you return will overwrite the existing contents of the code cell so it must contain all necessary code.
61
62
  4. The code_summary must be a very short phrase (1–5 words maximum) that begins with a verb ending in "-ing" (e.g., "Loading data", "Filtering rows", "Calculating average", "Plotting revenue"). Avoid full sentences or explanations—this should read like a quick commit message or code label, not a description.
62
63
  5. Important: Only use the CELL_UPDATE tool if you want to add/modify a notebook cell in response to the user's request. If the user is just sending you a friendly greeting or asking you a question about yourself, you SHOULD NOT USE A CELL_UPDATE tool because it does not require modifying the notebook. Instead, just use the FINISHED_TASK response.
63
- 6. The assumptions is an optional list of critical assumptions that you made about the data or analysis approach. The assumptions you list here will be displayed to the user so that they can confirm or correct the assumptions. For example: ["NaN values in the impressions column represent 0 impressions", "Only crashes with pedestrian or cyclist fatalities are considered fatal crashes", "Intervention priority combines both volume and severity to identify maximum impact opportunities"].
64
+ 6. The analysis_assumptions is an optional list of critical assumptions that you made about the data or analysis approach. The assumptions you list here will be displayed to the user so that they can confirm or correct the assumptions. For example: ["NaN values in the impressions column represent 0 impressions", "Only crashes with pedestrian or cyclist fatalities are considered fatal crashes", "Intervention priority combines both volume and severity to identify maximum impact opportunities"].
64
65
  7. Only include important data and analytical assumptions that if incorrect would fundamentally change your analysis conclusions. These should be data handling decisions, methodological choices, and definitional boundaries. Do not include: obvious statements ("Each record is counted once"), result interpretation guidance ("Gaps in the plot represent zero values"), display choices ("Data is sorted for clarity"), internal reasoning ("Bar chart is better than line plot"), or environment assumptions ("Library X is installed"). Prioritize quality over quantity - include only the most critical assumptions or omit the field entirely if there are no critical assumptions made in this step that have not already be shared with the user. If you ever doubt whether an assumption is critical enough to be shared with the user as an assumption, don't include it. Most messages should not include an assumption.
65
66
  8. Do not include the same assumption or variations of the same assumption multiple times in the same conversation. Once you have presented the assumption to the user, they will already have the opportunity to confirm or correct it so do not include it again.
66
67
 
@@ -77,7 +78,8 @@ Format:
77
78
  code: str
78
79
  code_summary: str
79
80
  cell_type: 'code' | 'markdown'
80
- }}
81
+ }},
82
+ analysis_assumptions: Optional[List[str]]
81
83
  }}
82
84
 
83
85
  Important information:
@@ -86,7 +88,7 @@ Important information:
86
88
  3. The code should be the full contents of that updated code cell. The code that you return will overwrite the existing contents of the code cell so it must contain all necessary code.
87
89
  4. code_summary must be a very short phrase (1–5 words maximum) that begins with a verb ending in "-ing" (e.g., "Loading data", "Filtering rows", "Calculating average", "Plotting revenue"). Avoid full sentences or explanations—this should read like a quick commit message or code label, not a description.
88
90
  5. The cell_type should only be 'markdown' if there is no code to add. There may be times where the code has comments. These are still code cells and should have the cell_type 'code'. Any cells that are labeled 'markdown' will be converted to markdown cells by the user.
89
- 6. The assumptions is an optional list of critical assumptions that you made about the data or analysis approach. The assumptions you list here will be displayed to the user so that they can confirm or correct the assumptions. For example: ["NaN values in the impressions column represent 0 impressions", "Only crashes with pedestrian or cyclist fatalities are considered fatal crashes", "Intervention priority combines both volume and severity to identify maximum impact opportunities"].
91
+ 6. The analysis_assumptions is an optional list of critical assumptions that you made about the data or analysis approach. The assumptions you list here will be displayed to the user so that they can confirm or correct the assumptions. For example: ["NaN values in the impressions column represent 0 impressions", "Only crashes with pedestrian or cyclist fatalities are considered fatal crashes", "Intervention priority combines both volume and severity to identify maximum impact opportunities"].
90
92
  7. Only include important data and analytical assumptions that if incorrect would fundamentally change your analysis conclusions. These should be data handling decisions, methodological choices, and definitional boundaries. Do not include: obvious statements ("Each record is counted once"), result interpretation guidance ("Gaps in the plot represent zero values"), display choices ("Data is sorted for clarity"), internal reasoning ("Bar chart is better than line plot"), or environment assumptions ("Library X is installed"). Prioritize quality over quantity - include only the most critical assumptions or omit the field entirely if there are no critical assumptions made in this step that have not already be shared with the user. If you ever doubt whether an assumption is critical enough to be shared with the user as an assumption, don't include it. Most messages should not include an assumption.
91
93
  8. Do not include the same assumption or variations of the same assumption multiple times in the same conversation. Once you have presented the assumption to the user, they will already have the opportunity to confirm or correct it so do not include it again.
92
94
 
@@ -38,7 +38,7 @@ def get_selected_context_str(additional_context: Optional[List[Dict[str, str]]])
38
38
  selected_variables = [context["value"] for context in additional_context if context.get("type") == "variable"]
39
39
  selected_files = [context["value"] for context in additional_context if context.get("type") == "file"]
40
40
  selected_db_connections = [context["value"] for context in additional_context if context.get("type") == "db"]
41
- selected_images = [context["value"] for context in additional_context if context.get("type") == "img"]
41
+ selected_images = [context["value"] for context in additional_context if context.get("type", "").startswith("image/")]
42
42
 
43
43
  # STEP 2: Create a list of strings (instructions) for each context type
44
44
  context_parts = []
@@ -68,5 +68,4 @@ def get_selected_context_str(additional_context: Optional[List[Dict[str, str]]])
68
68
  )
69
69
 
70
70
  # STEP 3: Combine into a single string
71
-
72
71
  return "\n\n".join(context_parts)