mirror of
https://github.com/orionprotocol/sdk.git
synced 2026-03-27 08:07:46 +03:00
Types improvements
This commit is contained in:
@@ -2,6 +2,7 @@ export { default as cancelOrderTypes } from './cancelOrderTypes';
|
||||
export { default as orderStatuses } from './orderStatuses';
|
||||
export { default as orderTypes } from './orderTypes';
|
||||
export { default as subOrderStatuses } from './subOrderStatuses';
|
||||
export { default as networkCodes } from './networkCodes';
|
||||
|
||||
export * from './chains';
|
||||
export * from './precisions';
|
||||
|
||||
1
src/constants/networkCodes.ts
Normal file
1
src/constants/networkCodes.ts
Normal file
@@ -0,0 +1 @@
|
||||
export default ['ftm', 'bsc', 'eth', 'polygon', 'okc'] as const;
|
||||
@@ -14,6 +14,7 @@ import { pairConfigSchema } from './schemas';
|
||||
import {
|
||||
aggregatedOrderbookSchema, exchangeOrderbookSchema,
|
||||
} from './schemas/aggregatedOrderbookSchema';
|
||||
import networkCodes from '../../constants/networkCodes';
|
||||
|
||||
class OrionAggregator {
|
||||
private readonly apiUrl: string;
|
||||
@@ -222,7 +223,7 @@ class OrionAggregator {
|
||||
*/
|
||||
placeAtomicSwap = (
|
||||
secretHash: string,
|
||||
sourceNetworkCode: string,
|
||||
sourceNetworkCode: Uppercase<typeof networkCodes[number]>,
|
||||
) => fetchWithValidation(
|
||||
`${this.apiUrl}/api/v1/atomic-swap`,
|
||||
placeAtomicSwapSchema,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { z } from 'zod';
|
||||
import networkCodes from '../../../constants/networkCodes';
|
||||
import redeemOrderSchema from './redeemOrderSchema';
|
||||
|
||||
export const atomicSwapHistorySchema = z.array(z.object({
|
||||
@@ -11,7 +12,7 @@ export const atomicSwapHistorySchema = z.array(z.object({
|
||||
expiration: z.number(),
|
||||
secretHash: z.string(),
|
||||
used: z.boolean(),
|
||||
sourceNetworkCode: z.string(),
|
||||
sourceNetworkCode: z.enum(networkCodes),
|
||||
}),
|
||||
redeemOrder: redeemOrderSchema,
|
||||
status: z.enum(['SETTLED', 'EXPIRED', 'ACTIVE']),
|
||||
|
||||
@@ -14,6 +14,7 @@ import {
|
||||
import redeemOrderSchema from '../OrionAggregator/schemas/redeemOrderSchema';
|
||||
import { sourceAtomicHistorySchema, targetAtomicHistorySchema } from './schemas/atomicHistorySchema';
|
||||
import { makePartial } from '../../utils';
|
||||
import { networkCodes } from '../../constants';
|
||||
|
||||
interface IAdminAuthHeaders {
|
||||
auth: string;
|
||||
@@ -37,7 +38,7 @@ type AtomicSwapHistoryBaseQuery = {
|
||||
receiver?: string,
|
||||
used?: 0 | 1,
|
||||
page?: number,
|
||||
sourceNetworkCode?: string,
|
||||
sourceNetworkCode?: 'ftm' | 'bsc' | 'eth' | 'polygon' | 'okc',
|
||||
}
|
||||
|
||||
type AtomicSwapHistorySourceQuery = AtomicSwapHistoryBaseQuery & {
|
||||
@@ -95,7 +96,7 @@ class OrionBlockchain {
|
||||
return `${this.apiUrl}/`;
|
||||
}
|
||||
|
||||
private getSummaryRedeem = (brokerAddress: string, unshifted?: 1 | 0, sourceNetworkCode?: string) => {
|
||||
private getSummaryRedeem = (brokerAddress: string, unshifted?: 1 | 0, sourceNetworkCode?: typeof networkCodes[number]) => {
|
||||
const url = new URL(`${this.apiUrl}/api/atomic/summary-redeem/${brokerAddress}`);
|
||||
if (unshifted) {
|
||||
url.searchParams.append('unshifted', unshifted.toString());
|
||||
|
||||
@@ -26,7 +26,7 @@ export function isUnknownObject(x: unknown): x is {
|
||||
return x !== null && typeof x === 'object';
|
||||
}
|
||||
|
||||
export function isKeyOfObject<T>(
|
||||
export function isKeyOfObject<K extends string | number | symbol, T extends Record<K, unknown>>(
|
||||
key: string | number | symbol,
|
||||
obj: T,
|
||||
): key is keyof T {
|
||||
|
||||
Reference in New Issue
Block a user