MetaList 0.6.0__tar.gz → 0.6.1__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 (448) hide show
  1. {metalist-0.6.0/metalist.egg-info → metalist-0.6.1}/PKG-INFO +5 -1
  2. {metalist-0.6.0 → metalist-0.6.1}/README.md +4 -0
  3. {metalist-0.6.0 → metalist-0.6.1}/app/services/client_state_service.py +3 -1
  4. {metalist-0.6.0 → metalist-0.6.1}/app/static/config/command_palette_tags.json +0 -4
  5. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/client-state-migration.js +4 -2
  6. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/command-palette-controller.js +1 -19
  7. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/endpoint-registry.js +0 -11
  8. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/actions/ui-actions.js +0 -124
  9. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/mode-context.js +0 -8
  10. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/infinite-scroll-service.js +1 -26
  11. {metalist-0.6.0 → metalist-0.6.1}/app/version.py +1 -1
  12. {metalist-0.6.0 → metalist-0.6.1/metalist.egg-info}/PKG-INFO +5 -1
  13. {metalist-0.6.0 → metalist-0.6.1}/MANIFEST.in +0 -0
  14. {metalist-0.6.0 → metalist-0.6.1}/app/__init__.py +0 -0
  15. {metalist-0.6.0 → metalist-0.6.1}/app/api/__init__.py +0 -0
  16. {metalist-0.6.0 → metalist-0.6.1}/app/api/deps.py +0 -0
  17. {metalist-0.6.0 → metalist-0.6.1}/app/api/dev.py +0 -0
  18. {metalist-0.6.0 → metalist-0.6.1}/app/api/middleware/auth.py +0 -0
  19. {metalist-0.6.0 → metalist-0.6.1}/app/api/note_requests.py +0 -0
  20. {metalist-0.6.0 → metalist-0.6.1}/app/api/request_auth.py +0 -0
  21. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/ai.py +0 -0
  22. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/auth.py +0 -0
  23. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/backups.py +0 -0
  24. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/files.py +0 -0
  25. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/notes.py +0 -0
  26. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/ontology.py +0 -0
  27. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/reminders.py +0 -0
  28. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/remote_images.py +0 -0
  29. {metalist-0.6.0 → metalist-0.6.1}/app/api/routes/test.py +0 -0
  30. {metalist-0.6.0 → metalist-0.6.1}/app/api/transactions.py +0 -0
  31. {metalist-0.6.0 → metalist-0.6.1}/app/api/upload_limits.py +0 -0
  32. {metalist-0.6.0 → metalist-0.6.1}/app/config.py +0 -0
  33. {metalist-0.6.0 → metalist-0.6.1}/app/data_directory.py +0 -0
  34. {metalist-0.6.0 → metalist-0.6.1}/app/db/__init__.py +0 -0
  35. {metalist-0.6.0 → metalist-0.6.1}/app/db/backup_settings_sql.py +0 -0
  36. {metalist-0.6.0 → metalist-0.6.1}/app/db/engine.py +0 -0
  37. {metalist-0.6.0 → metalist-0.6.1}/app/db/file_schema.py +0 -0
  38. {metalist-0.6.0 → metalist-0.6.1}/app/db/file_session.py +0 -0
  39. {metalist-0.6.0 → metalist-0.6.1}/app/db/files_sql.py +0 -0
  40. {metalist-0.6.0 → metalist-0.6.1}/app/db/link_titles_sql.py +0 -0
  41. {metalist-0.6.0 → metalist-0.6.1}/app/db/live_recovery.py +0 -0
  42. {metalist-0.6.0 → metalist-0.6.1}/app/db/migrations.py +0 -0
  43. {metalist-0.6.0 → metalist-0.6.1}/app/db/notes_sql.py +0 -0
  44. {metalist-0.6.0 → metalist-0.6.1}/app/db/ontology_rules_sql.py +0 -0
  45. {metalist-0.6.0 → metalist-0.6.1}/app/db/reminders_sql.py +0 -0
  46. {metalist-0.6.0 → metalist-0.6.1}/app/db/retire_sounds.py +0 -0
  47. {metalist-0.6.0 → metalist-0.6.1}/app/db/schema.py +0 -0
  48. {metalist-0.6.0 → metalist-0.6.1}/app/db/search_history_sql.py +0 -0
  49. {metalist-0.6.0 → metalist-0.6.1}/app/db/session.py +0 -0
  50. {metalist-0.6.0 → metalist-0.6.1}/app/db/settings_sql.py +0 -0
  51. {metalist-0.6.0 → metalist-0.6.1}/app/db/tab_state_sql.py +0 -0
  52. {metalist-0.6.0 → metalist-0.6.1}/app/db/version.py +0 -0
  53. {metalist-0.6.0 → metalist-0.6.1}/app/encryption_audit.py +0 -0
  54. {metalist-0.6.0 → metalist-0.6.1}/app/exception_boundaries.py +0 -0
  55. {metalist-0.6.0 → metalist-0.6.1}/app/https_proxy.py +0 -0
  56. {metalist-0.6.0 → metalist-0.6.1}/app/main.py +0 -0
  57. {metalist-0.6.0 → metalist-0.6.1}/app/models/commands.py +0 -0
  58. {metalist-0.6.0 → metalist-0.6.1}/app/models/database.py +0 -0
  59. {metalist-0.6.0 → metalist-0.6.1}/app/models/entities.py +0 -0
  60. {metalist-0.6.0 → metalist-0.6.1}/app/models/enums.py +0 -0
  61. {metalist-0.6.0 → metalist-0.6.1}/app/models/linked_list.py +0 -0
  62. {metalist-0.6.0 → metalist-0.6.1}/app/models/list_operations.py +0 -0
  63. {metalist-0.6.0 → metalist-0.6.1}/app/models/list_traversal.py +0 -0
  64. {metalist-0.6.0 → metalist-0.6.1}/app/models/note_crud.py +0 -0
  65. {metalist-0.6.0 → metalist-0.6.1}/app/models/utils.py +0 -0
  66. {metalist-0.6.0 → metalist-0.6.1}/app/presentation/__init__.py +0 -0
  67. {metalist-0.6.0 → metalist-0.6.1}/app/presentation/render/__init__.py +0 -0
  68. {metalist-0.6.0 → metalist-0.6.1}/app/presentation/render/note_renderer.py +0 -0
  69. {metalist-0.6.0 → metalist-0.6.1}/app/presentation/templates.py +0 -0
  70. {metalist-0.6.0 → metalist-0.6.1}/app/security/authenticated_logging.py +0 -0
  71. {metalist-0.6.0 → metalist-0.6.1}/app/security/encryption.py +0 -0
  72. {metalist-0.6.0 → metalist-0.6.1}/app/security/http_headers.py +0 -0
  73. {metalist-0.6.0 → metalist-0.6.1}/app/security/note_html.py +0 -0
  74. {metalist-0.6.0 → metalist-0.6.1}/app/security/request_boundary.py +0 -0
  75. {metalist-0.6.0 → metalist-0.6.1}/app/security/sensitive_cache.py +0 -0
  76. {metalist-0.6.0 → metalist-0.6.1}/app/security/sensitive_logging.py +0 -0
  77. {metalist-0.6.0 → metalist-0.6.1}/app/security/shell_execution.py +0 -0
  78. {metalist-0.6.0 → metalist-0.6.1}/app/security/validation_errors.py +0 -0
  79. {metalist-0.6.0 → metalist-0.6.1}/app/server_runtime.py +0 -0
  80. {metalist-0.6.0 → metalist-0.6.1}/app/services/__init__.py +0 -0
  81. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/__init__.py +0 -0
  82. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/actions.py +0 -0
  83. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/cloud_privacy.py +0 -0
  84. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/context.py +0 -0
  85. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/evidence_serialization.py +0 -0
  86. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/inference.py +0 -0
  87. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/investigation.py +0 -0
  88. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/model_policy.py +0 -0
  89. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/ollama_inference.py +0 -0
  90. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/openai_cost_tracking.py +0 -0
  91. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/openai_inference.py +0 -0
  92. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/permissions.py +0 -0
  93. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/prompt_settings.py +0 -0
  94. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/prompts/__init__.py +0 -0
  95. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/prompts/final-response.md +0 -0
  96. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/prompts/system.md +0 -0
  97. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/prompts/tool-result.md +0 -0
  98. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/retrieval_settings.py +0 -0
  99. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/runtime.py +0 -0
  100. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/scope.py +0 -0
  101. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/skill_settings.py +0 -0
  102. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/skills/__init__.py +0 -0
  103. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/skills/scoped-investigation.md +0 -0
  104. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/tagging.py +0 -0
  105. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/tagging_run.py +0 -0
  106. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/token_estimation.py +0 -0
  107. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/tools.py +0 -0
  108. {metalist-0.6.0 → metalist-0.6.1}/app/services/agent/trace.py +0 -0
  109. {metalist-0.6.0 → metalist-0.6.1}/app/services/ai_chat.py +0 -0
  110. {metalist-0.6.0 → metalist-0.6.1}/app/services/ai_chat_rendering.py +0 -0
  111. {metalist-0.6.0 → metalist-0.6.1}/app/services/ai_chat_stream.py +0 -0
  112. {metalist-0.6.0 → metalist-0.6.1}/app/services/auth.py +0 -0
  113. {metalist-0.6.0 → metalist-0.6.1}/app/services/auth_cache_state.py +0 -0
  114. {metalist-0.6.0 → metalist-0.6.1}/app/services/auth_service.py +0 -0
  115. {metalist-0.6.0 → metalist-0.6.1}/app/services/backlink_index.py +0 -0
  116. {metalist-0.6.0 → metalist-0.6.1}/app/services/backlinks.py +0 -0
  117. {metalist-0.6.0 → metalist-0.6.1}/app/services/backup_service.py +0 -0
  118. {metalist-0.6.0 → metalist-0.6.1}/app/services/backup_settings_service.py +0 -0
  119. {metalist-0.6.0 → metalist-0.6.1}/app/services/bulk_operation.py +0 -0
  120. {metalist-0.6.0 → metalist-0.6.1}/app/services/content_cache.py +0 -0
  121. {metalist-0.6.0 → metalist-0.6.1}/app/services/content_formatting.py +0 -0
  122. {metalist-0.6.0 → metalist-0.6.1}/app/services/diagnostics.py +0 -0
  123. {metalist-0.6.0 → metalist-0.6.1}/app/services/embedded_references.py +0 -0
  124. {metalist-0.6.0 → metalist-0.6.1}/app/services/encryption.py +0 -0
  125. {metalist-0.6.0 → metalist-0.6.1}/app/services/exception_capture.py +0 -0
  126. {metalist-0.6.0 → metalist-0.6.1}/app/services/file_registry.py +0 -0
  127. {metalist-0.6.0 → metalist-0.6.1}/app/services/file_storage.py +0 -0
  128. {metalist-0.6.0 → metalist-0.6.1}/app/services/footnote_layout.py +0 -0
  129. {metalist-0.6.0 → metalist-0.6.1}/app/services/footnote_rendering.py +0 -0
  130. {metalist-0.6.0 → metalist-0.6.1}/app/services/hierarchy.py +0 -0
  131. {metalist-0.6.0 → metalist-0.6.1}/app/services/html_export.py +0 -0
  132. {metalist-0.6.0 → metalist-0.6.1}/app/services/html_unformatting.py +0 -0
  133. {metalist-0.6.0 → metalist-0.6.1}/app/services/hydration_state.py +0 -0
  134. {metalist-0.6.0 → metalist-0.6.1}/app/services/image_size_formatting.py +0 -0
  135. {metalist-0.6.0 → metalist-0.6.1}/app/services/inline_image_occurrences.py +0 -0
  136. {metalist-0.6.0 → metalist-0.6.1}/app/services/input_errors.py +0 -0
  137. {metalist-0.6.0 → metalist-0.6.1}/app/services/integrity.py +0 -0
  138. {metalist-0.6.0 → metalist-0.6.1}/app/services/latex_rendering.py +0 -0
  139. {metalist-0.6.0 → metalist-0.6.1}/app/services/link_titles.py +0 -0
  140. {metalist-0.6.0 → metalist-0.6.1}/app/services/login_rate_limit.py +0 -0
  141. {metalist-0.6.0 → metalist-0.6.1}/app/services/maintenance_mode.py +0 -0
  142. {metalist-0.6.0 → metalist-0.6.1}/app/services/managed_ollama_runtime.py +0 -0
  143. {metalist-0.6.0 → metalist-0.6.1}/app/services/markdown_rendering.py +0 -0
  144. {metalist-0.6.0 → metalist-0.6.1}/app/services/namespace_deletion_jobs.py +0 -0
  145. {metalist-0.6.0 → metalist-0.6.1}/app/services/namespace_deletion_worker.py +0 -0
  146. {metalist-0.6.0 → metalist-0.6.1}/app/services/namespace_rename_jobs.py +0 -0
  147. {metalist-0.6.0 → metalist-0.6.1}/app/services/namespace_rename_worker.py +0 -0
  148. {metalist-0.6.0 → metalist-0.6.1}/app/services/namespace_runtime_guard.py +0 -0
  149. {metalist-0.6.0 → metalist-0.6.1}/app/services/namespace_switcher.py +0 -0
  150. {metalist-0.6.0 → metalist-0.6.1}/app/services/note_fullscreen.py +0 -0
  151. {metalist-0.6.0 → metalist-0.6.1}/app/services/note_image_tags.py +0 -0
  152. {metalist-0.6.0 → metalist-0.6.1}/app/services/note_ordering.py +0 -0
  153. {metalist-0.6.0 → metalist-0.6.1}/app/services/note_store.py +0 -0
  154. {metalist-0.6.0 → metalist-0.6.1}/app/services/ollama_provider.py +0 -0
  155. {metalist-0.6.0 → metalist-0.6.1}/app/services/ontology_rules_store.py +0 -0
  156. {metalist-0.6.0 → metalist-0.6.1}/app/services/openai_credentials.py +0 -0
  157. {metalist-0.6.0 → metalist-0.6.1}/app/services/password_note_fields.py +0 -0
  158. {metalist-0.6.0 → metalist-0.6.1}/app/services/reference_presentation.py +0 -0
  159. {metalist-0.6.0 → metalist-0.6.1}/app/services/reminders.py +0 -0
  160. {metalist-0.6.0 → metalist-0.6.1}/app/services/remote_image_proxy.py +0 -0
  161. {metalist-0.6.0 → metalist-0.6.1}/app/services/request_recovery.py +0 -0
  162. {metalist-0.6.0 → metalist-0.6.1}/app/services/resource_limits.py +0 -0
  163. {metalist-0.6.0 → metalist-0.6.1}/app/services/root_sorting.py +0 -0
  164. {metalist-0.6.0 → metalist-0.6.1}/app/services/runtime_generation.py +0 -0
  165. {metalist-0.6.0 → metalist-0.6.1}/app/services/runtime_hardening.py +0 -0
  166. {metalist-0.6.0 → metalist-0.6.1}/app/services/runtime_lock.py +0 -0
  167. {metalist-0.6.0 → metalist-0.6.1}/app/services/search_history.py +0 -0
  168. {metalist-0.6.0 → metalist-0.6.1}/app/services/search_history_storage.py +0 -0
  169. {metalist-0.6.0 → metalist-0.6.1}/app/services/search_index.py +0 -0
  170. {metalist-0.6.0 → metalist-0.6.1}/app/services/search_query.py +0 -0
  171. {metalist-0.6.0 → metalist-0.6.1}/app/services/search_text.py +0 -0
  172. {metalist-0.6.0 → metalist-0.6.1}/app/services/selected_text_tag.py +0 -0
  173. {metalist-0.6.0 → metalist-0.6.1}/app/services/self_update.py +0 -0
  174. {metalist-0.6.0 → metalist-0.6.1}/app/services/session_timeout_service.py +0 -0
  175. {metalist-0.6.0 → metalist-0.6.1}/app/services/shell_session_service.py +0 -0
  176. {metalist-0.6.0 → metalist-0.6.1}/app/services/snapshot.py +0 -0
  177. {metalist-0.6.0 → metalist-0.6.1}/app/services/store.py +0 -0
  178. {metalist-0.6.0 → metalist-0.6.1}/app/services/structured_note_renderers.py +0 -0
  179. {metalist-0.6.0 → metalist-0.6.1}/app/services/sync.py +0 -0
  180. {metalist-0.6.0 → metalist-0.6.1}/app/services/sync_state.py +0 -0
  181. {metalist-0.6.0 → metalist-0.6.1}/app/services/tab_state.py +0 -0
  182. {metalist-0.6.0 → metalist-0.6.1}/app/services/tag_case.py +0 -0
  183. {metalist-0.6.0 → metalist-0.6.1}/app/services/tag_ontology.py +0 -0
  184. {metalist-0.6.0 → metalist-0.6.1}/app/services/tag_rename.py +0 -0
  185. {metalist-0.6.0 → metalist-0.6.1}/app/services/tag_suggestions.py +0 -0
  186. {metalist-0.6.0 → metalist-0.6.1}/app/services/tag_term_matching.py +0 -0
  187. {metalist-0.6.0 → metalist-0.6.1}/app/services/test_reset.py +0 -0
  188. {metalist-0.6.0 → metalist-0.6.1}/app/services/tokens.py +0 -0
  189. {metalist-0.6.0 → metalist-0.6.1}/app/services/undo_state.py +0 -0
  190. {metalist-0.6.0 → metalist-0.6.1}/app/services/update_backups.py +0 -0
  191. {metalist-0.6.0 → metalist-0.6.1}/app/services/view_cache.py +0 -0
  192. {metalist-0.6.0 → metalist-0.6.1}/app/services/view_diff.py +0 -0
  193. {metalist-0.6.0 → metalist-0.6.1}/app/services/view_state.py +0 -0
  194. {metalist-0.6.0 → metalist-0.6.1}/app/services/windows_process_control.py +0 -0
  195. {metalist-0.6.0 → metalist-0.6.1}/app/startup_environment.py +0 -0
  196. {metalist-0.6.0 → metalist-0.6.1}/app/startup_js_sanity.py +0 -0
  197. {metalist-0.6.0 → metalist-0.6.1}/app/startup_sanity.py +0 -0
  198. {metalist-0.6.0 → metalist-0.6.1}/app/startup_sanity_config.py +0 -0
  199. {metalist-0.6.0 → metalist-0.6.1}/app/static/css/floating-notes.css +0 -0
  200. {metalist-0.6.0 → metalist-0.6.1}/app/static/css/forms.css +0 -0
  201. {metalist-0.6.0 → metalist-0.6.1}/app/static/css/main.css +0 -0
  202. {metalist-0.6.0 → metalist-0.6.1}/app/static/img/favicon.ico +0 -0
  203. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/locked.js +0 -0
  204. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/main.js +0 -0
  205. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/activity-tracker.js +0 -0
  206. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/agent-prompt-service.js +0 -0
  207. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/agent-retrieval-settings.js +0 -0
  208. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/ai-agent-debug-view.js +0 -0
  209. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/ai-chat-api.js +0 -0
  210. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/ai-chat-panel-controller.js +0 -0
  211. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/ai-chat-panel-service.js +0 -0
  212. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/ai-thinking-level-service.js +0 -0
  213. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/bulk-elapsed-clock.js +0 -0
  214. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/bulk-proposal-ui.js +0 -0
  215. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/cloud-privacy-policy.js +0 -0
  216. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/ai-chat/proposal-menu.js +0 -0
  217. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/api-client.js +0 -0
  218. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/api-failure-classification-service.js +0 -0
  219. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/application-state.js +0 -0
  220. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/async-result.js +0 -0
  221. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/auth.js +0 -0
  222. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/client-state-api.js +0 -0
  223. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/activation-auth-policy.js +0 -0
  224. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/backup-command-availability.js +0 -0
  225. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/click-activation-service.js +0 -0
  226. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/note-layout-preferences.js +0 -0
  227. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/preferences-store.js +0 -0
  228. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/tag-config-loader.js +0 -0
  229. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/command-palette/usage-store.js +0 -0
  230. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/config.js +0 -0
  231. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/connectivity-monitor.js +0 -0
  232. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/context-menu/context-menu-registry.js +0 -0
  233. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/context-menu/context-menu-service.js +0 -0
  234. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/context-menu/context-menu-target-service.js +0 -0
  235. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/context-menu/input-caret-service.js +0 -0
  236. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/disconnect-editing-state-service.js +0 -0
  237. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/dom-utils-fixed.js +0 -0
  238. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/dom-utils.js +0 -0
  239. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/editor-commands.js +0 -0
  240. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/editor-selection.js +0 -0
  241. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/editor-toolbar.js +0 -0
  242. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/elapsed-time.js +0 -0
  243. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/error-handler.js +0 -0
  244. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/error-overlay.js +0 -0
  245. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/expected-errors.js +0 -0
  246. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/location-flags.js +0 -0
  247. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/login-namespace-picker.js +0 -0
  248. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/maintenance.js +0 -0
  249. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/agent-prompt-editor-modal.js +0 -0
  250. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/ai-agent-settings-modal.js +0 -0
  251. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/alphabetize-root-notes-modal.js +0 -0
  252. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/backup-restore-modal.js +0 -0
  253. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/backup-result-modal.js +0 -0
  254. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/backup-retention-modal.js +0 -0
  255. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/backup-settings-modal.js +0 -0
  256. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/base-modal.js +0 -0
  257. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/confirmation-modal.js +0 -0
  258. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/delete-namespace-modal.js +0 -0
  259. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/delete-namespace-validation.js +0 -0
  260. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/help-modal.js +0 -0
  261. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/namespace-loading-page.js +0 -0
  262. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/namespace-modals.js +0 -0
  263. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/namespace-ports-profile.js +0 -0
  264. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/namespace-rename-validation.js +0 -0
  265. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/note-layout-appearance-modal.js +0 -0
  266. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/ontology-modal.js +0 -0
  267. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/password-modal.js +0 -0
  268. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/prioritize-modal.js +0 -0
  269. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/random-password-modal.js +0 -0
  270. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/reminder-modal.js +0 -0
  271. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/reset-updated-at-modal.js +0 -0
  272. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/search-suggestion-statistics-modal.js +0 -0
  273. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/session-timeout-modal.js +0 -0
  274. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/modals/version-info-modal.js +0 -0
  275. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/actions/content-actions.js +0 -0
  276. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/actions/history-actions.js +0 -0
  277. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/actions/note-actions.js +0 -0
  278. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/actions/search-actions.js +0 -0
  279. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/actions/selection-actions.js +0 -0
  280. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/context-menu-events.js +0 -0
  281. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/focus-events.js +0 -0
  282. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/inactivity-events.js +0 -0
  283. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/input-events.js +0 -0
  284. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/keyboard-events.js +0 -0
  285. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/mouse-events.js +0 -0
  286. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/events/search-events.js +0 -0
  287. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/mode-logger.js +0 -0
  288. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/mode-manager-controller.js +0 -0
  289. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/add-style-service.js +0 -0
  290. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/animated-scroll-service.js +0 -0
  291. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/backlinks-navigation-service.js +0 -0
  292. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/backlinks-panel-service.js +0 -0
  293. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/clipboard-shortcut-policy-service.js +0 -0
  294. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/collapse-affordance-service.js +0 -0
  295. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/collapse-editing-policy-service.js +0 -0
  296. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/command-gate-service.js +0 -0
  297. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/context-menu-target-service.js +0 -0
  298. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/deselect-selection-state-service.js +0 -0
  299. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/differential-view-service.js +0 -0
  300. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/edit-session-collapse-policy-service.js +0 -0
  301. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/edit-session-collapse-service.js +0 -0
  302. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/embedded-image-service.js +0 -0
  303. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/file-drop-policy-service.js +0 -0
  304. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/file-image-preview-service.js +0 -0
  305. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/file-reference-service.js +0 -0
  306. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/filtered-refresh-selection-service.js +0 -0
  307. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/floating-note-dom.js +0 -0
  308. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/floating-note-layout.js +0 -0
  309. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/floating-note-service.js +0 -0
  310. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/footnote-navigation-service.js +0 -0
  311. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/history-selection-policy-service.js +0 -0
  312. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/history-shortcut-policy-service.js +0 -0
  313. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/html-paste-sanitizer-service.js +0 -0
  314. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/image-context-menu-action-service.js +0 -0
  315. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/image-file-insert-choice-modal-service.js +0 -0
  316. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/link-context-menu-action-service.js +0 -0
  317. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/link-title-prefetch-service.js +0 -0
  318. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/markdown-render-service.js +0 -0
  319. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/mermaid-render-service.js +0 -0
  320. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-click-target-service.js +0 -0
  321. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-clipboard-write-service.js +0 -0
  322. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-collapse-animation-service.js +0 -0
  323. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-context-menu-action-service.js +0 -0
  324. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-delete-shortcut-policy-service.js +0 -0
  325. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-drag-service.js +0 -0
  326. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-fullscreen-service.js +0 -0
  327. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-reposition-animation-service.js +0 -0
  328. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-split-service.js +0 -0
  329. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/note-timestamp-hover-service.js +0 -0
  330. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/password-clipboard-service.js +0 -0
  331. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/polling-service.js +0 -0
  332. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/reference-source-navigation-service.js +0 -0
  333. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/remote-image-proxy-service.js +0 -0
  334. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/remove-formatting-service.js +0 -0
  335. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/root-date-separator-service.js +0 -0
  336. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/root-sort-indicator-service.js +0 -0
  337. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/root-sort-service.js +0 -0
  338. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/scroll-anchor-service.js +0 -0
  339. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/scroll-restoration-service.js +0 -0
  340. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/scroll-to-top-service.js +0 -0
  341. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-contexts-overlay-service.js +0 -0
  342. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-debounce-service.js +0 -0
  343. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-input-service.js +0 -0
  344. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-interaction-service.js +0 -0
  345. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-redaction-reveal-service.js +0 -0
  346. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-suggestion-statistics-service.js +0 -0
  347. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-suggestion-window-labels-service.js +0 -0
  348. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-suggestion-windows-service.js +0 -0
  349. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-suggestions-service.js +0 -0
  350. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/search-syntax-service.js +0 -0
  351. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/selected-formatting-removal-service.js +0 -0
  352. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/selected-text-tag-service.js +0 -0
  353. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/shell-output-service.js +0 -0
  354. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tab-dom-cache-service.js +0 -0
  355. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tab-drag-service.js +0 -0
  356. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tab-duplication-service.js +0 -0
  357. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tab-state-service.js +0 -0
  358. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tag-bar-service.js +0 -0
  359. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tag-input-selection-service.js +0 -0
  360. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tag-proposal-service.js +0 -0
  361. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tag-suggestions-service.js +0 -0
  362. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/tag-syntax-service.js +0 -0
  363. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/todo-toggle-editing-service.js +0 -0
  364. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/untagged-view-indicator-service.js +0 -0
  365. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/mode-manager/services/view-mode-search-shortcut-service.js +0 -0
  366. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/note-html-sanitizer.js +0 -0
  367. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/password-generator.js +0 -0
  368. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/password-operation-response.js +0 -0
  369. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/password-policy.js +0 -0
  370. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/password-strength.js +0 -0
  371. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/reminder-store.js +0 -0
  372. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/reminder-surface-service.js +0 -0
  373. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/selection-markers.js +0 -0
  374. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/session-auth.js +0 -0
  375. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/tag-token.js +0 -0
  376. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/modules/uuid.js +0 -0
  377. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/namespace-deleted.js +0 -0
  378. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/namespace-renamed.js +0 -0
  379. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/dompurify-3.4.13.LICENSE.txt +0 -0
  380. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/dompurify-3.4.13.min.js +0 -0
  381. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/markdown-it-14.3.2.LICENSE.txt +0 -0
  382. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/markdown-it-14.3.2.min.js +0 -0
  383. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/mermaid-11.16.1.LICENSE.txt +0 -0
  384. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/mermaid-11.16.1.min.js +0 -0
  385. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/zxcvbn-4.4.2.LICENSE.txt +0 -0
  386. {metalist-0.6.0 → metalist-0.6.1}/app/static/js/vendor/zxcvbn-4.4.2.js +0 -0
  387. {metalist-0.6.0 → metalist-0.6.1}/app/static/note-html-policy.json +0 -0
  388. {metalist-0.6.0 → metalist-0.6.1}/app/static/video/login-startup.mp4 +0 -0
  389. {metalist-0.6.0 → metalist-0.6.1}/app/templates/base.html +0 -0
  390. {metalist-0.6.0 → metalist-0.6.1}/app/templates/index.html +0 -0
  391. {metalist-0.6.0 → metalist-0.6.1}/app/templates/locked.html +0 -0
  392. {metalist-0.6.0 → metalist-0.6.1}/app/templates/maintenance.html +0 -0
  393. {metalist-0.6.0 → metalist-0.6.1}/app/templates/namespace_deleted.html +0 -0
  394. {metalist-0.6.0 → metalist-0.6.1}/app/templates/namespace_renamed.html +0 -0
  395. {metalist-0.6.0 → metalist-0.6.1}/app/templates/notes_list.html +0 -0
  396. {metalist-0.6.0 → metalist-0.6.1}/app/upload_limits.py +0 -0
  397. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/__init__.py +0 -0
  398. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/add_selected_text_tag.py +0 -0
  399. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/alphabetize_root_notes.py +0 -0
  400. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/base.py +0 -0
  401. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/bulk_tag_proposals.py +0 -0
  402. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/collapse.py +0 -0
  403. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/copy_note.py +0 -0
  404. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/create_child.py +0 -0
  405. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/create_note.py +0 -0
  406. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/create_sibling.py +0 -0
  407. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/delete_subtree.py +0 -0
  408. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/delete_tag.py +0 -0
  409. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/expand.py +0 -0
  410. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/indent.py +0 -0
  411. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/lock.py +0 -0
  412. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/move.py +0 -0
  413. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/move_to_top.py +0 -0
  414. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/outdent.py +0 -0
  415. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/paste_child.py +0 -0
  416. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/paste_sibling.py +0 -0
  417. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/prefetch_link_titles.py +0 -0
  418. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/prioritize.py +0 -0
  419. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/redo.py +0 -0
  420. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/rename_tag.py +0 -0
  421. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/reset_updated_at.py +0 -0
  422. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/resize_image.py +0 -0
  423. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/run_shell.py +0 -0
  424. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/search_comment_autofill.py +0 -0
  425. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/search_context_tags.py +0 -0
  426. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/set_collapse_bulk.py +0 -0
  427. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/set_collapse_in_context.py +0 -0
  428. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/split_note.py +0 -0
  429. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/tag_proposals.py +0 -0
  430. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/toggle_reference_mode.py +0 -0
  431. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/toggle_todo_done.py +0 -0
  432. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/undo.py +0 -0
  433. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/unformat_content.py +0 -0
  434. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/update_content.py +0 -0
  435. {metalist-0.6.0 → metalist-0.6.1}/app/usecases/view.py +0 -0
  436. {metalist-0.6.0 → metalist-0.6.1}/app/utils/__init__.py +0 -0
  437. {metalist-0.6.0 → metalist-0.6.1}/app/utils/encryption.py +0 -0
  438. {metalist-0.6.0 → metalist-0.6.1}/app/utils/text_utils.py +0 -0
  439. {metalist-0.6.0 → metalist-0.6.1}/convert-from-legacy.py +0 -0
  440. {metalist-0.6.0 → metalist-0.6.1}/main.py +0 -0
  441. {metalist-0.6.0 → metalist-0.6.1}/metalist.egg-info/SOURCES.txt +0 -0
  442. {metalist-0.6.0 → metalist-0.6.1}/metalist.egg-info/dependency_links.txt +0 -0
  443. {metalist-0.6.0 → metalist-0.6.1}/metalist.egg-info/entry_points.txt +0 -0
  444. {metalist-0.6.0 → metalist-0.6.1}/metalist.egg-info/requires.txt +0 -0
  445. {metalist-0.6.0 → metalist-0.6.1}/metalist.egg-info/top_level.txt +0 -0
  446. {metalist-0.6.0 → metalist-0.6.1}/pyproject.toml +0 -0
  447. {metalist-0.6.0 → metalist-0.6.1}/scripts/generate-lan-cert.sh +0 -0
  448. {metalist-0.6.0 → metalist-0.6.1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metalist
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: A minimalist single-user note-taking app with SSR, fast in-memory tree operations, and efficient sync.
5
5
  Project-URL: Homepage, https://github.com/evolvingstuff/metalist
6
6
  Project-URL: Repository, https://github.com/evolvingstuff/metalist
@@ -48,6 +48,10 @@ A minimalist single-user note-taking app focused on server-side rendering (SSR),
48
48
  - Multi-tab search contexts with server-persisted scroll/search state (survives browser restarts)
49
49
  - Manual namespace backups/restores to a user-selected backup folder with retention controls
50
50
 
51
+ ## Changes in 0.6.1
52
+
53
+ - Removed the unused performance overlay, including its menu option and background state updates, fixing a fatal redundant-state error during note rearranging. Obsolete overlay preferences and command usage are discarded automatically.
54
+
51
55
  ## Changes in 0.6.0
52
56
 
53
57
  - Open notes and their children in multiple live, read-only floating windows. Drag and resize them, keep them visible across searches and tabs, and follow links or copy passwords. Saved changes refresh every half second.
@@ -12,6 +12,10 @@ A minimalist single-user note-taking app focused on server-side rendering (SSR),
12
12
  - Multi-tab search contexts with server-persisted scroll/search state (survives browser restarts)
13
13
  - Manual namespace backups/restores to a user-selected backup folder with retention controls
14
14
 
15
+ ## Changes in 0.6.1
16
+
17
+ - Removed the unused performance overlay, including its menu option and background state updates, fixing a fatal redundant-state error during note rearranging. Obsolete overlay preferences and command usage are discarded automatically.
18
+
15
19
  ## Changes in 0.6.0
16
20
 
17
21
  - Open notes and their children in multiple live, read-only floating windows. Drag and resize them, keep them visible across searches and tabs, and follow links or copy passwords. Saved changes refresh every half second.
@@ -44,7 +44,6 @@ _ALLOWED_CLIENT_PREFERENCES = {
44
44
  "pref.show_tab_ui": {"true", "false"},
45
45
  "pref.show_search_results_count": {"true", "false"},
46
46
  "pref.show_ai_chat": {"true", "false"},
47
- "pref.show_perf_overlay": {"true", "false"},
48
47
  "pref.animated_transitions": {"true", "false"},
49
48
  "pref.reminder_surface_expanded": {"true", "false"},
50
49
  "pref.note_layout.top_level_note_size": {"same", "larger", "largest"},
@@ -80,6 +79,7 @@ _ALLOWED_CLIENT_PREFERENCES = {
80
79
 
81
80
  _OBSOLETE_CLIENT_PREFERENCES = frozenset(
82
81
  {
82
+ "pref.show_perf_overlay",
83
83
  "pref.reminder_default_popup_sound_enabled",
84
84
  "pref.reminder_default_popup_sound_id",
85
85
  "pref.reminder_default_ack_sound_enabled",
@@ -281,6 +281,8 @@ def _validate_usage_state(usage_state: dict[str, object]) -> dict[str, dict[str,
281
281
  for endpoint_id, raw_record in usage_state.items():
282
282
  if not isinstance(endpoint_id, str) or endpoint_id == "":
283
283
  raise ClientStateValidationError("usage endpoint ids must be non-empty strings")
284
+ if endpoint_id in _OBSOLETE_CLIENT_PREFERENCES:
285
+ continue
284
286
  if not isinstance(raw_record, dict):
285
287
  raise ClientStateValidationError(f"Usage record for {endpoint_id} must be an object")
286
288
  if "count" not in raw_record:
@@ -20,10 +20,6 @@
20
20
  "id": "pref.show_ai_chat",
21
21
  "tags": ["ai", "chat", "assistant", "ollama", "agent", "right", "panel", "view", "show", "hide", "toggle"]
22
22
  },
23
- {
24
- "id": "pref.show_perf_overlay",
25
- "tags": ["perf", "performance", "overlay", "debug", "metrics", "dev", "ui", "show", "hide", "toggle"]
26
- },
27
23
  {
28
24
  "id": "pref.animated_transitions",
29
25
  "tags": ["animated", "animations", "animation", "transitions", "motion", "movement", "ui", "show", "hide", "toggle", "enable", "disable"]
@@ -6,11 +6,11 @@ const LEGACY_CLIENT_PREFERENCE_KEYS = [
6
6
  'pref.show_backlinks',
7
7
  'pref.show_note_tags',
8
8
  'pref.show_tab_ui',
9
- 'pref.show_perf_overlay',
10
9
  'pref.theme',
11
10
  ];
12
11
  const LEGACY_OBSOLETE_CLIENT_PREFERENCE_KEYS = [
13
12
  'pref.show_rhs_panel',
13
+ 'pref.show_perf_overlay',
14
14
  ];
15
15
 
16
16
 
@@ -37,6 +37,7 @@ function normalizePreferences(rawPreferences) {
37
37
  if (typeof key !== 'string' || key.length === 0) {
38
38
  throw new Error('Preference keys must be non-empty strings');
39
39
  }
40
+ if (LEGACY_OBSOLETE_CLIENT_PREFERENCE_KEYS.includes(key)) continue;
40
41
  if (typeof value !== 'string') {
41
42
  throw new Error(`Preference ${key} must be a string`);
42
43
  }
@@ -86,6 +87,7 @@ function normalizeUsageState(rawUsageState) {
86
87
  if (typeof endpointId !== 'string' || endpointId.length === 0) {
87
88
  throw new Error('Usage endpoint ids must be non-empty strings');
88
89
  }
90
+ if (LEGACY_OBSOLETE_CLIENT_PREFERENCE_KEYS.includes(endpointId)) continue;
89
91
  normalized[endpointId] = normalizeUsageRecord(endpointId, rawRecord);
90
92
  }
91
93
  return normalized;
@@ -245,8 +247,8 @@ export async function migrateLegacyClientState({
245
247
 
246
248
  if (Object.keys(legacyUsageState).length > 0) {
247
249
  await persistCommandPaletteUsageFn(mergedUsageState);
248
- clearLegacyCommandPaletteUsage();
249
250
  }
251
+ clearLegacyCommandPaletteUsage();
250
252
 
251
253
  return {
252
254
  preferences: mergedPreferences,
@@ -6,7 +6,7 @@ import {
6
6
  removeAllTagSuggestionsFromCurrentContext,
7
7
  } from '../ai-chat/proposal-menu.js';
8
8
  import { ModeContextInstance as ModeContext } from '../mode-manager/mode-context.js';
9
- import { actionRefreshAndMaybeSelect, showPerfOverlayFromCache } from '../mode-manager/actions/ui-actions.js';
9
+ import { actionRefreshAndMaybeSelect } from '../mode-manager/actions/ui-actions.js';
10
10
  import {
11
11
  actionDeselectNote,
12
12
  actionSaveAndExitEditingWithoutRefreshing,
@@ -541,15 +541,6 @@ class CommandPaletteController {
541
541
  }));
542
542
  }
543
543
 
544
- const showPerfOverlay = this._getBoolean('pref.show_perf_overlay', false);
545
- document.body.classList.toggle('pref-show-perf-overlay', showPerfOverlay);
546
- if (!showPerfOverlay) {
547
- const perfOverlay = document.getElementById('perf-overlay');
548
- if (perfOverlay) {
549
- perfOverlay.remove();
550
- }
551
- }
552
-
553
544
  const animatedTransitions = this._getBoolean('pref.animated_transitions', true);
554
545
  document.body.classList.toggle('pref-animated-transitions', animatedTransitions);
555
546
 
@@ -1355,15 +1346,6 @@ class CommandPaletteController {
1355
1346
  if (typeof value === 'boolean') {
1356
1347
  await this._preferences.setRaw(prefKey, value ? 'true' : 'false');
1357
1348
  this._applyPreferenceEffectsFromStorage();
1358
- if (prefKey === 'pref.show_perf_overlay' && value) {
1359
- const hadCache = showPerfOverlayFromCache();
1360
- if (!hadCache) {
1361
- await actionRefreshAndMaybeSelect({
1362
- startedAt: performance.now(),
1363
- context: 'pref.show_perf_overlay',
1364
- });
1365
- }
1366
- }
1367
1349
  return;
1368
1350
  }
1369
1351
  if (typeof value === 'string') {
@@ -103,7 +103,6 @@ export function buildCommandPaletteEndpoints(deps) {
103
103
  showTabUi: false,
104
104
  showSearchResultsCount: true,
105
105
  showAiChat: false,
106
- showPerfOverlay: false,
107
106
  animatedTransitions: true,
108
107
  theme: 'system',
109
108
  };
@@ -165,16 +164,6 @@ export function buildCommandPaletteEndpoints(deps) {
165
164
  defaultValue: defaults.showAiChat,
166
165
  apply: (next) => applyPreference('pref.show_ai_chat', next),
167
166
  },
168
- {
169
- id: 'pref.show_perf_overlay',
170
- kind: 'boolean',
171
- get label() {
172
- return visibilityLabel(preferencesStore, 'pref.show_perf_overlay', defaults.showPerfOverlay, 'performance overlay');
173
- },
174
- persistenceKey: 'pref.show_perf_overlay',
175
- defaultValue: defaults.showPerfOverlay,
176
- apply: (next) => applyPreference('pref.show_perf_overlay', next),
177
- },
178
167
  {
179
168
  id: 'pref.animated_transitions',
180
169
  kind: 'boolean',
@@ -17,126 +17,9 @@ import { resetInfiniteScrollState } from '../services/infinite-scroll-service.js
17
17
 
18
18
  const moduleState = ApplicationState.createFields('ui-actions', {
19
19
  viewRequestInFlight: false,
20
- lastPerfOverlayPayload: null,
21
20
  });
22
21
 
23
22
 
24
- function updatePerfOverlay(roundtripMs, renderMs, totalMs, totalNotes,
25
- rootNotesKnown, rootNotesSeen, updatedNotes,
26
- context, vdom_ops) {
27
- moduleState.lastPerfOverlayPayload = {
28
- roundtripMs,
29
- renderMs,
30
- totalMs,
31
- totalNotes,
32
- rootNotesKnown,
33
- rootNotesSeen,
34
- updatedNotes,
35
- context,
36
- vdom_ops,
37
- };
38
- const shouldShow = document.body.classList.contains('pref-show-perf-overlay');
39
- let overlay = document.getElementById('perf-overlay');
40
- if (!shouldShow) {
41
- if (overlay) {
42
- overlay.remove();
43
- }
44
- return;
45
- }
46
- if (!overlay) {
47
- overlay = document.createElement('div');
48
- overlay.id = 'perf-overlay';
49
- overlay.style.position = 'fixed';
50
- overlay.style.bottom = '8px';
51
- overlay.style.right = '8px';
52
- overlay.style.padding = '4px 8px';
53
- overlay.style.borderRadius = '4px';
54
- overlay.style.background = 'rgba(0, 0, 0, 0.7)';
55
- overlay.style.color = '#fff';
56
- overlay.style.fontSize = '12px';
57
- overlay.style.fontFamily = 'monospace';
58
- overlay.style.zIndex = '9999';
59
- document.body.appendChild(overlay);
60
- }
61
-
62
- const roundtrip = Number(roundtripMs.toFixed(2));
63
- const render = Number(renderMs.toFixed(2));
64
- const total = Number(totalMs.toFixed(2));
65
- const notesCount = Number.isInteger(totalNotes) && totalNotes >= 0 ? totalNotes : 0;
66
- const rootsKnown = Number.isInteger(rootNotesKnown) && rootNotesKnown >= 0 ? rootNotesKnown : 0;
67
- const rootsSeen = Number.isInteger(rootNotesSeen) && rootNotesSeen >= 0 ? rootNotesSeen : 0;
68
- const updatedCount = Number.isInteger(updatedNotes) && updatedNotes >= 0 ? updatedNotes : 0;
69
-
70
- const rowStyle = 'padding-top: 2px; padding-bottom: 2px;';
71
- const labelStyle = 'padding: 0 14px 0 6px; white-space: nowrap;';
72
- const valueStyle = 'text-align: right; min-width: 70px; padding: 0 14px;';
73
- const dividerColor = 'rgba(255, 255, 255, 0.25)';
74
- const labelCellBaseStyle = `${labelStyle} ${rowStyle} border-right: 1px solid ${dividerColor};`;
75
- const valueCellBaseStyle = `${valueStyle} ${rowStyle};`;
76
- const bottomBorderStyle = `border-bottom: 1px solid ${dividerColor};`;
77
-
78
- overlay.innerHTML = `
79
- <table style="border-collapse: collapse;">
80
- <tbody>
81
- <tr>
82
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">context</td>
83
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${context}</td>
84
- </tr>
85
- <tr>
86
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">all notes known</td>
87
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${notesCount}</td>
88
- </tr>
89
- <tr>
90
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">all notes updated</td>
91
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${updatedCount}</td>
92
- </tr>
93
- <tr>
94
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">root notes known</td>
95
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${rootsKnown}</td>
96
- </tr>
97
- <tr>
98
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">root notes seen</td>
99
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${rootsSeen}</td>
100
- </tr>
101
- <tr>
102
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">server trip</td>
103
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${roundtrip}ms</td>
104
- </tr>
105
- <tr>
106
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">client render</td>
107
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${render}ms</td>
108
- </tr>
109
- <tr>
110
- <td style="${labelCellBaseStyle} ${bottomBorderStyle}">vdom ops</td>
111
- <td style="${valueCellBaseStyle} ${bottomBorderStyle}">${vdom_ops}</td>
112
- </tr>
113
- <tr>
114
- <td style="${labelCellBaseStyle}">total</td>
115
- <td style="${valueCellBaseStyle}">${total}ms</td>
116
- </tr>
117
- </tbody>
118
- </table>
119
- `;
120
- }
121
-
122
- export function showPerfOverlayFromCache() {
123
- if (!moduleState.lastPerfOverlayPayload) {
124
- return false;
125
- }
126
- updatePerfOverlay(
127
- moduleState.lastPerfOverlayPayload.roundtripMs,
128
- moduleState.lastPerfOverlayPayload.renderMs,
129
- moduleState.lastPerfOverlayPayload.totalMs,
130
- moduleState.lastPerfOverlayPayload.totalNotes,
131
- moduleState.lastPerfOverlayPayload.rootNotesKnown,
132
- moduleState.lastPerfOverlayPayload.rootNotesSeen,
133
- moduleState.lastPerfOverlayPayload.updatedNotes,
134
- moduleState.lastPerfOverlayPayload.context,
135
- moduleState.lastPerfOverlayPayload.vdom_ops
136
- );
137
- return true;
138
- }
139
-
140
23
  function updateSearchResultsCount(snapshot, tabId) {
141
24
  if (!snapshot || typeof snapshot !== 'object') {
142
25
  throw new Error('updateSearchResultsCount requires snapshot object');
@@ -270,8 +153,6 @@ export async function actionRefreshAndMaybeSelect(options) {
270
153
  ) {
271
154
  ModeContext.setRootCountTotals(snapshot.rootCountTotal, snapshot.searchRootCountTotal, requestTabId);
272
155
  }
273
- const rootNotesKnown = ModeContext.knownRootCount;
274
- const rootNotesSeen = ModeContext.seenRootCount;
275
156
  const updatedNotesCount = snapshot.notes && typeof snapshot.notes === 'object'
276
157
  ? Object.keys(snapshot.notes).length
277
158
  : 0;
@@ -366,8 +247,6 @@ export async function actionRefreshAndMaybeSelect(options) {
366
247
 
367
248
  const renderEndedAt = performance.now();
368
249
  const renderMs = renderEndedAt - renderStartedAt;
369
- const metricsStartedAt = typeof options.startedAt === 'number' ? options.startedAt : requestStartedAt;
370
- const totalMs = renderEndedAt - metricsStartedAt;
371
250
  const context = options.context ? options.context : 'refresh';
372
251
 
373
252
  const vdom_ops = Number.isInteger(diffResult.vdomOperations) ? diffResult.vdomOperations : 0;
@@ -388,9 +267,6 @@ export async function actionRefreshAndMaybeSelect(options) {
388
267
  ms: Number(renderMs.toFixed(2))
389
268
  });
390
269
  }
391
- const totalNotesCount = ModeContext.noteCount;
392
- updatePerfOverlay(roundtripMs, renderMs, totalMs, totalNotesCount,
393
- rootNotesKnown, rootNotesSeen, updatedNotesCount, context, vdom_ops);
394
270
 
395
271
  await refreshBacklinksPanel({});
396
272
  if (scrollToTopAfterRender) {
@@ -569,10 +569,6 @@ class ModeContext {
569
569
  if (!stateValuesEqual(this._tabSeenRootIds[active], intersectedSeen)) this._tabSeenRootIds[active] = intersectedSeen;
570
570
  if (!stateValuesEqual(this._tabRootOrder[active], order)) this._tabRootOrder[active] = order;
571
571
 
572
- queueMicrotask(async () => {
573
- const module = await import('./services/infinite-scroll-service.js');
574
- module.refreshOverlayMetrics();
575
- });
576
572
 
577
573
  return this;
578
574
  }
@@ -1030,10 +1026,6 @@ class ModeContext {
1030
1026
  }
1031
1027
  if (!stateValuesEqual(this._tabSeenRootIds[currentTabId], intersectedSeen)) this._tabSeenRootIds[currentTabId] = intersectedSeen;
1032
1028
 
1033
- queueMicrotask(async () => {
1034
- const module = await import('./services/infinite-scroll-service.js');
1035
- module.refreshOverlayMetrics();
1036
- });
1037
1029
  }
1038
1030
 
1039
1031
  resetRootTracking(options) {
@@ -88,7 +88,6 @@ function receivePollReset(resetFetchTime) {
88
88
  const key = `${ModeContext.activeTabId}::${ModeContext.searchQuery}`;
89
89
  moduleState.tabPollState[key] = next;
90
90
  }
91
- refreshOverlayMetrics();
92
91
  }
93
92
 
94
93
  export function resetInfiniteScrollState() {
@@ -150,8 +149,7 @@ async function handlePoll() {
150
149
  }
151
150
  }
152
151
 
153
- const changed = ModeContext.markRootsAsSeen([...visible, ...past]);
154
- if (changed) refreshOverlayMetrics();
152
+ ModeContext.markRootsAsSeen([...visible, ...past]);
155
153
 
156
154
  const knownCount = ModeContext.knownRootCount;
157
155
  if (knownCount === 0) return;
@@ -198,7 +196,6 @@ async function maybeFetchMore(state, previousKnownCount, nearEndFlag) {
198
196
  if (currentKnown > previousKnownCount) {
199
197
  if (state.lastKnownCount !== currentKnown) state.lastKnownCount = currentKnown;
200
198
  if (state.noMoreRoots) state.noMoreRoots = false;
201
- refreshOverlayMetrics();
202
199
  } else if (nearEndFlag) {
203
200
  const totalRoots = selectInfiniteScrollRootTotal({
204
201
  searchQuery: (ModeContext.searchQuery || '').toString(),
@@ -218,25 +215,3 @@ async function maybeFetchMore(state, previousKnownCount, nearEndFlag) {
218
215
  }
219
216
  state.pendingFetch = false;
220
217
  }
221
-
222
- export function refreshOverlayMetrics() {
223
- const overlay = document.getElementById('perf-overlay');
224
- if (!overlay) {
225
- return;
226
- }
227
-
228
- const rows = overlay.querySelectorAll('tbody tr');
229
- for (const row of rows) {
230
- const cells = row.querySelectorAll('td');
231
- if (cells.length !== 2) {
232
- continue;
233
- }
234
- const label = cells[0].textContent.trim().toLowerCase();
235
- if (label === 'root notes known') {
236
- cells[1].textContent = `${ModeContext.knownRootCount}`;
237
- }
238
- if (label === 'root notes seen') {
239
- cells[1].textContent = `${ModeContext.seenRootCount}`;
240
- }
241
- }
242
- }
@@ -1,3 +1,3 @@
1
1
  """Single authoritative MetaList application version."""
2
2
 
3
- __version__ = "0.6.0"
3
+ __version__ = "0.6.1"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: metalist
3
- Version: 0.6.0
3
+ Version: 0.6.1
4
4
  Summary: A minimalist single-user note-taking app with SSR, fast in-memory tree operations, and efficient sync.
5
5
  Project-URL: Homepage, https://github.com/evolvingstuff/metalist
6
6
  Project-URL: Repository, https://github.com/evolvingstuff/metalist
@@ -48,6 +48,10 @@ A minimalist single-user note-taking app focused on server-side rendering (SSR),
48
48
  - Multi-tab search contexts with server-persisted scroll/search state (survives browser restarts)
49
49
  - Manual namespace backups/restores to a user-selected backup folder with retention controls
50
50
 
51
+ ## Changes in 0.6.1
52
+
53
+ - Removed the unused performance overlay, including its menu option and background state updates, fixing a fatal redundant-state error during note rearranging. Obsolete overlay preferences and command usage are discarded automatically.
54
+
51
55
  ## Changes in 0.6.0
52
56
 
53
57
  - Open notes and their children in multiple live, read-only floating windows. Drag and resize them, keep them visible across searches and tabs, and follow links or copy passwords. Saved changes refresh every half second.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes