MishkaCmsBuilder.Plugins.Settings (Mishka CMS Builder v0.0.1-alpha.2)

Copy Markdown View Source

The editor's own settings, registered on settings:register (MishkaCmsCore.Settings).

WHAT THE EDITOR WRITES FOR ITSELF. The Studio's switches (cms_builder.studio.*) and the component presets (cms_builder.preset.<component>) are keys no definition names, one per site and per component. One match: :prefix definition covers every cms_builder. key, and only its :permission is read: any name that opens a builder writes them, a runtime area of a document the editor edits or admin:dashboard:code, and the setting area alone does not. Without the editor such a key takes admin:dashboard:setting, which fails closed.

THE MENTION NOTIFICATION'S TWO SWITCHES. Writing @someone in a review note notifies them (MishkaCmsBuilder.Mentions); a site turns that off under Notifications and a person turns their own copy off under Preferences. Both keys follow the notification type, as MishkaCmsCore.Notify.Delivery reads them.

Summary

Functions

Returns a specification to start this module under a supervisor.

The definitions this plugin contributes.

Callback implementation for MishkaInstaller.Event.Hook.enable/0.

Callback implementation for MishkaInstaller.Event.Hook.get/0.

Optional. See MishkaInstaller.Event.Hook.health_check/0. Override to report health.

The names that open a builder, any one of which writes a cms_builder. key.

Callback implementation for MishkaInstaller.Event.Hook.register/0.

Callback implementation for MishkaInstaller.Event.Hook.restart/0.

Callback implementation for MishkaInstaller.Event.Hook.start/0.

Callback implementation for MishkaInstaller.Event.Hook.stop/0.

Types

error_return()

@type error_return() ::
  {:error, [%{action: atom(), field: atom(), message: String.t()}]}

okey_return()

@type okey_return() :: {:ok, struct() | map() | module() | [any()]}

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.

config()

@spec config() :: keyword()

config(key)

@spec config(atom()) :: any()

definitions()

@spec definitions() :: [MishkaCmsCore.Settings.definition()]

The definitions this plugin contributes.

enable()

@spec enable() :: okey_return() | error_return()

Callback implementation for MishkaInstaller.Event.Hook.enable/0.

get()

@spec get() :: keyword()

Callback implementation for MishkaInstaller.Event.Hook.get/0.

health_check()

@spec health_check() :: :ok | {:degraded, term()} | {:error, term()}

Optional. See MishkaInstaller.Event.Hook.health_check/0. Override to report health.

on_dependency_error(error)

@spec on_dependency_error(term()) :: term()

Optional. See MishkaInstaller.Event.Hook.on_dependency_error/1. Override to react.

opens()

@spec opens() :: [String.t()]

The names that open a builder, any one of which writes a cms_builder. key.

register()

@spec register() :: okey_return() | error_return()

Callback implementation for MishkaInstaller.Event.Hook.register/0.

restart()

@spec restart() :: okey_return() | error_return()

Callback implementation for MishkaInstaller.Event.Hook.restart/0.

start()

@spec start() :: okey_return() | error_return()

Callback implementation for MishkaInstaller.Event.Hook.start/0.

start_link(args \\ [])

stop()

@spec stop() :: okey_return() | error_return()

Callback implementation for MishkaInstaller.Event.Hook.stop/0.

unregister()

@spec unregister() :: okey_return() | error_return()

Callback implementation for MishkaInstaller.Event.Hook.unregister/0.