mirror of
https://github.com/GoogleChromeLabs/squoosh.git
synced 2025-11-14 09:39:15 +00:00
Creating new objects rather than mutating existing objects. Fixes #121.
This commit is contained in:
@@ -81,10 +81,18 @@ export default class Options extends Component<Props, State> {
|
|||||||
onPreprocessorEnabledChange(event: Event) {
|
onPreprocessorEnabledChange(event: Event) {
|
||||||
const el = event.currentTarget as HTMLInputElement;
|
const el = event.currentTarget as HTMLInputElement;
|
||||||
|
|
||||||
const preprocessorState = this.props.preprocessorState;
|
const newPreprocessorState = {
|
||||||
const preprocessor = el.name.split('.')[0] as keyof typeof preprocessorState;
|
...this.props.preprocessorState,
|
||||||
preprocessorState[preprocessor].enabled = el.checked;
|
};
|
||||||
this.props.onPreprocessorOptionsChange(preprocessorState);
|
|
||||||
|
const preprocessor = el.name.split('.')[0] as keyof typeof newPreprocessorState;
|
||||||
|
|
||||||
|
newPreprocessorState[preprocessor] = {
|
||||||
|
...newPreprocessorState[preprocessor],
|
||||||
|
enabled: el.checked,
|
||||||
|
};
|
||||||
|
|
||||||
|
this.props.onPreprocessorOptionsChange(newPreprocessorState);
|
||||||
}
|
}
|
||||||
|
|
||||||
@bind
|
@bind
|
||||||
|
|||||||
Reference in New Issue
Block a user