diff --git a/plugins/lab/fps_lab/routes.py b/plugins/lab/fps_lab/routes.py index 15844310..a0067f5c 100644 --- a/plugins/lab/fps_lab/routes.py +++ b/plugins/lab/fps_lab/routes.py @@ -1,4 +1,5 @@ import json +import json5 from pathlib import Path import sys from http import HTTPStatus @@ -19,9 +20,10 @@ from .utils import get_federated_extensions +LOCALE = "en" + def init_router(router, redirect_after_root): prefix_dir: Path = Path(sys.prefix) - LOCALE = "en" extensions_dir = prefix_dir / "share" / "jupyter" / "labextensions" federated_extensions, _ = get_federated_extensions(extensions_dir) @@ -112,7 +114,7 @@ async def get_translation( package = ep.load() data = {} for path in ( - Path(package.__file__).parent / "locale" / "fr_FR" / "LC_MESSAGES" + Path(package.__file__).parent / "locale" / language / "LC_MESSAGES" ).glob("*.json"): with open(path) as f: data.update({path.stem: json.load(f)}) @@ -145,7 +147,7 @@ async def get_setting( ) as f: schema = json.load(f) key = f"{name1}:{name2}" - result = { + setting = { "id": f"@jupyterlab/{key}", "schema": schema, "version": package["version"], @@ -155,10 +157,11 @@ async def get_setting( "created": None, } if user: - settings = json.loads(user.settings) - if key in settings: - result.update(settings[key]) - return result + user_settings = json.loads(user.settings) + if key in user_settings: + setting.update(user_settings[key]) + setting["settings"] = json5.loads(user_settings[key]["raw"]) + return setting @router.put( "/lab/api/settings/@jupyterlab/{name0}:{name1}", @@ -206,6 +209,7 @@ async def get_settings(user: User = Depends(current_user)): } if key in user_settings: setting.update(user_settings[key]) + setting["settings"] = json5.loads(user_settings[key]["raw"]) settings.append(setting) return {"settings": settings} diff --git a/plugins/lab/setup.cfg b/plugins/lab/setup.cfg index e192063c..a637ed4b 100644 --- a/plugins/lab/setup.cfg +++ b/plugins/lab/setup.cfg @@ -11,6 +11,7 @@ install_requires = fps-auth aiofiles babel + json5 [options.entry_points] fps_router =