rp 0.1.1384__tar.gz → 0.1.1386__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 (411) hide show
  1. {rp-0.1.1384 → rp-0.1.1386}/PKG-INFO +1 -1
  2. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/convert_tmux.py +5 -3
  3. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/google_slides_upload.py +26 -2
  4. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/media_to_slides.py +54 -46
  5. {rp-0.1.1384 → rp-0.1.1386}/rp/r.py +1 -1
  6. rp-0.1.1386/rp/version.py +1 -0
  7. {rp-0.1.1384 → rp-0.1.1386}/rp.egg-info/PKG-INFO +1 -1
  8. rp-0.1.1386/version.py +1 -0
  9. rp-0.1.1384/rp/version.py +0 -1
  10. rp-0.1.1384/version.py +0 -1
  11. {rp-0.1.1384 → rp-0.1.1386}/.gitignore +0 -0
  12. {rp-0.1.1384 → rp-0.1.1386}/.idea/QuickPython.iml +0 -0
  13. {rp-0.1.1384 → rp-0.1.1386}/.idea/QuickPython.time +0 -0
  14. {rp-0.1.1384 → rp-0.1.1386}/.idea/encodings.xml +0 -0
  15. {rp-0.1.1384 → rp-0.1.1386}/.idea/inspectionProfiles/Project_Default.xml +0 -0
  16. {rp-0.1.1384 → rp-0.1.1386}/.idea/misc.xml +0 -0
  17. {rp-0.1.1384 → rp-0.1.1386}/.idea/modules.xml +0 -0
  18. {rp-0.1.1384 → rp-0.1.1386}/.idea/vcs.xml +0 -0
  19. {rp-0.1.1384 → rp-0.1.1386}/.idea/workspace.xml +0 -0
  20. {rp-0.1.1384 → rp-0.1.1386}/.publish.sh.un~ +0 -0
  21. {rp-0.1.1384 → rp-0.1.1386}/.setup.py.un~ +0 -0
  22. {rp-0.1.1384 → rp-0.1.1386}/.update_module_paths.py.un~ +0 -0
  23. {rp-0.1.1384 → rp-0.1.1386}/LICENSE.txt +0 -0
  24. {rp-0.1.1384 → rp-0.1.1386}/README +0 -0
  25. {rp-0.1.1384 → rp-0.1.1386}/Scrap +0 -0
  26. {rp-0.1.1384 → rp-0.1.1386}/aoisdasd +0 -0
  27. {rp-0.1.1384 → rp-0.1.1386}/increment_version.py +0 -0
  28. {rp-0.1.1384 → rp-0.1.1386}/oijio +0 -0
  29. {rp-0.1.1384 → rp-0.1.1386}/publish.sh +0 -0
  30. {rp-0.1.1384 → rp-0.1.1386}/pyqtconsoletest.py +0 -0
  31. {rp-0.1.1384 → rp-0.1.1386}/rp/__init__.py +0 -0
  32. {rp-0.1.1384 → rp-0.1.1386}/rp/__main__.py +0 -0
  33. {rp-0.1.1384 → rp-0.1.1386}/rp/documentation.py +0 -0
  34. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/Pyperclip.py +0 -0
  35. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/__init__.py +0 -0
  36. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/debug_comment.py +0 -0
  37. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/draw_code_minimap.py +0 -0
  38. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/graveyard.py +0 -0
  39. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/__init__.py +0 -0
  40. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/_compatibility.py +0 -0
  41. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/cache.py +0 -0
  42. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/file_io.py +0 -0
  43. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/grammar.py +0 -0
  44. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/normalizer.py +0 -0
  45. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/parser.py +0 -0
  46. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/pgen2/__init__.py +0 -0
  47. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/pgen2/generator.py +0 -0
  48. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/pgen2/grammar_parser.py +0 -0
  49. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/__init__.py +0 -0
  50. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/diff.py +0 -0
  51. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/errors.py +0 -0
  52. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar26.txt +0 -0
  53. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar27.txt +0 -0
  54. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar310.txt +0 -0
  55. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar311.txt +0 -0
  56. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar312.txt +0 -0
  57. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar33.txt +0 -0
  58. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar34.txt +0 -0
  59. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar35.txt +0 -0
  60. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar36.txt +0 -0
  61. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar37.txt +0 -0
  62. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar38.txt +0 -0
  63. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/grammar39.txt +0 -0
  64. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/parser.py +0 -0
  65. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/pep8.py +0 -0
  66. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/prefix.py +0 -0
  67. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/token.py +0 -0
  68. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/tokenize.py +0 -0
  69. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/python/tree.py +0 -0
  70. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/tree.py +0 -0
  71. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/parso/utils.py +0 -0
  72. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/peepdis/__init__.py +0 -0
  73. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/peepdis/core.py +0 -0
  74. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/peepdis/datastructures.py +0 -0
  75. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/peepdis/legacy.py +0 -0
  76. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/peepdis/preferences.py +0 -0
  77. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/__init__.py +0 -0
  78. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/__main__.py +0 -0
  79. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/convert_pptx_videos_to_gifs.py +0 -0
  80. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint/pptx_utils.py +0 -0
  81. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/powerpoint_converter.py +0 -0
  82. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/profile_vim_plugins.py +0 -0
  83. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pw_crypt.py +0 -0
  84. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/__init__.py +0 -0
  85. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/bindings/__init__.py +0 -0
  86. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/bindings/flann_ctypes.py +0 -0
  87. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/exceptions.py +0 -0
  88. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/index.py +0 -0
  89. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/io/__init__.py +0 -0
  90. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/io/binary_dataset.py +0 -0
  91. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/io/dat_dataset.py +0 -0
  92. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/io/dataset.py +0 -0
  93. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/io/hdf5_dataset.py +0 -0
  94. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/io/npy_dataset.py +0 -0
  95. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/util/__init__.py +0 -0
  96. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyflann/util/weave_tools.py +0 -0
  97. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/__init__.py +0 -0
  98. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/__version__.py +0 -0
  99. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/app.py +0 -0
  100. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/cli.py +0 -0
  101. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/cli_utils.py +0 -0
  102. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/__init__.py +0 -0
  103. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/config.py +0 -0
  104. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/config_error.py +0 -0
  105. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/config_parser.py +0 -0
  106. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/config_transformer.py +0 -0
  107. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/validators/__init__.py +0 -0
  108. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/config/validators/options.py +0 -0
  109. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/logging.py +0 -0
  110. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/__init__.py +0 -0
  111. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/autocomplete/__init__.py +0 -0
  112. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/autocomplete/autocomplete_listener.py +0 -0
  113. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/common/__init__.py +0 -0
  114. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/common/jsonpath/JSONPathLexer.py +0 -0
  115. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/common/jsonpath/JSONPathListener.py +0 -0
  116. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/common/jsonpath/JSONPathParser.py +0 -0
  117. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/common/jsonpath/__init__.py +0 -0
  118. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/io/__init__.py +0 -0
  119. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/io/datasource.py +0 -0
  120. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/model/model.py +0 -0
  121. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/service/__init__.py +0 -0
  122. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/service/client.py +0 -0
  123. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/service/dispatcher.py +0 -0
  124. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/__init__.py +0 -0
  125. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/common/__init__.py +0 -0
  126. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/common/popup.py +0 -0
  127. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/common/selectable_text.py +0 -0
  128. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/__init__.py +0 -0
  129. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/autocomplete_popup/__init__.py +0 -0
  130. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/autocomplete_popup/autocomplete_popup.py +0 -0
  131. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/autocomplete_popup/autocomplete_popup_keymapper.py +0 -0
  132. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/help_bar/__init__.py +0 -0
  133. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/help_bar/help_bar.py +0 -0
  134. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/help_page/__init__.py +0 -0
  135. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/help_page/detailed_help_page.py +0 -0
  136. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/json_browser/__init__.py +0 -0
  137. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/json_browser/json_browser.py +0 -0
  138. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/json_browser/json_browser_keymapper.py +0 -0
  139. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/query_bar/__init__.py +0 -0
  140. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/query_bar/query_bar.py +0 -0
  141. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/components/query_bar/query_bar_keymapper.py +0 -0
  142. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/__init__.py +0 -0
  143. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/array/__init__.py +0 -0
  144. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/array/array_end_node.py +0 -0
  145. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/array/array_end_widget.py +0 -0
  146. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/array/array_node.py +0 -0
  147. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/array/array_start_widget.py +0 -0
  148. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/array/array_unexpanded_widget.py +0 -0
  149. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/json_composite_end_node.py +0 -0
  150. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/json_composite_node.py +0 -0
  151. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/json_listbox.py +0 -0
  152. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/json_listwalker.py +0 -0
  153. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/json_simple_node.py +0 -0
  154. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/json_widget.py +0 -0
  155. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/node_factory.py +0 -0
  156. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/object/__init__.py +0 -0
  157. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/object/object_end_node.py +0 -0
  158. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/object/object_end_widget.py +0 -0
  159. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/object/object_node.py +0 -0
  160. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/object/object_start_widget.py +0 -0
  161. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/object/object_unexpanded_widget.py +0 -0
  162. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/__init__.py +0 -0
  163. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/base.py +0 -0
  164. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/boolean.py +0 -0
  165. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/generic.py +0 -0
  166. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/integer.py +0 -0
  167. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/null.py +0 -0
  168. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/numeric.py +0 -0
  169. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/primitive/string.py +0 -0
  170. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/json_lib/selector/__init__.py +0 -0
  171. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/keymapper/__init__.py +0 -0
  172. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/keymapper/abstract_component_keymapper.py +0 -0
  173. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/keymapper/keymapper.py +0 -0
  174. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/keymapper/keymapper_config.py +0 -0
  175. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/keymapper/keymapper_config_parser.py +0 -0
  176. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/theme/__init__.py +0 -0
  177. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/theme/theme.py +0 -0
  178. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/theme/theme_config.py +0 -0
  179. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/theme/theme_config_parser.py +0 -0
  180. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/view_config.py +0 -0
  181. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/view_frame.py +0 -0
  182. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pyfx/view/view_manager.py +0 -0
  183. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pynput_recorder.py +0 -0
  184. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pypi_inspection.py +0 -0
  185. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/pytorch_module_explorer.py +0 -0
  186. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/refactor/string_format/__init__.py +0 -0
  187. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/refactor/string_format/format_to_fstring_converter.py +0 -0
  188. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/refactor/string_format/fstring_converter.py +0 -0
  189. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/refactor/string_format/test_format_to_fstring_converter.py +0 -0
  190. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/refactor/string_format/test_fstring_converter.py +0 -0
  191. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/rp_black_macchiato.py +0 -0
  192. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/stamp_tensor.py +0 -0
  193. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/stdin_python_highlighter.py +0 -0
  194. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/__init__.py +0 -0
  195. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/__main__.py +0 -0
  196. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/__init__.py +0 -0
  197. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/canvas.py +0 -0
  198. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/colors.py +0 -0
  199. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/console.py +0 -0
  200. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/funcs.py +0 -0
  201. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/nbinput.py +0 -0
  202. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/shapes.py +0 -0
  203. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/graphics/graphics/sprite.py +0 -0
  204. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/letters.py +0 -0
  205. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tetris/tetrisShapes.py +0 -0
  206. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/__init__.py +0 -0
  207. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/__main__.py +0 -0
  208. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/argparser.py +0 -0
  209. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/meta.py +0 -0
  210. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/methods/__init__.py +0 -0
  211. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/methods/ansi.py +0 -0
  212. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/methods/ansi_methods.py +0 -0
  213. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/methods/ascii.py +0 -0
  214. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/methods/method.py +0 -0
  215. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/methods/sixel.py +0 -0
  216. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/timg/renderer.py +0 -0
  217. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/torch_hooks.py +0 -0
  218. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/torch_tools.py +0 -0
  219. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tracetraptest.py +0 -0
  220. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/tweenline.py +0 -0
  221. {rp-0.1.1384 → rp-0.1.1386}/rp/libs/webeval_dataset.py +0 -0
  222. {rp-0.1.1384 → rp-0.1.1386}/rp/list_of_modules.py +0 -0
  223. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/Todo +0 -0
  224. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/__init__.py +0 -0
  225. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/blm.py +0 -0
  226. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/chainsaw.py +0 -0
  227. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/claude_bash.sh +0 -0
  228. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/claude_panel.py +0 -0
  229. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/death_of_the_mind.py +0 -0
  230. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/flappy.py +0 -0
  231. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/mario.py +0 -0
  232. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/matrix.py +0 -0
  233. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/mpi_untitled.py +0 -0
  234. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/py2048.py +0 -0
  235. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/pychess.py +0 -0
  236. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/rp_logo.svg +0 -0
  237. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/rp_mpi.py +0 -0
  238. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/ryan_zshrc.py +0 -0
  239. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/shotgun.py +0 -0
  240. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/skia_trail_interactive_paint_demo.py +0 -0
  241. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/snake.py +0 -0
  242. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/sudoku.py +0 -0
  243. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/tetris.py +0 -0
  244. {rp-0.1.1384 → rp-0.1.1386}/rp/misc/trans.py +0 -0
  245. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/__init__.py +0 -0
  246. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/application.py +0 -0
  247. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/auto_suggest.py +0 -0
  248. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/buffer.py +0 -0
  249. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/buffer_mapping.py +0 -0
  250. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/cache.py +0 -0
  251. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/clipboard/__init__.py +0 -0
  252. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/clipboard/base.py +0 -0
  253. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/clipboard/in_memory.py +0 -0
  254. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/clipboard/pyperclip.py +0 -0
  255. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/completion.py +0 -0
  256. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/__init__.py +0 -0
  257. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/completers/__init__.py +0 -0
  258. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/completers/base.py +0 -0
  259. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/completers/filesystem.py +0 -0
  260. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/completers/system.py +0 -0
  261. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/regular_languages/__init__.py +0 -0
  262. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/regular_languages/compiler.py +0 -0
  263. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/regular_languages/completion.py +0 -0
  264. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/regular_languages/lexer.py +0 -0
  265. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/regular_languages/regex_parser.py +0 -0
  266. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/regular_languages/validation.py +0 -0
  267. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/telnet/__init__.py +0 -0
  268. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/telnet/application.py +0 -0
  269. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/telnet/log.py +0 -0
  270. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/telnet/protocol.py +0 -0
  271. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/telnet/server.py +0 -0
  272. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/validators/__init__.py +0 -0
  273. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/contrib/validators/base.py +0 -0
  274. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/document.py +0 -0
  275. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/enums.py +0 -0
  276. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/__init__.py +0 -0
  277. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/asyncio_base.py +0 -0
  278. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/asyncio_posix.py +0 -0
  279. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/asyncio_win32.py +0 -0
  280. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/base.py +0 -0
  281. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/callbacks.py +0 -0
  282. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/inputhook.py +0 -0
  283. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/posix.py +0 -0
  284. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/posix_utils.py +0 -0
  285. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/select.py +0 -0
  286. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/utils.py +0 -0
  287. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/eventloop/win32.py +0 -0
  288. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/filters/__init__.py +0 -0
  289. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/filters/base.py +0 -0
  290. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/filters/cli.py +0 -0
  291. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/filters/types.py +0 -0
  292. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/filters/utils.py +0 -0
  293. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/history.py +0 -0
  294. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/input.py +0 -0
  295. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/interface.py +0 -0
  296. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/__init__.py +0 -0
  297. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/__init__.py +0 -0
  298. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/basic.py +0 -0
  299. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/completion.py +0 -0
  300. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/emacs.py +0 -0
  301. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/named_commands.py +0 -0
  302. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/scroll.py +0 -0
  303. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/bindings/vi.py +0 -0
  304. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/defaults.py +0 -0
  305. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/digraphs.py +0 -0
  306. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/input_processor.py +0 -0
  307. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/manager.py +0 -0
  308. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/registry.py +0 -0
  309. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/key_binding/vi_state.py +0 -0
  310. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/keys.py +0 -0
  311. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/__init__.py +0 -0
  312. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/containers.py +0 -0
  313. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/controls.py +0 -0
  314. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/dimension.py +0 -0
  315. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/lexers.py +0 -0
  316. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/margins.py +0 -0
  317. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/menus.py +0 -0
  318. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/mouse_handlers.py +0 -0
  319. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/processors.py +0 -0
  320. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/prompt.py +0 -0
  321. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/screen.py +0 -0
  322. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/toolbars.py +0 -0
  323. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/untitled.py +0 -0
  324. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/layout/utils.py +0 -0
  325. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/mouse_events.py +0 -0
  326. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/output.py +0 -0
  327. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/reactive.py +0 -0
  328. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/renderer.py +0 -0
  329. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/search_state.py +0 -0
  330. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/selection.py +0 -0
  331. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/shortcuts.py +0 -0
  332. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/styles/__init__.py +0 -0
  333. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/styles/base.py +0 -0
  334. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/styles/defaults.py +0 -0
  335. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/styles/from_dict.py +0 -0
  336. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/styles/from_pygments.py +0 -0
  337. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/styles/utils.py +0 -0
  338. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/terminal/__init__.py +0 -0
  339. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/terminal/conemu_output.py +0 -0
  340. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/terminal/vt100_input.py +0 -0
  341. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/terminal/vt100_output.py +0 -0
  342. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/terminal/win32_input.py +0 -0
  343. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/terminal/win32_output.py +0 -0
  344. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/token.py +0 -0
  345. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/utils.py +0 -0
  346. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/validation.py +0 -0
  347. {rp-0.1.1384 → rp-0.1.1386}/rp/prompt_toolkit/win32_types.py +0 -0
  348. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/__init__.py +0 -0
  349. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/__main__.py +0 -0
  350. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/ast_selection.py +0 -0
  351. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/async_analyzer_base.py +0 -0
  352. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/async_jedi_highlighter.py +0 -0
  353. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/backslash_commands.py +0 -0
  354. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/bash_completer.py +0 -0
  355. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/bash_extract.py +0 -0
  356. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/bash_inline.py +0 -0
  357. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/bash_rename.py +0 -0
  358. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/bash_selection.py +0 -0
  359. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/completer.py +0 -0
  360. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/completer_old.py +0 -0
  361. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/completion_ranker.py +0 -0
  362. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/completion_schema.py +0 -0
  363. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/completion_types.py +0 -0
  364. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/eventloop.py +0 -0
  365. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/filters.py +0 -0
  366. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/history_browser.py +0 -0
  367. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/ipython.py +0 -0
  368. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/jedi_highlighter.py +0 -0
  369. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/jedi_lexer.py +0 -0
  370. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/jedi_utils.py +0 -0
  371. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/key_bindings.py +0 -0
  372. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/layout.py +0 -0
  373. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/patch_linecache.py +0 -0
  374. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/path_completer_utils.py +0 -0
  375. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/prompt_style.py +0 -0
  376. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/python_input.py +0 -0
  377. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/r_iterm_comm.py +0 -0
  378. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/refactor_extract.py +0 -0
  379. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/refactor_inline.py +0 -0
  380. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/refactor_move.py +0 -0
  381. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/refactor_move_bash.py +0 -0
  382. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/refactor_rename.py +0 -0
  383. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/repl.py +0 -0
  384. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/__init__.py +0 -0
  385. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/commands.py +0 -0
  386. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/completers.py +0 -0
  387. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/completion_hints.py +0 -0
  388. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/grammar.py +0 -0
  389. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/key_bindings.py +0 -0
  390. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/layout.py +0 -0
  391. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/style.py +0 -0
  392. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/rp_ptpdb/toolbars.py +0 -0
  393. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/selection_utils.py +0 -0
  394. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/style.py +0 -0
  395. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/testable_keybindings.py +0 -0
  396. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/treesitter_selection.py +0 -0
  397. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/treesitter_semantic.py +0 -0
  398. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/unreachable_detector.py +0 -0
  399. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/utils.py +0 -0
  400. {rp-0.1.1384 → rp-0.1.1386}/rp/rp_ptpython/validator.py +0 -0
  401. {rp-0.1.1384 → rp-0.1.1386}/rp/ryan_vimrc.py +0 -0
  402. {rp-0.1.1384 → rp-0.1.1386}/rp/web_evaluator.py +0 -0
  403. {rp-0.1.1384 → rp-0.1.1386}/rp.egg-info/SOURCES.txt +0 -0
  404. {rp-0.1.1384 → rp-0.1.1386}/rp.egg-info/dependency_links.txt +0 -0
  405. {rp-0.1.1384 → rp-0.1.1386}/rp.egg-info/entry_points.txt +0 -0
  406. {rp-0.1.1384 → rp-0.1.1386}/rp.egg-info/requires.txt +0 -0
  407. {rp-0.1.1384 → rp-0.1.1386}/rp.egg-info/top_level.txt +0 -0
  408. {rp-0.1.1384 → rp-0.1.1386}/setup.cfg +0 -0
  409. {rp-0.1.1384 → rp-0.1.1386}/setup.py +0 -0
  410. {rp-0.1.1384 → rp-0.1.1386}/untitled.c +0 -0
  411. {rp-0.1.1384 → rp-0.1.1386}/update_module_paths.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.0
