bitbadgesjs-sdk 0.1.86 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-indexer/BitBadgesAddressList.d.ts +1 -0
- package/dist/api-indexer/BitBadgesAddressList.d.ts.map +1 -1
- package/dist/api-indexer/BitBadgesAddressList.js +50 -0
- package/dist/api-indexer/BitBadgesAddressList.js.map +1 -1
- package/dist/common/types.js +8 -8
- package/dist/core/balances.d.ts.map +1 -1
- package/dist/core/balances.js +4 -2
- package/dist/core/balances.js.map +1 -1
- package/dist/package-lock.json +36128 -0
- package/dist/package.json +79 -0
- package/dist/src/core/balances.d.ts +78 -0
- package/dist/src/core/balances.d.ts.map +1 -0
- package/dist/src/core/balances.js +534 -0
- package/dist/src/core/balances.js.map +1 -0
- package/dist/src/core/overlaps.d.ts +89 -0
- package/dist/src/core/overlaps.d.ts.map +1 -0
- package/dist/src/core/overlaps.js +717 -0
- package/dist/src/core/overlaps.js.map +1 -0
- package/dist/tsconfig.build.json +27 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/tsconfig.json +9 -0
- package/dist/typedoc.json +15 -0
- package/package.json +5 -3
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "bitbadgesjs-sdk",
|
|
3
|
+
"description": "SDK for BitBadges development",
|
|
4
|
+
"version": "0.2.0",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"eslintIgnore": [
|
|
7
|
+
"src/proto/**/*.ts"
|
|
8
|
+
],
|
|
9
|
+
"main": "dist/index.js",
|
|
10
|
+
"types": "dist/index.d.ts",
|
|
11
|
+
"files": [
|
|
12
|
+
"/dist"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"build": "tsc --build tsconfig.build.json && tsc-alias",
|
|
16
|
+
"build:watch": "tsc --build -w tsconfig.build.json",
|
|
17
|
+
"clean": "tsc --build tsconfig.build.json --clean && shx rm -rf coverage *.log junit.xml dist && jest --clearCache",
|
|
18
|
+
"test": "jest",
|
|
19
|
+
"test:unit": "jest test/unit",
|
|
20
|
+
"test:integration": "jest test/unit",
|
|
21
|
+
"test:watch": "jest --watch",
|
|
22
|
+
"test:ci": "jest --coverage --ci --reporters='jest-junit'",
|
|
23
|
+
"coverage": "jest --coverage",
|
|
24
|
+
"dev": "ts-node-dev -r tsconfig-paths/register src/index.ts",
|
|
25
|
+
"start": "node dist/index.js",
|
|
26
|
+
"format": "prettier --write './**/*.{js,jsx,ts,tsx,css,md,json}' --config ./.prettierrc"
|
|
27
|
+
},
|
|
28
|
+
"devDependencies": {
|
|
29
|
+
"@babel/preset-typescript": "^7.23.3",
|
|
30
|
+
"@bufbuild/buf": "^1.28.0",
|
|
31
|
+
"@bufbuild/protoc-gen-es": "^1.4.2",
|
|
32
|
+
"@commitlint/cli": "^16.2.0",
|
|
33
|
+
"@commitlint/config-conventional": "^16.2.1",
|
|
34
|
+
"@types/crypto-js": "^4.1.2",
|
|
35
|
+
"@types/jest": "^27.5.2",
|
|
36
|
+
"@types/node": "^16.9.2",
|
|
37
|
+
"@typescript-eslint/eslint-plugin": "^6.21.0",
|
|
38
|
+
"@typescript-eslint/parser": "^6.21.0",
|
|
39
|
+
"babel-jest": "^29.7.0",
|
|
40
|
+
"cross-env": "^7.0.3",
|
|
41
|
+
"eslint": "^8.56.0",
|
|
42
|
+
"eslint-config-prettier": "^9.1.0",
|
|
43
|
+
"eslint-config-standard-with-typescript": "^43.0.1",
|
|
44
|
+
"eslint-plugin-import": "^2.29.1",
|
|
45
|
+
"eslint-plugin-n": "^16.6.2",
|
|
46
|
+
"eslint-plugin-prettier": "^5.1.3",
|
|
47
|
+
"eslint-plugin-promise": "^6.1.1",
|
|
48
|
+
"husky": "^7.0.4",
|
|
49
|
+
"jest": "^29.7.0",
|
|
50
|
+
"jest-junit": "^13.0.0",
|
|
51
|
+
"lerna": "^5.4.3",
|
|
52
|
+
"markdownlint-cli": "^0.31.1",
|
|
53
|
+
"prettier": "^3.2.5",
|
|
54
|
+
"shx": "^0.3.4",
|
|
55
|
+
"ts-jest": "^29.1.2",
|
|
56
|
+
"ts-node-dev": "^1.1.8",
|
|
57
|
+
"tsconfig-paths": "^3.11.0",
|
|
58
|
+
"typedoc": "^0.25.8",
|
|
59
|
+
"typescript": "^5.3.3"
|
|
60
|
+
},
|
|
61
|
+
"dependencies": {
|
|
62
|
+
"@bufbuild/protobuf": "^1.4.2",
|
|
63
|
+
"@cosmjs/cosmwasm-stargate": "^0.32.2",
|
|
64
|
+
"@cosmjs/crypto": "^0.32.2",
|
|
65
|
+
"@cosmjs/stargate": "^0.32.2",
|
|
66
|
+
"axios": "^1.6.2",
|
|
67
|
+
"bech32": "^2.0.0",
|
|
68
|
+
"blockin": "^1.2.68",
|
|
69
|
+
"bs58": "^5.0.0",
|
|
70
|
+
"crypto-addr-codec": "^0.1.7",
|
|
71
|
+
"ethers": "^5.7.0",
|
|
72
|
+
"joi": "^17.10.1",
|
|
73
|
+
"merkletreejs": "^0.3.11",
|
|
74
|
+
"mongoose": "^8.0.3",
|
|
75
|
+
"nano": "^10.1.2",
|
|
76
|
+
"protoc-gen-ts": "^0.8.7",
|
|
77
|
+
"shx": "^0.3.4"
|
|
78
|
+
}
|
|
79
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { JsonReadOptions, JsonValue } from '@bufbuild/protobuf';
|
|
2
|
+
import type { iBalance, iUintRange } from '../../interfaces/badges/core';
|
|
3
|
+
import { BaseNumberTypeClass } from '../../common/base';
|
|
4
|
+
import * as proto from '../../proto';
|
|
5
|
+
import type { NumberType } from '../common/string-numbers';
|
|
6
|
+
import { UintRangeArray } from './uintRanges';
|
|
7
|
+
import { BaseTypedArray } from '../../common/typed-arrays';
|
|
8
|
+
export declare class Balance<T extends NumberType> extends BaseNumberTypeClass<Balance<T>> implements iBalance<T> {
|
|
9
|
+
amount: T;
|
|
10
|
+
badgeIds: UintRangeArray<T>;
|
|
11
|
+
ownershipTimes: UintRangeArray<T>;
|
|
12
|
+
constructor(balance: iBalance<T>);
|
|
13
|
+
getNumberFieldNames(): string[];
|
|
14
|
+
convert<U extends NumberType>(convertFunction: (item: NumberType) => U): Balance<U>;
|
|
15
|
+
toProto(): proto.badges.Balance;
|
|
16
|
+
static fromJson<U extends NumberType>(jsonValue: JsonValue, convertFunction: (item: NumberType) => U, options?: Partial<JsonReadOptions>): Balance<U>;
|
|
17
|
+
static fromJsonString<U extends NumberType>(jsonString: string, convertFunction: (item: NumberType) => U, options?: Partial<JsonReadOptions>): Balance<U>;
|
|
18
|
+
static fromProto<U extends NumberType>(item: proto.badges.Balance, convertFunction: (item: NumberType) => U): Balance<U>;
|
|
19
|
+
toArray(): BalanceArray<T>;
|
|
20
|
+
}
|
|
21
|
+
export declare const applyIncrementsToBalances: <T extends NumberType>(startBalances: iBalance<T>[], incrementBadgeIdsBy: T, incrementOwnershipTimesBy: T, numIncrements: T) => BalanceArray<T>;
|
|
22
|
+
export declare const getBalanceForIdAndTime: <T extends NumberType>(id: T, time: T, balances: iBalance<T>[]) => T;
|
|
23
|
+
export declare function getBalancesForId<T extends NumberType>(badgeId: T, balances: iBalance<T>[]): BalanceArray<T>;
|
|
24
|
+
export declare function getBalancesForTime<T extends NumberType>(time: T, balances: iBalance<T>[]): BalanceArray<T>;
|
|
25
|
+
export declare function filterZeroBalances<T extends NumberType>(balances: iBalance<T>[]): BalanceArray<T>;
|
|
26
|
+
export declare function doBalancesExceedThreshold<T extends NumberType>(balances: iBalance<T>[], thresholdBalances: iBalance<T>[]): boolean;
|
|
27
|
+
export declare function addBalancesAndCheckIfExceedsThreshold<T extends NumberType>(currTally: iBalance<T>[], toAdd: iBalance<T>[], threshold: iBalance<T>[]): boolean;
|
|
28
|
+
export declare function areBalancesEqual<T extends NumberType>(expected: iBalance<T>[], actual: iBalance<T>[], checkZeroBalances: boolean): boolean;
|
|
29
|
+
export declare function updateBalances<T extends NumberType>(newBalance: iBalance<T>, balances: iBalance<T>[]): BalanceArray<T>;
|
|
30
|
+
export declare function addBalance<T extends NumberType>(existingBalances: iBalance<T>[], balanceToAdd: iBalance<T>): BalanceArray<T>;
|
|
31
|
+
export declare function addBalances<T extends NumberType>(balancesToAdd: iBalance<T>[], balances: iBalance<T>[]): BalanceArray<T>;
|
|
32
|
+
export declare function subtractBalance<T extends NumberType>(balances: iBalance<T>[], balanceToRemove: iBalance<T>, allowUnderflow?: boolean): BalanceArray<T>;
|
|
33
|
+
export declare function subtractBalances<T extends NumberType>(balancesToSubtract: iBalance<T>[], balances: iBalance<T>[], allowUnderflow?: boolean): BalanceArray<T>;
|
|
34
|
+
export declare function getBalancesForIds<T extends NumberType>(idRanges: iUintRange<T>[], times: iUintRange<T>[], balances: iBalance<T>[]): BalanceArray<T>;
|
|
35
|
+
export declare function sortBalancesByAmount<T extends NumberType>(balances: iBalance<T>[]): BalanceArray<T>;
|
|
36
|
+
export declare function cleanBalances<T extends NumberType>(balancesArr: iBalance<T>[]): BalanceArray<T>;
|
|
37
|
+
export declare function sortAndMergeBalances<T extends NumberType>(balances: iBalance<T>[]): iBalance<T>[];
|
|
38
|
+
export declare function handleDuplicateBadgeIdsInBalances<T extends NumberType>(balances: iBalance<T>[]): BalanceArray<T>;
|
|
39
|
+
interface BalanceFunctions<T extends NumberType> {
|
|
40
|
+
getBalanceForIdAndTime: (badgeId: T, ownedTime: T) => T;
|
|
41
|
+
getBalancesForId: (badgeId: T) => BalanceArray<T>;
|
|
42
|
+
getBalancesForTime: (ownedTime: T) => BalanceArray<T>;
|
|
43
|
+
filterZeroBalances: () => void;
|
|
44
|
+
subsetOf: (threshold: iBalance<T>[]) => boolean;
|
|
45
|
+
equalBalances: (other: iBalance<T>[], checkZeroBalances?: boolean) => boolean;
|
|
46
|
+
updateBalances: (newBalance: iBalance<T>) => void;
|
|
47
|
+
addBalances: (balancesToAdd: iBalance<T>[]) => void;
|
|
48
|
+
addBalance: (balanceToAdd: iBalance<T>) => void;
|
|
49
|
+
subtractBalances: (balancesToSubtract: iBalance<T>[], allowUnderflow: boolean) => void;
|
|
50
|
+
subtractBalance: (balanceToSubtract: iBalance<T>, allowUnderflow: boolean) => void;
|
|
51
|
+
sortBalancesByAmount: () => void;
|
|
52
|
+
applyIncrements: (incrementBadgeIdsBy: T, incrementOwnershipTimesBy: T, numIncrements: T) => void;
|
|
53
|
+
}
|
|
54
|
+
export declare class BalanceArray<T extends NumberType> extends BaseTypedArray<BalanceArray<T>, Balance<T>> implements BalanceFunctions<T> {
|
|
55
|
+
static From<T extends NumberType>(arr: iBalance<T>[] | iBalance<T> | BalanceArray<T>): BalanceArray<T>;
|
|
56
|
+
push(...items: iBalance<T>[] | BalanceArray<T>): number;
|
|
57
|
+
fill(value: iBalance<T>, start?: number | undefined, end?: number | undefined): this;
|
|
58
|
+
with(index: number, value: iBalance<T>): BalanceArray<T>;
|
|
59
|
+
unshift(...items: iBalance<T>[] | BalanceArray<T>): number;
|
|
60
|
+
convert<U extends NumberType>(convertFunction: (item: NumberType) => U): BalanceArray<U>;
|
|
61
|
+
clone(): BalanceArray<T>;
|
|
62
|
+
getBalanceForIdAndTime(badgeId: T, ownedTime: T): T;
|
|
63
|
+
getBalancesForId(badgeId: T): BalanceArray<T>;
|
|
64
|
+
getBalancesForTime(ownedTime: T): BalanceArray<T>;
|
|
65
|
+
filterZeroBalances(): this;
|
|
66
|
+
subsetOf(threshold: iBalance<T>[] | BalanceArray<T>): boolean;
|
|
67
|
+
equalBalances(other: iBalance<T>[] | BalanceArray<T>, checkZeroBalances?: boolean): boolean;
|
|
68
|
+
updateBalances(newBalance: iBalance<T>): this;
|
|
69
|
+
addBalances(balancesToAdd: iBalance<T>[] | BalanceArray<T>): this;
|
|
70
|
+
addBalance(balanceToAdd: iBalance<T>): this;
|
|
71
|
+
subtractBalances(balancesToSubtract: iBalance<T>[] | BalanceArray<T>, allowNegatives?: boolean): this;
|
|
72
|
+
subtractBalance(balanceToSubtract: iBalance<T>, allowUnderflow: boolean): this;
|
|
73
|
+
sortBalancesByAmount(): this;
|
|
74
|
+
applyIncrements(incrementBadgeIdsBy: T, incrementOwnershipTimesBy: T, numIncrements: T): this;
|
|
75
|
+
getAllBadgeIds(): UintRangeArray<T>;
|
|
76
|
+
}
|
|
77
|
+
export {};
|
|
78
|
+
//# sourceMappingURL=balances.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"balances.d.ts","sourceRoot":"","sources":["../../../src/core/balances.ts"],"names":[],"mappings":"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"}
|