lunesjs 1.5.7 → 1.5.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/package.json +14 -8
  2. package/.devcontainer/devcontainer.json +0 -14
  3. package/.github/workflows/deploy.yml +0 -48
  4. package/.github/workflows/test.yml +0 -35
  5. package/.gitlab/.gitlab-ci.yml +0 -21
  6. package/.gitlab/issue_templates/bug.md +0 -13
  7. package/.gitlab/issue_templates/proposal.md +0 -5
  8. package/.gitlab/merge_request_templates/MR.md +0 -7
  9. package/.prettierrc.yml +0 -3
  10. package/CHANGELOG.md +0 -3
  11. package/CONTRIBUTING.md +0 -51
  12. package/Dockerfile +0 -6
  13. package/dist/client/transactions/BaseTransaction.d.ts +0 -6
  14. package/dist/client/transactions/BaseTransaction.js +0 -2
  15. package/dist/client/transactions/transactions.types.d.ts +0 -10
  16. package/dist/client/transactions/transactions.types.js +0 -17
  17. package/dist/client/transactions/transfer/service.transfer.d.ts +0 -12
  18. package/dist/client/transactions/transfer/service.transfer.js +0 -78
  19. package/dist/client/transactions/transfer/transfer.types.d.ts +0 -12
  20. package/dist/client/transactions/transfer/transfer.types.js +0 -2
  21. package/dist/client/transactions/transfer/validator.d.ts +0 -9
  22. package/dist/client/transactions/transfer/validator.js +0 -93
  23. package/dist/client/wallet/constants.d.ts +0 -8
  24. package/dist/client/wallet/constants.js +0 -2064
  25. package/dist/client/wallet/service.account.d.ts +0 -20
  26. package/dist/client/wallet/service.account.js +0 -35
  27. package/dist/client/wallet/wallet.types.d.ts +0 -21
  28. package/dist/client/wallet/wallet.types.js +0 -11
  29. package/dist/utils/crypto.d.ts +0 -13
  30. package/dist/utils/crypto.js +0 -102
  31. package/jest.config.js +0 -11
  32. package/src/client/transactions/BaseTransaction.ts +0 -7
  33. package/src/client/transactions/transactions.types.ts +0 -11
  34. package/src/client/transactions/transfer/service.transfer.ts +0 -58
  35. package/src/client/transactions/transfer/transfer.types.ts +0 -12
  36. package/src/client/transactions/transfer/validator.ts +0 -92
  37. package/src/client/wallet/constants.ts +0 -2065
  38. package/src/client/wallet/service.account.ts +0 -74
  39. package/src/client/wallet/wallet.types.ts +0 -23
  40. package/src/utils/crypto.ts +0 -109
  41. package/static/img/jslogo.png +0 -0
  42. package/test/client/transactions/transfer/transfer.token.test.ts +0 -97
  43. package/test/client/wallet/service.account.test.ts +0 -330
  44. package/tsconfig.json +0 -15
package/package.json CHANGED
@@ -1,9 +1,15 @@
1
1
  {
2
2
  "name": "lunesjs",
3
- "version": "1.5.7",
3
+ "version": "1.5.10",
4
4
  "description": "Library for communication with nodes in mainnet or testnet of the lunes-blockchain network",
5
- "main": "dist/**/*.js",
6
- "types": "dist/**/*/*.d.ts",
5
+ "main": "lib/index.js",
6
+ "types": "lib/index.d.ts",
7
+ "files": [
8
+ "/lib",
9
+ "LICENSE",
10
+ "README.md",
11
+ "package.json"
12
+ ],
7
13
  "repository": "git@git.lunes.io:blockchain/labs/lunesjs.git",
8
14
  "keywords": [
9
15
  "blockchain",
@@ -11,12 +17,12 @@
11
17
  "client"
12
18
  ],
13
19
  "author": "lunes-platform",
14
- "license": "Apache 2.0",
20
+ "license": "Apache-2.0",
15
21
  "scripts": {
16
- "build": "tsc --declaration",
17
- "fmtc": "prettier -c",
18
22
  "fmt": "prettier -w .",
19
- "test": "yarn jest"
23
+ "fmtc": "prettier -c",
24
+ "test": "yarn jest",
25
+ "build": "tsc"
20
26
  },
21
27
  "devDependencies": {
22
28
  "@types/jest": "^27.0.3",
@@ -28,6 +34,6 @@
28
34
  },
29
35
  "dependencies": {
30
36
  "axios": "^0.26.1",
31
- "lunesrs": "1.8.1"
37
+ "lunesrs": "^1.8.2-web"
32
38
  }
33
39
  }
