diff --git a/src/nrp_devtools/commands/ui/create.py b/src/nrp_devtools/commands/ui/create.py index e998e56..093e13d 100644 --- a/src/nrp_devtools/commands/ui/create.py +++ b/src/nrp_devtools/commands/ui/create.py @@ -54,6 +54,9 @@ def create_model_ui(config: OARepoConfig, *, ui_name: str): capitalized_name = caseconverter.camelcase(ui_config.name) capitalized_name = capitalized_name[0].upper() + capitalized_name[1:] + model_name = ui_config.model + prefix = model_name.capitalize() + run_cookiecutter( config.ui_dir, template=Path(__file__).parent.parent.parent / "templates" / "ui_model", @@ -65,16 +68,16 @@ def create_model_ui(config: OARepoConfig, *, ui_name: str): "resource_config": capitalized_name + "ResourceConfig", "ui_serializer_class": ui_config.ui_serializer_class, "api_service": ui_config.api_service, + "root_component": prefix + "DetailRoot", }, ) - model_name = ui_config.model model_config: ModelConfig = config.get_model(model_name) ui_file = config.repository_dir / model_config.model_package / 'models' / 'ui.json' ui_components_dir = config.ui_dir / ui_config.name / 'templates' / 'semantic-ui' / 'components' ui_components_dir.mkdir(parents=True, exist_ok=True) - create_detail_page(ui_file, ui_components_dir, model_name.capitalize()) + create_detail_page(ui_file, ui_components_dir, prefix) def register_model_ui(config: OARepoConfig, *, ui_name: str): diff --git a/src/nrp_devtools/templates/ui_model/cookiecutter.json b/src/nrp_devtools/templates/ui_model/cookiecutter.json index 3553212..56ebf61 100644 --- a/src/nrp_devtools/templates/ui_model/cookiecutter.json +++ b/src/nrp_devtools/templates/ui_model/cookiecutter.json @@ -5,5 +5,6 @@ "resource": "", "resource_config": "", "ui_serializer_class": "", - "api_service": "" + "api_service": "", + "root_component": "" } diff --git a/src/nrp_devtools/templates/ui_model/{{cookiecutter.name}}/templates/semantic-ui/{{cookiecutter.name}}/Detail.jinja b/src/nrp_devtools/templates/ui_model/{{cookiecutter.name}}/templates/semantic-ui/{{cookiecutter.name}}/Detail.jinja index a5c791b..a6cca2d 100644 --- a/src/nrp_devtools/templates/ui_model/{{cookiecutter.name}}/templates/semantic-ui/{{cookiecutter.name}}/Detail.jinja +++ b/src/nrp_devtools/templates/ui_model/{{cookiecutter.name}}/templates/semantic-ui/{{cookiecutter.name}}/Detail.jinja @@ -5,7 +5,7 @@ {%- endblock %} {% block record_main_content %} - Add your main content here + <{% endraw %}{{root_component}}{% raw %} d={d}> {% endblock %} {% block record_sidebar %}