Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: chore msg factories #323

Merged
merged 4 commits into from
Feb 22, 2024
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
11 changes: 1 addition & 10 deletions .github/workflows/test-ts-sdk.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
repository: NibiruChain/nibiru
ref: releases/v0.21.x
ref: main
path: "nibiru"
token: ${{ secrets.NIBIBOT_GIT_TOKEN }}

Expand Down Expand Up @@ -57,15 +57,6 @@ jobs:
username: nibibot
password: ${{ secrets.NIBIBOT_GIT_TOKEN }}

- name: Checkout nibiru Repository
uses: actions/checkout@v4
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
repository: NibiruChain/nibiru
ref: main
path: "nibiru"
token: ${{ secrets.NIBIBOT_GIT_TOKEN }}

- name: Run Nibiru network in the background
run: |
cd nibiru
Expand Down
8 changes: 4 additions & 4 deletions jest.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@ const config: Config = {
coverageReporters: ["json-summary", "text", "html", "lcov"],
coverageThreshold: {
global: {
branches: 85,
functions: 85,
lines: 85,
statements: 85,
branches: 75,
functions: 75,
lines: 75,
statements: 75,
cgilbe27 marked this conversation as resolved.
Show resolved Hide resolved
},
},
globals: {
Expand Down
4 changes: 2 additions & 2 deletions scripts/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ set -e
if [ -d "./nibiru/" ]; then
echo "The ./nibiru/ directory exists."
cd nibiru
git checkout releases/v0.21.x
git checkout main
cd ..
else
cd ../nibiru
git checkout releases/v0.21.x
git checkout main
git pull
cd ../ts-sdk
fi
Expand Down
6 changes: 6 additions & 0 deletions scripts/protocgen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -46,10 +46,16 @@ rm $PKG_OUT_DIR/index.google.protobuf.ts
# # Empty fles
rm -rf $PKG_OUT_DIR/amino
rm -rf $PKG_OUT_DIR/gogoproto
rm -rf $PKG_OUT_DIR/cosmos/msg
rm $PKG_OUT_DIR/google/api/annotations.ts
rm $PKG_OUT_DIR/index.gogoproto.ts
rm $PKG_OUT_DIR/index.amino.ts
rm $PKG_OUT_DIR/index.cosmos.msg.v1.ts
rm $PKG_OUT_DIR/index.cosmos.msg.ts

sed 's/export \* as gogoproto from \"\.\/index\.gogoproto\"\;//' $PKG_OUT_DIR/index.ts > tmpfile && mv tmpfile $PKG_OUT_DIR/index.ts
sed 's/export \* as amino from \"\.\/index\.amino\"\;//' $PKG_OUT_DIR/index.ts > tmpfile && mv tmpfile $PKG_OUT_DIR/index.ts
sed 's/export \* as google from \"\.\/index\.google\"\;//' $PKG_OUT_DIR/index.ts > tmpfile && mv tmpfile $PKG_OUT_DIR/index.ts
sed 's/export \* from \"\.\/google\/api\/annotations\"\;//' $PKG_OUT_DIR/index.google.api.ts > tmpfile && mv tmpfile $PKG_OUT_DIR/index.google.api.ts
sed 's/export \* as protobuf from \"\.\/index.google.protobuf\"\;//' $PKG_OUT_DIR/index.google.ts > tmpfile && mv tmpfile $PKG_OUT_DIR/index.google.ts
sed 's/export \* as msg from \"\.\/index.cosmos.msg\"\;//' $PKG_OUT_DIR/index.cosmos.ts > tmpfile && mv tmpfile $PKG_OUT_DIR/index.cosmos.ts
4 changes: 2 additions & 2 deletions src/gql/query/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,17 @@ export * from "./featureFlags"
export * from "./governance"
export * from "./ibc"
export * from "./inflation"
export * from "./markPriceCandles"
export * from "./marketing"
export * from "./markPriceCandles"
export * from "./oracle"
export * from "./perp"
export * from "./redelegations"
export * from "./spotLpPositions"
export * from "./spotPoolCreated"
export * from "./spotPoolExited"
export * from "./spotPoolJoined"
export * from "./spotPoolSwap"
export * from "./spotPools"
export * from "./spotPoolSwap"
export * from "./stats"
export * from "./unbondings"
export * from "./users"
Expand Down
88 changes: 88 additions & 0 deletions src/sdk/msg/devgas.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
import { EncodeObject, GeneratedType } from "@cosmjs/proto-signing"
import {
MsgCancelFeeShare,
MsgRegisterFeeShare,
MsgUpdateFeeShare,
MsgUpdateParams,
} from "../../protojs/nibiru/devgas/v1/tx"
import { TxMessage } from ".."

const protobufPackage = "nibiru.devgas.v1"

export const DEVGAS_MSG_TYPE_URLS = {
MsgCancelFeeShare: `/${protobufPackage}.MsgCancelFeeShare`,
MsgRegisterFeeShare: `/${protobufPackage}.MsgRegisterFeeShare`,
MsgUpdateFeeShare: `/${protobufPackage}.MsgUpdateFeeShare`,
MsgUpdateParams: `/${protobufPackage}.MsgUpdateParams`,
}

export const devgasTypes: ReadonlyArray<[string, GeneratedType]> = [
[DEVGAS_MSG_TYPE_URLS.MsgCancelFeeShare, MsgCancelFeeShare],
[DEVGAS_MSG_TYPE_URLS.MsgRegisterFeeShare, MsgRegisterFeeShare],
[DEVGAS_MSG_TYPE_URLS.MsgUpdateFeeShare, MsgUpdateFeeShare],
[DEVGAS_MSG_TYPE_URLS.MsgUpdateParams, MsgUpdateParams],
]

export interface MsgCancelFeeShareEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgCancelFeeShare>
}

export const isMsgCancelFeeShareEncodeObject = (encodeObject: EncodeObject) =>
encodeObject.typeUrl === DEVGAS_MSG_TYPE_URLS.MsgCancelFeeShare

export interface MsgRegisterFeeShareEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgRegisterFeeShare>
}

