Skip to content
This repository has been archived by the owner on Jul 7, 2021. It is now read-only.

Commit

Permalink
feat: implement TransactionData#isUnvote (#516)
Browse files Browse the repository at this point in the history
  • Loading branch information
faustbrian authored Jul 6, 2020
1 parent 5623239 commit 43d8abe
Show file tree
Hide file tree
Showing 14 changed files with 100 additions and 16 deletions.
20 changes: 18 additions & 2 deletions packages/platform-sdk-ark/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return this.data.vendorField;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return this.data.asset;
}

Expand All @@ -94,7 +94,23 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
}

public isVote(): boolean {
return this.data.typeGroup === 1 && this.data.type === 3;
const isVote = this.data.typeGroup === 1 && this.data.type === 3;

if (!isVote) {
return false;
}

return (this.asset().votes as string[])[0].startsWith("+");
}

public isUnvote(): boolean {
const isVote = this.data.typeGroup === 1 && this.data.type === 3;

if (!isVote) {
return false;
}

return (this.asset().votes as string[])[0].startsWith("-");
}

public isMultiSignature(): boolean {
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-atom/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return this.data.tx.value.memo;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -72,6 +72,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-btc/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return undefined;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -62,6 +62,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-eos/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return this.data.data;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -62,6 +62,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-eth/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return this.data.data;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -62,6 +62,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
28 changes: 26 additions & 2 deletions packages/platform-sdk-lsk/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return this.data.asset.data;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -67,7 +67,31 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
}

public isVote(): boolean {
return this.data.type === 11;
if (this.data.type !== 11) {
return false;
}

for (const vote of this.asset().votes as string[]) {
if (vote.startsWith("+")) {
return true;
}
}

return false;
}

public isUnvote(): boolean {
if (this.data.type !== 11) {
return false;
}

for (const vote of this.asset().votes as string[]) {
if (vote.startsWith("-")) {
return true;
}
}

return false;
}

public isMultiSignature(): boolean {
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-neo/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return undefined;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -62,6 +62,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-profiles/src/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ export class TransactionData {
return this.#transaction.memo();
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return this.#transaction.asset();
}

Expand Down Expand Up @@ -93,6 +93,10 @@ export class TransactionData {
return this.#transaction.isVote();
}

public isUnvote(): boolean {
return this.#transaction.isUnvote();
}

public isMultiSignature(): boolean {
return this.#transaction.isMultiSignature();
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-trx/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return undefined;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -62,6 +62,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-xlm/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return undefined;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -63,6 +63,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-xmr/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return undefined;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -62,6 +62,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
6 changes: 5 additions & 1 deletion packages/platform-sdk-xrp/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return undefined;
}

public asset(): object | undefined {
public asset(): Record<string, unknown> {
return {};
}

Expand All @@ -71,6 +71,10 @@ export class TransactionData extends DTO.AbstractTransactionData implements Cont
return false;
}

public isUnvote(): boolean {
return false;
}

public isMultiSignature(): boolean {
return false;
}
Expand Down
4 changes: 3 additions & 1 deletion packages/platform-sdk/src/contracts/coins/data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export interface TransactionData {

memo(): string | undefined;

asset(): object | undefined;
asset(): Record<string, unknown>;

isTransfer(): boolean;

Expand All @@ -33,6 +33,8 @@ export interface TransactionData {

isVote(): boolean;

isUnvote(): boolean;

isMultiSignature(): boolean;

isIpfs(): boolean;
Expand Down
4 changes: 3 additions & 1 deletion packages/platform-sdk/src/dto/transaction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export abstract class AbstractTransactionData {

abstract memo(): string | undefined;

abstract asset(): object | undefined;
abstract asset(): Record<string, unknown>;

abstract isTransfer(): boolean;

Expand All @@ -37,6 +37,8 @@ export abstract class AbstractTransactionData {

abstract isVote(): boolean;

abstract isUnvote(): boolean;

abstract isMultiSignature(): boolean;

abstract isIpfs(): boolean;
Expand Down

0 comments on commit 43d8abe

Please sign in to comment.