lunesjs 1.5.7 → 1.5.10

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.
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;