Spaces:
Runtime error
Runtime error
| import yaml | |
| import os | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| ELEVEN_LABS_KEY = os.getenv('ELEVEN_LABS_API_KEY') | |
| OPENAI_KEY = os.getenv('OPENAI_API_KEY') | |
| PLAY_HT_USERID = os.getenv('PLAY_HT_USERID') | |
| PLAY_HT_API_KEY = os.getenv('PLAY_HT_API_KEY') | |
| def read_yaml_config(file_path: str) -> dict: | |
| """Reads and returns the contents of a YAML file as dictionary""" | |
| with open(file_path, 'r') as file: | |
| contents = yaml.safe_load(file) | |
| return contents | |
| def write_yaml_config(file_path: str, data: dict): | |
| """Writes a dictionary to a YAML file""" | |
| with open(file_path, 'w') as file: | |
| yaml.dump(data, file) | |
| def load_editing_assets() -> dict: | |
| """Loads all local assets from the static-assets folder specified in the yaml_config""" | |
| yaml_config = read_yaml_config("public.yaml") | |
| if yaml_config['local-assets'] == None: | |
| yaml_config['local-assets'] = {} | |
| # Create a copy of the dictionary before iterating over it | |
| local_paths = [] | |
| if yaml_config['local-assets'] != {}: | |
| local_assets = yaml_config['local-assets'].copy() | |
| # Removing local paths that don't exist | |
| for key in local_assets: | |
| asset = local_assets[key] | |
| if(type(asset) == str): | |
| filePath = local_assets[key] | |
| else: | |
| filePath = local_assets[key]['path'] | |
| if not os.path.exists(filePath): | |
| del yaml_config['local-assets'][key] | |
| else: | |
| local_paths.append(filePath) | |
| folder_path = 'public' | |
| for foldername, subfolders, filenames in os.walk(folder_path): | |
| for filename in filenames: | |
| file_path = os.path.join(foldername, filename).replace("\\", "/") | |
| if not file_path in local_paths: | |
| yaml_config['local-assets'][filename] = file_path | |
| write_yaml_config("public.yaml", yaml_config) | |
| return yaml_config | |
| # print(load_editing_assets()) | |
| # print(read_yaml_config("editing_assets.yaml")['local-assets']) | |