diff options
| author | alinayejin <alina_kim@brown.edu> | 2023-12-06 23:40:54 -0500 |
|---|---|---|
| committer | alinayejin <alina_kim@brown.edu> | 2023-12-06 23:40:54 -0500 |
| commit | 04d6da65b5e75b9a67c0f5722b1af9b9ea9500d1 (patch) | |
| tree | 4cc82071a7932fa606519b600d5ce92f7bea7115 /src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx | |
| parent | 41d5ef99eaa30afe59b15e0c8c7f3f3bed57d33d (diff) | |
| parent | 94cefea3f6c3999b0364b22a81ade49e28135011 (diff) | |
Merge branch 'info-ui' of https://github.com/brown-dash/Dash-Web into info-ui
Diffstat (limited to 'src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx')
| -rw-r--r-- | src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx b/src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx index 3c19ef4e9..9090d0ea5 100644 --- a/src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx +++ b/src/client/views/collections/collectionFreeForm/CollectionFreeFormInfoState.tsx @@ -3,10 +3,13 @@ import { observer } from 'mobx-react'; import './CollectionFreeFormView.scss'; import React = require('react'); +export type infoArc = { + events: () => any; + actions: (arg?: any) => any; +}; export type infoState = { Message: string; - Events: () => any; - Actions: (arg?: any) => any; + Arcs: infoArc[]; }; export interface CollectionFreeFormInfoStateProps { @@ -15,10 +18,10 @@ export interface CollectionFreeFormInfoStateProps { @observer export class CollectionFreeFormInfoState extends React.Component<CollectionFreeFormInfoStateProps> { - _disposer: IReactionDisposer | undefined; + _disposers: IReactionDisposer[] = []; - clearState = () => this._disposer?.(); - initState = () => (this._disposer = reaction(this.props.state.Events, this.props.state.Actions, { fireImmediately: true })); + clearState = () => this._disposers.map(disposer => disposer()); + initState = () => (this._disposers = this.props.state.Arcs.map(arc => reaction(arc.events, arc.actions, { fireImmediately: true }))); componentDidMount(): void { this.initState(); |