export const isMsgRegisterFeeShareEncodeObject = (encodeObject: EncodeObject) =>
encodeObject.typeUrl === DEVGAS_MSG_TYPE_URLS.MsgRegisterFeeShare

export interface MsgUpdateFeeShareEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgUpdateFeeShare>
}

export const isMsgUpdateFeeShareEncodeObject = (encodeObject: EncodeObject) =>
encodeObject.typeUrl === DEVGAS_MSG_TYPE_URLS.MsgUpdateFeeShare

export interface MsgUpdateParamsEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgUpdateParams>
}

export const isMsgUpdateParamsEncodeObject = (encodeObject: EncodeObject) =>
encodeObject.typeUrl === DEVGAS_MSG_TYPE_URLS.MsgUpdateParams

// ----------------------------------------------------------------------------

export class DevgasMsgFactory {
static cancelFeeShare(msg: MsgCancelFeeShare): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgCancelFeeShare`,
value: MsgCancelFeeShare.fromPartial(msg),
}
}

static registerFeeShare(msg: MsgRegisterFeeShare): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgRegisterFeeShare`,
value: MsgRegisterFeeShare.fromPartial(msg),
}
}

static MsgUpdateFeeShare(msg: MsgUpdateFeeShare): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgUpdateFeeShare`,
value: MsgUpdateFeeShare.fromPartial(msg),
}
}

static updateParams(msg: MsgUpdateParams): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgUpdateParams`,
value: MsgUpdateParams.fromPartial(msg),
}
}
}
17 changes: 15 additions & 2 deletions src/sdk/msg/encode-types.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,26 @@
import { EncodeObject } from "@cosmjs/proto-signing"
import { PerpMsgFactory, SpotMsgFactory } from "."
import {
DevgasMsgFactory,
InflationMsgFactory,
OracleMsgFactory,
PerpMsgFactory,
SpotMsgFactory,
SudoMsgFactory,
TokenfactoryMsgFactory,
} from "."

export interface MsgTypeUrls {
[msg: string]: string
}

export declare class MsgFactory {
spot: typeof SpotMsgFactory
devgas: typeof DevgasMsgFactory
inflation: typeof InflationMsgFactory
oracle: typeof OracleMsgFactory
perp: typeof PerpMsgFactory
spot: typeof SpotMsgFactory
sudo: typeof SudoMsgFactory
tokenfactory: typeof TokenfactoryMsgFactory
}

export declare const Msg: MsgFactory
Expand Down
5 changes: 5 additions & 0 deletions src/sdk/msg/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@
* @file Automatically generated by barrelsby.
*/

export * from "./devgas"
export * from "./encode-types"
export * from "./inflation"
export * from "./oracle"
export * from "./perp"
export * from "./spot"
export * from "./sudo"
export * from "./tokenfactory"
53 changes: 53 additions & 0 deletions src/sdk/msg/inflation.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
import { EncodeObject, GeneratedType } from "@cosmjs/proto-signing"
import {
MsgEditInflationParams,
MsgToggleInflation,
} from "../../protojs/nibiru/inflation/v1/tx"
import { TxMessage } from ".."

const protobufPackage = "nibiru.inflation.v1"

export const INFLATION_MSG_TYPE_URLS = {
MsgEditInflationParams: `/${protobufPackage}.MsgEditInflationParams`,
MsgToggleInflation: `/${protobufPackage}.MsgToggleInflation`,
}

export const inflationTypes: ReadonlyArray<[string, GeneratedType]> = [
[INFLATION_MSG_TYPE_URLS.MsgEditInflationParams, MsgEditInflationParams],
[INFLATION_MSG_TYPE_URLS.MsgToggleInflation, MsgToggleInflation],
]

