hungerlib 3.0.dev22__tar.gz → 3.0.dev24__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 (32) hide show
  1. {hungerlib-3.0.dev22/src/hungerlib.egg-info → hungerlib-3.0.dev24}/PKG-INFO +1 -1
  2. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/pyproject.toml +1 -1
  3. hungerlib-3.0.dev24/src/hungerlib/__init__.py +30 -0
  4. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/configloader.py +6 -0
  5. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/datamap.py +21 -0
  6. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/messagerouter.py +7 -0
  7. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/panel.py +7 -0
  8. hungerlib-3.0.dev24/src/hungerlib/servers/__init__.py +17 -0
  9. hungerlib-3.0.dev24/src/hungerlib/utils/__init__.py +46 -0
  10. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24/src/hungerlib.egg-info}/PKG-INFO +1 -1
  11. hungerlib-3.0.dev22/src/hungerlib/__init__.py +0 -74
  12. hungerlib-3.0.dev22/src/hungerlib/servers/__init__.py +0 -7
  13. hungerlib-3.0.dev22/src/hungerlib/utils/__init__.py +0 -18
  14. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/LICENSE +0 -0
  15. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/README.md +0 -0
  16. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/setup.cfg +0 -0
  17. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/__init__.py +0 -0
  18. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/backups.py +0 -0
  19. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/command.py +0 -0
  20. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/databases.py +0 -0
  21. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/filemanager.py +0 -0
  22. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/schedule.py +0 -0
  23. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/api/startup.py +0 -0
  24. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/servers/generic.py +0 -0
  25. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/servers/minecraft.py +0 -0
  26. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/utils/colormaps.py +0 -0
  27. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/utils/time.py +0 -0
  28. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib/utils/utils.py +0 -0
  29. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib.egg-info/SOURCES.txt +0 -0
  30. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib.egg-info/dependency_links.txt +0 -0
  31. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/src/hungerlib.egg-info/requires.txt +0 -0
  32. {hungerlib-3.0.dev22 → hungerlib-3.0.dev24}/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.0.dev22
3
+ Version: 3.0.dev24
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.0.dev22"
10
+ version = "3.0.dev24"
11
11
  description = "Powerful automation library for Pterodactyl."
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.9"
@@ -0,0 +1,30 @@
1
+ import inspect
2
+
3
+ def load():
4
+ caller = inspect.currentframe().f_back.f_globals
5
+
6
+ # All modules that support .load()
7
+ from . import (
8
+ datamap,
9
+ servers,
10
+ configloader,
11
+ panel,
12
+ messagerouter,
13
+ utils
14
+ )
15
+
16
+ modules = {
17
+ "datamap": datamap,
18
+ "servers": servers,
19
+ "configloader": configloader,
20
+ "panel": panel,
21
+ "messagerouter": messagerouter,
22
+ "utils": utils,
23
+ }
24
+
25
+ # For each module the user imported, call its loader
26
+ for name, module in modules.items():
27
+ if name in caller:
28
+ loader = getattr(module, "load", None)
29
+ if callable(loader):
30
+ loader()
@@ -1,3 +1,4 @@
1
+ import inspect
1
2
  import os
2
3
  import yaml
3
4
  import importlib
@@ -65,3 +66,8 @@ def loadConfig(path, default_path, schema):
65
66
  setattr(target, attr, value)
66
67
 
67
68
  return cfg
69
+
70
+ def load():
71
+ caller = inspect.currentframe().f_back.f_globals
72
+ from .configloader import loadConfig
73
+ caller["loadConfig"] = loadConfig
@@ -1,4 +1,6 @@
1
1
  import re
2
+ import inspect
3
+ import sys
2
4
  from dataclasses import dataclass, fields, is_dataclass
3
5
 
4
6
  # default maps
@@ -64,3 +66,22 @@ def mapit(text: str, *maps, **runtime):
64
66
  return str(d.get(k, match.group(0)))
