mirror of
https://github.com/Kornstalx/5etools-mirror-2.github.io.git
synced 2025-10-28 20:45:35 -05:00
v1.208.0
This commit is contained in:
38
js/utils-config/util-config-settings-group.js
Normal file
38
js/utils-config/util-config-settings-group.js
Normal file
@@ -0,0 +1,38 @@
|
||||
export class ConfigSettingsGroup {
|
||||
constructor (
|
||||
{
|
||||
groupId,
|
||||
name,
|
||||
configSettings,
|
||||
},
|
||||
) {
|
||||
this._groupId = groupId;
|
||||
this._name = name;
|
||||
this._configSettings = configSettings;
|
||||
|
||||
this._configSettings
|
||||
.forEach(configSetting => configSetting.setGroupId(this._groupId));
|
||||
}
|
||||
|
||||
get groupId () { return this._groupId; }
|
||||
|
||||
render (rdState, {isLast = false} = {}) {
|
||||
const wrpRows = ee`<div></div>`;
|
||||
|
||||
ee`<div class="w-100">
|
||||
<h4>${this._name}</h4>
|
||||
${wrpRows}
|
||||
${isLast ? null : `<hr class="hr-3 mb-1">`}
|
||||
</div>`
|
||||
.appendTo(rdState.wrp);
|
||||
|
||||
this._configSettings
|
||||
.forEach(configSetting => configSetting.render(rdState, wrpRows));
|
||||
}
|
||||
|
||||
mutDefaults (config) {
|
||||
const group = config[this._groupId] ||= {};
|
||||
this._configSettings
|
||||
.forEach(configSetting => configSetting.mutDefaults(group));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user