export interface MsgEditInflationParamsEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgEditInflationParams>
}

export const isMsgEditInflationParamsEncodeObject = (
encodeObject: EncodeObject
) => encodeObject.typeUrl === INFLATION_MSG_TYPE_URLS.MsgEditInflationParams

export interface MsgToggleInflationEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgToggleInflation>
}

export const isMsgToggleInflationEncodeObject = (encodeObject: EncodeObject) =>
encodeObject.typeUrl === INFLATION_MSG_TYPE_URLS.MsgToggleInflation

// ----------------------------------------------------------------------------

export class InflationMsgFactory {
static editInflationParams(msg: MsgEditInflationParams): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgEditInflationParams`,
value: MsgEditInflationParams.fromPartial(msg),
}
}

static toggleInflation(msg: MsgToggleInflation): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgToggleInflation`,
value: MsgToggleInflation.fromPartial(msg),
}
}
}
103 changes: 103 additions & 0 deletions src/sdk/msg/oracle.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
import { EncodeObject, GeneratedType } from "@cosmjs/proto-signing"
import {
MsgAggregateExchangeRatePrevote,
MsgAggregateExchangeRateVote,
MsgDelegateFeedConsent,
MsgEditOracleParams,
} from "../../protojs/nibiru/oracle/v1/tx"
import { TxMessage } from ".."

const protobufPackage = "nibiru.oracle.v1"

export const ORACLE_MSG_TYPE_URLS = {
MsgAggregateExchangeRatePrevote: `/${protobufPackage}.MsgAggregateExchangeRatePrevote`,
MsgAggregateExchangeRateVote: `/${protobufPackage}.MsgAggregateExchangeRateVote`,
MsgDelegateFeedConsent: `/${protobufPackage}.MsgDelegateFeedConsent`,
MsgEditOracleParams: `/${protobufPackage}.MsgEditOracleParams`,
}

export const oracleTypes: ReadonlyArray<[string, GeneratedType]> = [
[
ORACLE_MSG_TYPE_URLS.MsgAggregateExchangeRatePrevote,
MsgAggregateExchangeRatePrevote,
],
[
ORACLE_MSG_TYPE_URLS.MsgAggregateExchangeRateVote,
MsgAggregateExchangeRateVote,
],
[ORACLE_MSG_TYPE_URLS.MsgDelegateFeedConsent, MsgDelegateFeedConsent],
[ORACLE_MSG_TYPE_URLS.MsgEditOracleParams, MsgEditOracleParams],
]

export interface MsgAggregateExchangeRatePrevoteEncodeObject
extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgAggregateExchangeRatePrevote>
}

export const isMsgAggregateExchangeRatePrevoteEncodeObject = (
encodeObject: EncodeObject
) =>
encodeObject.typeUrl === ORACLE_MSG_TYPE_URLS.MsgAggregateExchangeRatePrevote

export interface MsgAggregateExchangeRateVoteEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgAggregateExchangeRateVote>
}

export const isMsgAggregateExchangeRateVoteEncodeObject = (
encodeObject: EncodeObject
) => encodeObject.typeUrl === ORACLE_MSG_TYPE_URLS.MsgAggregateExchangeRateVote

export interface MsgDelegateFeedConsentEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgDelegateFeedConsent>
}

export const isMsgDelegateFeedConsentEncodeObject = (
encodeObject: EncodeObject
) => encodeObject.typeUrl === ORACLE_MSG_TYPE_URLS.MsgDelegateFeedConsent

export interface MsgEditOracleParamsEncodeObject extends EncodeObject {
readonly typeUrl: string
readonly value: Partial<MsgEditOracleParams>
}

export const isMsgEditOracleParamsEncodeObject = (encodeObject: EncodeObject) =>
encodeObject.typeUrl === ORACLE_MSG_TYPE_URLS.MsgEditOracleParams

// ----------------------------------------------------------------------------

export class OracleMsgFactory {
static aggregateExchangeRatePrevote(
msg: MsgAggregateExchangeRatePrevote
): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgAggregateExchangeRatePrevote`,
value: MsgAggregateExchangeRatePrevote.fromPartial(msg),
}
}

static aggregateExchangeRateVote(
msg: MsgAggregateExchangeRateVote
): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgAggregateExchangeRateVote`,
value: MsgAggregateExchangeRateVote.fromPartial(msg),
}
}

static delegateFeedConsent(msg: MsgDelegateFeedConsent): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgDelegateFeedConsent`,
value: MsgDelegateFeedConsent.fromPartial(msg),
}
}

static editOracleParams(msg: MsgEditOracleParams): TxMessage {
return {
typeUrl: `/${protobufPackage}.MsgEditOracleParams`,
value: MsgEditOracleParams.fromPartial(msg),
}
}
}
Loading
Loading