This commit is contained in:
TheGiddyLimit
2024-06-23 22:13:57 +01:00
parent ed9833eefc
commit e5844f8a3f
279 changed files with 38254 additions and 7675 deletions

View 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));
}
}