-
Notifications
You must be signed in to change notification settings - Fork 100
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: properly handle redirects (#423)
* fix(debugger): show examples only if they are available * feat(debugger): show response headers * fix: properly handle redirects * feat: show previous frame when redirected
- Loading branch information
1 parent
ce837a1
commit b06b5b3
Showing
16 changed files
with
367 additions
and
150 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
"@frames.js/debugger": patch | ||
--- | ||
|
||
feat(debugger): show response headers |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
"@frames.js/render": patch | ||
--- | ||
|
||
fix(@frames.js/render): properly handle redirects |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
"@frames.js/debugger": patch | ||
--- | ||
|
||
fix(debugger): show examples links only if examples are available |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
"@frames.js/debugger": patch | ||
--- | ||
|
||
fix(debugger): properly handle redirects |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
135 changes: 135 additions & 0 deletions
135
packages/debugger/app/components/frame-debugger-request-details.tsx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,135 @@ | ||
import type { FramesStackItem } from "@frames.js/render"; | ||
import { JSONTree } from "react-json-tree"; | ||
import { | ||
Table, | ||
TableBody, | ||
TableCell, | ||
TableHead, | ||
TableRow, | ||
} from "@/components/table"; | ||
import { urlSearchParamsToObject } from "../utils/url-search-params-to-object"; | ||
|
||
type FrameDebuggerRequestDetailsProps = { | ||
frameStackItem: FramesStackItem; | ||
}; | ||
|
||
export function FrameDebuggerRequestDetails({ | ||
frameStackItem, | ||
}: FrameDebuggerRequestDetailsProps) { | ||
return ( | ||
<> | ||
<h2 className="my-4 text-muted-foreground font-semibold text-sm"> | ||
Request | ||
</h2> | ||
<Table> | ||
<TableBody> | ||
<TableRow> | ||
<TableHead>URL</TableHead> | ||
<TableCell className="w-full">{frameStackItem.url}</TableCell> | ||
</TableRow> | ||
<TableRow> | ||
<TableHead>Method</TableHead> | ||
<TableCell>{frameStackItem.request.method}</TableCell> | ||
</TableRow> | ||
<TableRow> | ||
<TableHead>Query Params</TableHead> | ||
<TableCell> | ||
<JSONTree | ||
data={urlSearchParamsToObject( | ||
new URL(frameStackItem.url).searchParams | ||
)} | ||
invertTheme | ||
theme="default" | ||
></JSONTree> | ||
</TableCell> | ||
</TableRow> | ||
{frameStackItem.request.method === "POST" ? ( | ||
<TableRow> | ||
<TableHead>Payload</TableHead> | ||
<TableCell> | ||
<JSONTree | ||
data={frameStackItem.requestDetails.body} | ||
invertTheme | ||
theme="default" | ||
></JSONTree> | ||
</TableCell> | ||
</TableRow> | ||
) : null} | ||
</TableBody> | ||
</Table> | ||
{frameStackItem.status !== "pending" ? ( | ||
<> | ||
<h2 className="my-4 text-muted-foreground font-semibold text-sm"> | ||
Response | ||
</h2> | ||
<Table> | ||
<TableBody> | ||
<TableRow> | ||
<TableHead>Response status</TableHead> | ||
<TableCell className="w-full"> | ||
{frameStackItem.responseStatus} | ||
</TableCell> | ||
</TableRow> | ||
{frameStackItem.response && ( | ||
<TableRow> | ||
<TableHead>Response headers</TableHead> | ||
<TableCell className="w-full"> | ||
<JSONTree | ||
data={Object.fromEntries( | ||
frameStackItem.response.headers.entries() | ||
)} | ||
theme="default" | ||
invertTheme | ||
></JSONTree> | ||
</TableCell> | ||
</TableRow> | ||
)} | ||
{"frame" in frameStackItem ? ( | ||
<TableRow> | ||
<TableHead>Frame Response</TableHead> | ||
<TableCell> | ||
<JSONTree | ||
data={frameStackItem.frame} | ||
invertTheme | ||
theme="default" | ||
></JSONTree> | ||
</TableCell> | ||
</TableRow> | ||
) : ( | ||
<TableRow> | ||
<TableHead>Response</TableHead> | ||
<TableCell> | ||
<JSONTree | ||
data={ | ||
frameStackItem.status === "message" | ||
? { | ||
message: frameStackItem.message, | ||
} | ||
: frameStackItem.responseBody | ||
} | ||
theme="default" | ||
invertTheme | ||
></JSONTree> | ||
</TableCell> | ||
</TableRow> | ||
)} | ||
{frameStackItem.status === "requestError" && | ||
!!frameStackItem.requestError && ( | ||
<TableRow> | ||
<TableHead>Error</TableHead> | ||
<TableCell> | ||
<JSONTree | ||
data={frameStackItem.requestError} | ||
theme="default" | ||
invertTheme | ||
></JSONTree> | ||
</TableCell> | ||
</TableRow> | ||
)} | ||
</TableBody> | ||
</Table> | ||
</> | ||
) : null} | ||
</> | ||
); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.