larvaworld.portal.config_widgets.preset_controls ================================================ .. py:module:: larvaworld.portal.config_widgets.preset_controls Attributes ---------- .. autoapisummary:: larvaworld.portal.config_widgets.preset_controls.USER_PRESET_POLICY larvaworld.portal.config_widgets.preset_controls.ADVANCED_PRESET_POLICY Classes ------- .. autoapisummary:: larvaworld.portal.config_widgets.preset_controls.PresetSource larvaworld.portal.config_widgets.preset_controls.PresetRef larvaworld.portal.config_widgets.preset_controls.PresetCatalog larvaworld.portal.config_widgets.preset_controls.PresetActionPolicy larvaworld.portal.config_widgets.preset_controls.RegistryPresetStore larvaworld.portal.config_widgets.preset_controls.WorkspacePresetStore larvaworld.portal.config_widgets.preset_controls.PresetControlsController Functions --------- .. autoapisummary:: larvaworld.portal.config_widgets.preset_controls.build_user_preset_controls larvaworld.portal.config_widgets.preset_controls.build_advanced_preset_controls Module Contents --------------- .. py:class:: PresetSource .. py:attribute:: REGISTRY :value: 'registry' .. py:attribute:: WORKSPACE :value: 'workspace' .. py:class:: PresetRef .. py:attribute:: source :type: str .. py:attribute:: name :type: str .. py:attribute:: display_label :type: str .. py:attribute:: token :type: str .. py:attribute:: conftype :type: str | None :value: None .. py:attribute:: workspace_filename :type: str | None :value: None .. py:attribute:: workspace_path :type: pathlib.Path | None :value: None .. py:class:: PresetCatalog .. py:attribute:: refs :type: tuple[PresetRef, Ellipsis] .. py:attribute:: by_token :type: dict[str, PresetRef] .. py:method:: resolve(token: str | None) -> PresetRef | None .. py:class:: PresetActionPolicy .. py:attribute:: can_load_registry :type: bool .. py:attribute:: can_load_workspace :type: bool .. py:attribute:: can_save_registry :type: bool .. py:attribute:: can_save_workspace :type: bool .. py:attribute:: can_delete_registry :type: bool .. py:attribute:: can_delete_workspace :type: bool .. py:attribute:: can_reset_registry :type: bool .. py:method:: can_load(source: str) -> bool .. py:method:: can_save(source: str) -> bool .. py:method:: can_delete(source: str) -> bool .. py:data:: USER_PRESET_POLICY .. py:data:: ADVANCED_PRESET_POLICY .. py:class:: RegistryPresetStore(conftype: str) .. py:attribute:: conftype :value: '' .. py:property:: source_path :type: str .. py:method:: list_ids() -> list[str] .. py:method:: exists(name: str) -> bool .. py:method:: load(name: str) -> Any .. py:method:: save(name: str, payload: Any) -> None .. py:method:: delete(name: str) -> None .. py:method:: reset_defaults() -> None .. py:class:: WorkspacePresetStore(directory: str | pathlib.Path, *, directory_key: str) .. py:attribute:: directory .. py:attribute:: directory_key :value: '' .. py:property:: source_path :type: str .. py:method:: normalize_name(name: str) -> str :staticmethod: .. py:method:: list_presets() -> list[WorkspacePresetRecord] .. py:method:: exists_name(name: str) -> bool .. py:method:: load(filename: str) -> Any .. py:method:: save(name: str, payload: Any) -> pathlib.Path .. py:method:: delete(filename: str) -> None .. py:class:: PresetControlsController(*, conftype: str, workspace_store: WorkspacePresetStore, policy: PresetActionPolicy, build_workspace_payload: Callable[[str], Any], build_registry_payload: Callable[[str], Any] | None = None, before_save: Callable[[str, str], None] | None = None, on_load: Callable[[PresetRef, Any], None] | None = None, on_save: Callable[[PresetRef, Any], None] | None = None, on_status: Callable[Ellipsis, None] | None = None, title: str | None = 'Stored Configurations', preset_name_after_refresh: bool = False, confirm_destructive: bool = True) .. py:attribute:: conftype :value: '' .. py:attribute:: workspace_store .. py:attribute:: registry_store .. py:attribute:: policy .. py:attribute:: build_workspace_payload .. py:attribute:: build_registry_payload .. py:attribute:: before_save :value: None .. py:attribute:: on_load :value: None .. py:attribute:: on_save :value: None .. py:attribute:: on_status :value: None .. py:attribute:: preset_name_after_refresh :value: False .. py:attribute:: confirm_destructive :value: True .. py:attribute:: catalog .. py:attribute:: title .. py:attribute:: preset_name .. py:attribute:: preset_select .. py:attribute:: refresh_button .. py:attribute:: load_button .. py:attribute:: save_button .. py:attribute:: delete_button .. py:attribute:: save_target .. py:attribute:: reset_button .. py:attribute:: status .. py:attribute:: storage_info .. py:attribute:: confirmation_host .. py:attribute:: view .. py:method:: refresh_list() -> bool .. py:method:: confirm_pending_action() -> bool .. py:method:: cancel_pending_action() -> bool .. py:method:: load_selected() -> bool .. py:method:: save_current() -> bool .. py:method:: delete_selected() -> bool .. py:method:: request_reset_registry() -> bool .. py:function:: build_user_preset_controls(*, conftype: str, workspace_directory: str | pathlib.Path, directory_key: str, build_workspace_payload: Callable[[str], Any], on_load: Callable[[PresetRef, Any], None] | None = None, on_save: Callable[[PresetRef, Any], None] | None = None, on_status: Callable[Ellipsis, None] | None = None) -> panel.Column .. py:function:: build_advanced_preset_controls(*, conftype: str, workspace_directory: str | pathlib.Path, directory_key: str, build_workspace_payload: Callable[[str], Any], build_registry_payload: Callable[[str], Any] | None = None, on_load: Callable[[PresetRef, Any], None] | None = None, on_save: Callable[[PresetRef, Any], None] | None = None, on_status: Callable[Ellipsis, None] | None = None) -> panel.Column