2
2
  Name: rp
3
- Version: 0.1.1384
3
+ Version: 0.1.1386
4
4
  Summary: Ryan's Python: IDE + Library + Tools
5
5
  Home-page: https://github.com/RyannDaGreat/rp
6
6
  Author: Ryan Burgert
@@ -187,10 +187,12 @@ def run_orchestrator(
187
187
  from googleapiclient.discovery import build
188
188
  drive_service = build('drive', 'v3', credentials=creds)
189
189
 
190
- # Create folder
191
- folder_id = gsu.create_folder(drive_service, folder_name)
190
+ # Create folder under rp/generated_slides/
191
+ parent_id = gsu.get_rp_slides_folder(drive_service)
192
+ folder_id = gsu.create_folder(drive_service, folder_name, parent_id)
192
193
  folder_url = f"https://drive.google.com/drive/folders/{folder_id}"
193
- rp.fansi_print(f" Folder: {folder_url}", 'white')
194
+ rp.fansi_print(f" Folder: rp/generated_slides/{folder_name}", 'white')
195
+ rp.fansi_print(f" {folder_url}", 'white')
194
196
 
195
197
  # Move parts to folder
196
198
  for r in results:
@@ -89,6 +89,22 @@ def get_credentials(token_path: str = None) -> Credentials:
89
89
  return creds
90
90
 
91
91
 
92
+ def get_or_create_folder(service, folder_name: str, parent_id: str = None) -> str:
93
+ """Get existing folder by name or create it. Returns folder ID."""
94
+ query = f"name='{folder_name}' and mimeType='application/vnd.google-apps.folder' and trashed=false"
95
+ if parent_id:
96
+ query += f" and '{parent_id}' in parents"
97
+ else:
98
+ query += " and 'root' in parents"
99
+
100
+ results = service.files().list(q=query, fields='files(id)').execute()
101
+ files = results.get('files', [])
102
+ if files:
103
+ return files[0]['id']
104
+
105
+ return create_folder(service, folder_name, parent_id)
106
+
107
+
92
108
  def create_folder(service, folder_name: str, parent_id: str = None) -> str:
93
109
  """Create a folder on Google Drive. Returns folder ID."""
94
110
  metadata = {
@@ -102,6 +118,12 @@ def create_folder(service, folder_name: str, parent_id: str = None) -> str:
102
118
  return folder.get('id')
103
119
 
104
120
 
121
+ def get_rp_slides_folder(service) -> str:
122
+ """Get or create the rp/generated_slides folder hierarchy. Returns folder ID."""
123
+ rp_folder = get_or_create_folder(service, 'rp')
124
+ return get_or_create_folder(service, 'generated_slides', rp_folder)
125
+
126
+
105
127
  def make_public(service, file_id: str) -> str:
106
128
  """
107
129
  Make a file publicly viewable by anyone with the link.
@@ -332,8 +354,10 @@ def upload_and_merge_pptx(
332
354
  creds = get_credentials()
333
355
  drive_service = build('drive', 'v3', credentials=creds)
334
356
 
335
- # Create folder
336
- rp.fansi_print(f"\nCreating folder: {folder_name}", 'cyan')
357
+ # Create folder under rp/generated_slides/
358
+ if parent_folder_id is None:
359
+ parent_folder_id = get_rp_slides_folder(drive_service)
360
+ rp.fansi_print(f"\nCreating folder: rp/generated_slides/{folder_name}", 'cyan')
337
361
  folder_id = create_folder(drive_service, folder_name, parent_folder_id)
338
362
  folder_url = f"https://drive.google.com/drive/folders/{folder_id}"
339
363
  rp.fansi_print(f" {folder_url}", 'white')
@@ -36,6 +36,7 @@ try:
36
36
  get_credentials,
37
37
  create_folder,
38
38
  make_public,
39
+ get_rp_slides_folder,
39
40
  )
40
41
  except ImportError:
41
42
  from google_slides_upload import (
@@ -45,6 +46,7 @@ except ImportError:
45
46
  get_credentials,
46
47
  create_folder,
47
48
  make_public,
49
+ get_rp_slides_folder,
48
50
  )
49
51
 
50
52
 
@@ -138,6 +140,39 @@ def is_media_path(x) -> bool:
138
140
  return ext in IMAGE_EXTENSIONS or ext in VIDEO_EXTENSIONS
139
141
 
140
142
 
143
+ def _parse_labeled_dict(d: dict) -> tuple[list, list]:
144
+ """Parse {label: path} dict. Returns (paths, labels) or raises if backwards."""
145
+ labels = []
146
+ paths = []
147
+ for label, path in d.items():
148
+ if is_media_path(path):
149
+ labels.append(label)
150
+ paths.append(path)
151
+ if not paths and d:
152
+ first_key = next(iter(d.keys()))
153
+ if is_media_path(first_key):
154
+ raise ValueError(
155
+ f"Dict has paths as keys, but expected {{label: path}}. "
156
+ f"Got {{{repr(first_key)}: ...}}. Flip your dict."
157
+ )
158
+ return paths, labels
159
+
160
+
161
+ def _parse_content(content, title=None) -> dict | None:
162
+ """Parse content into a slide dict, or None if no valid paths."""
163
+ if is_media_path(content):
164
+ return {"paths": [content], "title": title, "labels": None}
165
+ if isinstance(content, dict):
166
+ paths, labels = _parse_labeled_dict(content)
167
+ if paths:
168
+ return {"paths": paths, "title": title, "labels": labels}
169
+ elif rp.is_non_str_iterable(content):
170
+ paths = [p for p in content if is_media_path(p)]
171
+ if paths:
172
+ return {"paths": paths, "title": title, "labels": None}
173
+ return None
174
+
175
+
141
176
  def normalize_slides_input(layout) -> list[dict]:
142
177
  """
143
178
  Normalize flexible input formats into list of slide dicts.
@@ -151,58 +186,22 @@ def normalize_slides_input(layout) -> list[dict]:
151
186
  - Dict with nested labels: {'Slide 1': {'vid': 'a.mp4', 'img': 'b.png'}}
152
187
  - Single path: 'a.mp4'
153
188
  """
154
- # Single path
155
189
  if is_media_path(layout):
156
190
  return [{"paths": [layout], "title": None, "labels": None}]
157
191
 
158
- # Dict with slide titles
159
192
  if isinstance(layout, dict):
160
193
  result = []
161
194
  for title, content in layout.items():
162
- if is_media_path(content):
163
- result.append(
164
- {"paths": [content], "title": title, "labels": None}
165
- )
166
- elif isinstance(content, dict):
167
- # {'label1': 'path1', 'label2': 'path2'}
168
- labels = []
169
- paths = []
170
- for label, path in content.items():
171
- if is_media_path(path):
172
- labels.append(label)
173
- paths.append(path)
174
- if paths:
175
- result.append(
176
- {"paths": paths, "title": title, "labels": labels}
177
- )
178
- elif rp.is_non_str_iterable(content):
179
- paths = [p for p in content if is_media_path(p)]
180
- if paths:
181
- result.append(
182
- {"paths": paths, "title": title, "labels": None}
183
- )
195
+ slide = _parse_content(content, title)
196
+ if slide:
197
+ result.append(slide)
184
198
  return result
185
199
 
186
- # List input
187
200
  result = []
188
201
  for item in layout:
189
- if isinstance(item, dict):
190
- # Dict slide: {'label': 'path', ...}
191
- labels = []
192
- paths = []
193
- for label, path in item.items():
194
- if is_media_path(path):
195
- labels.append(label)
196
- paths.append(path)
197
- if paths:
198
- result.append({"paths": paths, "title": None, "labels": labels})
199
- elif rp.is_non_str_iterable(item):
200
- paths = [p for p in item if is_media_path(p)]
201
- if paths:
202
- result.append({"paths": paths, "title": None, "labels": None})
203
- elif is_media_path(item):
204
- result.append({"paths": [item], "title": None, "labels": None})
205
-
202
+ slide = _parse_content(item)
203
+ if slide:
204
+ result.append(slide)
206
205
  return result
207
206
 
208
207
 
@@ -685,7 +684,12 @@ def media_to_slides(
685
684
  all_paths.append(path)
686
685
 
687
686
  if not all_paths:
688
- raise ValueError("No media files provided")
687
+ raise ValueError(
688
+ f"No media files found in layout. "
689
+ f"Got {len(slides)} slides but no valid paths. "
690
+ f"Layout type: {type(layout).__name__}, "
691
+ f"Input: {repr(layout)[:500]}"
692
+ )
689
693
 
690
694
  if folder_name is None:
691
695
  folder_name = f"Media_{time.strftime('%Y%m%d_%H%M%S')}"
@@ -704,8 +708,9 @@ def media_to_slides(
704
708
  drive_service = build("drive", "v3", credentials=creds)
705
709
  slides_service = build("slides", "v1", credentials=creds)
706
710
 
707
- rp.fansi_print(f"\nCreating folder: {folder_name}", "cyan")
708
- folder_id = create_folder(drive_service, folder_name)
711
+ rp.fansi_print(f"\nCreating folder: rp/generated_slides/{folder_name}", "cyan")
712
+ parent_id = get_rp_slides_folder(drive_service)
713
+ folder_id = create_folder(drive_service, folder_name, parent_id)
709
714
  folder_url = FOLDER_URL.format(folder_id)
710
715
  rp.fansi_print(f" {folder_url}", "white")
711
716
 
@@ -865,7 +870,10 @@ def cli(
865
870
  media_paths.append(p)
866
871
 
867
872
  if not media_paths:
868
- raise ValueError("No media files found")
873
+ raise ValueError(
874
+ f"No media files found. Searched {len(paths)} paths. "
875
+ f"Supported formats: {', '.join(MEDIA_EXTENSIONS)}"
876
+ )
869
877
 
870
878
  # Split into grids if requested
871
879
  if per_slide is not None:
@@ -13748,7 +13748,7 @@ def invert_dict(d: dict, bijection=True, precedence='last') -> dict:
13748
13748
  items = list(d.items())
13749
13749
  if precedence=='first':
13750
13750
  items = items[::-1]
13751
- return {v:k for v,k in items}
13751
+ return {v:k for k,v in items}
13752
13752
  else:
13753
13753
  # {0: 'a', 1: 'a', 2: 'b'} ⟶ {'a': (0,1), 'b': (2,)}
13754
13754
  out={}
@@ -0,0 +1 @@
1
+ 1386
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.0
2
2
  Name: rp
3
- Version: 0.1.1384
3
+ Version: 0.1.1386
4
4
  Summary: Ryan's Python: IDE + Library + Tools
5
5
  Home-page: https://github.com/RyannDaGreat/rp
6
6
  Author: Ryan Burgert
rp-0.1.1386/version.py ADDED
@@ -0,0 +1 @@
1
+ 1386
rp-0.1.1384/rp/version.py DELETED
@@ -1 +0,0 @@
1
- 1384
rp-0.1.1384/version.py DELETED
@@ -1 +0,0 @@
1
- 1384
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
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
File without changes
File without changes
File without changes