AbstractConfig

abstract class AbstractConfig

Base class for all configuration types. Keeps reveal.js-native options and kslides-native options in two separate maps so they can be serialized differently — reveal.js values are emitted into the Reveal.initialize({...}) call as-is; kslides values drive HTML generation (page head, corner links, etc.) before ever reaching reveal.js.

Subclasses declare properties via ConfigProperty delegated to one of these maps; the config cascade (merge) then combines parent and child maps key-by-key.

Inheritors

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard
open fun merge(other: AbstractConfig)

Merge other into this config in place: every entry from other's two maps is copied into this config's maps, with later puts overwriting earlier keys. This is how the global → presentation → slide cascade resolves (parent merged first, then child).

Link copied to clipboard
open fun revealjsOption(key: String, value: Any)

Set a raw reveal.js config option by key for options kslides does not expose as a typed property (e.g. the menu plugin's themes array). The value is emitted verbatim into the Reveal.initialize({...}) call and participates in the config cascade like any other option. Prefer the typed properties where they exist.