Skip to content

Commit

Permalink
fix: add transport as prop and query string
Browse files Browse the repository at this point in the history
  • Loading branch information
shanejonas committed Jul 22, 2020
1 parent e9e18fb commit 1f480b1
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 3 deletions.
1 change: 1 addition & 0 deletions src/containers/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ const App: React.FC = () => {
<Inspector
onToggleDarkMode={darkMode.toggle}
darkMode={darkMode.value}
transport={query.transport}
url={query.url}
openrpcDocument={query.openrpcDocument}
request={query.request}
Expand Down
18 changes: 16 additions & 2 deletions src/containers/Inspector.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ import useMonacoVimMode from "../hooks/useMonacoVimMode";
import { addDiagnostics } from "@etclabscore/monaco-add-json-schema-diagnostics";
import openrpcDocumentToJSONRPCSchemaResult from "../helpers/openrpcDocumentToJSONRPCSchemaResult";
import TransportDropdown from "../components/TransportDropdown";
import useTransport, { ITransport } from "../hooks/useTransport";
import useTransport, { ITransport, TTransport } from "../hooks/useTransport";

const defaultTransports: ITransport[] = [
{
Expand Down Expand Up @@ -99,6 +99,7 @@ interface IProps {
darkMode?: boolean;
hideToggleTheme?: boolean;
openrpcDocument?: OpenrpcDocument;
transport?: TTransport;
onToggleDarkMode?: () => void;
}

Expand Down Expand Up @@ -188,7 +189,9 @@ const Inspector: React.FC<IProps> = (props) => {
const model = monaco.editor.createModel(
results ? JSON.stringify(results, null, 4) : ""
, "json", modelUri);
responseEditor.setModel(model);
if (responseEditor) {
responseEditor.setModel(model);
}
addDiagnostics(modelUri.toString(), schema, monaco);
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [results, responseEditor, openrpcDocument]);
Expand All @@ -200,6 +203,17 @@ const Inspector: React.FC<IProps> = (props) => {
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [json]);

useEffect(() => {
if (props.transport) {
const t = defaultTransports
.find((tp: ITransport) => tp.type === props.transport);
if (t) {
setSelectedTransport(t);
}
}
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [props.transport]);

useEffect(() => {
if (props.url) {
setUrl(props.url);
Expand Down
2 changes: 1 addition & 1 deletion src/hooks/useTransport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { HTTPTransport, WebSocketTransport, PostMessageWindowTransport, PostMess
import { Transport } from "@open-rpc/client-js/build/transports/Transport";
import { IJSONRPCData } from "@open-rpc/client-js/build/Request";

type TTransport = "http" | "websocket" | "postmessagewindow" | "postmessageiframe";
export type TTransport = "http" | "websocket" | "postmessagewindow" | "postmessageiframe";

export interface IWebTransport {
type: TTransport;
Expand Down

0 comments on commit 1f480b1

Please sign in to comment.