pygpt-net 2.6.41__py3-none-any.whl → 2.6.42__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. pygpt_net/CHANGELOG.txt +7 -0
  2. pygpt_net/__init__.py +1 -1
  3. pygpt_net/core/render/web/body.py +9 -4
  4. pygpt_net/css.qrc +1 -1
  5. pygpt_net/css_rc.py +1477 -221
  6. pygpt_net/data/config/config.json +5 -2
  7. pygpt_net/data/config/models.json +93 -2
  8. pygpt_net/data/config/settings.json +35 -1
  9. pygpt_net/data/icons/case.svg +1 -0
  10. pygpt_net/data/icons/chat1.svg +1 -0
  11. pygpt_net/data/icons/chat2.svg +1 -0
  12. pygpt_net/data/icons/chat3.svg +1 -0
  13. pygpt_net/data/icons/chat4.svg +1 -0
  14. pygpt_net/data/icons/fit.svg +1 -0
  15. pygpt_net/data/icons/note1.svg +1 -0
  16. pygpt_net/data/icons/note2.svg +1 -0
  17. pygpt_net/data/icons/note3.svg +1 -0
  18. pygpt_net/data/icons/stt.svg +1 -0
  19. pygpt_net/data/icons/translate.svg +1 -0
  20. pygpt_net/data/icons/tts.svg +1 -0
  21. pygpt_net/data/icons/url.svg +1 -0
  22. pygpt_net/data/icons/vision.svg +1 -0
  23. pygpt_net/data/js/app.js +37 -7
  24. pygpt_net/data/locale/locale.de.ini +9 -0
  25. pygpt_net/data/locale/locale.en.ini +10 -4
  26. pygpt_net/data/locale/locale.es.ini +9 -0
  27. pygpt_net/data/locale/locale.fr.ini +9 -0
  28. pygpt_net/data/locale/locale.it.ini +9 -0
  29. pygpt_net/data/locale/locale.pl.ini +11 -1
  30. pygpt_net/data/locale/locale.uk.ini +9 -0
  31. pygpt_net/data/locale/locale.zh.ini +9 -0
  32. pygpt_net/data/locale/plugin.agent.de.ini +0 -0
  33. pygpt_net/data/locale/plugin.agent.en.ini +0 -0
  34. pygpt_net/data/locale/plugin.agent.es.ini +0 -0
  35. pygpt_net/data/locale/plugin.agent.fr.ini +0 -0
  36. pygpt_net/data/locale/plugin.agent.it.ini +0 -0
  37. pygpt_net/data/locale/plugin.agent.pl.ini +0 -0
  38. pygpt_net/data/locale/plugin.agent.uk.ini +0 -0
  39. pygpt_net/data/locale/plugin.agent.zh.ini +0 -0
  40. pygpt_net/data/locale/plugin.audio_input.de.ini +0 -0
  41. pygpt_net/data/locale/plugin.audio_input.en.ini +0 -0
  42. pygpt_net/data/locale/plugin.audio_input.es.ini +0 -0
  43. pygpt_net/data/locale/plugin.audio_input.fr.ini +0 -0
  44. pygpt_net/data/locale/plugin.audio_input.it.ini +0 -0
  45. pygpt_net/data/locale/plugin.audio_input.pl.ini +0 -0
  46. pygpt_net/data/locale/plugin.audio_input.uk.ini +0 -0
  47. pygpt_net/data/locale/plugin.audio_input.zh.ini +0 -0
  48. pygpt_net/data/locale/plugin.audio_output.de.ini +0 -0
  49. pygpt_net/data/locale/plugin.audio_output.en.ini +0 -0
  50. pygpt_net/data/locale/plugin.audio_output.es.ini +0 -0
  51. pygpt_net/data/locale/plugin.audio_output.fr.ini +0 -0
  52. pygpt_net/data/locale/plugin.audio_output.it.ini +0 -0
  53. pygpt_net/data/locale/plugin.audio_output.pl.ini +0 -0
  54. pygpt_net/data/locale/plugin.audio_output.uk.ini +0 -0
  55. pygpt_net/data/locale/plugin.audio_output.zh.ini +0 -0
  56. pygpt_net/data/locale/plugin.cmd_api.de.ini +0 -0
  57. pygpt_net/data/locale/plugin.cmd_api.en.ini +0 -0
  58. pygpt_net/data/locale/plugin.cmd_api.es.ini +0 -0
  59. pygpt_net/data/locale/plugin.cmd_api.fr.ini +0 -0
  60. pygpt_net/data/locale/plugin.cmd_api.it.ini +0 -0
  61. pygpt_net/data/locale/plugin.cmd_api.pl.ini +0 -0
  62. pygpt_net/data/locale/plugin.cmd_api.uk.ini +0 -0
  63. pygpt_net/data/locale/plugin.cmd_api.zh.ini +0 -0
  64. pygpt_net/data/locale/plugin.cmd_code_interpreter.de.ini +0 -0
  65. pygpt_net/data/locale/plugin.cmd_code_interpreter.en.ini +0 -0
  66. pygpt_net/data/locale/plugin.cmd_code_interpreter.es.ini +0 -0
  67. pygpt_net/data/locale/plugin.cmd_code_interpreter.fr.ini +0 -0
  68. pygpt_net/data/locale/plugin.cmd_code_interpreter.it.ini +0 -0
  69. pygpt_net/data/locale/plugin.cmd_code_interpreter.pl.ini +0 -0
  70. pygpt_net/data/locale/plugin.cmd_code_interpreter.uk.ini +0 -0
  71. pygpt_net/data/locale/plugin.cmd_code_interpreter.zh.ini +0 -0
  72. pygpt_net/data/locale/plugin.cmd_custom.de.ini +0 -0
  73. pygpt_net/data/locale/plugin.cmd_custom.en.ini +0 -0
  74. pygpt_net/data/locale/plugin.cmd_custom.es.ini +0 -0
  75. pygpt_net/data/locale/plugin.cmd_custom.fr.ini +0 -0
  76. pygpt_net/data/locale/plugin.cmd_custom.it.ini +0 -0
  77. pygpt_net/data/locale/plugin.cmd_custom.pl.ini +0 -0
  78. pygpt_net/data/locale/plugin.cmd_custom.uk.ini +0 -0
  79. pygpt_net/data/locale/plugin.cmd_custom.zh.ini +0 -0
  80. pygpt_net/data/locale/plugin.cmd_files.de.ini +0 -0
  81. pygpt_net/data/locale/plugin.cmd_files.en.ini +0 -0
  82. pygpt_net/data/locale/plugin.cmd_files.es.ini +0 -0
  83. pygpt_net/data/locale/plugin.cmd_files.fr.ini +0 -0
  84. pygpt_net/data/locale/plugin.cmd_files.it.ini +0 -0
  85. pygpt_net/data/locale/plugin.cmd_files.pl.ini +0 -0
  86. pygpt_net/data/locale/plugin.cmd_files.uk.ini +0 -0
  87. pygpt_net/data/locale/plugin.cmd_files.zh.ini +0 -0
  88. pygpt_net/data/locale/plugin.cmd_history.de.ini +0 -0
  89. pygpt_net/data/locale/plugin.cmd_history.en.ini +0 -0
  90. pygpt_net/data/locale/plugin.cmd_history.es.ini +0 -0
  91. pygpt_net/data/locale/plugin.cmd_history.fr.ini +0 -0
  92. pygpt_net/data/locale/plugin.cmd_history.it.ini +0 -0
  93. pygpt_net/data/locale/plugin.cmd_history.pl.ini +0 -0
  94. pygpt_net/data/locale/plugin.cmd_history.uk.ini +0 -0
  95. pygpt_net/data/locale/plugin.cmd_history.zh.ini +0 -0
  96. pygpt_net/data/locale/plugin.cmd_mouse_control.de.ini +0 -0
  97. pygpt_net/data/locale/plugin.cmd_mouse_control.en.ini +0 -0
  98. pygpt_net/data/locale/plugin.cmd_mouse_control.es.ini +0 -0
  99. pygpt_net/data/locale/plugin.cmd_mouse_control.fr.ini +0 -0
  100. pygpt_net/data/locale/plugin.cmd_mouse_control.it.ini +0 -0
  101. pygpt_net/data/locale/plugin.cmd_mouse_control.pl.ini +0 -0
  102. pygpt_net/data/locale/plugin.cmd_mouse_control.uk.ini +0 -0
  103. pygpt_net/data/locale/plugin.cmd_mouse_control.zh.ini +0 -0
  104. pygpt_net/data/locale/plugin.cmd_serial.de.ini +0 -0
  105. pygpt_net/data/locale/plugin.cmd_serial.en.ini +0 -0
  106. pygpt_net/data/locale/plugin.cmd_serial.es.ini +0 -0
  107. pygpt_net/data/locale/plugin.cmd_serial.fr.ini +0 -0
  108. pygpt_net/data/locale/plugin.cmd_serial.it.ini +0 -0
  109. pygpt_net/data/locale/plugin.cmd_serial.pl.ini +0 -0
  110. pygpt_net/data/locale/plugin.cmd_serial.uk.ini +0 -0
  111. pygpt_net/data/locale/plugin.cmd_serial.zh.ini +0 -0
  112. pygpt_net/data/locale/plugin.cmd_system.de.ini +0 -0
  113. pygpt_net/data/locale/plugin.cmd_system.en.ini +0 -0
  114. pygpt_net/data/locale/plugin.cmd_system.es.ini +0 -0
  115. pygpt_net/data/locale/plugin.cmd_system.fr.ini +0 -0
  116. pygpt_net/data/locale/plugin.cmd_system.it.ini +0 -0
  117. pygpt_net/data/locale/plugin.cmd_system.pl.ini +0 -0
  118. pygpt_net/data/locale/plugin.cmd_system.uk.ini +0 -0
  119. pygpt_net/data/locale/plugin.cmd_system.zh.ini +0 -0
  120. pygpt_net/data/locale/plugin.cmd_web.de.ini +0 -0
  121. pygpt_net/data/locale/plugin.cmd_web.en.ini +0 -0
  122. pygpt_net/data/locale/plugin.cmd_web.es.ini +0 -0
  123. pygpt_net/data/locale/plugin.cmd_web.fr.ini +0 -0
  124. pygpt_net/data/locale/plugin.cmd_web.it.ini +0 -0
  125. pygpt_net/data/locale/plugin.cmd_web.pl.ini +0 -0
  126. pygpt_net/data/locale/plugin.cmd_web.uk.ini +0 -0
  127. pygpt_net/data/locale/plugin.cmd_web.zh.ini +0 -0
  128. pygpt_net/data/locale/plugin.crontab.de.ini +0 -0
  129. pygpt_net/data/locale/plugin.crontab.en.ini +0 -0
  130. pygpt_net/data/locale/plugin.crontab.es.ini +0 -0
  131. pygpt_net/data/locale/plugin.crontab.fr.ini +0 -0
  132. pygpt_net/data/locale/plugin.crontab.it.ini +0 -0
  133. pygpt_net/data/locale/plugin.crontab.pl.ini +0 -0
  134. pygpt_net/data/locale/plugin.crontab.uk.ini +0 -0
  135. pygpt_net/data/locale/plugin.crontab.zh.ini +0 -0
  136. pygpt_net/data/locale/plugin.experts.de.ini +0 -0
  137. pygpt_net/data/locale/plugin.experts.en.ini +0 -0
  138. pygpt_net/data/locale/plugin.experts.es.ini +0 -0
  139. pygpt_net/data/locale/plugin.experts.fr.ini +0 -0
  140. pygpt_net/data/locale/plugin.experts.it.ini +0 -0
  141. pygpt_net/data/locale/plugin.experts.pl.ini +0 -0
  142. pygpt_net/data/locale/plugin.experts.uk.ini +0 -0
  143. pygpt_net/data/locale/plugin.experts.zh.ini +0 -0
  144. pygpt_net/data/locale/plugin.extra_prompt.de.ini +0 -0
  145. pygpt_net/data/locale/plugin.extra_prompt.en.ini +0 -0
  146. pygpt_net/data/locale/plugin.extra_prompt.es.ini +0 -0
  147. pygpt_net/data/locale/plugin.extra_prompt.fr.ini +0 -0
  148. pygpt_net/data/locale/plugin.extra_prompt.it.ini +0 -0
  149. pygpt_net/data/locale/plugin.extra_prompt.pl.ini +0 -0
  150. pygpt_net/data/locale/plugin.extra_prompt.uk.ini +0 -0
  151. pygpt_net/data/locale/plugin.extra_prompt.zh.ini +0 -0
  152. pygpt_net/data/locale/plugin.idx_llama_index.de.ini +0 -0
  153. pygpt_net/data/locale/plugin.idx_llama_index.en.ini +0 -0
  154. pygpt_net/data/locale/plugin.idx_llama_index.es.ini +0 -0
  155. pygpt_net/data/locale/plugin.idx_llama_index.fr.ini +0 -0
  156. pygpt_net/data/locale/plugin.idx_llama_index.it.ini +0 -0
  157. pygpt_net/data/locale/plugin.idx_llama_index.pl.ini +0 -0
  158. pygpt_net/data/locale/plugin.idx_llama_index.uk.ini +0 -0
  159. pygpt_net/data/locale/plugin.idx_llama_index.zh.ini +0 -0
  160. pygpt_net/data/locale/plugin.mailer.en.ini +0 -0
  161. pygpt_net/data/locale/plugin.openai_dalle.de.ini +0 -0
  162. pygpt_net/data/locale/plugin.openai_dalle.en.ini +0 -0
  163. pygpt_net/data/locale/plugin.openai_dalle.es.ini +0 -0
  164. pygpt_net/data/locale/plugin.openai_dalle.fr.ini +0 -0
  165. pygpt_net/data/locale/plugin.openai_dalle.it.ini +0 -0
  166. pygpt_net/data/locale/plugin.openai_dalle.pl.ini +0 -0
  167. pygpt_net/data/locale/plugin.openai_dalle.uk.ini +0 -0
  168. pygpt_net/data/locale/plugin.openai_dalle.zh.ini +0 -0
  169. pygpt_net/data/locale/plugin.openai_vision.de.ini +0 -0
  170. pygpt_net/data/locale/plugin.openai_vision.en.ini +0 -0
  171. pygpt_net/data/locale/plugin.openai_vision.es.ini +0 -0
  172. pygpt_net/data/locale/plugin.openai_vision.fr.ini +0 -0
  173. pygpt_net/data/locale/plugin.openai_vision.it.ini +0 -0
  174. pygpt_net/data/locale/plugin.openai_vision.pl.ini +0 -0
  175. pygpt_net/data/locale/plugin.openai_vision.uk.ini +0 -0
  176. pygpt_net/data/locale/plugin.openai_vision.zh.ini +0 -0
  177. pygpt_net/data/locale/plugin.real_time.de.ini +0 -0
  178. pygpt_net/data/locale/plugin.real_time.en.ini +0 -0
  179. pygpt_net/data/locale/plugin.real_time.es.ini +0 -0
  180. pygpt_net/data/locale/plugin.real_time.fr.ini +0 -0
  181. pygpt_net/data/locale/plugin.real_time.it.ini +0 -0
  182. pygpt_net/data/locale/plugin.real_time.pl.ini +0 -0
  183. pygpt_net/data/locale/plugin.real_time.uk.ini +0 -0
  184. pygpt_net/data/locale/plugin.real_time.zh.ini +0 -0
  185. pygpt_net/data/locale/plugin.voice_control.de.ini +0 -0
  186. pygpt_net/data/locale/plugin.voice_control.en.ini +0 -0
  187. pygpt_net/data/locale/plugin.voice_control.es.ini +0 -0
  188. pygpt_net/data/locale/plugin.voice_control.fr.ini +0 -0
  189. pygpt_net/data/locale/plugin.voice_control.it.ini +0 -0
  190. pygpt_net/data/locale/plugin.voice_control.pl.ini +0 -0
  191. pygpt_net/data/locale/plugin.voice_control.uk.ini +0 -0
  192. pygpt_net/data/locale/plugin.voice_control.zh.ini +0 -0
  193. pygpt_net/fonts.qrc +60 -60
  194. pygpt_net/fonts_rc.py +3 -65
  195. pygpt_net/icons.qrc +152 -138
  196. pygpt_net/icons_rc.py +680 -366
  197. pygpt_net/js.qrc +6 -6
  198. pygpt_net/js_rc.py +97483 -26906
  199. pygpt_net/provider/core/config/patch.py +11 -0
  200. pygpt_net/provider/core/model/patch.py +9 -0
  201. pygpt_net/tools/translator/tool.py +2 -2
  202. pygpt_net/ui/widget/draw/painter.py +1 -1
  203. pygpt_net/ui/widget/textarea/web.py +13 -1
  204. {pygpt_net-2.6.41.dist-info → pygpt_net-2.6.42.dist-info}/METADATA +9 -2
  205. {pygpt_net-2.6.41.dist-info → pygpt_net-2.6.42.dist-info}/RECORD +47 -33
  206. {pygpt_net-2.6.41.dist-info → pygpt_net-2.6.42.dist-info}/LICENSE +0 -0
  207. {pygpt_net-2.6.41.dist-info → pygpt_net-2.6.42.dist-info}/WHEEL +0 -0
  208. {pygpt_net-2.6.41.dist-info → pygpt_net-2.6.42.dist-info}/entry_points.txt +0 -0
