setta 0.0.17__tar.gz → 0.0.18__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 (271) hide show
  1. {setta-0.0.17/backend/setta.egg-info → setta-0.0.18}/PKG-INFO +2 -2
  2. {setta-0.0.17 → setta-0.0.18}/README.md +1 -1
  3. setta-0.0.18/backend/setta/__init__.py +1 -0
  4. setta-0.0.18/backend/setta/database/db/notifications/delete.py +21 -0
  5. setta-0.0.18/backend/setta/database/db/notifications/load.py +108 -0
  6. setta-0.0.18/backend/setta/database/db/notifications/save.py +49 -0
  7. setta-0.0.18/backend/setta/utils/__init__.py +0 -0
  8. {setta-0.0.17 → setta-0.0.18/backend/setta.egg-info}/PKG-INFO +2 -2
  9. {setta-0.0.17 → setta-0.0.18}/backend/setta.egg-info/SOURCES.txt +4 -0
  10. setta-0.0.17/backend/setta/__init__.py +0 -1
  11. {setta-0.0.17 → setta-0.0.18}/LICENSE +0 -0
  12. {setta-0.0.17 → setta-0.0.18}/MANIFEST.in +0 -0
  13. {setta-0.0.17 → setta-0.0.18}/backend/setta/cli/__init__.py +0 -0
  14. {setta-0.0.17 → setta-0.0.18}/backend/setta/cli/connect.py +0 -0
  15. {setta-0.0.17 → setta-0.0.18}/backend/setta/cli/logger.py +0 -0
  16. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/__init__.py +0 -0
  17. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/create_runnable_scripts.py +0 -0
  18. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/export_selected.py +0 -0
  19. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/find_placeholders.py +0 -0
  20. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/__init__.py +0 -0
  21. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/ast_utils.py +0 -0
  22. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/check_scope.py +0 -0
  23. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/generate_code.py +0 -0
  24. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/make_parseable.py +0 -0
  25. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/position_line_col.py +0 -0
  26. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/python/validate_imports.py +0 -0
  27. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/utils.py +0 -0
  28. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/yaml/__init__.py +0 -0
  29. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/yaml/generate_yaml.py +0 -0
  30. {setta-0.0.17 → setta-0.0.18}/backend/setta/code_gen/yaml/section_dict.py +0 -0
  31. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/__init__.py +0 -0
  32. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/backup.py +0 -0
  33. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/__init__.py +0 -0
  34. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/artifacts/__init__.py +0 -0
  35. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/artifacts/load.py +0 -0
  36. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/artifacts/save.py +0 -0
  37. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/artifacts/save_or_create.py +0 -0
  38. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/artifacts/utils.py +0 -0
  39. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/codeInfo/__init__.py +0 -0
  40. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/codeInfo/copy.py +0 -0
  41. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/codeInfo/load.py +0 -0
  42. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/codeInfo/save.py +0 -0
  43. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/codeInfo/utils.py +0 -0
  44. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/evRefs/__init__.py +0 -0
  45. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/evRefs/load.py +0 -0
  46. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/evRefs/save.py +0 -0
  47. {setta-0.0.17/backend/setta/database/db/projects → setta-0.0.18/backend/setta/database/db/notifications}/__init__.py +0 -0
  48. {setta-0.0.17/backend/setta/database/db/sectionVariants → setta-0.0.18/backend/setta/database/db/projects}/__init__.py +0 -0
  49. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/projects/copy.py +0 -0
  50. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/projects/delete.py +0 -0
  51. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/projects/load.py +0 -0
  52. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/projects/save.py +0 -0
  53. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/projects/saveAs.py +0 -0
  54. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/projects/utils.py +0 -0
  55. {setta-0.0.17/backend/setta/database/db/sections → setta-0.0.18/backend/setta/database/db/sectionVariants}/__init__.py +0 -0
  56. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sectionVariants/copy.py +0 -0
  57. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sectionVariants/load.py +0 -0
  58. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sectionVariants/save.py +0 -0
  59. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sectionVariants/utils.py +0 -0
  60. {setta-0.0.17/backend/setta/database/db/uiTypes → setta-0.0.18/backend/setta/database/db/sections}/__init__.py +0 -0
  61. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sections/copy.py +0 -0
  62. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sections/jsonSource.py +0 -0
  63. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sections/load.py +0 -0
  64. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sections/save.py +0 -0
  65. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/sections/utils.py +0 -0
  66. {setta-0.0.17/backend/setta/database/export_db → setta-0.0.18/backend/setta/database/db/uiTypes}/__init__.py +0 -0
  67. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/uiTypes/copy.py +0 -0
  68. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/uiTypes/load.py +0 -0
  69. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/uiTypes/save.py +0 -0
  70. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db/uiTypes/utils.py +0 -0
  71. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db_init.py +0 -0
  72. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/db_objs.py +0 -0
  73. {setta-0.0.17/backend/setta/lsp → setta-0.0.18/backend/setta/database/export_db}/__init__.py +0 -0
  74. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/export_db/export_db.py +0 -0
  75. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/export_db/export_raw.py +0 -0
  76. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/export_db/export_readable.py +0 -0
  77. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/export_db/utils.py +0 -0
  78. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/import_db.py +0 -0
  79. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/seed.py +0 -0
  80. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/settings_file.py +0 -0
  81. {setta-0.0.17 → setta-0.0.18}/backend/setta/database/utils.py +0 -0
  82. {setta-0.0.17/backend/setta/lsp/reader_fns → setta-0.0.18/backend/setta/lsp}/__init__.py +0 -0
  83. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/file_watcher.py +0 -0
  84. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader.py +0 -0
  85. {setta-0.0.17/backend/setta/tasks → setta-0.0.18/backend/setta/lsp/reader_fns}/__init__.py +0 -0
  86. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader_fns/completion.py +0 -0
  87. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader_fns/definition.py +0 -0
  88. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader_fns/diagnostics.py +0 -0
  89. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader_fns/documentHighlight.py +0 -0
  90. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader_fns/references.py +0 -0
  91. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/reader_fns/signatureHelp.py +0 -0
  92. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/server.py +0 -0
  93. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/specific_file_watcher.py +0 -0
  94. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/utils.py +0 -0
  95. {setta-0.0.17 → setta-0.0.18}/backend/setta/lsp/writer.py +0 -0
  96. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/__init__.py +0 -0
  97. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/artifact.py +0 -0
  98. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/code_info.py +0 -0
  99. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/dependencies.py +0 -0
  100. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/in_memory_fn_stdout_websocket.py +0 -0
  101. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/interactive.py +0 -0
  102. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/lsp.py +0 -0
  103. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/projects.py +0 -0
  104. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/reference_renaming.py +0 -0
  105. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/sections.py +0 -0
  106. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/settings.py +0 -0
  107. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/terminals.py +0 -0
  108. {setta-0.0.17 → setta-0.0.18}/backend/setta/routers/websocket.py +0 -0
  109. {setta-0.0.17 → setta-0.0.18}/backend/setta/server.py +0 -0
  110. {setta-0.0.17 → setta-0.0.18}/backend/setta/start.py +0 -0
  111. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/constants/BaseUITypes.json +0 -0
  112. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/constants/Settings.json +0 -0
  113. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/constants/constants.json +0 -0
  114. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/constants/db_init.sql +0 -0
  115. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/constants/defaultValues.json +0 -0
  116. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/constants/settingsProject.json +0 -0
  117. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/android-chrome-192x192.png +0 -0
  118. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/android-chrome-512x512.png +0 -0
  119. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/apple-touch-icon.png +0 -0
  120. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  121. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  122. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  123. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  124. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  125. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  126. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  127. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  128. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  129. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  130. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  131. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  132. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  133. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  134. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  135. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  136. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  137. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  138. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  139. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  140. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  141. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  142. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  143. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  144. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  145. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  146. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  147. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  148. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  149. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  150. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  151. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  152. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  153. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  154. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  155. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  156. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  157. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  158. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  159. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  160. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  161. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  162. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  163. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  164. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  165. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  166. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  167. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  168. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  169. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  170. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  171. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  172. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  173. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  174. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  175. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  176. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  177. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  178. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  179. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/cormorant-garamond-all-700-italic-D-4m7eF5.woff +0 -0
  180. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/cormorant-garamond-cyrillic-700-italic-C21vCyEA.woff2 +0 -0
  181. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/cormorant-garamond-cyrillic-ext-700-italic-gsr366qd.woff2 +0 -0
  182. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/cormorant-garamond-latin-700-italic-BQbwEFjx.woff2 +0 -0
  183. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/cormorant-garamond-latin-ext-700-italic-DnnS5iSC.woff2 +0 -0
  184. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/cormorant-garamond-vietnamese-700-italic-2_nTgjbG.woff2 +0 -0
  185. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/index-D-mLvWDA.css +0 -0
  186. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/index-D3_nMLig.js +0 -0
  187. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-all-400-normal-ByZ5TkcW.woff +0 -0
  188. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-all-600-normal-BQl_S1BW.woff +0 -0
  189. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-all-800-normal-BdAoPad8.woff +0 -0
  190. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-cyrillic-400-normal-BdCE3qi6.woff2 +0 -0
  191. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-cyrillic-600-normal-7XOpjHIA.woff2 +0 -0
  192. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-cyrillic-800-normal-DGhuWe7d.woff2 +0 -0
  193. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-cyrillic-ext-400-normal-BWPw_Wqo.woff2 +0 -0
  194. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-cyrillic-ext-600-normal-ejcnWb4M.woff2 +0 -0
  195. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-cyrillic-ext-800-normal-DBv1a6vS.woff2 +0 -0
  196. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-greek-400-normal-B1y6FevT.woff2 +0 -0
  197. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-greek-600-normal-C2fO7_LG.woff2 +0 -0
  198. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-greek-800-normal-Cmzsyk9X.woff2 +0 -0
  199. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-greek-ext-400-normal-CDYjSWzV.woff2 +0 -0
  200. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-greek-ext-600-normal-aFl-DVOe.woff2 +0 -0
  201. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-greek-ext-800-normal-BDfRYppl.woff2 +0 -0
  202. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-latin-400-normal-C0b7ZYuD.woff2 +0 -0
  203. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-latin-600-normal-Do_HpvrI.woff2 +0 -0
  204. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-latin-800-normal-4xo3UuPr.woff2 +0 -0
  205. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-latin-ext-400-normal-CoAAiu5e.woff2 +0 -0
  206. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-latin-ext-600-normal-Dc00Iig3.woff2 +0 -0
  207. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/inter-latin-ext-800-normal-MtSFSlwC.woff2 +0 -0
  208. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/logo/logo.svg +0 -0
  209. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/source-code-pro-all-500-normal-r3XLtphf.woff +0 -0
  210. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/source-code-pro-cyrillic-500-normal-CY1ydVwz.woff2 +0 -0
  211. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/source-code-pro-cyrillic-ext-500-normal-CfYAfiCF.woff2 +0 -0
  212. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/source-code-pro-greek-500-normal-CAXYj0Fh.woff2 +0 -0
  213. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/source-code-pro-latin-500-normal-D9gpC5Cq.woff2 +0 -0
  214. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/source-code-pro-latin-ext-500-normal-CRAmHsi-.woff2 +0 -0
  215. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-all-400-normal-DjvUmtn7.woff +0 -0
  216. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-all-500-normal-xIKbAjND.woff +0 -0
  217. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-all-600-normal-G3qI_FYS.woff +0 -0
  218. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-all-700-normal-DDAKfh8R.woff +0 -0
  219. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-400-normal-DiMJuv0g.woff2 +0 -0
  220. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-500-normal-Bj5Gxvqh.woff2 +0 -0
  221. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-600-normal-DqkZaPuW.woff2 +0 -0
  222. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-700-normal-DrOaUiEE.woff2 +0 -0
  223. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-ext-400-normal-DVtzt6WA.woff2 +0 -0
  224. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-ext-500-normal-Ci3LVpiW.woff2 +0 -0
  225. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-ext-600-normal-BROvLH43.woff2 +0 -0
  226. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/assets/work-sans-latin-ext-700-normal-qcgZR4tS.woff2 +0 -0
  227. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/browserconfig.xml +0 -0
  228. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/favicon-16x16.png +0 -0
  229. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/favicon-32x32.png +0 -0
  230. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/favicon.ico +0 -0
  231. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/index.html +0 -0
  232. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/manifest.json +0 -0
  233. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/mstile-144x144.png +0 -0
  234. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/mstile-150x150.png +0 -0
  235. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/mstile-310x150.png +0 -0
  236. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/mstile-310x310.png +0 -0
  237. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/mstile-70x70.png +0 -0
  238. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/robots.txt +0 -0
  239. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/safari-pinned-tab.svg +0 -0
  240. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/frontend/site.webmanifest +0 -0
  241. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/seed/.DS_Store +0 -0
  242. {setta-0.0.17 → setta-0.0.18}/backend/setta/static/seed/examples/.DS_Store +0 -0
  243. {setta-0.0.17/backend/setta/terminals → setta-0.0.18/backend/setta/tasks}/__init__.py +0 -0
  244. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/__init__.py +0 -0
  245. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/codeAreaAutocomplete.py +0 -0
  246. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/codeAreaFindTemplateVars.py +0 -0
  247. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/codeAreaInitializeCode.py +0 -0
  248. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/findEVRefs.py +0 -0
  249. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/parametersRequest.py +0 -0
  250. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/textFieldAutocomplete.py +0 -0
  251. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/textFieldInitializeCode.py +0 -0
  252. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/typeCheck.py +0 -0
  253. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/fns/utils.py +0 -0
  254. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/task_runner.py +0 -0
  255. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/tasks.py +0 -0
  256. {setta-0.0.17 → setta-0.0.18}/backend/setta/tasks/utils.py +0 -0
  257. {setta-0.0.17/backend/setta/utils → setta-0.0.18/backend/setta/terminals}/__init__.py +0 -0
  258. {setta-0.0.17 → setta-0.0.18}/backend/setta/terminals/terminals.py +0 -0
  259. {setta-0.0.17 → setta-0.0.18}/backend/setta/terminals/utils.py +0 -0
  260. {setta-0.0.17 → setta-0.0.18}/backend/setta/utils/constants.py +0 -0
  261. {setta-0.0.17 → setta-0.0.18}/backend/setta/utils/generate_memorable_string.py +0 -0
  262. {setta-0.0.17 → setta-0.0.18}/backend/setta/utils/generate_new_filename.py +0 -0
  263. {setta-0.0.17 → setta-0.0.18}/backend/setta/utils/section_contents.py +0 -0
  264. {setta-0.0.17 → setta-0.0.18}/backend/setta/utils/utils.py +0 -0
  265. {setta-0.0.17 → setta-0.0.18}/backend/setta/utils/websocket_manager.py +0 -0
  266. {setta-0.0.17 → setta-0.0.18}/backend/setta.egg-info/dependency_links.txt +0 -0
  267. {setta-0.0.17 → setta-0.0.18}/backend/setta.egg-info/entry_points.txt +0 -0
  268. {setta-0.0.17 → setta-0.0.18}/backend/setta.egg-info/requires.txt +0 -0
  269. {setta-0.0.17 → setta-0.0.18}/backend/setta.egg-info/top_level.txt +0 -0
  270. {setta-0.0.17 → setta-0.0.18}/pyproject.toml +0 -0
  271. {setta-0.0.17 → setta-0.0.18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: setta
3
- Version: 0.0.17
3
+ Version: 0.0.18
4
4
  Summary: Python without the donkeywork.
5
5
  Home-page: https://setta.dev
6
6
  Author: Kevin Musgrave, Jeff Musgrave
@@ -46,7 +46,7 @@ Requires-Dist: flake8==6.1.0; extra == "dev"
46
46
  - Added the Notifications view.
47
47
 
48
48
  <div align="center">
49
- <img width="441" src="https://github.com/user-attachments/assets/568f82c7-4944-44c8-a7c5-20008f09f97e" />
49
+ <img width="441" src="https://github.com/user-attachments/assets/1140ad66-311c-4713-8fbf-596b959a15c5" />
50
50
  </div>
51
51
 
52
52
  **March 10**: [v0.0.16](https://github.com/settadev/setta/releases/tag/v0.0.16)
@@ -16,7 +16,7 @@
16
16
  - Added the Notifications view.
17
17
 
18
18
  <div align="center">
19
- <img width="441" src="https://github.com/user-attachments/assets/568f82c7-4944-44c8-a7c5-20008f09f97e" />
19
+ <img width="441" src="https://github.com/user-attachments/assets/1140ad66-311c-4713-8fbf-596b959a15c5" />
20
20
  </div>
21
21
 
22
22
  **March 10**: [v0.0.16](https://github.com/settadev/setta/releases/tag/v0.0.16)
@@ -0,0 +1 @@
1
+ __version__ = "0.0.18"
@@ -0,0 +1,21 @@
1
+ def delete_notification(db, notification_id):
2
+ """
3
+ Delete a notification from the database by its ID.
4
+
5
+ Parameters:
6
+ - db: The database connection/cursor object
7
+ - notification_id: The ID of the notification to delete
8
+
9
+ Returns:
10
+ - True if the notification was deleted, False if it wasn't found
11
+ """
12
+ query = """
13
+ DELETE FROM Notifications
14
+ WHERE id = :notification_id
15
+ RETURNING id
16
+ """
17
+
18
+ db.execute(query, {"notification_id": notification_id})
19
+ result = db.fetchone()
20
+
21
+ return result is not None
@@ -0,0 +1,108 @@
1
+ from setta.database.utils import create_new_id
2
+ from setta.utils.constants import C
3
+ from setta.utils.utils import try_json
4
+
5
+
6
+ def load_project_notifications(db, project_config_id, limit=20):
7
+ """
8
+ Load the latest notifications for a specific project.
9
+
10
+ Parameters:
11
+ - db: The database connection/cursor object
12
+ - project_config_id: The ID of the project to get notifications for
13
+ - limit: Maximum number of notifications to return (default: 20)
14
+
15
+ Returns:
16
+ - A list of notification objects
17
+ """
18
+ query = """
19
+ SELECT
20
+ id,
21
+ timestamp,
22
+ type,
23
+ message,
24
+ metadata,
25
+ read_status
26
+ FROM
27
+ Notifications
28
+ WHERE
29
+ projectConfigId = :project_config_id
30
+ ORDER BY
31
+ id DESC
32
+ LIMIT :limit
33
+ """
34
+
35
+ query_params = {"project_config_id": project_config_id, "limit": limit}
36
+
37
+ db.execute(query, query_params)
38
+
39
+ notifications = []
40
+ for row in db.fetchall():
41
+ notification = create_notification_dict(**row)
42
+ notifications.append(notification)
43
+
44
+ return notifications
45
+
46
+
47
+ def load_notification(db, notification_id):
48
+ """
49
+ Load a single notification by its ID.
50
+
51
+ Parameters:
52
+ - db: The database connection/cursor object
53
+ - notification_id: The ID of the notification to retrieve
54
+
55
+ Returns:
56
+ - A notification object if found, None otherwise
57
+ """
58
+ query = """
59
+ SELECT
60
+ id,
61
+ timestamp,
62
+ type,
63
+ message,
64
+ metadata,
65
+ read_status
66
+ FROM
67
+ Notifications
68
+ WHERE
69
+ id = :notification_id
70
+ """
71
+
72
+ query_params = {"notification_id": notification_id}
73
+
74
+ db.execute(query, query_params)
75
+ row = db.fetchone()
76
+
77
+ if not row:
78
+ return None
79
+
80
+ return create_notification_dict(**row)
81
+
82
+
83
+ def create_notification_dict(
84
+ message,
85
+ id=None,
86
+ type=C.NOTIFICATION_TYPE_INFO,
87
+ timestamp=None,
88
+ metadata=None,
89
+ read_status=False,
90
+ temporary=False,
91
+ ):
92
+ if not id:
93
+ id = create_new_id()
94
+ read_status = bool(read_status)
95
+ if not isinstance(metadata, dict):
96
+ metadata = try_json(metadata)
97
+ if metadata is None:
98
+ metadata = {}
99
+
100
+ return {
101
+ "id": id,
102
+ "type": type,
103
+ "message": message,
104
+ "timestamp": timestamp,
105
+ "metadata": metadata,
106
+ "read_status": read_status,
107
+ "temporary": temporary,
108
+ }
@@ -0,0 +1,49 @@
1
+ import json
2
+
3
+
4
+ def save_notification(db, project_config_id, type, message, metadata=None):
5
+ """
6
+ Save a new notification to the database.
7
+
8
+ Parameters:
9
+ - db: The database connection/cursor object
10
+ - project_config_id: The ID of the project associated with this notification
11
+ - type: The notification type (e.g., 'error', 'warning', 'info', 'success')
12
+ - message: The notification message text
13
+ - metadata: Optional JSON-serializable dict with additional data
14
+
15
+ Returns:
16
+ - The ID of the newly created notification
17
+ """
18
+ query = """
19
+ INSERT INTO Notifications (
20
+ projectConfigId,
21
+ type,
22
+ message,
23
+ metadata
24
+ ) VALUES (
25
+ :project_config_id,
26
+ :type,
27
+ :message,
28
+ :metadata
29
+ )
30
+ RETURNING id
31
+ """
32
+
33
+ # Convert metadata to JSON string if provided
34
+ metadata_json = json.dumps(metadata) if metadata is not None else None
35
+
36
+ query_params = {
37
+ "project_config_id": project_config_id,
38
+ "type": type,
39
+ "message": message,
40
+ "metadata": metadata_json,
41
+ }
42
+
43
+ db.execute(query, query_params)
44
+
45
+ # Get the ID of the inserted notification
46
+ result = db.fetchone()
47
+ notification_id = result["id"] if result else None
48
+
49
+ return notification_id
File without changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: setta
3
- Version: 0.0.17
3
+ Version: 0.0.18
4
4
  Summary: Python without the donkeywork.
5
5
  Home-page: https://setta.dev
6
6
  Author: Kevin Musgrave, Jeff Musgrave
@@ -46,7 +46,7 @@ Requires-Dist: flake8==6.1.0; extra == "dev"
46
46
  - Added the Notifications view.
47
47
 
48
48
  <div align="center">
49
- <img width="441" src="https://github.com/user-attachments/assets/568f82c7-4944-44c8-a7c5-20008f09f97e" />
49
+ <img width="441" src="https://github.com/user-attachments/assets/1140ad66-311c-4713-8fbf-596b959a15c5" />
50
50
  </div>
51
51
 
52
52
  **March 10**: [v0.0.16](https://github.com/settadev/setta/releases/tag/v0.0.16)
@@ -52,6 +52,10 @@ backend/setta/database/db/codeInfo/utils.py
52
52
  backend/setta/database/db/evRefs/__init__.py
53
53
  backend/setta/database/db/evRefs/load.py
54
54
  backend/setta/database/db/evRefs/save.py
55
+ backend/setta/database/db/notifications/__init__.py
56
+ backend/setta/database/db/notifications/delete.py
57
+ backend/setta/database/db/notifications/load.py
58
+ backend/setta/database/db/notifications/save.py
55
59
  backend/setta/database/db/projects/__init__.py
56
60
  backend/setta/database/db/projects/copy.py
57
61
  backend/setta/database/db/projects/delete.py
@@ -1 +0,0 @@
1
- __version__ = "0.0.17"
File without changes
File without changes
File without changes
File without changes