mayutils 1.2.48__tar.gz → 1.2.49__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 (66) hide show
  1. {mayutils-1.2.48 → mayutils-1.2.49}/PKG-INFO +1 -1
  2. {mayutils-1.2.48 → mayutils-1.2.49}/pyproject.toml +1 -1
  3. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/interfaces/microsoft.py +36 -0
  4. {mayutils-1.2.48 → mayutils-1.2.49}/LICENSE +0 -0
  5. {mayutils-1.2.48 → mayutils-1.2.49}/README.md +0 -0
  6. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/__init__.py +0 -0
  7. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/core/__init__.py +0 -0
  8. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/core/constants.py +0 -0
  9. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/__init__.py +0 -0
  10. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/analysis/__init__.py +0 -0
  11. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/cache/.gitkeep +0 -0
  12. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/live.py +0 -0
  13. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/local.py +0 -0
  14. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/queries/.gitkeep +0 -0
  15. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/queries/__init__.py +0 -0
  16. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/queries/examples/.gitkeep +0 -0
  17. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/data/read.py +0 -0
  18. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/__init__.py +0 -0
  19. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/benchmarking.py +0 -0
  20. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/databases.py +0 -0
  21. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/filesystem.py +0 -0
  22. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/logging.py +0 -0
  23. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/memoisation.py +0 -0
  24. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/oauth.py +0 -0
  25. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/secrets.py +0 -0
  26. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/environment/webdrivers.py +0 -0
  27. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/export/__init__.py +0 -0
  28. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/export/html.py +0 -0
  29. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/export/images.py +0 -0
  30. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/export/pdf.py +0 -0
  31. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/export/slides.py +0 -0
  32. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/interfaces/__init__.py +0 -0
  33. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/interfaces/google.py +0 -0
  34. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/interfaces/streamlit.py +0 -0
  35. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/mathematics/__init__.py +0 -0
  36. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/mathematics/numba.py +0 -0
  37. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/mathematics/numpy.py +0 -0
  38. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/__init__.py +0 -0
  39. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/classes.py +0 -0
  40. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/colours.py +0 -0
  41. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/dataframes.py +0 -0
  42. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/datetime.py +0 -0
  43. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/decorators.py +0 -0
  44. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/dictionaries.py +0 -0
  45. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/functions.py +0 -0
  46. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/hashing.py +0 -0
  47. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/numbers.py +0 -0
  48. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/strings.py +0 -0
  49. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/objects/types.py +0 -0
  50. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/py.typed +0 -0
  51. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/scripts/__init__.py +0 -0
  52. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/scripts/clear_cache.py +0 -0
  53. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/scripts/versioning.py +0 -0
  54. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/testing/__init__.py +0 -0
  55. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/__init__.py +0 -0
  56. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/console.py +0 -0
  57. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/__init__.py +0 -0
  58. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/combine.py +0 -0
  59. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/matplotlib/__init__.py +0 -0
  60. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/matplotlib/template.py +0 -0
  61. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/plotly/__init__.py +0 -0
  62. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/plotly/charts.py +0 -0
  63. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/plotly/templates.py +0 -0
  64. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/plotly/traces.py +0 -0
  65. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/graphs/plotly/utilities.py +0 -0
  66. {mayutils-1.2.48 → mayutils-1.2.49}/src/mayutils/visualisation/notebook.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: mayutils
3
- Version: 1.2.48
3
+ Version: 1.2.49
4
4
  Summary: Utilities for Python from Mayuran Visakan
5
5
  Author: Mayuran Visakan
6
6
  Author-email: Mayuran Visakan <mayuran.k.v@gmail.com>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "mayutils"
3
- version = "1.2.48"
3
+ version = "1.2.49"
4
4
  description = "Utilities for Python from Mayuran Visakan"
5
5
  authors = [
6
6
  { name = "Mayuran Visakan", email = "mayuran.k.v@gmail.com" }
@@ -1,3 +1,4 @@
1
+ from __future__ import annotations
1
2
  from pathlib import Path
2
3
  from typing import Optional, Self
3
4
  from pptx import Presentation as Init
@@ -19,6 +20,32 @@ class Length(BaseLength):
19
20
  return cls(value) # type: ignore
20
21
 
21
22
 
23
+ class SlideContext:
24
+ def __init__(
25
+ self,
26
+ presentation: Presentation,
27
+ layout: Optional[SlideLayout] = None,
28
+ ) -> None:
29
+ self.presentation = presentation
30
+ self.layout = layout if layout is not None else presentation.blank_layout
31
+
32
+ def __enter__(
33
+ self,
34
+ ) -> Slide:
35
+ self.presentation.new_slide(layout=self.layout)
36
+ return self.presentation.slides[-1]
37
+
38
+ def __exit__(
39
+ self,
40
+ exc_type,
41
+ exc_value,
42
+ traceback,
43
+ ) -> None:
44
+ if exc_type is not None:
45
+ self.presentation.delete_slide(slide_number=len(self.presentation.slides))
46
+ raise exc_value
47
+
48
+
22
49
  class Presentation:
23
50
  def __init__(
24
51
  self,
@@ -128,6 +155,15 @@ class Presentation:
128
155
 
129
156
  return self
130
157
 
158
+ def enter_new_slide(
159
+ self,
160
+ layout: Optional[SlideLayout] = None,
161
+ ) -> SlideContext:
162
+ return SlideContext(
163
+ presentation=self,
164
+ layout=layout,
165
+ )
166
+
131
167
  def empty(
132
168
  self,
133
169
  ) -> Self:
File without changes
File without changes