@@ -2495,6 +2495,17 @@ class Patch:
2495
2495
  patch_css('web-blocks.css', True)
2496
2496
  updated = True
2497
2497
 
2498
+ # < 2.6.42
2499
+ if old < parse_version("2.6.42"):
2500
+ print("Migrating config from < 2.6.42...")
2501
+ if "render.code_syntax.stream_max_lines" not in data:
2502
+ data["render.code_syntax.stream_max_lines"] = 1000
2503
+ if "render.code_syntax.final_max_lines" not in data:
2504
+ data["render.code_syntax.final_max_lines"] = 1500
2505
+ if "render.code_syntax.final_max_chars" not in data:
2506
+ data["render.code_syntax.final_max_chars"] = 350000
2507
+ updated = True
2508
+
2498
2509
  # update file
2499
2510
  migrated = False
2500
2511
  if updated:
@@ -798,6 +798,15 @@ class Patch:
798
798
  data["veo-3.0-fast-generate-preview"] = base_data["veo-3.0-fast-generate-preview"]
799
799
  updated = True
800
800
 
801
+ # add image models
802
+ if old < parse_version("2.6.42"):
803
+ print("Migrating models from < 2.6.42...")
804
+ if "grok-2-image-1212" not in data:
805
+ data["grok-2-image-1212"] = base_data["grok-2-image-1212"]
806
+ if "gemini-2.5-flash-image-preview" not in data:
807
+ data["gemini-2.5-flash-image-preview"] = base_data["gemini-2.5-flash-image-preview"]
808
+ updated = True
809
+
801
810
  # update file
