Skip to content

Commit

Permalink
fix: transaction status field no more on place order (#89)
Browse files Browse the repository at this point in the history
* fix: transaction status field no more on place order

* chore: ver bump
  • Loading branch information
LukasDeco authored May 15, 2024
1 parent db5878f commit db94ef6
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 33 deletions.
62 changes: 34 additions & 28 deletions lib/client/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,17 @@ import {
TokenWithPDA,
LiquidityAddError,
ProposalAccounts,
ProgramVersionLabel,
ProgramVersionLabel
} from "@/types";
import { AutocratClient, SwapType } from "@metadaoproject/futarchy-ts";
import { SwapType } from "@metadaoproject/futarchy-ts";
import { Observable } from "rxjs";
import { SpotObservation, TwapObservation } from "@/types/prices";
import { SendTransactionResponse } from "@/types/transactions";
import { BN } from "@coral-xyz/anchor";
import {
CreateProposalInstruction,
MarketParams,
ProposalDetails,
ProposalDetails
} from "@/types/createProp";

export interface FutarchyClient {
Expand All @@ -42,13 +42,13 @@ export interface FutarchyDaoClient {
fetchAllDaos(): Promise<DaoAggregate[]>;
fetchDao(
daoAddress: string,
protocol: FutarchyProtocol,
protocol: FutarchyProtocol
): Promise<DaoAggregate | null>;
getMinLpToProvide(
daoAggregate: DaoAggregate,
daoAggregate: DaoAggregate
): Promise<{ base: BN; quote: BN } | undefined>;
getTreasuryBalance(
daoAccount: DaoAccount,
daoAccount: DaoAccount
): Promise<{ total: number; tokens: TokenWithBalance[] }>;
}

Expand All @@ -58,46 +58,51 @@ export interface FutarchyProposalsClient {
deposit(
amount: number,
vaultAccountAddress: PublicKey,
vaultAccount: VaultAccountWithProtocol,
vaultAccount: VaultAccountWithProtocol
): SendTransactionResponse;
withdraw(proposal: Proposal): SendTransactionResponse;
createProposal(
daoAggregate: DaoAggregate,
version: "V0.2" | "V1",
instructionParams: CreateProposalInstruction,
marketParams: MarketParams,
proposalDetails: ProposalDetails,
proposalDetails: ProposalDetails
): SendTransactionResponse;
finalizeProposal(proposal: Proposal): SendTransactionResponse;
saveProposalDetails(proposalDetails: ProposalDetails): void;
updateProposalAccounts(accounts: ProposalAccounts): void;
mergeConditionalTokensForUnderlyingTokens(
programVersion: ProgramVersionLabel,
amoutn: BN,
proposal: Proposal,
underlyingToken: "base" | "quote"
): SendTransactionResponse;
finalizeProposal(proposal: Proposal): SendTransactionResponse,
saveProposalDetails(proposalDetails: ProposalDetails): void,
updateProposalAccounts(accounts: ProposalAccounts): void
mergeConditionalTokensForUnderlyingTokens(programVersion: ProgramVersionLabel, amoutn: BN, proposal: Proposal, underlyingToken: "base" | "quote"): SendTransactionResponse
}

export interface FutarchyBalancesClient {
getDaoAggregateMainTokensByMint(
daoAggregate: DaoAggregate,
owner: PublicKey | null,
owner: PublicKey | null
): Map<string, Pick<TokenWithPDA, "token"> & { pda: PublicKey | null }>;
fetchMainTokenWalletBalances(
dao: DaoAggregate,
ownerWallet: PublicKey,
ownerWallet: PublicKey
): Promise<TokenWithBalance[]>;
watchMainTokenWalletBalances(
dao: DaoAggregate,
ownerWallet: PublicKey,
ownerWallet: PublicKey
): Observable<TokenWithBalance>[];
getConditionalTokensFromProposals(
proposals: Proposal[],
owner: PublicKey,
quoteToken: TokenProps,
baseToken: TokenProps,
baseToken: TokenProps
): Array<TokenWithPDA & { proposal: PublicKey }>;
fetchAllConditionalTokenWalletBalances(
ownerWallet: PublicKey,
quoteToken: TokenProps,
baseToken: TokenProps,
proposals: Proposal[],
proposals: Proposal[]
): Promise<TokenWithBalancePDAAndProposal[]>;
watchTokenBalance(tokenWithPDA: TokenWithPDA): Observable<TokenWithBalance>;
}
Expand All @@ -106,31 +111,31 @@ export interface FutarchyMarketsClient {
openbook: FutarchyOrderbookMarketsClient;
amm: FutarchyAmmMarketsClient;
fetchMarket(
request: MarketFetchRequest,
request: MarketFetchRequest
): Promise<OpenbookMarket | AmmMarket | undefined>;
watchAllUserOrders(owner: PublicKey): Observable<Array<Order>>;
watchUserOrdersForMarket(
owner: PublicKey,
marketAcct: PublicKey,
marketAcct: PublicKey
): Observable<Array<Order>>;
watchTwapPrices(marketKey: PublicKey): Observable<TwapObservation[]>;
watchSpotPrices(marketKey: PublicKey): Observable<SpotObservation[]>;
}

export interface FutarchyOrderbookMarketsClient<
M extends Market = Market,
O extends Order = Order,
O extends Order = Order
> {
fetchMarket(request: MarketFetchRequest): Promise<M | undefined>;
fetchOrderBook(market: M): Promise<Orderbook<O> | undefined>;
fetchUserOrdersFromOrderbooks(
owner: PublicKey,
orderbooks: Orderbook<O>[],
orderbooks: Orderbook<O>[]
): Promise<O[]>;
placeOrder(
market: M,
order: Omit<O, "owner" | "status" | "filled">,
placeOrderType: PlaceOrderType,
order: Omit<O, "owner" | "transactionStatus" | "status" | "filled">,
placeOrderType: PlaceOrderType
): SendTransactionResponse;
cancelOrder(market: M, order: O): SendTransactionResponse;
}
Expand All @@ -142,26 +147,26 @@ export interface FutarchyAmmMarketsClient {
swapType: SwapType,
inputAmount: number,
outputAmountMin: number,
slippage: number,
slippage: number
): SendTransactionResponse;
removeLiquidity(
ammMarket: AmmMarket,
lpTokensToBurn: number,
slippage: number,
slippage: number
): SendTransactionResponse;
validateAddLiquidity(
ammMarket: AmmMarket,
quoteAmount: number,
maxBaseAmount: number,
slippage: number,
userBaseBalance?: number,
userQuoteBalance?: number,
userQuoteBalance?: number
): LiquidityAddError | null;
addLiquidity(
ammAddr: AmmMarket,
quoteAmount: number,
maxBaseAmount: number,
slippage: number,
slippage: number
): SendTransactionResponse;
}

Expand All @@ -175,5 +180,6 @@ export interface CreateProposal {
version: "V0.2" | "V1",
instructionParams: CreateProposalInstruction,
marketParams: MarketParams,
proposalDetails: ProposalDetails): void
proposalDetails: ProposalDetails
): void;
}
4 changes: 2 additions & 2 deletions lib/client/indexer/market-clients/openbookMarkets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
OpenbookOrder,
Order,
Orderbook,
PlaceOrderType,
PlaceOrderType
} from "@/types";
import { FutarchyOrderbookMarketsClient } from "@/client";
import { PublicKey } from "@solana/web3.js";
Expand Down Expand Up @@ -50,7 +50,7 @@ export class FutarchyIndexerOpenbookMarketsClient

