Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions src/generated/client/sdk.gen.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// This file is auto-generated by @hey-api/openapi-ts

import type { Options as ClientOptions, TDataShape, Client } from '@hey-api/client-fetch';
import type { ListQuotesData, ListQuotesResponse, ListPendingQuotesData, ListPendingQuotesResponse, AdminLookupQuoteData, AdminLookupQuoteResponse, AdminUpdateQuoteData, AdminUpdateQuoteResponse, ResolveOfferData, EnquireQuoteData, EnquireQuoteResponse, LookupQuoteData, LookupQuoteResponse, ActivateKeysetData, ActivateKeysetResponse, DebitData, CreditData, ECashBalance, OnChainBalanceData, OnChainData, KeysetInfoData, KeySetInfo, RequestToMintData, RequestToMintResponseInfo, IdentityDetailData, IdentityDetailInfo, BillPaymentData, BillPaymentState, MintInfo, MintInfoData} from './types.gen';
import type { ListQuotesData, ListQuotesResponse, ListPendingQuotesData, ListPendingQuotesResponse, AdminLookupQuoteData, AdminLookupQuoteResponse, AdminUpdateQuoteData, AdminUpdateQuoteResponse, ResolveOfferData, EnquireQuoteData, EnquireQuoteResponse, LookupQuoteData, LookupQuoteResponse, EnableMintingData, EnableMintingResponse, DebitData, CreditData, ECashBalance, OnChainBalanceData, OnChainData, KeysetInfoData, KeySetInfo, RequestToMintData, RequestToMintResponseInfo, IdentityDetailData, IdentityDetailInfo, BillPaymentData, BillPaymentState, MintInfo, MintInfoData} from './types.gen';

import { client as _heyApiClient } from './client.gen';

Expand Down Expand Up @@ -88,11 +88,11 @@ export const lookupQuote = <ThrowOnError extends boolean = false>(options: Optio
};

