mirror of
https://github.com/wassname/talk.git
synced 2026-07-11 01:41:03 +08:00
18346d1683
* feat: viewer event system * feat: more events * feat: MORE events * fix: tests * fix: rte focus events * chore: add comments * fix: remove listening to events * chore: update RTE * fix: tests * feature: generate event docs * fix: remove obsolete line in docs * chore: improve docs * chore: improve formatting * feature: protect events.md from getting out of sync * chore: small improvements * fix: removing redundant lambda
27 lines
821 B
TypeScript
27 lines
821 B
TypeScript
import React, { FunctionComponent, useCallback } from "react";
|
|
|
|
import { useViewerEvent } from "coral-framework/lib/events";
|
|
import { ShowAbsoluteTimestampEvent } from "coral-stream/events";
|
|
import { Timestamp as BaseTimestamp } from "coral-ui/components";
|
|
import { PropTypesOf } from "coral-ui/types";
|
|
|
|
const TimeStamp: FunctionComponent<
|
|
PropTypesOf<typeof BaseTimestamp>
|
|
> = props => {
|
|
const emitEvent = useViewerEvent(ShowAbsoluteTimestampEvent);
|
|
const handleOnToggle = useCallback(
|
|
(absolute: boolean) => {
|
|
if (absolute) {
|
|
emitEvent();
|
|
}
|
|
if (props.onToggleAbsolute) {
|
|
return props.onToggleAbsolute(absolute);
|
|
}
|
|
},
|
|
[props.onToggleAbsolute, emitEvent]
|
|
);
|
|
return <BaseTimestamp {...props} onToggleAbsolute={handleOnToggle} />;
|
|
};
|
|
|
|
export default TimeStamp;
|