|
@ -17,14 +17,15 @@ class Extension(NamedTuple): |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ExtensionManager: |
|
|
class ExtensionManager: |
|
|
def __init__(self): |
|
|
def __init__(self, *, disabled: list = []): |
|
|
|
|
|
self._disabled = disabled |
|
|
self._extension_folders: List[str] = [x[1] for x in os.walk(os.path.join(LNBITS_PATH, "extensions"))][0] |
|
|
self._extension_folders: List[str] = [x[1] for x in os.walk(os.path.join(LNBITS_PATH, "extensions"))][0] |
|
|
|
|
|
|
|
|
@property |
|
|
@property |
|
|
def extensions(self) -> List[Extension]: |
|
|
def extensions(self) -> List[Extension]: |
|
|
output = [] |
|
|
output = [] |
|
|
|
|
|
|
|
|
for extension in self._extension_folders: |
|
|
for extension in [ext for ext in self._extension_folders if ext not in self._disabled]: |
|
|
try: |
|
|
try: |
|
|
with open(os.path.join(LNBITS_PATH, "extensions", extension, "config.json")) as json_file: |
|
|
with open(os.path.join(LNBITS_PATH, "extensions", extension, "config.json")) as json_file: |
|
|
config = json.load(json_file) |
|
|
config = json.load(json_file) |
|
|