mirror of
https://github.com/fosrl/pangolin.git
synced 2026-02-21 12:26:40 +00:00
replace dialog with credenza
This commit is contained in:
@@ -6,20 +6,13 @@ import {
|
|||||||
SelectTrigger,
|
SelectTrigger,
|
||||||
SelectValue,
|
SelectValue,
|
||||||
} from "@/components/ui/select";
|
} from "@/components/ui/select";
|
||||||
import {
|
|
||||||
Dialog,
|
|
||||||
DialogContent,
|
|
||||||
DialogDescription,
|
|
||||||
DialogFooter,
|
|
||||||
DialogHeader,
|
|
||||||
DialogTitle,
|
|
||||||
DialogTrigger,
|
|
||||||
} from "@app/components/ui/dialog";
|
|
||||||
import { Badge } from "@app/components/ui/badge";
|
import { Badge } from "@app/components/ui/badge";
|
||||||
import { Label } from "@app/components/ui/label";
|
import { Label } from "@app/components/ui/label";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import { Input } from "./ui/input";
|
import { Input } from "./ui/input";
|
||||||
import { Button } from "./ui/button";
|
import { Button } from "./ui/button";
|
||||||
|
import { Credenza, CredenzaContent, CredenzaDescription, CredenzaFooter, CredenzaHeader, CredenzaTitle, CredenzaTrigger } from "./Credenza";
|
||||||
|
|
||||||
|
|
||||||
export function PathMatchModal({
|
export function PathMatchModal({
|
||||||
@@ -68,15 +61,15 @@ export function PathMatchModal({
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Dialog open={open} onOpenChange={setOpen}>
|
<Credenza open={open} onOpenChange={setOpen}>
|
||||||
<DialogTrigger asChild>{trigger}</DialogTrigger>
|
<CredenzaTrigger asChild>{trigger}</CredenzaTrigger>
|
||||||
<DialogContent className="sm:max-w-[500px]">
|
<CredenzaContent className="sm:max-w-[500px]">
|
||||||
<DialogHeader>
|
<CredenzaHeader>
|
||||||
<DialogTitle>Configure Path Matching</DialogTitle>
|
<CredenzaTitle>Configure Path Matching</CredenzaTitle>
|
||||||
<DialogDescription>
|
<CredenzaDescription>
|
||||||
Set up how incoming requests should be matched based on their path.
|
Set up how incoming requests should be matched based on their path.
|
||||||
</DialogDescription>
|
</CredenzaDescription>
|
||||||
</DialogHeader>
|
</CredenzaHeader>
|
||||||
<div className="grid gap-4 py-4">
|
<div className="grid gap-4 py-4">
|
||||||
<div className="grid gap-2">
|
<div className="grid gap-2">
|
||||||
<Label htmlFor="match-type">Match Type</Label>
|
<Label htmlFor="match-type">Match Type</Label>
|
||||||
@@ -102,7 +95,7 @@ export function PathMatchModal({
|
|||||||
<p className="text-sm text-muted-foreground">{getHelpText()}</p>
|
<p className="text-sm text-muted-foreground">{getHelpText()}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<DialogFooter className="gap-2">
|
<CredenzaFooter className="gap-2">
|
||||||
{value?.path && (
|
{value?.path && (
|
||||||
<Button variant="outline" onClick={handleClear}>
|
<Button variant="outline" onClick={handleClear}>
|
||||||
Clear
|
Clear
|
||||||
@@ -111,9 +104,9 @@ export function PathMatchModal({
|
|||||||
<Button onClick={handleSave} disabled={!path.trim()}>
|
<Button onClick={handleSave} disabled={!path.trim()}>
|
||||||
Save Changes
|
Save Changes
|
||||||
</Button>
|
</Button>
|
||||||
</DialogFooter>
|
</CredenzaFooter>
|
||||||
</DialogContent>
|
</CredenzaContent>
|
||||||
</Dialog>
|
</Credenza>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -177,17 +170,17 @@ export function PathRewriteModal({
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Dialog open={open} onOpenChange={setOpen}>
|
<Credenza open={open} onOpenChange={(v) => !disabled && setOpen(v)}>
|
||||||
<DialogTrigger asChild disabled={disabled}>
|
<CredenzaTrigger asChild>
|
||||||
{trigger}
|
{trigger}
|
||||||
</DialogTrigger>
|
</CredenzaTrigger>
|
||||||
<DialogContent className="sm:max-w-[500px]">
|
<CredenzaContent className="sm:max-w-[500px]">
|
||||||
<DialogHeader>
|
<CredenzaHeader>
|
||||||
<DialogTitle>Configure Path Rewriting</DialogTitle>
|
<CredenzaTitle>Configure Path Rewriting</CredenzaTitle>
|
||||||
<DialogDescription>
|
<CredenzaDescription>
|
||||||
Transform the matched path before forwarding to the target.
|
Transform the matched path before forwarding to the target.
|
||||||
</DialogDescription>
|
</CredenzaDescription>
|
||||||
</DialogHeader>
|
</CredenzaHeader>
|
||||||
<div className="grid gap-4 py-4">
|
<div className="grid gap-4 py-4">
|
||||||
<div className="grid gap-2">
|
<div className="grid gap-2">
|
||||||
<Label htmlFor="rewrite-type">Rewrite Type</Label>
|
<Label htmlFor="rewrite-type">Rewrite Type</Label>
|
||||||
@@ -214,7 +207,7 @@ export function PathRewriteModal({
|
|||||||
<p className="text-sm text-muted-foreground">{getHelpText()}</p>
|
<p className="text-sm text-muted-foreground">{getHelpText()}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<DialogFooter className="gap-2">
|
<CredenzaFooter className="gap-2">
|
||||||
{value?.rewritePath && (
|
{value?.rewritePath && (
|
||||||
<Button variant="outline" onClick={handleClear}>
|
<Button variant="outline" onClick={handleClear}>
|
||||||
Clear
|
Clear
|
||||||
@@ -226,9 +219,9 @@ export function PathRewriteModal({
|
|||||||
>
|
>
|
||||||
Save Changes
|
Save Changes
|
||||||
</Button>
|
</Button>
|
||||||
</DialogFooter>
|
</CredenzaFooter>
|
||||||
</DialogContent>
|
</CredenzaContent>
|
||||||
</Dialog>
|
</Credenza>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user