802
811
  if updated:
803
812
  data = dict(sorted(data.items()))
@@ -46,7 +46,7 @@ class Translator(BaseTool):
46
46
  self.dialog_id = "translator"
47
47
  self.has_tab = False
48
48
  self.tab_title = "menu.tools.translator"
49
- self.tab_icon = ":/icons/text.svg"
49
+ self.tab_icon = ":/icons/translate.svg"
50
50
  self.opened = False
51
51
  self.is_edit = False
52
52
  self.auto_clear = True
@@ -448,7 +448,7 @@ class Translator(BaseTool):
448
448
  id = "translator"
449
449
  actions = {}
450
450
  actions[id] = QAction(
451
- QIcon(":/icons/text.svg"),
451
+ QIcon(":/icons/translate.svg"),
452
452
  trans("menu.tools.translator"),
453
453
  self.window,
454
454
  checkable=False,
@@ -128,7 +128,7 @@ class PainterWidget(QWidget):
128
128
  self._act_crop.triggered.connect(self.start_crop)
129
129
 
130
130
  # Fit action (trims letterbox and resizes canvas to the scaled image area)
131
- self._act_fit = QAction(QIcon(":/icons/resize.svg"), trans('painter.btn.fit') if trans('painter.btn.fit') else "Fit", self)
131
+ self._act_fit = QAction(QIcon(":/icons/fit.svg"), trans('painter.btn.fit') if trans('painter.btn.fit') else "Fit", self)
132
132
  self._act_fit.triggered.connect(self.action_fit)
133
133
 
134
134
  # Context menu
@@ -99,6 +99,8 @@ class ChatWebOutput(QWebEngineView):
99
99
  pass
100
100
 
101
101
  page = self.page()
102
+ page.set_loaded(False)
103
+
102
104
  try:
103
105
  page.triggerAction(QWebEnginePage.Stop)
104
106
  except Exception:
@@ -132,7 +134,7 @@ class ChatWebOutput(QWebEngineView):
132
134
  pass
133
135
 
134
136
  try:
135
- page.deleteLater()
137
+ page.cleanup()
136
138
  except Exception:
137
139
  pass
138
140
 
@@ -351,6 +353,9 @@ class ChatWebOutput(QWebEngineView):
351
353
  })
352
354
  self.window.dispatch(event)
353
355
  self.setUpdatesEnabled(True)
356
+ p = self.page()
357
+ if p and isinstance(p, CustomWebEnginePage):
358
+ p.set_loaded(True)
354
359
 
355
360
  def get_selected_text(self) -> str:
356
361
  p = self.page()
@@ -395,6 +400,7 @@ class CustomWebEnginePage(QWebEnginePage):
395
400
 
396
401
  self.window = window
397
402
  self.view = view
403
+ self.loaded = False
398
404
 
399
405
  # signals have parent=page (automatic cleanup)
400
406
  self.signals = WebEnginePageSignals(self)
@@ -425,6 +431,9 @@ class CustomWebEnginePage(QWebEnginePage):
425
431
  self.channel.registerObject("bridge", self.bridge)
426
432
  self.setWebChannel(self.channel)
427
433
 
434
+ def set_loaded(self, loaded: bool = True):
435
+ self.loaded = loaded
436
+
428
437
  def on_find_finished(self, result):
429
438
  current = int(result.activeMatch())
430
439
  num = int(result.numberOfMatches())
@@ -433,6 +442,8 @@ class CustomWebEnginePage(QWebEnginePage):
433
442
  self.view.finder.on_find_finished()
434
443
 
435
444
  def on_view_changed(self):
445
+ if not self.loaded:
446
+ return
436
447
  zoom = self.zoomFactor()
437
448
  self.window.core.config.set("zoom", zoom)
438
449
  option = self.window.controller.settings.editor.get_option('zoom')
@@ -455,6 +466,7 @@ class CustomWebEnginePage(QWebEnginePage):
455
466
 
456
467
  def cleanup(self):
457
468
  """Cleanup method to release resources"""
469
+ self.loaded = False
458
470
  try:
459
471
  self.findTextFinished.disconnect()
460
472
  self.zoomFactorChanged.disconnect()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pygpt-net
3
- Version: 2.6.41
3
+ Version: 2.6.42
4
4
  Summary: Desktop AI Assistant powered by: OpenAI GPT-5, GPT-4, o1, o3, Gemini, Claude, Grok, DeepSeek, and other models supported by Llama Index, and Ollama. Chatbot, agents, completion, image generation, vision analysis, speech-to-text, plugins, internet access, file handling, command execution and more.
