Files
2025-04-12 22:51:14 -05:00

28 lines
1021 B
Python

import os
import importlib
WEB_DIRECTORY = "./web"
NODE_CLASS_MAPPINGS = {}
NODE_DISPLAY_NAME_MAPPINGS = {}
def load_module(module_name):
try:
module = importlib.import_module(f'.nodes.{module_name}', package=__package__)
NODE_CLASS_MAPPINGS.update(getattr(module, 'NODE_CLASS_MAPPINGS', {}))
NODE_DISPLAY_NAME_MAPPINGS.update(getattr(module, 'NODE_DISPLAY_NAME_MAPPINGS', {}))
print(f'\033[93m[Shibiko AI] \033[31m{module_name.capitalize()} \033[92mloaded\033[0m')
except ImportError as e:
print(f'\033[93m[Shibiko AI] \033[31mFailed to load {module_name}: {str(e)}\033[0m')
current_dir = os.path.dirname(os.path.abspath(__file__))
nodes_dir = os.path.join(current_dir, 'nodes')
for filename in os.listdir(nodes_dir):
if filename.endswith('.py') and not filename.startswith('__'):
load_module(filename[:-3])
__all__ = ['NODE_CLASS_MAPPINGS', 'NODE_DISPLAY_NAME_MAPPINGS', 'WEB_DIRECTORY']
print(f'\033[93m[Shibiko AI] \033[92mLoading Complete!\033[0m')