aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/DictationButton.tsx
diff options
context:
space:
mode:
authorJoanne <zehan_ding@brown.edu>2025-06-17 13:02:50 -0400
committerJoanne <zehan_ding@brown.edu>2025-06-17 13:02:50 -0400
commit2aa2c26b95a539d220e46b20cdfbef6ae39d6c43 (patch)
tree344a6f798f692fdd4921ab5a6762e907f5ad7b06 /src/client/views/DictationButton.tsx
parent430db63077868fa54829721d6530a810aa4d4588 (diff)
parentccfdf905400cd4b81d8cde0f16bb0e15cd65621b (diff)
Merge branch 'agent-paper-main' of https://github.com/brown-dash/Dash-Web into joanne-tutorialagent
Diffstat (limited to 'src/client/views/DictationButton.tsx')
-rw-r--r--src/client/views/DictationButton.tsx25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/client/views/DictationButton.tsx b/src/client/views/DictationButton.tsx
index 0ce586df4..fc3165f67 100644
--- a/src/client/views/DictationButton.tsx
+++ b/src/client/views/DictationButton.tsx
@@ -1,8 +1,7 @@
-import { IconButton, Type } from '@dash/components';
-import { action, makeObservable, observable } from 'mobx';
+import { makeObservable, observable, action } from 'mobx';
import { observer } from 'mobx-react';
import * as React from 'react';
-import { BiMicrophone } from 'react-icons/bi';
+import './DictationButton.scss';
import { DictationManager } from '../util/DictationManager';
import { SnappingManager } from '../util/SnappingManager';
@@ -10,9 +9,11 @@ export interface DictationButtonProps {
setInput: (val: string) => void;
inputRef?: HTMLInputElement | null | undefined;
}
+
@observer
export class DictationButton extends React.Component<DictationButtonProps> {
@observable private _isRecording = false;
+
constructor(props: DictationButtonProps) {
super(props);
makeObservable(this);
@@ -25,11 +26,9 @@ export class DictationButton extends React.Component<DictationButtonProps> {
render() {
return (
- <IconButton
- type={Type.TERT}
- color={this._isRecording ? '#2bcaff' : SnappingManager.userVariantColor}
- tooltip="Record"
- icon={<BiMicrophone size="16px" />}
+ <button
+ className={`dictation-button ${this._isRecording ? 'recording' : ''}`}
+ title="Record"
onClick={action(() => {
if (!this._isRecording) {
this._isRecording = true;
@@ -50,8 +49,14 @@ export class DictationButton extends React.Component<DictationButtonProps> {
} else {
this.stopDictation();
}
- })}
- />
+ })}>
+ <svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
+ <path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"></path>
+ <path d="M19 10v2a7 7 0 0 1-14 0v-2"></path>
+ <line x1="12" y1="19" x2="12" y2="23"></line>
+ <line x1="8" y1="23" x2="16" y2="23"></line>
+ </svg>
+ </button>
);
}
}