/**
* --------------------------- Activate keyset
* --------------------------- Enable minting
*/
export const activateKeyset = <ThrowOnError extends boolean = false>(options: Options<ActivateKeysetData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).post<ActivateKeysetResponse, unknown, ThrowOnError>({
url: '/v1/admin/keys/enable',
export const enableMinting = <ThrowOnError extends boolean = false>(options: Options<EnableMintingData, ThrowOnError>) => {
return (options.client ?? _heyApiClient).post<EnableMintingResponse, unknown, ThrowOnError>({
url: '/v1/admin/credit/quote/enable_mint/{qid}',
...options,
headers: {
'Content-Type': 'application/json',
Expand Down
22 changes: 13 additions & 9 deletions src/generated/client/types.gen.ts
Original file line number Diff line number Diff line change
Expand Up @@ -408,32 +408,36 @@ export type ClientOptions = {
token?: string;
};

export type ActivateKeysetRequest = {
qid: string;
export type EnableMintingRequest = {
};

export type ActivateKeysetData = {
body: ActivateKeysetRequest;
path?: never;
export type EnableMintingData = {
body: EnableMintingRequest;
path: {
/**
* The quote id
*/
id: string;
};
query?: never;
url: '/v1/admin/keys/enable';
url: '/v1/admin/credit/quote/enable_minting/{id}';
};

export type ActivateKeysetErrors = {
export type EnableMintingErrors = {
/**
* keyset id not found
*/
404: unknown;
};

export type ActivateKeysetResponses = {
export type EnableMintingResponses = {
/**
* Successful response
*/
200: unknown;
};

export type ActivateKeysetResponse = ActivateKeysetResponses[keyof ActivateKeysetResponses];
export type EnableMintingResponse = EnableMintingResponses[keyof EnableMintingResponses];

/**
* Currency unit used for ECash
Expand Down
43 changes: 22 additions & 21 deletions src/pages/quotes/QuotePage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import {
adminLookupQuoteQueryKey,
adminUpdateQuoteMutation,
} from "@/generated/client/@tanstack/react-query.gen"
import { activateKeyset, keysetInfo, paymentStatus, requestToMint } from "@/generated/client/sdk.gen"
import { enableMinting, keysetInfo, paymentStatus, requestToMint } from "@/generated/client/sdk.gen"
import { cn, getInitials } from "@/lib/utils"
import { formatDate, humanReadableDuration } from "@/utils/dates"

Expand Down Expand Up @@ -234,7 +234,7 @@ function QuoteActions({
const [offerFormDrawerOpen, setOfferFormDrawerOpen] = useState(false)
const [offerConfirmDrawerOpen, setOfferConfirmDrawerOpen] = useState(false)
const [denyConfirmDrawerOpen, setDenyConfirmDrawerOpen] = useState(false)
const [activateKeysetConfirmDrawerOpen, setActivateKeysetConfirmDrawerOpen] = useState(false)
const [enableMintingConfirmDrawerOpen, setEnableMintingConfirmDrawerOpen] = useState(false)
const [requestToPayConfirmDrawerOpen, setRequestToPayConfirmDrawerOpen] = useState(false)
const [payRequestResponse, setPayRequestResponse] = useState<RequestToMintResponseInfo | null>(null)

Expand Down Expand Up @@ -287,28 +287,29 @@ function QuoteActions({
},
})

const activateKeysetMutation = useMutation({
const enableMintingMutation = useMutation({
mutationFn: async () => {
const { data } = await activateKeyset({
body: {
qid: value.id,
const { data } = await enableMinting({
path: {
id: value.id,
},
body: {},
throwOnError: true,
})
return data
},
onMutate: () => {
toast.loading("Activating keyset…", { id: `quote-${value.id}-activate-keyset` })
toast.loading("Enabling minting…", { id: `quote-${value.id}-enable-minting` })
},
onSettled: () => {
toast.dismiss(`quote-${value.id}-activate-keyset`)
toast.dismiss(`quote-${value.id}-enable-minting`)
},
onError: (error) => {
toast.error("Error while activating keyset: " + error.message)
toast.error("Error while enabling minting: " + error.message)
console.warn(error)
},
onSuccess: () => {
toast.success("Keyset has been activated.")
toast.success("Minting has been enabled.")
void queryClient.invalidateQueries()
},
})
Expand Down Expand Up @@ -372,8 +373,8 @@ function QuoteActions({
})
}

const onActivateKeyset = () => {
activateKeysetMutation.mutate()
const onEnableMinting = () => {
enableMintingMutation.mutate()
}

const onRequestToPay = () => {
Expand Down Expand Up @@ -458,22 +459,22 @@ function QuoteActions({

{value.status === "Accepted" && "keyset_id" in value ? (
<ConfirmDrawer
title="Confirm activating keyset"
description="Are you sure you want to activate the keyset for this quote?"
open={activateKeysetConfirmDrawerOpen}
onOpenChange={setActivateKeysetConfirmDrawerOpen}
title="Confirm enabling minting"
description="Are you sure you want to enable minting for this quote?"
open={enableMintingConfirmDrawerOpen}
onOpenChange={setEnableMintingConfirmDrawerOpen}
onSubmit={() => {
onActivateKeyset()
setActivateKeysetConfirmDrawerOpen(false)
onEnableMinting()
setEnableMintingConfirmDrawerOpen(false)
}}
submitButtonText="Yes, activate keyset"
submitButtonText="Yes, enable minting"
trigger={
<Button
className="flex-1"
disabled={isFetching || activateKeysetMutation.isPending || !newKeyset}
disabled={isFetching || enableMintingMutation.isPending || !newKeyset}
variant="default"
>
Activate Keyset {activateKeysetMutation.isPending && <LoaderIcon className="stroke-1 animate-spin" />}
Enable Minting {enableMintingMutation.isPending && <LoaderIcon className="stroke-1 animate-spin" />}
</Button>
}
/>
Expand Down
Loading