camelCase form of this keyword's kebab-slug key, derived by stripping
hyphens and capitalizing the segment that followed each one
(e.g. "thousand-runes" → "thousandRunes", "absolute" → "absolute").
This mirrors the format previously produced by the hardcoded
BODY_MIND_SOUL.action.keywords/.item.keywords registries (removed —
see module/helpers/config.mjs). Engine logic that historically matched
against those camelCase keys should compare against this getter instead
of reintroducing a parallel hardcoded list; logic that already matches
kebab-slug key values directly (the common case) does not need this.
The camelCase form of this keyword's key.
Kebab-slug derived from the parent item's name.
The full list of ActiveEffect documents this item contributes to the owning actor, including effects from sockets, keywords, and the item's own effects array. Subclasses override. Returns [] by default.
Whether this item currently transfers its effects to the owning actor. Subclasses override to implement item-type-specific logic.
Convert the schema to a plain object.
The built in toObject() method will ignore derived data when using Data Models.
This additional method will instead use the spread operator to return a simplified
version of the data.
Plain object either via deepClone or the spread operator.
StaticdefineStaticmigrateStaticslugifyConvert a display name to a kebab-slug key.
StatictoConvert a kebab-slug key to camelCase (e.g. "thousand-runes" → "thousandRunes").
A kebab-slug key (as produced by BodyMindSoulKeyword.slugify).
The camelCase form.
Data model for Keyword items. A keyword item defines trigger-driven behavior for a named keyword. The keyword key is derived automatically from the item name as a kebab-slug (e.g. "Thousand Runes" → "thousand-runes").