SoapboxConfig: let getValue be set for promoItems

This commit is contained in:
Alex Gleason 2020-09-09 16:31:02 -05:00
parent a55b8bef68
commit 2135bf7b34
No known key found for this signature in database
GPG Key ID: 7211D1F99744FBB7
1 changed files with 7 additions and 7 deletions

View File

@ -127,18 +127,18 @@ class SoapboxConfig extends ImmutablePureComponent {
}; };
}; };
handleItemChange = (path, key, field, template) => { handleItemChange = (path, key, field, template, getValue) => {
return this.handleChange( return this.handleChange(
path, (e) => path, (e) =>
template template
.merge(field) .merge(field)
.set(key, e.target.value) .set(key, getValue(e))
); );
}; };
handlePromoItemChange = (index, key, field) => { handlePromoItemChange = (index, key, field, getValue) => {
return this.handleItemChange( return this.handleItemChange(
['promoPanel', 'items', index], key, field, templates.promoPanelItem ['promoPanel', 'items', index], key, field, templates.promoPanelItem, getValue
); );
}; };
@ -258,19 +258,19 @@ class SoapboxConfig extends ImmutablePureComponent {
label={intl.formatMessage(messages.promoItemIcon)} label={intl.formatMessage(messages.promoItemIcon)}
placeholder={intl.formatMessage(messages.promoItemIcon)} placeholder={intl.formatMessage(messages.promoItemIcon)}
value={field.get('icon')} value={field.get('icon')}
onChange={this.handlePromoItemChange(i, 'icon', field)} onChange={this.handlePromoItemChange(i, 'icon', field, val => val.substring(6))}
/> />
<TextInput <TextInput
label={intl.formatMessage(messages.promoItemLabel)} label={intl.formatMessage(messages.promoItemLabel)}
placeholder={intl.formatMessage(messages.promoItemLabel)} placeholder={intl.formatMessage(messages.promoItemLabel)}
value={field.get('text')} value={field.get('text')}
onChange={this.handlePromoItemChange(i, 'text', field)} onChange={this.handlePromoItemChange(i, 'text', field, e => e.target.value)}
/> />
<TextInput <TextInput
label={intl.formatMessage(messages.promoItemURL)} label={intl.formatMessage(messages.promoItemURL)}
placeholder={intl.formatMessage(messages.promoItemURL)} placeholder={intl.formatMessage(messages.promoItemURL)}
value={field.get('url')} value={field.get('url')}
onChange={this.handlePromoItemChange(i, 'url', field)} onChange={this.handlePromoItemChange(i, 'url', field, e => e.target.value)}
/> />
<Icon id='times-circle' onClick={this.handleDeleteItem(['promoPanel', 'items', i])} /> <Icon id='times-circle' onClick={this.handleDeleteItem(['promoPanel', 'items', i])} />
</div> </div>