import { action, observable } from 'mobx'; import { observer } from 'mobx-react'; import * as React from 'react'; import { UndoManager } from '../util/UndoManager'; import './UndoStack.scss'; import { StrCast } from '../../fields/Types'; import { Doc } from '../../fields/Doc'; import { Popup, Type, isDark } from 'browndash-components'; import { Colors } from './global/globalEnums'; import { SettingsManager } from '../util/SettingsManager'; interface UndoStackProps { width?: number; height?: number; inline?: boolean; } @observer export class UndoStack extends React.Component { @observable static HideInline: boolean; @observable static Expand: boolean; render() { const background = UndoManager.batchCounter.get() ? 'yellow' : SettingsManager.Instance.userBackgroundColor; return this.props.inline && UndoStack.HideInline ? null : (
r?.scroll({ behavior: 'auto', top: r?.scrollHeight + 20 })} style={{ background: background, color: isDark(background) ? Colors.LIGHT_GRAY : Colors.DARK_GRAY, }}> {UndoManager.undoStackNames.map((name, i) => (
{name.replace(/[^\.]*\./, '')}
))} {Array.from(UndoManager.redoStackNames) .reverse() .map((name, i) => (
{name.replace(/[^\.]*\./, '')}
))}
} /> ); } }