65
67
  text = re.sub(pattern, repl, text)
66
68
  return text
69
+
70
+
71
+ def load():
72
+ caller = inspect.currentframe().f_back.f_globals
73
+ module = sys.modules[__name__]
74
+
75
+ # Inject into caller (normal selective load)
76
+ caller.update({
77
+ "mapit": mapit,
78
+ "Syntax": Syntax,
79
+ "DataMap": DataMap,
80
+ "datamap": datamap,
81
+ })
82
+
83
+ # Inject into module namespace (for decorators)
84
+ module.mapit = mapit
85
+ module.Syntax = Syntax
86
+ module.DataMap = DataMap
87
+ module.datamap = datamap
@@ -1,3 +1,4 @@
1
+ import inspect
1
2
  import logging
2
3
  from pathlib import Path
3
4
  from datetime import datetime
@@ -145,3 +146,9 @@ class MessageRouter:
145
146
 
146
147
  def error(self, template, **fmt):
147
148
  self.say(self.error_prefix + template, level="error", **fmt)
149
+
150
+
151
+ def load():
152
+ caller = inspect.currentframe().f_back.f_globals
153
+ from .messagerouter import MessageRouter
154
+ caller["MessageRouter"] = MessageRouter
@@ -1,3 +1,4 @@
1
+ import inspect
1
2
  import requests
2
3
 
3
4
  from hungerlib.api import CommandAPI, ScheduleAPI, FileManagerAPI, BackupsAPI, DatabasesAPI, StartupAPI
@@ -58,3 +59,9 @@ class Panel:
58
59
  def validateAPI(self):
59
60
  r = self.get("/api/client/account")
60
61
  return r.status_code == 200
62
+
63
+
64
+ def load():
65
+ caller = inspect.currentframe().f_back.f_globals
66
+ from .panel import Panel
67
+ caller["Panel"] = Panel
@@ -0,0 +1,17 @@
1
+ from .generic import GenericServer
2
+ from .minecraft import MinecraftServer
3
+
4
+ __all__ = [
5
+ "GenericServer",
6
+ "MinecraftServer",
7
+ "load",
8
+ ]
9
+
10
+ import inspect
11
+
12
+ def load():
13
+ caller = inspect.currentframe().f_back.f_globals
14
+ caller.update({
15
+ "GenericServer": GenericServer,
16
+ "MinecraftServer": MinecraftServer,
17
+ })
@@ -0,0 +1,46 @@
1
+ from .colormaps import ColorMap, ASCII_COLOR_MAP, MC_COLOR_MAP
2
+ from .time import (
3
+ snapSchedule,
4
+ runCountdownEvents,
5
+ waitForOnline,
6
+ waitForOffline,
7
+ secsUntil,
8
+ minsUntil
9
+ )
10
+ from .utils import Snapshot, clearTerminal, validateAll
11
+
12
+ __all__ = [
13
+ 'ColorMap',
14
+ 'ASCII_COLOR_MAP',
15
+ 'MC_COLOR_MAP',
16
+ 'snapSchedule',
17
+ 'runCountdownEvents',
18
+ 'waitForOnline',
19
+ 'waitForOffline',
20
+ 'secsUntil',
21
+ 'minsUntil',
22
+ 'Snapshot',
23
+ 'clearTerminal',
24
+ 'validateAll',
25
+ 'load'
26
+ ]
27
+
28
+ # === Loader for selective unpacking ===
29
+ import inspect
30
+
31
+ def load():
32
+ caller = inspect.currentframe().f_back.f_globals
33
+ caller.update({
34
+ "ColorMap": ColorMap,
35
+ "ASCII_COLOR_MAP": ASCII_COLOR_MAP,
36
+ "MC_COLOR_MAP": MC_COLOR_MAP,
37
+ "snapSchedule": snapSchedule,
38
+ "runCountdownEvents": runCountdownEvents,
39
+ "waitForOnline": waitForOnline,
40
+ "waitForOffline": waitForOffline,
41
+ "secsUntil": secsUntil,
42
+ "minsUntil": minsUntil,
43
+ "Snapshot": Snapshot,
44
+ "clearTerminal": clearTerminal,
45
+ "validateAll": validateAll,
46
+ })
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hungerlib
3
- Version: 3.0.dev22
3
+ Version: 3.0.dev24
4
4
  Summary: Powerful automation library for Pterodactyl.