async placeOrder(
market: OpenbookMarket,
order: Omit<OpenbookOrder, "status" | "filled">,
order: Omit<OpenbookOrder, "status" | "transactionStatus" | "filled">,
placeOrderType: PlaceOrderType
): SendTransactionResponse {
return this.rpcMarketsClient.placeOrder(market, order, placeOrderType);
Expand Down
10 changes: 8 additions & 2 deletions lib/client/rpc/market-clients/openbookMarkets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,10 @@ export class FutarchyOpenbookMarketsRPCClient

async placeOrder(
market: OpenbookMarket,
order: Omit<OpenbookOrder, "owner" | "status" | "filled">,
order: Omit<
OpenbookOrder,
"owner" | "transactionStatus" | "status" | "filled"
>,
placeOrderType: PlaceOrderType
): SendTransactionResponse {
if (!this.transactionSender)
Expand Down Expand Up @@ -449,7 +452,10 @@ export class FutarchyOpenbookMarketsRPCClient
/** deprecated */
async placeOrderNoNewOpenOrdersAccount(
market: OpenbookMarket,
order: Omit<OpenbookOrder, "owner" | "status" | "filled">,
order: Omit<
OpenbookOrder,
"owner" | "transactionStatus" | "status" | "filled"
>,
placeOrderType: PlaceOrderType,
openOrdersAccountAddress?: PublicKey
): SendTransactionResponse {
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@metadaoproject/futarchy-sdk",
"version": "1.1.0-alpha.33",
"version": "1.1.0-alpha.34",
"main": "dist",
"scripts": {
"build": "tsc --project tsconfig.build.json && tscpaths -p tsconfig.json -s ./lib -o ./dist",
Expand Down

0 comments on commit db94ef6

Please sign in to comment.