@@ -1,14 +0,0 @@
1
- {
2
- "name": "Existing Dockerfile",
3
- "context": "..",
4
- "dockerFile": "../Dockerfile",
5
- "settings": {},
6
- "extensions": [
7
- "donjayamanne.githistory",
8
- "esbenp.prettier-vscode",
9
- "mhutchie.git-graph",
10
- "Tyriar.sort-lines",
11
- "eamodio.gitlens"
12
- ],
13
- "postCreateCommand": "yarn install && yarn upgrade --latest"
14
- }
@@ -1,48 +0,0 @@
1
- name: Deploy
2
-
3
- on:
4
- push:
5
- branches: [main]
6
-
7
- jobs:
8
- lint:
9
- runs-on: ubuntu-latest
10
-
11
- steps:
12
- - uses: actions/checkout@v2
13
- - uses: actions/setup-node@v3
14
-
15
- - name: Install dependencies
16
- run: yarn install -D
17
-
18
- - name: Format Checker
19
- run: yarn fmtc
20
-
21
- test:
22
- runs-on: ubuntu-latest
23
- needs: lint
24
-
25
- steps:
26
- - uses: actions/checkout@v2
27
- - uses: actions/setup-node@v3
28
-
29
- - name: Install dependencies
30
- run: yarn install -D
31
-
32
- - name: Format Checker
33
- run: yarn test
34
-
35
- deploy-npm:
36
- runs-on: ubuntu-latest
37
- needs: [lint, test]
38
-
39
- steps:
40
- - uses: actions/checkout@v1
41
- - uses: actions/setup-node@v1
42
- with:
43
- node-version: 14
44
- - run: yarn install
45
- - run: yarn build
46
- - uses: JS-DevTools/npm-publish@v1
47
- with:
48
- token: ${{ secrets.NPM_TOKEN }}
@@ -1,35 +0,0 @@
1
- name: Lint & Test
2
-
3
- on:
4
- push:
5
- branches-ignore: [main]
6
- pull_request:
7
- branches: [main]
8
-
9
- jobs:
10
- lint:
11
- runs-on: ubuntu-latest
12
-
13
- steps:
14
- - uses: actions/checkout@v2
15
- - uses: actions/setup-node@v3
16
-
17
- - name: Install dependencies
18
- run: yarn install -D
19
-
20
- - name: Format Checker
21
- run: yarn fmtc
22
-
23
- test:
24
- runs-on: ubuntu-latest
25
- needs: lint
26
-
27
- steps:
28
- - uses: actions/checkout@v2
29
- - uses: actions/setup-node@v3
30
-
31
- - name: Install dependencies
32
- run: yarn install -D
33
-
34
- - name: Format Checker
35
- run: yarn test
@@ -1,21 +0,0 @@
1
- image: node:14.18.2-alpine3.14
2
-
3
- stages:
4
- - test
5
-
6
- before_script:
7
- - yarn install
8
-
9
- CreateReportTests:
10
- stage: test
11
- script:
12
- - yarn test
13
- artifacts:
14
- when: always
15
- reports:
16
- junit: junit.xml
17
-
18
- LintChecker:
19
- stage: test
20
- script:
21
- - yarn fmt
@@ -1,13 +0,0 @@
1
- # Bug Issue _Error Name_
2
-
3
- ## Expected behavior
4
-
5
- ## Actual behavior
6
-
7
- ## Steps for do **Error Name**
8
-
9
- ## Your Setup
10
-
11
- - Version Application
12
- - OS Version
13
- - And more...
@@ -1,5 +0,0 @@
1
- # Proposal Issue _Name_
2
-
3
- ## _What_ should this issue solve?
4
-
5
- ## _How_ should this issue solve?
@@ -1,7 +0,0 @@
1
- ## MR template
2
-
3
- - [ ] CODE WITHOUT TEST WILL BE REJECTED
4
-
5
- - [ ] CODE WITHOUT DOCS WILL BE REJECTED
6
-
7
- - [ ] COMMITS OUTSIDE THE CONVENTIONAL WILL BE REJECTED
package/.prettierrc.yml DELETED
@@ -1,3 +0,0 @@
1
- tabWidth: 4
2
- semi: false
3
- trailingComma: none
package/CHANGELOG.md DELETED
@@ -1,3 +0,0 @@
1
- # CHANGELOG
2
-
3
- # [v0.0.0]
package/CONTRIBUTING.md DELETED
@@ -1,51 +0,0 @@
1
- # CONTRIBUTING
2
-
3
- ## What is the workflow?
4
-
5
- 1. Create and describe your **proposal/bug** in an _issue_.
6
- 2. Create a new **branch** and **merge request** with the pattern `1-my-feature`.
7
- 3. Commit your code to the commit convention.
8
-
9
- ---
10
-
11
- ## Convention of Commits and Semantic Version
12
-
13
- ### **Commit Structure**
14
-
15
- ```
16
- type(escope): short description
17
-
18
- What does the modification do?
19
- why was it modified?
20
-
21
- #issue
22
- ```
23
-
24
- - **fix** Fix a bug
25
- - **add** Add a new feature
26
- - **remove** Remove a peace of code
27
- - **deprecate** compatibility break
28
- - **update** Update any thing. e.g. feature, piece, refact
29
-
30
- ### **Semantic Version**
31
-
32
- - **deprecate** -> _Major_
33
- - **add** -> _Minor_
34
- - **fix** -> _Patch_
35
-
36
- ---
37
-
38
- ## References
39
-
40
- - [Good Practices](https://bestpractices.coreinfrastructure.org/pt-BR)
41
- - [Semantic Versioning](https://semver.org/lang/pt-BR/)
42
- - [More about Versioning](http://www.modelcvs.org/versioning/)
43
- - [Versioning Automate](https://bhuwanupadhyay.github.io/2020/04/applying-semantic-versioning-with-git-repository/)
44
- - [Conventional Commit](https://www.conventionalcommits.org/en/v1.0.0-beta.2/#why-use-conventional-commits)
45
- - [Default Angular Commit](https://github.com/angular/angular/blob/22b96b9/CONTRIBUTING.md#-commit-message-guidelines)
46
- - [Global hook for repositories](https://docs.gitlab.com/ce/administration/server_hooks.html#set-a-global-server-hook-for-all-repositories)
47
- - [More about Commits](https://chris.beams.io/posts/git-commit/)
48
- - [Quick Actions for Commits](https://docs.gitlab.com/ee/user/project/quick_actions.html)
49
- - [Commits examples](https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/edit#)
50
- - [Full Tutorial Add Convetional Commit as default](https://prahladyeri.com/blog/2019/06/how-to-enforce-conventional-commit-messages-using-git-hooks.html)
51
- - [Create a global git commit hook](https://coderwall.com/p/jp7d5q/create-a-global-git-commit-hook)
package/Dockerfile DELETED
@@ -1,6 +0,0 @@
1
- FROM node:16-alpine
2
-
3
- RUN apk --update --upgrade add git openssh curl zsh
4
- RUN sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
5
-
6
- RUN npm install -g npm@latest
@@ -1,6 +0,0 @@
1
- import { WalletTypes } from "../wallet/wallet.types";
2
- export interface BaseTransaction {
3
- sign(privateKey: WalletTypes.PrivateKey): object;
4
- transaction(): object;
5
- send(): object;
6
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,10 +0,0 @@
1
- export declare namespace TransactionsTypes {
2
- enum TransferToken {
3
- int = 4,
4
- fee = 1000000
5
- }
6
- enum IssueToken {
7
- int = 5,
8
- fee = 1000000000
9
- }
10
- }
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TransactionsTypes = void 0;
4
- var TransactionsTypes;
5
- (function (TransactionsTypes) {
6
- let TransferToken;
7
- (function (TransferToken) {
8
- TransferToken[TransferToken["int"] = 4] = "int";
9
- TransferToken[TransferToken["fee"] = 1000000] = "fee";
10
- })(TransferToken = TransactionsTypes.TransferToken || (TransactionsTypes.TransferToken = {}));
11
- let IssueToken;
12
- (function (IssueToken) {
13
- IssueToken[IssueToken["int"] = 5] = "int";
14
- IssueToken[IssueToken["fee"] = 1000000000] = "fee";
15
- })(IssueToken = TransactionsTypes.IssueToken || (TransactionsTypes.IssueToken = {}));
16
- //...
17
- })(TransactionsTypes = exports.TransactionsTypes || (exports.TransactionsTypes = {}));
@@ -1,12 +0,0 @@
1
- import { WalletTypes } from "../../wallet/wallet.types";
2
- import { BaseTransaction } from "../BaseTransaction";
3
- import { ITransfer } from "./transfer.types";
4
- declare class TransferToken implements BaseTransaction {
5
- private tx;
6
- constructor(tx: ITransfer);
7
- transaction(): ITransfer;
8
- sign(privateKey: WalletTypes.PrivateKey): ITransfer;
9
- send(): Promise<void>;
10
- }
11
- export declare function transferTokenFactory(senderPublicKey: string, recipient: string, amount: number, chain?: WalletTypes.Chain, timestamp?: number, feeAsset?: string, assetId?: string, fee?: number): TransferToken;
12
- export {};
@@ -1,78 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- var __importDefault = (this && this.__importDefault) || function (mod) {
35
- return (mod && mod.__esModule) ? mod : { "default": mod };
36
- };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.transferTokenFactory = void 0;
39
- const transactions_types_1 = require("../transactions.types");
40
- const wallet_types_1 = require("../../wallet/wallet.types");
41
- const validator_1 = __importDefault(require("./validator"));
42
- const wasm = __importStar(require("lunesrs"));
43
- class TransferToken {
44
- constructor(tx) {
45
- this.tx = tx;
46
- }
47
- transaction() {
48
- return this.tx;
49
- }
50
- sign(privateKey) {
51
- this.tx.signature = validator_1.default.sign(privateKey, this.tx);
52
- return this.tx;
53
- }
54
- send() {
55
- return __awaiter(this, void 0, void 0, function* () {
56
- validator_1.default.send(this.tx);
57
- });
58
- }
59
- }
60
- function transferTokenFactory(senderPublicKey, recipient, amount, chain, timestamp, feeAsset, assetId, fee) {
61
- const chain_id = chain != undefined ? chain : wallet_types_1.WalletTypes.Chain.Mainnet;
62
- if (false == validator_1.default.ready(senderPublicKey, recipient, amount, chain_id)) {
63
- throw new Error("dados invalidos");
64
- }
65
- return new TransferToken({
66
- senderPublicKey: senderPublicKey,
67
- recipient: recipient,
68
- amount: amount,
69
- sender: wasm.arrayToBase58(wasm.toAddress(1, chain_id, wasm.base58ToArray(senderPublicKey))),
70
- timestamp: timestamp != undefined ? timestamp : new Date().getTime(),
71
- feeAsset: feeAsset != undefined ? feeAsset : "",
72
- assetId: assetId != undefined ? assetId : "",
73
- type: transactions_types_1.TransactionsTypes.TransferToken.int,
74
- fee: fee != undefined ? fee : transactions_types_1.TransactionsTypes.TransferToken.fee,
75
- signature: ""
76
- });
77
- }
78
- exports.transferTokenFactory = transferTokenFactory;
@@ -1,12 +0,0 @@
1
- export interface ITransfer {
2
- senderPublicKey: string;
3
- timestamp: number;
4
- signature: string;
5
- recipient: string;
6
- feeAsset: string;
7
- assetId: string;
8
- amount: number;
9
- sender: string;
10
- type: number;
11
- fee: number;
12
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,9 +0,0 @@
1
- import { WalletTypes } from "../../wallet/wallet.types";
2
- import { ITransfer } from "./transfer.types";
3
- declare const validator: {
4
- serialize: (senderPublicKey: string, assetId: string, feeAsset: string, timestamp: number, amount: number, fee: number, recipient: string) => Uint8Array;
5
- ready: (senderPublicKey: string, recipient: string, amount: number, chain: WalletTypes.Chain) => boolean;
6
- sign: (privateKey: WalletTypes.PrivateKey, tx: ITransfer) => string;
7
- send: (tx: ITransfer) => Promise<void>;
8
- };
9
- export default validator;
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
- return new (P || (P = Promise))(function (resolve, reject) {
28
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
- step((generator = generator.apply(thisArg, _arguments || [])).next());
32
- });
33
- };
34
- var __importDefault = (this && this.__importDefault) || function (mod) {
35
- return (mod && mod.__esModule) ? mod : { "default": mod };
36
- };
37
- Object.defineProperty(exports, "__esModule", { value: true });
38
- const transactions_types_1 = require("../transactions.types");
39
- const crypto_1 = __importDefault(require("../../../utils/crypto"));
40
- const wasm = __importStar(require("lunesrs"));
41
- const axios_1 = __importDefault(require("axios"));
42
- const validator = {
43
- serialize: (senderPublicKey, assetId, feeAsset, timestamp, amount, fee, recipient) => {
44
- const tokenId = assetId != ""
45
- ? new Uint8Array([1, ...wasm.base58ToArray(assetId)])
46
- : new Uint8Array([0]);
47
- const tokenFee = feeAsset != ""
48
- ? new Uint8Array([1, ...wasm.base58ToArray(feeAsset)])
49
- : new Uint8Array([0]);
50
- return new Uint8Array([
51
- ...[transactions_types_1.TransactionsTypes.TransferToken.int],
52
- ...wasm.base58ToArray(senderPublicKey),
53
- ...tokenId,
54
- ...tokenFee,
55
- ...wasm.serializeUInteger(BigInt(timestamp)),
56
- ...wasm.serializeUInteger(BigInt(amount)),
57
- ...wasm.serializeUInteger(BigInt(fee)),
58
- ...wasm.base58ToArray(recipient)
59
- ]);
60
- },
61
- ready: (senderPublicKey, recipient, amount, chain) => {
62
- const sender = wasm.arrayToBase58(wasm.toAddress(1, chain, wasm.base58ToArray(senderPublicKey)));
63
- if (amount <= 0) {
64
- return false;
65
- }
66
- else if (!(crypto_1.default.validateAddress(sender, chain) === true &&
67
- crypto_1.default.validateAddress(recipient, chain) === true)) {
68
- return false;
69
- }
70
- else {
71
- return true;
72
- }
73
- },
74
- sign: (privateKey, tx) => {
75
- const message = validator.serialize(tx.senderPublicKey, tx.assetId, tx.feeAsset, tx.timestamp, tx.amount, tx.fee, tx.recipient);
76
- return crypto_1.default.fastSignature(privateKey, wasm.arrayToBase58(new Uint8Array(message)));
77
- },
78
- send: (tx) => __awaiter(void 0, void 0, void 0, function* () {
79
- yield axios_1.default
80
- .request({
81
- url: "https://lunesnode.lunes.io/transactions/broadcast",
82
- method: "post",
83
- data: tx
84
- })
85
- .then((x) => {
86
- console.log(x);
87
- })
88
- .catch((error) => {
89
- console.error(error.response.data);
90
- });
91
- })
92
- };
93
- exports.default = validator;
@@ -1,8 +0,0 @@
1
- declare const walletConstants: {
2
- addressVersion: number;
3
- addressChecksumLength: number;
4
- addressHashLength: number;
5
- addressLength: number;
6
- wordsList: string[];
7
- };
8
- export default walletConstants;