diff --git a/src/Dockerfile-managing-api-dev b/src/Dockerfile-managing-api-dev index 1ef7a29a..58176305 100644 --- a/src/Dockerfile-managing-api-dev +++ b/src/Dockerfile-managing-api-dev @@ -7,20 +7,21 @@ EXPOSE 443 # Use the official Microsoft .NET SDK image to build the code. FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /buildapp -COPY ["/src/Managing.Api/Managing.Api.csproj", "Managing.Api/"] -COPY ["/src/Managing.Bootstrap/Managing.Bootstrap.csproj", "Managing.Bootstrap/"] -COPY ["/src/Managing.Infrastructure.Storage/Managing.Infrastructure.Storage.csproj", "Managing.Infrastructure.Storage/"] -COPY ["/src/Managing.Application/Managing.Application.csproj", "Managing.Application/"] -COPY ["/src/Managing.Common/Managing.Common.csproj", "Managing.Common/"] -COPY ["/src/Managing.Core/Managing.Core.csproj", "Managing.Core/"] -COPY ["/src/Managing.Application.Abstractions/Managing.Application.Abstractions.csproj", "Managing.Application.Abstractions/"] -COPY ["/src/Managing.Domain/Managing.Domain.csproj", "Managing.Domain/"] -COPY ["/src/Managing.Infrastructure.Messengers/Managing.Infrastructure.Messengers.csproj", "Managing.Infrastructure.Messengers/"] -COPY ["/src/Managing.Infrastructure.Exchanges/Managing.Infrastructure.Exchanges.csproj", "Managing.Infrastructure.Exchanges/"] -COPY ["/src/Managing.Infrastructure.Database/Managing.Infrastructure.Databases.csproj", "Managing.Infrastructure.Database/"] +COPY ["/src/Managing.Api/Managing.Api.csproj", "src/Managing.Api/"] +COPY ["/src/Managing.Bootstrap/Managing.Bootstrap.csproj", "src/Managing.Bootstrap/"] +COPY ["/src/Managing.Infrastructure.Storage/Managing.Infrastructure.Storage.csproj", "src/Managing.Infrastructure.Storage/"] +COPY ["/src/Managing.Application/Managing.Application.csproj", "src/Managing.Application/"] +COPY ["/src/Managing.Common/Managing.Common.csproj", "src/Managing.Common/"] +COPY ["/src/Managing.Core/Managing.Core.csproj", "src/Managing.Core/"] +COPY ["/src/Managing.Application.Abstractions/Managing.Application.Abstractions.csproj", "src/Managing.Application.Abstractions/"] +COPY ["/src/Managing.Domain/Managing.Domain.csproj", "src/Managing.Domain/"] +COPY ["/src/Managing.Infrastructure.Messengers/Managing.Infrastructure.Messengers.csproj", "src/Managing.Infrastructure.Messengers/"] +COPY ["/src/Managing.Infrastructure.Exchanges/Managing.Infrastructure.Exchanges.csproj", "src/Managing.Infrastructure.Exchanges/"] +COPY ["/src/Managing.Infrastructure.Database/Managing.Infrastructure.Databases.csproj", "src/Managing.Infrastructure.Database/"] +COPY ["/src/Managing.Infrastructure.Web3/Managing.Infrastructure.Evm.csproj", "src/Managing.Infrastructure.Web3/"] # Restore dependencies for all projects -RUN dotnet restore "/buildapp/Managing.Api/Managing.Api.csproj" +RUN dotnet restore "/buildapp/src/Managing.Api/Managing.Api.csproj" # Copy everything else and build COPY . . @@ -29,6 +30,7 @@ WORKDIR "/buildapp/src/Managing.Api" RUN dotnet build "Managing.Api.csproj" -c Release -o /app/build FROM build AS publish +WORKDIR "/buildapp/src/Managing.Api" RUN dotnet publish "Managing.Api.csproj" -c Release -o /app/publish FROM base AS final diff --git a/src/Managing.Web3Proxy/src/generated/ManagingApiTypes.ts b/src/Managing.Web3Proxy/src/generated/ManagingApiTypes.ts index 6ed34efc..5499f92c 100644 --- a/src/Managing.Web3Proxy/src/generated/ManagingApiTypes.ts +++ b/src/Managing.Web3Proxy/src/generated/ManagingApiTypes.ts @@ -55,6 +55,7 @@ export interface User { maxWaitingTimeForPositionToGetFilledSeconds?: number | null; maxTxnGasFeePerPosition?: number | null; isGmxEnabled?: boolean; + gmxSlippage?: number | null; minimumConfidence?: Confidence | null; trendStrongAgreementThreshold?: number | null; signalAgreementThreshold?: number | null; @@ -1001,6 +1002,7 @@ export interface TradingBotResponse { ticker: Ticker; tradingType: TradingType; masterAgentName?: string | null; + botTradingBalance: number; } export interface PaginatedResponseOfTradingBotResponse { @@ -1023,6 +1025,7 @@ export enum BotSortableColumn { Pnl = "Pnl", WinRate = "WinRate", AgentName = "AgentName", + BotTradingBalance = "BotTradingBalance", } export enum SortDirection { @@ -1507,12 +1510,11 @@ export interface UpdateUserSettingsRequest { autoswapAmount?: number | null; maxWaitingTimeForPositionToGetFilledSeconds?: number | null; maxTxnGasFeePerPosition?: number | null; - isGmxEnabled?: boolean | null; + gmxSlippage?: number | null; minimumConfidence?: Confidence | null; trendStrongAgreementThreshold?: number | null; signalAgreementThreshold?: number | null; allowSignalTrendOverride?: boolean | null; - defaultExchange?: TradingExchanges | null; } export interface PaginatedWhitelistAccountsResponse { diff --git a/src/Managing.WebApp/src/generated/ManagingApi.ts b/src/Managing.WebApp/src/generated/ManagingApi.ts index bfc787ce..c6705d6b 100644 --- a/src/Managing.WebApp/src/generated/ManagingApi.ts +++ b/src/Managing.WebApp/src/generated/ManagingApi.ts @@ -1917,7 +1917,7 @@ export class BotClient extends AuthorizedApiBase { return Promise.resolve(null as any); } - bot_GetBotsPaginated(pageNumber: number | undefined, pageSize: number | undefined, status: BotStatus | null | undefined, name: string | null | undefined, ticker: string | null | undefined, agentName: string | null | undefined, sortBy: BotSortableColumn | undefined, sortDirection: SortDirection | undefined): Promise { + bot_GetBotsPaginated(pageNumber: number | undefined, pageSize: number | undefined, status: BotStatus | null | undefined, name: string | null | undefined, ticker: string | null | undefined, agentName: string | null | undefined, minBalance: number | null | undefined, maxBalance: number | null | undefined, sortBy: BotSortableColumn | undefined, sortDirection: SortDirection | undefined): Promise { let url_ = this.baseUrl + "/Bot/Paginated?"; if (pageNumber === null) throw new Error("The parameter 'pageNumber' cannot be null."); @@ -1935,6 +1935,10 @@ export class BotClient extends AuthorizedApiBase { url_ += "ticker=" + encodeURIComponent("" + ticker) + "&"; if (agentName !== undefined && agentName !== null) url_ += "agentName=" + encodeURIComponent("" + agentName) + "&"; + if (minBalance !== undefined && minBalance !== null) + url_ += "minBalance=" + encodeURIComponent("" + minBalance) + "&"; + if (maxBalance !== undefined && maxBalance !== null) + url_ += "maxBalance=" + encodeURIComponent("" + maxBalance) + "&"; if (sortBy === null) throw new Error("The parameter 'sortBy' cannot be null."); else if (sortBy !== undefined) @@ -2601,7 +2605,7 @@ export class DataClient extends AuthorizedApiBase { return Promise.resolve(null as any); } - data_GetStrategiesPaginated(pageNumber: number | undefined, pageSize: number | undefined, name: string | null | undefined, ticker: string | null | undefined, agentName: string | null | undefined, sortBy: BotSortableColumn | undefined, sortDirection: SortDirection | undefined): Promise { + data_GetStrategiesPaginated(pageNumber: number | undefined, pageSize: number | undefined, name: string | null | undefined, ticker: string | null | undefined, agentName: string | null | undefined, minBalance: number | null | undefined, maxBalance: number | null | undefined, sortBy: BotSortableColumn | undefined, sortDirection: SortDirection | undefined): Promise { let url_ = this.baseUrl + "/Data/GetStrategiesPaginated?"; if (pageNumber === null) throw new Error("The parameter 'pageNumber' cannot be null."); @@ -2617,6 +2621,10 @@ export class DataClient extends AuthorizedApiBase { url_ += "ticker=" + encodeURIComponent("" + ticker) + "&"; if (agentName !== undefined && agentName !== null) url_ += "agentName=" + encodeURIComponent("" + agentName) + "&"; + if (minBalance !== undefined && minBalance !== null) + url_ += "minBalance=" + encodeURIComponent("" + minBalance) + "&"; + if (maxBalance !== undefined && maxBalance !== null) + url_ += "maxBalance=" + encodeURIComponent("" + maxBalance) + "&"; if (sortBy === null) throw new Error("The parameter 'sortBy' cannot be null."); else if (sortBy !== undefined) @@ -4636,6 +4644,7 @@ export interface User { maxWaitingTimeForPositionToGetFilledSeconds?: number | null; maxTxnGasFeePerPosition?: number | null; isGmxEnabled?: boolean; + gmxSlippage?: number | null; minimumConfidence?: Confidence | null; trendStrongAgreementThreshold?: number | null; signalAgreementThreshold?: number | null; @@ -5582,6 +5591,7 @@ export interface TradingBotResponse { ticker: Ticker; tradingType: TradingType; masterAgentName?: string | null; + botTradingBalance: number; } export interface PaginatedResponseOfTradingBotResponse { @@ -5604,6 +5614,7 @@ export enum BotSortableColumn { Pnl = "Pnl", WinRate = "WinRate", AgentName = "AgentName", + BotTradingBalance = "BotTradingBalance", } export enum SortDirection { @@ -6088,12 +6099,11 @@ export interface UpdateUserSettingsRequest { autoswapAmount?: number | null; maxWaitingTimeForPositionToGetFilledSeconds?: number | null; maxTxnGasFeePerPosition?: number | null; - isGmxEnabled?: boolean | null; + gmxSlippage?: number | null; minimumConfidence?: Confidence | null; trendStrongAgreementThreshold?: number | null; signalAgreementThreshold?: number | null; allowSignalTrendOverride?: boolean | null; - defaultExchange?: TradingExchanges | null; } export interface PaginatedWhitelistAccountsResponse { diff --git a/src/Managing.WebApp/src/generated/ManagingApiTypes.ts b/src/Managing.WebApp/src/generated/ManagingApiTypes.ts index 6ed34efc..5499f92c 100644 --- a/src/Managing.WebApp/src/generated/ManagingApiTypes.ts +++ b/src/Managing.WebApp/src/generated/ManagingApiTypes.ts @@ -55,6 +55,7 @@ export interface User { maxWaitingTimeForPositionToGetFilledSeconds?: number | null; maxTxnGasFeePerPosition?: number | null; isGmxEnabled?: boolean; + gmxSlippage?: number | null; minimumConfidence?: Confidence | null; trendStrongAgreementThreshold?: number | null; signalAgreementThreshold?: number | null; @@ -1001,6 +1002,7 @@ export interface TradingBotResponse { ticker: Ticker; tradingType: TradingType; masterAgentName?: string | null; + botTradingBalance: number; } export interface PaginatedResponseOfTradingBotResponse { @@ -1023,6 +1025,7 @@ export enum BotSortableColumn { Pnl = "Pnl", WinRate = "WinRate", AgentName = "AgentName", + BotTradingBalance = "BotTradingBalance", } export enum SortDirection { @@ -1507,12 +1510,11 @@ export interface UpdateUserSettingsRequest { autoswapAmount?: number | null; maxWaitingTimeForPositionToGetFilledSeconds?: number | null; maxTxnGasFeePerPosition?: number | null; - isGmxEnabled?: boolean | null; + gmxSlippage?: number | null; minimumConfidence?: Confidence | null; trendStrongAgreementThreshold?: number | null; signalAgreementThreshold?: number | null; allowSignalTrendOverride?: boolean | null; - defaultExchange?: TradingExchanges | null; } export interface PaginatedWhitelistAccountsResponse {