hungerlib 3.7.2__tar.gz → 3.8__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 (30) hide show
  1. {hungerlib-3.7.2/src/hungerlib.egg-info → hungerlib-3.8}/PKG-INFO +1 -1
  2. {hungerlib-3.7.2 → hungerlib-3.8}/pyproject.toml +1 -1
  3. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/datamap.py +23 -36
  4. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/messagerouter.py +20 -20
  5. {hungerlib-3.7.2 → hungerlib-3.8/src/hungerlib.egg-info}/PKG-INFO +1 -1
  6. {hungerlib-3.7.2 → hungerlib-3.8}/LICENSE +0 -0
  7. {hungerlib-3.7.2 → hungerlib-3.8}/README.md +0 -0
  8. {hungerlib-3.7.2 → hungerlib-3.8}/setup.cfg +0 -0
  9. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/__init__.py +0 -0
  10. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/__init__.py +0 -0
  11. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/backups.py +0 -0
  12. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/command.py +0 -0
  13. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/databases.py +0 -0
  14. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/filemanager.py +0 -0
  15. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/schedule.py +0 -0
  16. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/api/startup.py +0 -0
  17. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/bridgeclient.py +0 -0
  18. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/configloader.py +0 -0
  19. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/panel.py +0 -0
  20. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/servers/__init__.py +0 -0
  21. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/servers/generic.py +0 -0
  22. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/servers/minecraft.py +0 -0
  23. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/utils/__init__.py +0 -0
  24. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/utils/colormaps.py +0 -0
  25. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/utils/time.py +0 -0
  26. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib/utils/utils.py +0 -0
  27. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib.egg-info/SOURCES.txt +0 -0
  28. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib.egg-info/dependency_links.txt +0 -0
  29. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib.egg-info/requires.txt +0 -0
  30. {hungerlib-3.7.2 → hungerlib-3.8}/src/hungerlib.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hungerlib
3
- Version: 3.7.2
3
+ Version: 3.8
4
4
  Summary: Powerful automation library for Pterodactyl.
5
5
  Author: iFamished
6
6
  License: MIT
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
7
7
 
8
8
  [project]
9
9
  name = "hungerlib"
10
- version = "3.7.2"
10
+ version = "3.8"
11
11
  description = "Powerful automation library for Pterodactyl."
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.9"
@@ -1,20 +1,20 @@
1
1
  import re
2
2
  from dataclasses import dataclass, fields, is_dataclass
3
3
 
4
- _default_maps = []
4
+ _GLOBAL_MAPS = []
5
5
 
6
- def set_default_maps(*maps):
7
- global _default_maps
8
- _default_maps = list(maps)
6
+ def setGlobalMaps(*maps):
7
+ global _GLOBAL_MAPS
8
+ _GLOBAL_MAPS = list(maps)
9
9
 
10
- def get_default_maps():
11
- return _default_maps
10
+ def getGlobalMaps():
11
+ return _GLOBAL_MAPS
12
12
 
13
13
  class Syntax:
14
- braces = r"\{([^{}]+)\}"
15
- dollars = r"\$\{([^{}]+)\}"
16
- angles = r"<([^<>]+)>"
17
- percents = r"%([^%]+)%"
14
+ braces = r"\{([^{}]+)\}" # {example}
15
+ dollars = r"\$\{([^{}]+)\}" # ${example}
16
+ angles = r"<([^<>]+)>" # <example>
17
+ percents = r"%([^%]+)%" # %example%
18
18
 
19
19
  @dataclass
20
20
  class DataMap:
@@ -48,29 +48,17 @@ datamap.angles = datamap(syntax=Syntax.angles)
48
48
  datamap.dollars = datamap(syntax=Syntax.dollars)
49
49
  datamap.percents = datamap(syntax=Syntax.percents)
50
50
 
51
- def mapit(text: str, *maps, only_maps=None, disable=None, enable=None, **runtime):
52
- # 1. FULL OVERRIDE MODE
53
- if only_maps is not None:
54
- maps_to_use = list(only_maps)
55
-
51
+ def mapit(text: str, extra_maps=None, override_maps=None, **ctx):
52
+ # Determine maps to use
53
+ if override_maps is not None:
54
+ maps = list(override_maps)
56
55
  else:
57
- # 2. Start with default maps
58
- maps_to_use = list(get_default_maps())
59
-
60
- # 3. Remove disabled maps
61
- if disable:
62
- maps_to_use = [m for m in maps_to_use if m not in disable]
63
-
64
- # 4. Add positional maps
65
- if maps:
66
- maps_to_use.extend(maps)
56
+ maps = list(getGlobalMaps())
57
+ if extra_maps:
58
+ maps.extend(extra_maps)
67
59
 
68
- # 5. Add enabled maps
69
- if enable:
70
- maps_to_use.extend(enable)
71
-
72
- # 6. Apply maps in order
73
- for m in maps_to_use:
60
+ # Apply maps in order
61
+ for m in maps:
74
62
  if isinstance(m, type) and is_dataclass(m):
75
63
  m = m()
76
64
 
@@ -83,7 +71,7 @@ def mapit(text: str, *maps, only_maps=None, disable=None, enable=None, **runtime
83
71
  d = m.as_dict()
84
72
 
85
73
  elif isinstance(m, dict):
86
- pattern = runtime.get("syntax")
74
+ pattern = ctx.get("syntax")
87
75
  if not pattern:
88
76
  continue
89
77
  d = m
@@ -97,10 +85,10 @@ def mapit(text: str, *maps, only_maps=None, disable=None, enable=None, **runtime
97
85
 
98
86
  text = re.sub(pattern, repl, text)
99
87
 
100
- # 7. Runtime kwargs always apply last
101
- if runtime:
88
+ # ctx vars always apply last
89
+ if ctx:
102
90
  pattern = Syntax.braces
103
- d = runtime
91
+ d = ctx
104
92
 
105
93
  def repl(match):
106
94
  k = match.group(1)
@@ -109,4 +97,3 @@ def mapit(text: str, *maps, only_maps=None, disable=None, enable=None, **runtime
109
97
  text = re.sub(pattern, repl, text)
110
98
 
111
99
  return text
112
-
@@ -17,7 +17,7 @@ class MessageRouter:
17
17
  file_maps: list = [STRIP_COLOR_MAP],
18
18
 
19
19
  info_prefix: str = "<white>[INFO]: ",
20
- warn_prefix: str = "<orange>[WARN]: ",
20
+ warn_prefix: str = "<yellow>[WARN]: ",
21
21
  error_prefix: str = "<red>[ERROR]: ",
22
22
  ):
23
23
 
@@ -55,8 +55,8 @@ class MessageRouter:
55
55
  self.logger.addHandler(handler)
56
56
 
57
57
  # internal utils
58
- def _format(self, template, maps, **ctx):
59
- return mapit(template, only_maps=maps, **ctx)
58
+ def _format(self, text, maps, **ctx):
59
+ return mapit(text, override_maps=maps, **ctx)
60
60
 
61
61
  def _merge_maps(self, base, extra):
62
62
  maps = list(base)
@@ -65,10 +65,10 @@ class MessageRouter:
65
65
  return maps
66
66
 
67
67
  # routing primitives
68
- def origin(self, template, level="info", extra_maps=None, override_maps=None, **ctx):
68
+ def origin(self, text, level="info", extra_maps=None, override_maps=None, **ctx):
69
69
  # format
70
70
  maps = self._merge_maps(override_maps or self.origin_maps, extra_maps)
71
- mapped = self._format(template, maps, **ctx)
71
+ mapped = self._format(text, maps, **ctx)
72
72
  if level == "info": prefix = mapit(self.info_prefix, [ASCII_COLOR_MAP])
73
73
  elif level == "warn": prefix = mapit(self.warn_prefix, [ASCII_COLOR_MAP])
74
74
  elif level == "error": prefix = mapit(self.error_prefix, [ASCII_COLOR_MAP])
@@ -79,10 +79,10 @@ class MessageRouter:
79
79
  print(msg)
80
80
  return msg
81
81
 
82
- def destination(self, template, level="info", extra_maps=None, override_maps=None, **ctx):
82
+ def destination(self, text, level="info", extra_maps=None, override_maps=None, **ctx):
83
83
  # format
84
84
  maps = self._merge_maps(override_maps or self.destination_maps, extra_maps)
85
- msg = self._format(template, maps, **ctx)
85
+ msg = self._format(text, maps, **ctx)
86
86
 
87
87
  # send
88
88
  for server in self.Servers:
@@ -90,10 +90,10 @@ class MessageRouter:
90
90
  server.bridge.log(msg, level)
91
91
  return msg
92
92
 
93
- def broadcast(self, template, extra_maps=None, override_maps=None, **ctx):
93
+ def broadcast(self, text, extra_maps=None, override_maps=None, **ctx):
94
94
  # format
95
95
  maps = self._merge_maps(override_maps or self.broadcast_maps, extra_maps)
96
- msg = self._format(template, maps, **ctx)
96
+ msg = self._format(text, maps, **ctx)
97
97
 
98
98
  # send
99
99
  for server in self.Servers:
@@ -101,10 +101,10 @@ class MessageRouter:
101
101
  server.sendBroadcast(msg)
102
102
  return msg
103
103
 
104
- def filelog(self, template, level="info", extra_maps=None, override_maps=None, **ctx):
104
+ def filelog(self, text, level="info", extra_maps=None, override_maps=None, **ctx):
105
105
  # format
106
106
  maps = self._merge_maps(override_maps or self.file_maps, extra_maps)
107
- msg = self._format(template, maps, **ctx)
107
+ msg = self._format(text, maps, **ctx)
108
108
 
109
109
  # send
110
110
  {
@@ -115,17 +115,17 @@ class MessageRouter:
115
115
  return msg
116
116
 
117
117
  # simple passthrough helpers (origin + file)
118
- def info(self, template, extra_maps=None, override_maps=None, **ctx):
119
- msg = self.origin(template=template, level="info", extra_maps=extra_maps, override_maps=override_maps, **ctx)
120
- self.filelog(template=template, level="info", extra_maps=extra_maps, override_maps=override_maps, **ctx)
118
+ def info(self, text, extra_maps=None, override_maps=None, **ctx):
119
+ msg = self.origin(text=text, level="info", extra_maps=extra_maps, override_maps=override_maps, **ctx)
120
+ self.filelog(text=text, level="info", extra_maps=extra_maps, override_maps=override_maps, **ctx)
121
121
  return msg
122
122
 
123
- def warn(self, template, extra_maps=None, override_maps=None, **ctx):
124
- msg = self.origin(template=template, level="warn", extra_maps=extra_maps, override_maps=override_maps, **ctx)
125
- self.filelog(template=template, level="warn", extra_maps=extra_maps, override_maps=override_maps, **ctx)
123
+ def warn(self, text, extra_maps=None, override_maps=None, **ctx):
124
+ msg = self.origin(text=text, level="warn", extra_maps=extra_maps, override_maps=override_maps, **ctx)
125
+ self.filelog(text=text, level="warn", extra_maps=extra_maps, override_maps=override_maps, **ctx)
126
126
  return msg
127
127
 
128
- def error(self, template, extra_maps=None, override_maps=None, **ctx):
129
- msg = self.origin(template=template, level="error", extra_maps=extra_maps, override_maps=override_maps, **ctx)
130
- self.filelog(template=template, level="error", extra_maps=extra_maps, override_maps=override_maps, **ctx)
128
+ def error(self, text, extra_maps=None, override_maps=None, **ctx):
129
+ msg = self.origin(text=text, level="error", extra_maps=extra_maps, override_maps=override_maps, **ctx)
130
+ self.filelog(text=text, level="error", extra_maps=extra_maps, override_maps=override_maps, **ctx)
131
131
  return msg
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hungerlib
3
- Version: 3.7.2
3
+ Version: 3.8
4
4
  Summary: Powerful automation library for Pterodactyl.
5
5
  Author: iFamished
6
6
  License: MIT
File without changes
File without changes
File without changes