5
5
  License: MIT
6
6
  Keywords: ai,api,api key,app,assistant,bielik,chat,chatbot,chatgpt,claude,dall-e,deepseek,desktop,gemini,gpt,gpt-3.5,gpt-4,gpt-4-vision,gpt-4o,gpt-5,gpt-oss,gpt3.5,gpt4,grok,langchain,llama-index,llama3,mistral,o1,o3,ollama,openai,presets,py-gpt,py_gpt,pygpt,pyside,qt,text completion,tts,ui,vision,whisper
@@ -118,7 +118,7 @@ Description-Content-Type: text/markdown
118
118
 
119
119
  [![pygpt](https://snapcraft.io/pygpt/badge.svg)](https://snapcraft.io/pygpt)
120
120
 
121
- Release: **2.6.41** | build: **2025-09-11** | Python: **>=3.10, <3.14**
121
+ Release: **2.6.42** | build: **2025-09-11** | Python: **>=3.10, <3.14**
122
122
 
123
123
  > Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
124
124
  >
@@ -3567,6 +3567,13 @@ may consume additional tokens that are not displayed in the main window.
3567
3567
 
3568
3568
  ## Recent changes:
3569
3569
 
3570
+ **2.6.42 (2025-09-11)**
3571
+
3572
+ - Fixed: Save/load zoom factor in the chat window when switched via Ctrl + mouse wheel.
3573
+ - Fixed: Break the first line in code blocks.
3574
+ - Added: Configuration options for syntax highlight limits.
3575
+ - Updated: SVG icons.
3576
+
3570
3577
  **2.6.41 (2025-09-11)**
3571
3578
 
3572
3579
  - Rendering engine optimizations: markdown parsing moved to JS, reduced CPU usage, added auto-memory clearing, and more.
@@ -1,6 +1,6 @@
1
- pygpt_net/CHANGELOG.txt,sha256=sqGl6QL_-As71_xYNHgisLs_sVVZV_UM717FPyBy2oc,105078
1
+ pygpt_net/CHANGELOG.txt,sha256=OjZxHPUce0YEqLyOqvTZjyo4ifQjywEWz5A63jpVazc,105316
2
2
  pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
3
- pygpt_net/__init__.py,sha256=tJGSESzr7uOEg5XOAia3xJ8A_cyfiCRhawHkRIl4cOw,1373
3
+ pygpt_net/__init__.py,sha256=EmWiw3U-w6KexzEkxXmjqsg-nKkGfV_cUp4rqcoKWus,1373
4
4
  pygpt_net/app.py,sha256=2Zi8o7OLEzIaUDztGSisJLOtTbpfTPbUH9V0c9NldbQ,22014
5
5
  pygpt_net/app_core.py,sha256=y7mHzH_sdUg2yoG_BKvMdJA6v5jCBSHhwcXqIZfxXs4,4169
6
6
  pygpt_net/config.py,sha256=SCps_FfwdrynVAgpn37Ci1qTN8BFC05IGl9sYIi9e0w,16720
@@ -345,7 +345,7 @@ pygpt_net/core/render/plain/helpers.py,sha256=tWbdJZBfjnuHLAUDVYLTfv3Vt-h7XN1tg6
345
345
  pygpt_net/core/render/plain/pid.py,sha256=Zp-TNjKI3yReuSJxC8qRkOh2ou7zK6abFbXjebbpsO8,1484
346
346
  pygpt_net/core/render/plain/renderer.py,sha256=CA0pkTvzgO50vJlrkAkfMBvg60ffiEvDCyVkONKYkL4,16063
347
347
  pygpt_net/core/render/web/__init__.py,sha256=istp5dsn6EkLEP7lOBeDb8RjodUcWZqjcEvTroaTT-w,489
348
- pygpt_net/core/render/web/body.py,sha256=hosJPsBvxeCC4ofFIrC2ggQ3pnBm3xRR2PyK3XFy8Is,18471
348
+ pygpt_net/core/render/web/body.py,sha256=w-d5EJzcLwVvb4V-it0UNeaMty3-3jgXHnp_WQbkBwY,18817
349
349
  pygpt_net/core/render/web/debug.py,sha256=784RYXF6inn_bkRtYD1_FllQSyk67JmxKGWPiAyscKw,7138
350
350
  pygpt_net/core/render/web/helpers.py,sha256=a0zyjQffQRyZTcRzXVuho7YtYzvLIwerWxPOO11yjXI,6624
351
351
  pygpt_net/core/render/web/parser.py,sha256=pDFc9Tf8P-jvrDilXyT1fukcQHbixHRJ9Dn9hF10Gko,12892
@@ -386,13 +386,13 @@ pygpt_net/core/web/helpers.py,sha256=0hP5qklHOLv6s1Q5dQpZ0hQ2cj8YwLgHb2iY3yjqTnU
386
386
  pygpt_net/core/web/web.py,sha256=l37jujlnTUGF1YwGy54FDvm1DGZbB1_rHHtnXLXCZ50,2703
387
387
  pygpt_net/core/worker/__init__.py,sha256=3Lfyv7yc8uqilfuQvnaOx9WV0Y1S3scaqAeuP9_fZ38,510
388
388
  pygpt_net/core/worker/worker.py,sha256=PHH8trKzwrZaaAad5eW4jl4gzJpDB1HdTTtYaf5SGIs,1305
389
- pygpt_net/css.qrc,sha256=sPePkkVgw9JGwmZ8KrKBwKpzcLEBlbLFZCf9bTgAYtI,132
390
- pygpt_net/css_rc.py,sha256=i13kX7irhbYCWZ5yJbcMmnkFp_UfS4PYnvRFSPF7XXo,11349
389
+ pygpt_net/css.qrc,sha256=MLNlCbC2b8bvFW_Zc-olJaxZB1MtXw3t1SOMZ-TLBm4,130
390
+ pygpt_net/css_rc.py,sha256=PX6g9z5BsD-DXISuR2oq3jHcjiKfcJ4HsgcHez6wGMc,27762
391
391
  pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
392
392
  pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
393
393
  pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
394
- pygpt_net/data/config/config.json,sha256=Xj6q7VE9u7XNMzFbCmR1tLWRFLFNac1BArkMPWrNB6c,30532
395
- pygpt_net/data/config/models.json,sha256=umPo1LY7PdlTipq8rinJgObiJukDjcXMEPIjlPRngf0,115730
394
+ pygpt_net/data/config/config.json,sha256=SVaopnqB84HxWMTofjLXgYdfVZVW1vSe0SE89k9nEl0,30673
395
+ pygpt_net/data/config/models.json,sha256=Y_0N0U6hxchscz9H0yMuvfytWydOIgtRxz0apWSA1to,118361
396
396
  pygpt_net/data/config/modes.json,sha256=IpjLOm428_vs6Ma9U-YQTNKJNtZw-qyM1lwhh73xl1w,2111
397
397
  pygpt_net/data/config/presets/agent_code_act.json,sha256=GYHqhxtKFLUCvRI3IJAJ7Qe1k8yD9wGGNwManldWzlI,754
398
398
  pygpt_net/data/config/presets/agent_openai.json,sha256=bpDJgLRey_effQkzFRoOEGd4aHUrmzeODSDdNzrf62I,730
@@ -427,7 +427,7 @@ pygpt_net/data/config/presets/current.vision.json,sha256=x1ll5B3ROSKYQA6l27PRGXU
427
427
  pygpt_net/data/config/presets/dalle_white_cat.json,sha256=esqUb43cqY8dAo7B5u99tRC0MBV5lmlrVLnJhTSkL8w,552
428
428
  pygpt_net/data/config/presets/joke_agent.json,sha256=R6n9P7KRb0s-vZWZE7kHdlOfXAx1yYrPmUw8uLyw8OE,474
429
429
  pygpt_net/data/config/presets/joke_expert.json,sha256=jjcoIYEOaEp8kLoIbecxQROiq4J3Zess5w8_HmngPOY,671
430
- pygpt_net/data/config/settings.json,sha256=goNcCD3xwyTEzNf3zqE6Ta3rhTgnYGgY45g1KUdGlb4,81472
430
+ pygpt_net/data/config/settings.json,sha256=EFZTr0UpmCM4okjAbs-H6N_EoGt_Hnytkv-z81lpgSc,82598
431
431
  pygpt_net/data/config/settings_section.json,sha256=pcfOFk0_eIRaa4nKRxhSVzDXe531YxWJgVx5rLV0J9U,1150
432
432
  pygpt_net/data/css/fix_windows.css,sha256=Mks14Vg25ncbMqZJfAMStrhvZmgHF6kU75ohTWRZeI8,664
433
433
  pygpt_net/data/css/fix_windows.dark.css,sha256=7hGbT_qI5tphYC_WlFpJRDAcmjBb0AQ2Yc-y-_Zzf2M,161
@@ -512,6 +512,7 @@ pygpt_net/data/icons/brush.svg,sha256=0PDQumZCCuzuX8We9Nk6ZVCNE_8cR6O2JskBvP8q69
512
512
  pygpt_net/data/icons/build.svg,sha256=vFQhHSqQXLafkOhswnFcKMeCec7G5SmItmOa-MNpt30,523
513
513
  pygpt_net/data/icons/calendar.svg,sha256=ALy_OXW1LRWXWm2XJMGnxCN9VyxQ7ZtFfUo_vp4ZvkA,927
514
514
  pygpt_net/data/icons/camera.svg,sha256=Y6re94y-N6f7JtRKVmbeEs7BUVMeXTRxEPvek9CG-j0,496
515
+ pygpt_net/data/icons/case.svg,sha256=2AZXinsIH4m2fxH_Y266LtkwmxmQsnbV8W-_6ojv-Sk,503
515
516
  pygpt_net/data/icons/chat/audio.png,sha256=2M9i3EK3afpwXqGEHGOwctXPF-UYbsilm2nsEk2vVBI,987
516
517
  pygpt_net/data/icons/chat/collapse.png,sha256=Ht_3U0N85Beq7i5i6aLQAUYaZCTkXz6TKQN2eRG0SIA,123
517
518
  pygpt_net/data/icons/chat/copy.png,sha256=0xdpxbm3L3oYmzEb8Lll7nIaEbffknmVFzj_VeFwpgY,798
@@ -522,6 +523,10 @@ pygpt_net/data/icons/chat/preview.png,sha256=Ur76e25NT3UN1BFJcNg-N8LxUajLcYt3I7J
522
523
  pygpt_net/data/icons/chat/reload.png,sha256=7i1b5Z9vxqzIxHB0yK4vQB9agld_c-GDHepi4lo3n7Q,956
523
524
  pygpt_net/data/icons/chat/run.png,sha256=ZVZ5nUmD4AaNiUjoD1h_Ta3BFBN_-V9WKo02d9FYTZg,362
524
525
  pygpt_net/data/icons/chat.svg,sha256=9jpGTWsHv5YjVDsfxBq-hUj0MvCzOVExEptUFQOpBuE,336
526
+ pygpt_net/data/icons/chat1.svg,sha256=avkFmrGQMMlCqQdzC4rgkTnlNF2k6A1emPgr3Be_ciU,272
527
+ pygpt_net/data/icons/chat2.svg,sha256=NRwCrE7YI46QV3DYk8EKimkOtB5DZr2-t-L5ba1hOQ0,356
528
+ pygpt_net/data/icons/chat3.svg,sha256=Oh2V1tvW7QiSn0JiA1jO6ocrOWt3W0QB1ffcUk2ise8,329
529
+ pygpt_net/data/icons/chat4.svg,sha256=S3wIIl_nTqoxIiPYFYrqpt79gsOZHo4XD3HsUKcC68w,299
525
530
  pygpt_net/data/icons/check.svg,sha256=XkeBUwQJXSi2HXxQE900rkg6OfhgWH4OBw3V5rUA1Hc,174
526
531
  pygpt_net/data/icons/check_circle.svg,sha256=zq8hfRltrz8-2WNRqLZdrK_cSQPSHQ7VtiaRM2cxRnA,459
527
532
  pygpt_net/data/icons/checklist.svg,sha256=Ch0TtPoXShyz36_Zab-jjLMuqVIPod8O_9kfzCqs2vo,265
@@ -552,6 +557,7 @@ pygpt_net/data/icons/expand.svg,sha256=NCNRIgwsJTN37y_52cKeEsARqNmLjZLmF7qcpKFEX
552
557
  pygpt_net/data/icons/fast_forward.svg,sha256=uPYFN23iLJrMhRAyqTc5Nah3eCR9MPTXSi4ON2m-0RU,247
553
558
  pygpt_net/data/icons/fast_rewind.svg,sha256=Mgt9FVyrpC7zzE7bFJpWjsn-AuHp6SdME9qOXiwytXw,250
554
559
  pygpt_net/data/icons/favorite.svg,sha256=fk_0QC5lAH7baA2P6LNSsTyYO0d8C-0vAE3zflowuv8,504
560
+ pygpt_net/data/icons/fit.svg,sha256=tI3DCybvSH1sobEsK9Jm1sSErozkNadA0N1LQC_1DA8,409
555
561
  pygpt_net/data/icons/folder.svg,sha256=V78ty8WiFiCYO9ybDlWAGEsRk9H-lkVHFaWULKrg-XQ,297
556
562
  pygpt_net/data/icons/folder_filled.svg,sha256=y0Cn0EPgKFCOvNQQCPetDoSlUiGYvGNkpV-5ktu536Q,249
557
563
  pygpt_net/data/icons/forward.svg,sha256=BYAnyujxq8aCdYXf9-kglli79i2oI2144-der7lmRvU,186
@@ -579,6 +585,9 @@ pygpt_net/data/icons/mic.svg,sha256=uIABsU9vN-Smx71p46yhx-FmLL_BctsfJLbnJZ-6z0M,
579
585
  pygpt_net/data/icons/mic_off.svg,sha256=Q2uG0jZVEIlnbhSnp_1viIlq0iD-rlWcJMwjUpR0Hhw,485
580
586
  pygpt_net/data/icons/more_horizontal.svg,sha256=v3ujC-Bj77Yu7V38y3XYTkab0snRV2wKqyub_tlLAAA,423
581
587
  pygpt_net/data/icons/mute.svg,sha256=7AqWUBpugKOJoivULGxa-plCuDi9_u9eo3rb5TeAbJ4,491
588
+ pygpt_net/data/icons/note1.svg,sha256=YBGujhBpqjWpgmnWYI7bcyUWtCBsGNKxpNcgFaNdBXc,398
589
+ pygpt_net/data/icons/note2.svg,sha256=djjMyqLh5-N-CVYPiIE705-KMfebrs0PsfzvcXjW55U,344
590
+ pygpt_net/data/icons/note3.svg,sha256=qzoN-4s-vmW9zVmiFGWMbyYc7rlXVA2vaQbrtGIeMaw,387
582
591
  pygpt_net/data/icons/open_tab.svg,sha256=QXIwss1pF33DzW_7RaYeIRkrYBZO-sPsRtPJl_-vZ4k,296
583
592
  pygpt_net/data/icons/palette.svg,sha256=cQPfZGqtnq3aE9BSCMtKE6rgZOqNx8iVB1sbRd2e0mU,846
584
593
  pygpt_net/data/icons/paste.svg,sha256=9LH_NPXOOfBJ0F5JI6n_v2IGljCfCBA8ngGsJs35UXw,431
@@ -616,6 +625,7 @@ pygpt_net/data/icons/stacks.svg,sha256=LayBXZkUUMMYrLhQTHCq2EYELueoQIj4j7RI7fe4Q
616
625
  pygpt_net/data/icons/star.svg,sha256=j80J8XYWY4mAsGpkVPQ_FJXeU8wSSZ4GC4vh8CUDdHk,291
617
626
  pygpt_net/data/icons/stop.svg,sha256=nGLfckMaPvmEIglPnQCr2NRtJDQNcrVnRFc4gnm2hd0,188
618
627
  pygpt_net/data/icons/stop_circle.svg,sha256=qPAlovfPGPnsRjNZg3i9008WK8JePoqEr-xXNfhZMdA,432
628
+ pygpt_net/data/icons/stt.svg,sha256=ToQfzkphTlc2N_QaGA9VU9CKdjfEs5vzZgzaLciJMk4,494
619
629
  pygpt_net/data/icons/sync.svg,sha256=Sz9NdYxj-BNxkbgV96Q4seKoHaqrJtZnF51dSWlcKNk,381
620
630
  pygpt_net/data/icons/tag.svg,sha256=wqVac-kPxtTvf-fNUu_YAVV_Oe1qin0XKWuU2sv-ioE,317
621
631
  pygpt_net/data/icons/task.svg,sha256=q3_Y-cf0zzwj1FAVUAwiUr9qDrS_sjiQakLkLXlia-A,334
@@ -624,13 +634,17 @@ pygpt_net/data/icons/text.svg,sha256=LnqHAcMOYaONK8ZUicoZRp6uJ6kbX6Q7rfSGeSLIFFI
624
634
  pygpt_net/data/icons/textfile.svg,sha256=Onmm9wwPFusvfyiDEgHyfmhASpId7YpYYFVT2ezy1_o,329
625
635
  pygpt_net/data/icons/timer.svg,sha256=dtLitm8qiRe7PSanStDY0LMufKAAK3LhtHhuy4-mclE,479
626
636
  pygpt_net/data/icons/today.svg,sha256=_FTMoF07roonB9iOwPlOWM4zMMo4UQODn4DIVuMz780,321
637
+ pygpt_net/data/icons/translate.svg,sha256=_ON0110HaT4A0nnAOo9uiSkq4UzQjAlazBr-qIhQOT4,379
638
+ pygpt_net/data/icons/tts.svg,sha256=S2SATYehVqc3DxdaEeaPGMjf77D38iUwe57vsxQsHoo,485
627
639
  pygpt_net/data/icons/tune.svg,sha256=qk6tPBUfdO-gtFNIP6kmPUjKzqq4E95HI0hmXAjj4Is,308
628
640
  pygpt_net/data/icons/undo.svg,sha256=bPzV47QXechM72ghFTbG-brYZgvJbtCbmKE6nyxdMfw,282
629
641
  pygpt_net/data/icons/update.svg,sha256=ttqjGvC0115fen7U-KL5Q6BYab5n9OHx6CymbHcL7Jc,444
630
642
  pygpt_net/data/icons/updater.svg,sha256=dZx3G7tPQ0lSPoYPnHXE_UnJxqfZSbrpLyQAqDmuks8,392
631
643
  pygpt_net/data/icons/upload.svg,sha256=498xP2cGnl5WaRE54I-iVUmW7pppj-A6jhfXwCxVIc4,276
644
+ pygpt_net/data/icons/url.svg,sha256=HstN0j5H2dGCNJobgP86LwSDg_28yTjXG5PgQ-R3m_w,380
632
645
  pygpt_net/data/icons/video.svg,sha256=GA4b5L_aMOJQx42mMW0fder9AsT6k97_14rDvUGIhcI,339
633
646
  pygpt_net/data/icons/view.svg,sha256=lDrXspqQ8Z1dqmp9waXpMvm4-h-bHpT4i2uQHQtXqgc,550
647
+ pygpt_net/data/icons/vision.svg,sha256=XcU57cTOx_IU2L2Uje2XIbg4HZFuJ3R-ysnk9FMSB34,554
634
648
  pygpt_net/data/icons/voice.svg,sha256=hHG78-GKKfQhI30hAdMhERkvh4Nw_J5RHi9thLUCY7o,736
635
649
  pygpt_net/data/icons/volume.svg,sha256=zHZ6E75Fe15nZPS_rzZmwjaQB49J29sraS1RxV_jp_U,374
636
650
  pygpt_net/data/icons/warning.svg,sha256=PxXFYPjdxgDdoSKC_mqtF9_Q88uui9-TtW5oq5cuA3I,310
@@ -641,7 +655,7 @@ pygpt_net/data/icons/window.svg,sha256=Ac0i_zydkTg_hHi-ZzTRNW0uQ5z7j-2TjNX6iwv3o
641
655
  pygpt_net/data/icons/work.svg,sha256=6dAOEVzYU-6RUn3NpTvf6l2d4dD9vnalkYQTwjKNRrs,365
642
656
  pygpt_net/data/icons/zoom_in.svg,sha256=tFULsXTslx_gX6wi0XUCk8hiFlptvYCr922ipMQvNrM,422
643
657
  pygpt_net/data/icons/zoom_out.svg,sha256=HA01vUxYKU4KuOzZ74O6K6fzpEg_b6XW5fJ6U-XUwzs,396
644
- pygpt_net/data/js/app.js,sha256=4UUK_YEyEMmJmSe5L2buDHy8gVhXOJGv644b2sy-19I,202560
658
+ pygpt_net/data/js/app.js,sha256=fgeMOg8jGNqyxAfVy59-C242CLN1k0wL_Uxjln1z8Ks,204472
645
659
  pygpt_net/data/js/highlight/DIGESTS.md,sha256=bFIjBE_BrA2dkd0CM5SXLKQIccKOUcUeRFUK4c_3kWM,75091
646
660
  pygpt_net/data/js/highlight/LICENSE,sha256=bAgUMVkdnfaWyC3FmP4UI3ZbiimbIA7QCyga_Q9kxJA,1514
647
661
  pygpt_net/data/js/highlight/README.md,sha256=iUuAsk62y3lZEbACdBntj-_CEEN4gUfcbi4hkmEL6n0,1717
@@ -1657,14 +1671,14 @@ pygpt_net/data/js/katex/katex.min.js,sha256=KLASOtKS2x8pUxWVzCDmlWJ4jhuLb0vtrgak
1657
1671
  pygpt_net/data/js/markdown-it/markdown-it-katex.min.js,sha256=nWYrb1ouvTQ-qaHXWC1h3kQWJQ4dLgzNPcRzQ2dLh7Y,2281
1658
1672
  pygpt_net/data/js/markdown-it/markdown-it.min.js,sha256=OMcKHnypGrQOLZ5uYBKYUacX7Rx9Ssu91Bv5UDeRz2g,123618
1659
1673
  pygpt_net/data/languages.csv,sha256=fvtER6vnTXFHQslCh-e0xCfZDQ-ijgW4GYpOJG4U7LY,8289
1660
- pygpt_net/data/locale/locale.de.ini,sha256=w8j0eNT4aIb5qPD1iEIA6YVCEPG6Actuloj5SLn5uWM,105234
1661
- pygpt_net/data/locale/locale.en.ini,sha256=OcYN7Z5pKjdJ6ugbgjMndM1wPNp7QtpIeVqKCxF2Wy0,98914
1662
- pygpt_net/data/locale/locale.es.ini,sha256=7VKUWtfxuxS6fXmulxmtm2D2GgNBwrTZ1XKPtYsQkVs,105876
1663
- pygpt_net/data/locale/locale.fr.ini,sha256=zahodKDlbtsUbEayfHn3ei_ZrH1AW2duyDdSaEaaMd8,108644
1664
- pygpt_net/data/locale/locale.it.ini,sha256=v84adU1dclwXMMpyOEFU6qsaov_oe8sZ8rxU8WzlYnU,103616
1665
- pygpt_net/data/locale/locale.pl.ini,sha256=GmApqIByCfOOqb1_Evqag2ooj0YE-you6IXzWHYphag,103220
1666
- pygpt_net/data/locale/locale.uk.ini,sha256=tKWvmfHMK9G5mazNXWniE7RRQUjvt3JpPRGrOOSQFz8,144192
1667
- pygpt_net/data/locale/locale.zh.ini,sha256=uvyXSSBdbySX7BUmt9BAqG0KP7cKa9x36PvlH3pEJ0M,92267
1674
+ pygpt_net/data/locale/locale.de.ini,sha256=nFqwNFFWxlZaTX2Pzs2w-uiD3qZMdenTBTjIVMQAKlQ,106273
1675
+ pygpt_net/data/locale/locale.en.ini,sha256=boHs6jvYxHqLYLS_mUN7MvibTcT6lZUGGaV0ueWc6j8,99569
1676
+ pygpt_net/data/locale/locale.es.ini,sha256=boozgxr57UrQe8B0M4sYfQbjJBmGMxZ3SSPIHz7yqj4,106936
1677
+ pygpt_net/data/locale/locale.fr.ini,sha256=aa5aJlVsXzfnYxyWf6_cEWVZcEH_XBycCs6177ypX5E,109674
1678
+ pygpt_net/data/locale/locale.it.ini,sha256=W2uCdniurtvhpzFTIX0TgZmVPMe0A2wQQUmH668dvZU,104620
1679
+ pygpt_net/data/locale/locale.pl.ini,sha256=OmLE146eI3g6NrwqrarYHVVNM_jrMb9RH-Z_5lVXzSw,104258
1680
+ pygpt_net/data/locale/locale.uk.ini,sha256=MZFL8DL1PQ_3DDbpMz1n2a-0IdqNz_hq67GciUhWI2M,145658
1681
+ pygpt_net/data/locale/locale.zh.ini,sha256=S62KXuYc2Gk8XVzk0Nu9XhKg4t4_jY2iBtf4dWQZOtc,93125
1668
1682
  pygpt_net/data/locale/plugin.agent.de.ini,sha256=BY28KpfFvgfVYJzcw2o5ScWnR4uuErIYGyc3NVHlmTw,1714
1669
1683
  pygpt_net/data/locale/plugin.agent.en.ini,sha256=HwOWCI7e8uzlIgyRWRVyr1x6Xzs8Xjv5pfEc7jfLOo4,1728
1670
1684
  pygpt_net/data/locale/plugin.agent.es.ini,sha256=bqaJQne8HPKFVtZ8Ukzo1TSqVW41yhYbGUqW3j2x1p8,1680
@@ -1846,10 +1860,10 @@ pygpt_net/data/win32/banner.bmp,sha256=eWMV8GTSSWXBDn9VfNkMsEVkuVr_Nk1YqQG_50-_D
1846
1860
  pygpt_net/data/win32/banner_welcome.bmp,sha256=jKUlzecxdq8uWUOhBsAer4GGASO3tAStIfntcUGOsIA,461814
1847
1861
  pygpt_net/data/win32/pygpt.aip,sha256=JeMToDAs7EHPlwvZDM66T8Sxy5h_lCC7s-2FihcVtcI,87160
1848
1862
  pygpt_net/data/win32/qt.conf,sha256=ayV8lvbqYO_zvFKdNhq8uB9FVei5-llAcheZ2j4qfVU,45
1849
- pygpt_net/fonts.qrc,sha256=piI835LmHMXuYQo5GYpedWiDN3Xedqgea6itb6xjBd0,6223
1850
- pygpt_net/fonts_rc.py,sha256=EVwgIVDq-Sudy9DYpHbzuhQ_jd9pUuQ8e3-nycPzj3A,3238283
1851
- pygpt_net/icons.qrc,sha256=XYkef_ZjyGRoOTvdG1FvoL-Mw7i7Bh9w8cIy1uW4zOs,9047
1852
- pygpt_net/icons_rc.py,sha256=FWRllE_kudX-jI4lOto-Pvf5NDCFDrpAxuQgXgldg6k,92180
1863
+ pygpt_net/fonts.qrc,sha256=9dKHJ9NaBfPhPCrkfaDoaYjmhlsqJcwkx9vglvm-q4c,6103
1864
+ pygpt_net/fonts_rc.py,sha256=iBYh-MsobIYZJDrsY6BSpaC51vKaJ7yiNpyU1FbfY9M,3236175
1865
+ pygpt_net/icons.qrc,sha256=8dZ9kYEACyqXUM9LNqrmAaH7dko6pl1RlcN2NWfhExk,9603
1866
+ pygpt_net/icons_rc.py,sha256=RTjbPJPS2JKPWHNiTE9DSjKU_9scpqUooOtbVWk6iBQ,96541
1853
1867
  pygpt_net/item/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
1854
1868
  pygpt_net/item/assistant.py,sha256=FYIbh48J3aOC9IXaopFYqbzQ5vWG_hvWW76UFnUjvGM,11484
1855
1869
  pygpt_net/item/attachment.py,sha256=nsyvOnTS_gimcdzwJNI7bC-1KSrSu66XkMtaNwg2IYk,2970
@@ -1861,8 +1875,8 @@ pygpt_net/item/model.py,sha256=izmOPM1Cwe3TvobUWQbrB1L2G6vjaqEnS8iSktmZWM4,10066
1861
1875
  pygpt_net/item/notepad.py,sha256=7v3A3HJjew0IoFM65Li0xfoSEdJzfEUZM1IH1ND0Bxw,1805
1862
1876
  pygpt_net/item/preset.py,sha256=9VeMlWjUvRKYyVu1XPxaZOFZvL-N_ThXZR_M38TbpWA,8523
1863
1877
  pygpt_net/item/prompt.py,sha256=xequZDTEv4eKjmC5OLqZnNrbyy0YA4LHe0k2RpPiBw0,1745
1864
- pygpt_net/js.qrc,sha256=l5yHd8d2GUZzlNxMgm0v8Nz2_d_EK9x239lXuxsgNXA,538
1865
- pygpt_net/js_rc.py,sha256=8LfppUWRutgEkHkQ4K-LaLIrLAPye4O48BfcAvYgf6g,1482345
1878
+ pygpt_net/js.qrc,sha256=Dyp5qWokt0MGSOmNfI6ASawF8Xo1f4SZArUJ8vckcbQ,526
1879
+ pygpt_net/js_rc.py,sha256=Dcl2V9FaNEX8abocRdlF5uxE1EGFAYNO9zrqAce6LlM,2314581
1866
1880
  pygpt_net/launcher.py,sha256=bqR175OVZ_Q3yKsIM5NiHB1S1b-vXrIglsQyr6zyrWU,10125
1867
1881
  pygpt_net/migrations/Version20231227152900.py,sha256=1Rw1mK2mVQs0B2HrbxHICu1Pd1X5jg4yZIrytnR5N5Y,2849
1868
1882
  pygpt_net/migrations/Version20231230095000.py,sha256=A1_e9oC_E4LSo9uBFiiI2dKH7N-SERFp7DMX1R_8LXQ,906
@@ -2154,7 +2168,7 @@ pygpt_net/provider/core/calendar/db_sqlite/storage.py,sha256=QDclQCQdr4QyRIqjgGX
2154
2168
  pygpt_net/provider/core/config/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2155
2169
  pygpt_net/provider/core/config/base.py,sha256=cbvzbMNqL2XgC-36gGubnU37t94AX7LEw0lecb2Nm80,1365
2156
2170
  pygpt_net/provider/core/config/json_file.py,sha256=GCcpCRQnBiSLWwlGbG9T3ZgiHkTfp5Jsg2KYkZcakBw,6789
2157
- pygpt_net/provider/core/config/patch.py,sha256=zNVO7j_azMcHWz2jbfisYGAHm183MBP2x9MjL7Jm6GM,126823
2171
+ pygpt_net/provider/core/config/patch.py,sha256=qQy-f41ILJ5XwC_D6XfiEc9fUlNW2WLGB5245rvK2W0,127404
2158
2172
  pygpt_net/provider/core/ctx/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2159
2173
  pygpt_net/provider/core/ctx/base.py,sha256=Tfb4MDNe9BXXPU3lbzpdYwJF9S1oa2-mzgu5XT4It9g,3003
2160
2174
  pygpt_net/provider/core/ctx/db_sqlite/__init__.py,sha256=0dP8VhI4bnFsQQKxAkaleKFlyaMycDD_cnE7gBCa57Y,512
@@ -2183,7 +2197,7 @@ pygpt_net/provider/core/mode/patch.py,sha256=VS2KCYW05jxLd-lcStNY1k4fHKUUrVVLTdR
2183
2197
  pygpt_net/provider/core/model/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2184
2198
  pygpt_net/provider/core/model/base.py,sha256=L1x2rHha8a8hnCUYxZr88utay1EWEx5qBXW_2acpAN0,1319
2185
2199
  pygpt_net/provider/core/model/json_file.py,sha256=l74l_n5PEHNp-FsoHtO9LHflz3RFKwDwKwOKN0stgZw,8418
2186
- pygpt_net/provider/core/model/patch.py,sha256=EV8ZduOxm9eduNmfxW6ArPxSaZZlobjq6hXYdT13Dl0,37515
2200
+ pygpt_net/provider/core/model/patch.py,sha256=HtmY0NMu2kVAUZ8QY7o3ozeRHpvPhOMfpQ3G3Gg6X3c,37984
2187
2201
  pygpt_net/provider/core/notepad/__init__.py,sha256=jQQgG9u_ZLsZWXustoc1uvC-abUvj4RBKPAM30-f2Kc,488
2188
2202
  pygpt_net/provider/core/notepad/base.py,sha256=7aPhild8cALTaN3JEbI0YrkIW1DRIycGQWTfsdH6WcQ,1323
2189
2203
  pygpt_net/provider/core/notepad/db_sqlite/__init__.py,sha256=0dP8VhI4bnFsQQKxAkaleKFlyaMycDD_cnE7gBCa57Y,512
@@ -2345,7 +2359,7 @@ pygpt_net/tools/text_editor/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
2345
2359
  pygpt_net/tools/text_editor/ui/dialogs.py,sha256=0nJjDsw9lzP7K5JLA1Fp4mzTSj8M7k5TZ0Wn_rIL85M,2918
2346
2360
  pygpt_net/tools/text_editor/ui/widgets.py,sha256=bvg3uJgWf5d3Vo_j5dMcoUchrvEA9e9uJK5aAy9-ZJc,2758
2347
2361
  pygpt_net/tools/translator/__init__.py,sha256=R4-y_danRZamZRwXctX1b0tI9oz4qM_xcVthXNyYjcU,508
2348
- pygpt_net/tools/translator/tool.py,sha256=3QIv50Bc7TgrkVQ-7qcuxIERAJz5e4Vy22Uj8K79_a0,14527
2362
+ pygpt_net/tools/translator/tool.py,sha256=hm3dEfQJRo8u45gyRXyIOp92khQuBJ6hnqIxO92meDU,14537
2349
2363
  pygpt_net/tools/translator/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2350
2364
  pygpt_net/tools/translator/ui/dialogs.py,sha256=qC-dCNtOLbOe-h586iBmsBTlv4KlUoxCkPqYOq8336k,4137
2351
2365
  pygpt_net/tools/translator/ui/widgets.py,sha256=6gEVlMd96tHOwKKDV6eoMoItTOcr2Bd_ig5Y2KihZ5o,17735
@@ -2472,7 +2486,7 @@ pygpt_net/ui/widget/dialog/update.py,sha256=YGUouxuEqvO8rkjI52F7wG4R8OgqcpJKB1FV
2472
2486
  pygpt_net/ui/widget/dialog/url.py,sha256=7I17Pp9P2c3G1pODEY5dum_AF0nFnu2BMfbWTgEES-M,8765
2473
2487
  pygpt_net/ui/widget/dialog/workdir.py,sha256=D-C3YIt-wCoI-Eh7z--Z4R6P1UvtpkxeiaVcI-ycFck,1523
2474
2488
  pygpt_net/ui/widget/draw/__init__.py,sha256=oSYKtNEGNL0vDjn3wCgdnBAbxUqNGIEIf-75I2DIn7Q,488
2475
- pygpt_net/ui/widget/draw/painter.py,sha256=yuGOWLXuEv17kNscGW_Us86g2HDEJBLTsg_B3zh45Ck,49443
2489
+ pygpt_net/ui/widget/draw/painter.py,sha256=Aib55B2-L0wckbo5VBkcONdlWVZhwXZV4dW0L11fZOU,49440
2476
2490
  pygpt_net/ui/widget/element/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
2477
2491
  pygpt_net/ui/widget/element/button.py,sha256=rhy8_RVHRV8xl0pegul31z9fNBjjIAi5Nd0hHGF6cF8,4393
2478
2492
  pygpt_net/ui/widget/element/checkbox.py,sha256=qyX6T31c3a8Wb8B4JZwhuejD9SUAFSesdIjZdj4tv8I,2948
@@ -2540,12 +2554,12 @@ pygpt_net/ui/widget/textarea/output.py,sha256=krWta3GHwdlPOqcxLln150bo7iUOtbFL_y
2540
2554
  pygpt_net/ui/widget/textarea/rename.py,sha256=NwuGRIeWMo7WfsMguAFpTqdOz1eTiXbxrDXGsbWF_TY,1358
2541
2555
  pygpt_net/ui/widget/textarea/search_input.py,sha256=aoOlunBwxn-z3gIMNKfnghHX00sC36wQHl87dRlDJlM,5227
2542
2556
  pygpt_net/ui/widget/textarea/url.py,sha256=xbNQxoM5fYI1ZWbvybQkPmNPrIq3yhtNPBOSOWftZCg,1337
2543
- pygpt_net/ui/widget/textarea/web.py,sha256=GuLUGpGwrX_RdaWKXuIX3w5th-zWLlEByWZWNR5g2Sc,17736
2557
+ pygpt_net/ui/widget/textarea/web.py,sha256=7NJJuTMG-9KDOSIXn1GexnsRkApDB24HSVziHskI4vQ,18064
2544
2558
  pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
2545
2559
  pygpt_net/ui/widget/vision/camera.py,sha256=v1qEncaZr5pXocO5Cpk_lsgfCMvfFigdJmzsYfzvCl0,1877
2546
2560
  pygpt_net/utils.py,sha256=FeoWestHkhaewYKqLswHsslChqCnakJdxUJdexd0Pw8,9653
2547
- pygpt_net-2.6.41.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2548
- pygpt_net-2.6.41.dist-info/METADATA,sha256=r20Q0rOwHTVdLfsb5VBF9blgT382FuQRRIYO76Z4tGU,163803
2549
- pygpt_net-2.6.41.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2550
- pygpt_net-2.6.41.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2551
- pygpt_net-2.6.41.dist-info/RECORD,,
2561
+ pygpt_net-2.6.42.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
2562
+ pygpt_net-2.6.42.dist-info/METADATA,sha256=yhLa-MBpLc2eTOQxODUjjPyeNG0sIg1AKwqh7FsR5Xo,164045
2563
+ pygpt_net-2.6.42.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
2564
+ pygpt_net-2.6.42.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
2565
+ pygpt_net-2.6.42.dist-info/RECORD,,