mayutils 1.2.28__tar.gz → 1.2.30__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 (65) hide show
  1. {mayutils-1.2.28 → mayutils-1.2.30}/PKG-INFO +1 -1
  2. {mayutils-1.2.28 → mayutils-1.2.30}/pyproject.toml +2 -2
  3. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/datetime.py +47 -0
  4. {mayutils-1.2.28 → mayutils-1.2.30}/LICENSE +0 -0
  5. {mayutils-1.2.28 → mayutils-1.2.30}/README.md +0 -0
  6. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/__init__.py +0 -0
  7. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/core/__init__.py +0 -0
  8. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/core/constants.py +0 -0
  9. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/__init__.py +0 -0
  10. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/analysis/__init__.py +0 -0
  11. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/cache/.gitkeep +0 -0
  12. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/live.py +0 -0
  13. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/local.py +0 -0
  14. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/queries/.gitkeep +0 -0
  15. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/queries/__init__.py +0 -0
  16. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/queries/examples/.gitkeep +0 -0
  17. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/data/read.py +0 -0
  18. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/__init__.py +0 -0
  19. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/benchmarking.py +0 -0
  20. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/databases.py +0 -0
  21. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/filesystem.py +0 -0
  22. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/logging.py +0 -0
  23. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/memoisation.py +0 -0
  24. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/oauth.py +0 -0
  25. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/secrets.py +0 -0
  26. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/environment/webdrivers.py +0 -0
  27. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/export/__init__.py +0 -0
  28. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/export/images.py +0 -0
  29. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/export/pdf.py +0 -0
  30. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/export/slides.py +0 -0
  31. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/interfaces/__init__.py +0 -0
  32. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/interfaces/google.py +0 -0
  33. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/interfaces/microsoft.py +0 -0
  34. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/interfaces/streamlit.py +0 -0
  35. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/mathematics/__init__.py +0 -0
  36. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/mathematics/numba.py +0 -0
  37. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/mathematics/numpy.py +0 -0
  38. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/__init__.py +0 -0
  39. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/classes.py +0 -0
  40. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/colours.py +0 -0
  41. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/dataframes.py +0 -0
  42. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/decorators.py +0 -0
  43. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/dictionaries.py +0 -0
  44. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/functions.py +0 -0
  45. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/hashing.py +0 -0
  46. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/numbers.py +0 -0
  47. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/strings.py +0 -0
  48. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/objects/types.py +0 -0
  49. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/py.typed +0 -0
  50. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/scripts/__init__.py +0 -0
  51. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/scripts/clear_cache.py +0 -0
  52. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/scripts/versioning.py +0 -0
  53. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/testing/__init__.py +0 -0
  54. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/__init__.py +0 -0
  55. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/console.py +0 -0
  56. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/__init__.py +0 -0
  57. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/combine.py +0 -0
  58. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/matplotlib/__init__.py +0 -0
  59. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/matplotlib/template.py +0 -0
  60. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/plotly/__init__.py +0 -0
  61. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/plotly/charts.py +0 -0
  62. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/plotly/templates.py +0 -0
  63. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/plotly/traces.py +0 -0
  64. {mayutils-1.2.28 → mayutils-1.2.30}/src/mayutils/visualisation/graphs/plotly/utilities.py +0 -0
  65. {mayutils-1.2.28 → mayutils-1.2.30}/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.28
3
+ Version: 1.2.30
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.28"
3
+ version = "1.2.30"
4
4
  description = "Utilities for Python from Mayuran Visakan"
5
5
  authors = [
6
6
  { name = "Mayuran Visakan", email = "mayuran.k.v@gmail.com" }
@@ -104,7 +104,7 @@ venv = ".venv"
104
104
 
105
105
  [tool.mypy]
106
106
  explicit_package_bases = true
107
-
107
+ mypy_path = "./typings"
108
108
 
109
109
  [build-system]
110
110
  requires = ["uv_build>=0.8.14,<0.9.0"]
@@ -121,6 +121,16 @@ class Date(BaseDate):
121
121
  day=date.day,
122
122
  )
123
123
 
124
+ @property
125
+ def simple(
126
+ self,
127
+ ) -> _datetime.date:
128
+ return _datetime.date(
129
+ year=self.year,
130
+ month=self.month,
131
+ day=self.day,
132
+ )
133
+
124
134
  @classmethod
125
135
  def parse(
126
136
  cls,
@@ -184,6 +194,17 @@ class Time(BaseTime):
184
194
  tz=tz,
185
195
  )
186
196
 
197
+ @property
198
+ def simple(
199
+ self,
200
+ ) -> _datetime.time:
201
+ return _datetime.time(
202
+ hour=self.hour,
203
+ minute=self.minute,
204
+ second=self.second,
205
+ microsecond=self.microsecond,
206
+ )
207
+
187
208
  @classmethod
188
209
  def parse(
189
210
  cls,
@@ -570,6 +591,32 @@ class Interval(BaseInterval):
570
591
  )
571
592
  )
572
593
 
594
+ @property
595
+ def as_date_slice(
596
+ self,
597
+ ) -> slice:
598
+ return (
599
+ slice(
600
+ self.start.date().simple,
601
+ self.end.date().simple,
602
+ )
603
+ if not self._invert
604
+ else slice(
605
+ self.end.date().simple,
606
+ self.start.date().simple,
607
+ )
608
+ )
609
+
610
+ def to_interval_string(
611
+ self,
612
+ datetime: bool = False,
613
+ ) -> str:
614
+ return (
615
+ f"{self.start.to_datetime_string()} to {self.end.to_datetime_string()}"
616
+ if datetime
617
+ else f"{self.start.to_date_string()} to {self.end.to_date_string()}"
618
+ )
619
+
573
620
 
574
621
  class Intervals(object):
575
622
  def __init__(
File without changes
File without changes