5
5
  Author: iFamished
6
6
  License: MIT
@@ -1,74 +0,0 @@
1
- from importlib.metadata import version as _pkg_version, PackageNotFoundError
2
-
3
- try:
4
- __version__ = _pkg_version('hungerlib')
5
- except PackageNotFoundError:
6
- __version__ = '0.0.0'
7
-
8
- # === MODULES ===
9
- from . import panel
10
- from . import servers
11
- from . import messagerouter
12
- from . import datamap
13
- from . import configloader
14
- from . import utils
15
-
16
- # === SYMBOLS ===
17
- from .panel import Panel
18
-
19
- from .configloader import loadConfig
20
- from .messagerouter import MessageRouter
21
- from .servers import GenericServer, MinecraftServer
22
- from .datamap import Syntax, DataMap, datamap, mapit, set_default_maps, get_default_maps
23
- from .utils import (
24
- ASCII_COLOR_MAP,
25
- MC_COLOR_MAP,
26
- ColorMap,
27
- snapSchedule,
28
- runCountdownEvents,
29
- waitForOnline,
30
- waitForOffline,
31
- secsUntil,
32
- minsUntil,
33
- Snapshot,
34
- clearTerminal,
35
- validateAll
36
- )
37
-
38
- __all__ = [
39
- # === MODULES ===
40
- 'panel',
41
- 'servers',
42
- 'messagerouter',
43
- 'datamap',
44
- 'configloader',
45
- 'utils',
46
-
47
- # === SYMBOLS ===
48
- 'Panel',
49
- 'loadConfig',
50
- 'MessageRouter',
51
-
52
- 'GenericServer',
53
- 'MinecraftServer',
54
-
55
- 'Syntax',
56
- 'DataMap',
57
- 'datamap',
58
- 'mapit',
59
- 'set_default_maps',
60
- 'get_default_maps',
61
-
62
- 'ASCII_COLOR_MAP',
63
- 'MC_COLOR_MAP',
64
- 'ColorMap',
65
- 'snapSchedule',
66
- 'runCountdownEvents',
67
- 'waitForOnline',
68
- 'waitForOffline',
69
- 'secsUntil',
70
- 'minsUntil',
71
- 'Snapshot',
72
- 'clearTerminal',
73
- 'validateAll'
74
- ]
@@ -1,7 +0,0 @@
1
- from .generic import GenericServer
2
- from .minecraft import MinecraftServer
3
-
4
- __all__ = [
5
- "GenericServer",
6
- "MinecraftServer",
7
- ]
@@ -1,18 +0,0 @@
1
- from .colormaps import ColorMap, ASCII_COLOR_MAP, MC_COLOR_MAP
2
- from .time import snapSchedule, runCountdownEvents, waitForOnline, waitForOffline, secsUntil, minsUntil
3
- from .utils import Snapshot, clearTerminal, validateAll
4
-
5
- __all__ = [
6
- 'ColorMap',
7
- 'ASCII_COLOR_MAP',
8
- 'MC_COLOR_MAP',
9
- 'snapSchedule',
10
- 'runCountdownEvents',
11
- 'waitForOnline',
12
- 'waitForOffline',
13
- 'secsUntil',
14
- 'minsUntil',
15
- 'Snapshot',
16
- 'clearTerminal',
17
- 'validateAll'
18
- ]
File without changes
File without changes
File without changes