mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-03-17 23:13:51 +01:00
Add .oxfmtignore to skip generated bindings and wasm-pack output. Add npm format script, update DEVELOPMENT.md for Vite+ toolchain, and format all non-generated files with oxfmt. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
import type { ConfirmProps } from "../components/core/Confirm";
|
|
import { Confirm } from "../components/core/Confirm";
|
|
import type { DialogProps } from "../components/core/Dialog";
|
|
import { showDialog } from "./dialog";
|
|
|
|
type ConfirmArgs = {
|
|
id: string;
|
|
} & Pick<DialogProps, "title" | "description" | "size"> &
|
|
Pick<ConfirmProps, "color" | "confirmText" | "requireTyping">;
|
|
|
|
export async function showConfirm({
|
|
color,
|
|
confirmText,
|
|
requireTyping,
|
|
size = "sm",
|
|
...extraProps
|
|
}: ConfirmArgs) {
|
|
return new Promise((onResult: ConfirmProps["onResult"]) => {
|
|
showDialog({
|
|
...extraProps,
|
|
hideX: true,
|
|
size,
|
|
disableBackdropClose: true, // Prevent accidental dismisses
|
|
render: ({ hide }) => Confirm({ onHide: hide, color, onResult, confirmText, requireTyping }),
|
|
});
|
|
});
|
|
}
|
|
|
|
export async function showConfirmDelete({ confirmText, color, ...extraProps }: ConfirmArgs) {
|
|
return showConfirm({
|
|
color: color ?? "danger",
|
|
confirmText: confirmText ?? "Delete",
|
|
...extraProps,
|
|
});
|
|
}
|