hive-stream 2.0.3 → 2.0.6
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/.env.example +3 -2
- package/.travis.yml +11 -11
- package/LICENSE +21 -21
- package/README.md +238 -236
- package/dist/actions.d.ts +10 -9
- package/dist/actions.js +23 -15
- package/dist/actions.js.map +1 -1
- package/dist/adapters/base.adapter.d.ts +25 -21
- package/dist/adapters/base.adapter.js +49 -63
- package/dist/adapters/base.adapter.js.map +1 -1
- package/dist/adapters/mongodb.adapter.d.ts +37 -29
- package/dist/adapters/mongodb.adapter.js +158 -113
- package/dist/adapters/mongodb.adapter.js.map +1 -1
- package/dist/adapters/sqlite.adapter.d.ts +41 -23
- package/dist/adapters/sqlite.adapter.js +397 -121
- package/dist/adapters/sqlite.adapter.js.map +1 -1
- package/dist/api.d.ts +6 -0
- package/dist/api.js +56 -0
- package/dist/api.js.map +1 -0
- package/dist/config.d.ts +16 -14
- package/dist/config.js +18 -15
- package/dist/config.js.map +1 -1
- package/dist/contracts/coinflip.contract.d.ts +14 -0
- package/dist/contracts/coinflip.contract.js +95 -0
- package/dist/contracts/coinflip.contract.js.map +1 -0
- package/dist/contracts/dice.contract.d.ts +29 -29
- package/dist/contracts/dice.contract.js +155 -157
- package/dist/contracts/dice.contract.js.map +1 -1
- package/dist/contracts/lotto.contract.d.ts +20 -16
- package/dist/contracts/lotto.contract.js +246 -107
- package/dist/contracts/lotto.contract.js.map +1 -1
- package/dist/exchanges/bittrex.d.ts +6 -0
- package/dist/exchanges/bittrex.js +35 -0
- package/dist/exchanges/bittrex.js.map +1 -0
- package/dist/exchanges/exchange.d.ts +9 -0
- package/dist/exchanges/exchange.js +27 -0
- package/dist/exchanges/exchange.js.map +1 -0
- package/dist/hive-rates.d.ts +9 -0
- package/dist/hive-rates.js +76 -0
- package/dist/hive-rates.js.map +1 -0
- package/dist/index.d.ts +11 -10
- package/dist/index.js +32 -15
- package/dist/index.js.map +1 -1
- package/dist/streamer.d.ts +93 -70
- package/dist/streamer.js +545 -439
- package/dist/streamer.js.map +1 -1
- package/dist/test.d.ts +1 -1
- package/dist/test.js +25 -27
- package/dist/test.js.map +1 -1
- package/dist/types/hive-stream.d.ts +6 -6
- package/dist/types/hive-stream.js +2 -2
- package/dist/utils.d.ts +27 -14
- package/dist/utils.js +261 -85
- package/dist/utils.js.map +1 -1
- package/ecosystem.config.js +17 -17
- package/jest.config.js +8 -13
- package/package.json +48 -44
- package/test-contract-block.md +18 -18
- package/tests/adapters/sqlite.adapter.spec.ts +43 -0
- package/tests/contracts/coinflip.contract.spec.ts +132 -0
- package/tests/contracts/dice.contract.spec.ts +159 -156
- package/tests/contracts/entrants.json +728 -728
- package/tests/contracts/lotto.contract.spec.ts +323 -372
- package/tests/setup.ts +18 -20
- package/tests/streamer.spec.ts +151 -151
- package/tests/utils.spec.ts +94 -99
- package/tsconfig.build.json +22 -20
- package/tslint.json +20 -20
- package/wallaby.js +26 -0
- package/.env +0 -1
- package/dist/adapters/file.adapter.d.ts +0 -8
- package/dist/adapters/file.adapter.js +0 -70
- package/dist/adapters/file.adapter.js.map +0 -1
- package/dist/test/setup.d.ts +0 -0
- package/dist/test/setup.js +0 -9
- package/dist/test/setup.js.map +0 -1
- package/dist/test/streamer.spec.d.ts +0 -1
- package/dist/test/streamer.spec.js +0 -145
- package/dist/test/streamer.spec.js.map +0 -1
- package/dist/test/utils.spec.d.ts +0 -1
- package/dist/test/utils.spec.js +0 -11
- package/dist/test/utils.spec.js.map +0 -1
- package/dist/tests/contracts/dice.contract.spec.d.ts +0 -1
- package/dist/tests/contracts/dice.contract.spec.js +0 -130
- package/dist/tests/contracts/dice.contract.spec.js.map +0 -1
- package/dist/tests/contracts/entrants.json +0 -729
- package/dist/tests/contracts/lotto.contract.spec.d.ts +0 -1
- package/dist/tests/contracts/lotto.contract.spec.js +0 -300
- package/dist/tests/contracts/lotto.contract.spec.js.map +0 -1
- package/dist/tests/setup.d.ts +0 -1
- package/dist/tests/setup.js +0 -19
- package/dist/tests/setup.js.map +0 -1
- package/dist/tests/streamer.spec.d.ts +0 -1
- package/dist/tests/streamer.spec.js +0 -123
- package/dist/tests/streamer.spec.js.map +0 -1
- package/dist/tests/utils.spec.d.ts +0 -1
- package/dist/tests/utils.spec.js +0 -87
- package/dist/tests/utils.spec.js.map +0 -1
- package/hive-stream.json +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,300 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const mongodb_1 = require("mongodb");
|
|
16
|
-
const utils_1 = require("@hivechain/dhive/lib/utils");
|
|
17
|
-
const lotto_contract_1 = require("./../../src/contracts/lotto.contract");
|
|
18
|
-
const streamer_1 = require("../../src/streamer");
|
|
19
|
-
const entrants_json_1 = __importDefault(require("./entrants.json"));
|
|
20
|
-
describe('Lotto Contract', () => {
|
|
21
|
-
let sut;
|
|
22
|
-
let contract;
|
|
23
|
-
let connection;
|
|
24
|
-
let db;
|
|
25
|
-
beforeAll(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
26
|
-
try {
|
|
27
|
-
const url = `mongodb://127.0.0.1/lotto-test`;
|
|
28
|
-
connection = yield mongodb_1.MongoClient.connect(url, { useNewUrlParser: true, useUnifiedTopology: true });
|
|
29
|
-
db = yield connection.db();
|
|
30
|
-
}
|
|
31
|
-
catch (e) {
|
|
32
|
-
throw e;
|
|
33
|
-
}
|
|
34
|
-
}));
|
|
35
|
-
beforeEach(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
36
|
-
sut = new streamer_1.Streamer({ ACTIVE_KEY: '' });
|
|
37
|
-
contract = new lotto_contract_1.LottoContract();
|
|
38
|
-
sut['adapter']['db'] = db;
|
|
39
|
-
jest.restoreAllMocks();
|
|
40
|
-
yield sut.start();
|
|
41
|
-
}));
|
|
42
|
-
afterEach(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
43
|
-
yield sut.stop();
|
|
44
|
-
yield db.collection('lottery').deleteMany({});
|
|
45
|
-
}));
|
|
46
|
-
afterAll(() => {
|
|
47
|
-
connection.close();
|
|
48
|
-
});
|
|
49
|
-
test('Registers the lotto contract', () => {
|
|
50
|
-
sut.registerContract('testlotto', contract);
|
|
51
|
-
const findContract = sut['contracts'].find(c => c.name === 'testlotto');
|
|
52
|
-
expect(findContract).not.toBeUndefined();
|
|
53
|
-
});
|
|
54
|
-
test('User enters the lotto, existing draw found', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
55
|
-
try {
|
|
56
|
-
sut.registerContract('testlotto', contract);
|
|
57
|
-
contract['_instance'] = sut;
|
|
58
|
-
contract['adapter']['db'] = db;
|
|
59
|
-
const lottery = db.collection('lottery');
|
|
60
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries: [] });
|
|
61
|
-
jest.spyOn(contract, 'buy');
|
|
62
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
63
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
64
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
65
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
66
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
67
|
-
const memo = JSON.stringify({
|
|
68
|
-
hivePayload: {
|
|
69
|
-
id: 'hivestream',
|
|
70
|
-
name: 'testlotto',
|
|
71
|
-
action: 'buy',
|
|
72
|
-
payload: {
|
|
73
|
-
type: 'hourly'
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
sut.processOperation(['transfer', { from: 'testuser', amount: '10.000 HIVE', memo }], 778782, 'dfjfsdfsdfsd34hfkj88787', 'fkjsdkfj', 'fhkjsdhfkjsdf', '2019-06-23');
|
|
78
|
-
yield utils_1.sleep(100);
|
|
79
|
-
expect(contract.buy).toBeCalled();
|
|
80
|
-
}
|
|
81
|
-
catch (e) {
|
|
82
|
-
throw e;
|
|
83
|
-
}
|
|
84
|
-
}));
|
|
85
|
-
test('User enters the lotto, but they have hit the entry limit', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
86
|
-
try {
|
|
87
|
-
sut.registerContract('testlotto', contract);
|
|
88
|
-
contract['_instance'] = sut;
|
|
89
|
-
contract['adapter']['db'] = db;
|
|
90
|
-
const lottery = db.collection('lottery');
|
|
91
|
-
const entries = [];
|
|
92
|
-
for (const entrant of entrants_json_1.default) {
|
|
93
|
-
entries.push({
|
|
94
|
-
account: entrant.from,
|
|
95
|
-
date: new Date()
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries });
|
|
99
|
-
jest.spyOn(contract, 'buy');
|
|
100
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
101
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
102
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
103
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
104
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
105
|
-
const memo = JSON.stringify({
|
|
106
|
-
hivePayload: {
|
|
107
|
-
id: 'hivestream',
|
|
108
|
-
name: 'testlotto',
|
|
109
|
-
action: 'buy',
|
|
110
|
-
payload: {
|
|
111
|
-
type: 'hourly'
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
sut.processOperation(['transfer', { from: 'beggars', amount: '10.000 HIVE', memo }], 778782, 'dfjfsdfsdfsd34hfkj88787', 'fkjsdkfj', 'fhkjsdhfkjsdf', '2019-06-23');
|
|
116
|
-
yield utils_1.sleep(100);
|
|
117
|
-
expect(sut.transferHiveTokens).toBeCalledWith('beggars', 'beggars', '10.000', 'HIVE', '[Refund] You have exceeded the allow number of entries');
|
|
118
|
-
}
|
|
119
|
-
catch (e) {
|
|
120
|
-
throw e;
|
|
121
|
-
}
|
|
122
|
-
}));
|
|
123
|
-
test('Draw the hourly lottery', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
124
|
-
try {
|
|
125
|
-
sut.registerContract('testlotto', contract);
|
|
126
|
-
contract['_instance'] = sut;
|
|
127
|
-
contract['adapter']['db'] = db;
|
|
128
|
-
const lottery = db.collection('lottery');
|
|
129
|
-
const entries = [];
|
|
130
|
-
for (const entrant of entrants_json_1.default) {
|
|
131
|
-
entries.push({
|
|
132
|
-
account: entrant.from,
|
|
133
|
-
date: new Date()
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries });
|
|
137
|
-
jest.spyOn(contract, 'buy');
|
|
138
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
139
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
140
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
141
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
142
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
143
|
-
const drawn = yield contract.drawHourlyLottery();
|
|
144
|
-
expect(drawn).toHaveLength(3);
|
|
145
|
-
expect(drawn.includes(undefined)).toBeFalsy();
|
|
146
|
-
expect(sut.transferHiveTokensMultiple).toBeCalledTimes(1);
|
|
147
|
-
expect(sut.transferHiveTokensMultiple).toBeCalledWith('beggars', expect.any(Array), '164.667', 'HIVE', 'Congratulations you won the hourly lottery. You won 164.667 HIVE');
|
|
148
|
-
}
|
|
149
|
-
catch (e) {
|
|
150
|
-
throw e;
|
|
151
|
-
}
|
|
152
|
-
}));
|
|
153
|
-
test('Draw the hourly lottery, but not enough entrants, so we refund', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
154
|
-
try {
|
|
155
|
-
sut.registerContract('testlotto', contract);
|
|
156
|
-
contract['_instance'] = sut;
|
|
157
|
-
contract['adapter']['db'] = db;
|
|
158
|
-
const lottery = db.collection('lottery');
|
|
159
|
-
const entries = [];
|
|
160
|
-
const reducedEntries = entrants_json_1.default.slice(0, 2);
|
|
161
|
-
for (const entrant of reducedEntries) {
|
|
162
|
-
entries.push({
|
|
163
|
-
account: entrant.from,
|
|
164
|
-
date: new Date()
|
|
165
|
-
});
|
|
166
|
-
}
|
|
167
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries });
|
|
168
|
-
jest.spyOn(contract, 'buy');
|
|
169
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
170
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
171
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
172
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
173
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
174
|
-
const drawn = yield contract.drawHourlyLottery();
|
|
175
|
-
expect(sut.transferHiveTokensMultiple).toBeCalledTimes(1);
|
|
176
|
-
}
|
|
177
|
-
catch (e) {
|
|
178
|
-
throw e;
|
|
179
|
-
}
|
|
180
|
-
}));
|
|
181
|
-
test('Draw the hourly lottery, balance cannot afford to pay out winnings', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
182
|
-
try {
|
|
183
|
-
sut.registerContract('testlotto', contract);
|
|
184
|
-
contract['_instance'] = sut;
|
|
185
|
-
contract['adapter']['db'] = db;
|
|
186
|
-
const lottery = db.collection('lottery');
|
|
187
|
-
const entries = [];
|
|
188
|
-
for (const entrant of entrants_json_1.default) {
|
|
189
|
-
entries.push({
|
|
190
|
-
account: entrant.from,
|
|
191
|
-
date: new Date()
|
|
192
|
-
});
|
|
193
|
-
}
|
|
194
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries });
|
|
195
|
-
jest.spyOn(contract, 'buy');
|
|
196
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(10);
|
|
197
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
198
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
199
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
200
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
201
|
-
expect(contract.drawHourlyLottery()).rejects.toEqual(new Error('Balance is less than amount to pay out'));
|
|
202
|
-
}
|
|
203
|
-
catch (e) {
|
|
204
|
-
throw e;
|
|
205
|
-
}
|
|
206
|
-
}));
|
|
207
|
-
test('Draw the daily lottery', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
208
|
-
try {
|
|
209
|
-
sut.registerContract('testlotto', contract);
|
|
210
|
-
contract['_instance'] = sut;
|
|
211
|
-
contract['adapter']['db'] = db;
|
|
212
|
-
const lottery = db.collection('lottery');
|
|
213
|
-
const entries = [];
|
|
214
|
-
const entrants = [...entrants_json_1.default, ...entrants_json_1.default];
|
|
215
|
-
for (const entrant of entrants) {
|
|
216
|
-
entries.push({
|
|
217
|
-
account: entrant.from,
|
|
218
|
-
date: new Date()
|
|
219
|
-
});
|
|
220
|
-
}
|
|
221
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'daily', status: 'active', entries });
|
|
222
|
-
jest.spyOn(contract, 'buy');
|
|
223
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
224
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
225
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
226
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
227
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
228
|
-
const drawn = yield contract.drawDailyLottery();
|
|
229
|
-
expect(drawn).toHaveLength(10);
|
|
230
|
-
expect(drawn.includes(undefined)).toBeFalsy();
|
|
231
|
-
expect(sut.transferHiveTokensMultiple).toBeCalledWith('beggars', expect.any(Array), '98.800', 'HIVE', 'Congratulations you won the daily lottery. You won 98.800 HIVE');
|
|
232
|
-
}
|
|
233
|
-
catch (e) {
|
|
234
|
-
throw e;
|
|
235
|
-
}
|
|
236
|
-
}));
|
|
237
|
-
test('User attempts to enter lotto with invalid currency, refund them', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
238
|
-
try {
|
|
239
|
-
sut.registerContract('testlotto', contract);
|
|
240
|
-
contract['_instance'] = sut;
|
|
241
|
-
contract['adapter']['db'] = db;
|
|
242
|
-
const lottery = db.collection('lottery');
|
|
243
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries: [] });
|
|
244
|
-
jest.spyOn(contract, 'buy');
|
|
245
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
246
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
247
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
248
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
249
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
250
|
-
const memo = JSON.stringify({
|
|
251
|
-
hivePayload: {
|
|
252
|
-
id: 'hivestream',
|
|
253
|
-
name: 'testlotto',
|
|
254
|
-
action: 'buy',
|
|
255
|
-
payload: {
|
|
256
|
-
type: 'hourly'
|
|
257
|
-
}
|
|
258
|
-
}
|
|
259
|
-
});
|
|
260
|
-
sut.processOperation(['transfer', { from: 'testuser', amount: '10.000 HBD', memo }], 778782, 'dfjfsdfsdfsd34hfkj88787', 'fkjsdkfj', 'fhkjsdhfkjsdf', '2019-06-23');
|
|
261
|
-
yield utils_1.sleep(100);
|
|
262
|
-
expect(sut.transferHiveTokens).toBeCalledWith('beggars', 'testuser', '10.000', 'HBD', '[Refund] You sent an invalid currency.');
|
|
263
|
-
}
|
|
264
|
-
catch (e) {
|
|
265
|
-
throw e;
|
|
266
|
-
}
|
|
267
|
-
}));
|
|
268
|
-
test('User sent too much, refund them the diference', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
269
|
-
try {
|
|
270
|
-
sut.registerContract('testlotto', contract);
|
|
271
|
-
contract['_instance'] = sut;
|
|
272
|
-
contract['adapter']['db'] = db;
|
|
273
|
-
const lottery = db.collection('lottery');
|
|
274
|
-
yield lottery.insertOne({ startDate: new Date(), type: 'hourly', status: 'active', entries: [] });
|
|
275
|
-
jest.spyOn(contract, 'buy');
|
|
276
|
-
jest.spyOn(contract, 'getBalance').mockResolvedValue(2000);
|
|
277
|
-
jest.spyOn(sut, 'getTransaction').mockResolvedValue({ test: 123 });
|
|
278
|
-
jest.spyOn(sut, 'verifyTransfer').mockResolvedValue(true);
|
|
279
|
-
jest.spyOn(sut, 'transferHiveTokens').mockResolvedValue(true);
|
|
280
|
-
jest.spyOn(sut, 'transferHiveTokensMultiple').mockResolvedValue(true);
|
|
281
|
-
const memo = JSON.stringify({
|
|
282
|
-
hivePayload: {
|
|
283
|
-
id: 'hivestream',
|
|
284
|
-
name: 'testlotto',
|
|
285
|
-
action: 'buy',
|
|
286
|
-
payload: {
|
|
287
|
-
type: 'hourly'
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
});
|
|
291
|
-
sut.processOperation(['transfer', { from: 'testuser', amount: '20.000 HIVE', memo }], 778782, 'dfjfsdfsdfsd34hfkj88787', 'fkjsdkfj', 'fhkjsdhfkjsdf', '2019-06-23');
|
|
292
|
-
yield utils_1.sleep(100);
|
|
293
|
-
expect(sut.transferHiveTokens).toBeCalledWith('beggars', 'testuser', '10.000', 'HIVE', '[Refund] A ticket costs 10 HIVE. You sent 20.000 HIVE. You were refunded 10.000 HIVE.');
|
|
294
|
-
}
|
|
295
|
-
catch (e) {
|
|
296
|
-
throw e;
|
|
297
|
-
}
|
|
298
|
-
}));
|
|
299
|
-
});
|
|
300
|
-
//# sourceMappingURL=lotto.contract.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lotto.contract.spec.js","sourceRoot":"","sources":["../../../tests/contracts/lotto.contract.spec.ts"],"names":[],"mappings":"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"}
|
package/dist/tests/setup.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/tests/setup.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
// (global as any).console = {
|
|
4
|
-
// log: jest.fn(), // console.log are ignored in tests
|
|
5
|
-
// // Keep native behaviour for other methods, use those to print out things in your own tests, not `console.log`
|
|
6
|
-
// error: console.error,
|
|
7
|
-
// warn: console.warn,
|
|
8
|
-
// info: console.info,
|
|
9
|
-
// debug: console.debug,
|
|
10
|
-
// };
|
|
11
|
-
jasmine.DEFAULT_TIMEOUT_INTERVAL = 600000;
|
|
12
|
-
const customGlobal = global;
|
|
13
|
-
customGlobal.fetch = require('jest-fetch-mock');
|
|
14
|
-
customGlobal.fetchMock = customGlobal.fetch;
|
|
15
|
-
;
|
|
16
|
-
process.on('unhandledRejection', (error) => {
|
|
17
|
-
throw error; // Or whatever you like...
|
|
18
|
-
});
|
|
19
|
-
//# sourceMappingURL=setup.js.map
|
package/dist/tests/setup.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../tests/setup.ts"],"names":[],"mappings":";;AAEA,8BAA8B;AAC9B,0DAA0D;AAE1D,qHAAqH;AACrH,4BAA4B;AAC5B,0BAA0B;AAC1B,0BAA0B;AAC1B,4BAA4B;AAC5B,KAAK;AAEL,OAAO,CAAC,wBAAwB,GAAG,MAAM,CAAC;AAE1C,MAAM,YAAY,GAAwB,MAA6B,CAAC;AACxE,YAAY,CAAC,KAAK,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAChD,YAAY,CAAC,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AAAA,CAAC;AAE7C,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,EAAE;IACzC,MAAM,KAAK,CAAC,CAAC,0BAA0B;AACzC,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const actions_1 = require("../src/actions");
|
|
13
|
-
const streamer_1 = require("../src/streamer");
|
|
14
|
-
describe('Streamer', () => {
|
|
15
|
-
let sut;
|
|
16
|
-
beforeEach(() => {
|
|
17
|
-
sut = new streamer_1.Streamer({
|
|
18
|
-
JSON_ID: 'testing'
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
afterEach(() => {
|
|
22
|
-
sut.stop();
|
|
23
|
-
});
|
|
24
|
-
describe('Adapters', () => {
|
|
25
|
-
test('Registers adapter and calls the create lifecycle method', () => {
|
|
26
|
-
const adapter = {
|
|
27
|
-
create: jest.fn().mockResolvedValue(true),
|
|
28
|
-
destroy: jest.fn()
|
|
29
|
-
};
|
|
30
|
-
sut.registerAdapter(adapter);
|
|
31
|
-
expect(adapter.create).toBeCalled();
|
|
32
|
-
});
|
|
33
|
-
});
|
|
34
|
-
describe('Actions', () => {
|
|
35
|
-
test('Registers a new action', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
36
|
-
const adapter = {
|
|
37
|
-
create: jest.fn().mockResolvedValue(true),
|
|
38
|
-
destroy: jest.fn(),
|
|
39
|
-
loadActions: jest.fn().mockResolvedValue([])
|
|
40
|
-
};
|
|
41
|
-
sut.registerAdapter(adapter);
|
|
42
|
-
const action = new actions_1.TimeAction('1m', 'testoneminute', 'testcontract', 'testmethod');
|
|
43
|
-
yield sut.registerAction(action);
|
|
44
|
-
const foundAction = sut['actions'].find(a => a.id === 'testoneminute');
|
|
45
|
-
expect(foundAction).not.toBeUndefined();
|
|
46
|
-
}));
|
|
47
|
-
test('Does not allow duplicate actions of the same id', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
|
-
const adapter = {
|
|
49
|
-
create: jest.fn().mockResolvedValue(true),
|
|
50
|
-
destroy: jest.fn(),
|
|
51
|
-
loadActions: jest.fn().mockResolvedValue([])
|
|
52
|
-
};
|
|
53
|
-
sut.registerAdapter(adapter);
|
|
54
|
-
const action = new actions_1.TimeAction('1m', 'testoneminute', 'testcontract', 'testmethod');
|
|
55
|
-
const action2 = new actions_1.TimeAction('1m', 'testoneminute', 'testcontract', 'testmethod');
|
|
56
|
-
yield sut.registerAction(action);
|
|
57
|
-
yield sut.registerAction(action2);
|
|
58
|
-
expect(sut['actions'].length).toStrictEqual(1);
|
|
59
|
-
}));
|
|
60
|
-
test('Registers actions loaded from adapter loadActions call', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
61
|
-
const adapter = {
|
|
62
|
-
create: jest.fn().mockResolvedValue(true),
|
|
63
|
-
destroy: jest.fn(),
|
|
64
|
-
loadActions: jest.fn().mockResolvedValue([new actions_1.TimeAction('1m', 'testoneminute', 'testcontract', 'testmethod')])
|
|
65
|
-
};
|
|
66
|
-
sut.registerAdapter(adapter);
|
|
67
|
-
const action = new actions_1.TimeAction('1h', 'testonehour', 'testcontract', 'testmethod');
|
|
68
|
-
yield sut.registerAction(action);
|
|
69
|
-
const foundAction = sut['actions'].find(a => a.id === 'testoneminute');
|
|
70
|
-
expect(foundAction).not.toBeUndefined();
|
|
71
|
-
}));
|
|
72
|
-
});
|
|
73
|
-
describe('Contracts', () => {
|
|
74
|
-
test('Should register a new contract', () => {
|
|
75
|
-
const contract = {
|
|
76
|
-
myMethod: jest.fn()
|
|
77
|
-
};
|
|
78
|
-
sut.registerContract('testcontract', contract);
|
|
79
|
-
expect(contract['_instance']).toBeInstanceOf(streamer_1.Streamer);
|
|
80
|
-
expect(sut['contracts'].length).toStrictEqual(1);
|
|
81
|
-
});
|
|
82
|
-
test('Should register a new contract and call its create method', () => {
|
|
83
|
-
const contract = {
|
|
84
|
-
create: jest.fn(),
|
|
85
|
-
myMethod: jest.fn()
|
|
86
|
-
};
|
|
87
|
-
sut.registerContract('testcontract', contract);
|
|
88
|
-
expect(contract.create).toBeCalled();
|
|
89
|
-
expect(contract['_instance']).toBeInstanceOf(streamer_1.Streamer);
|
|
90
|
-
expect(sut['contracts'].length).toStrictEqual(1);
|
|
91
|
-
});
|
|
92
|
-
test('Should unregister a registered contract', () => {
|
|
93
|
-
const contract = {
|
|
94
|
-
myMethod: jest.fn()
|
|
95
|
-
};
|
|
96
|
-
sut.registerContract('testcontract', contract);
|
|
97
|
-
sut.unregisterContract('testcontract');
|
|
98
|
-
expect(sut['contracts'].length).toStrictEqual(0);
|
|
99
|
-
});
|
|
100
|
-
test('Should unregister a registered contract and call its destroy method', () => {
|
|
101
|
-
const contract = {
|
|
102
|
-
destroy: jest.fn(),
|
|
103
|
-
myMethod: jest.fn()
|
|
104
|
-
};
|
|
105
|
-
sut.registerContract('testcontract', contract);
|
|
106
|
-
sut.unregisterContract('testcontract');
|
|
107
|
-
expect(contract.destroy).toBeCalled();
|
|
108
|
-
expect(sut['contracts'].length).toStrictEqual(0);
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
test('Start method should resume from previous block number', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
112
|
-
const adapter = {
|
|
113
|
-
loadState: jest.fn().mockResolvedValue({ lastBlockNumber: 509992 })
|
|
114
|
-
};
|
|
115
|
-
sut.registerAdapter(adapter);
|
|
116
|
-
jest.spyOn(sut, 'getBlock').mockImplementation(() => true);
|
|
117
|
-
jest.spyOn(sut, 'getLatestBlock').mockImplementation(() => true);
|
|
118
|
-
yield sut.start();
|
|
119
|
-
expect(sut['lastBlockNumber']).toStrictEqual(509992);
|
|
120
|
-
sut.stop();
|
|
121
|
-
}));
|
|
122
|
-
});
|
|
123
|
-
//# sourceMappingURL=streamer.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"streamer.spec.js","sourceRoot":"","sources":["../../tests/streamer.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/tests/utils.spec.js
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
const utils_1 = require("./../src/utils");
|
|
13
|
-
describe('Utils', () => {
|
|
14
|
-
beforeEach(() => {
|
|
15
|
-
fetchMock.resetMocks();
|
|
16
|
-
});
|
|
17
|
-
describe('Round Precision', () => {
|
|
18
|
-
test('Properly rounds precision of number to 3 places', () => {
|
|
19
|
-
const value = 99.299223;
|
|
20
|
-
expect(utils_1.Utils.roundPrecision(value, 3)).toStrictEqual(99.299);
|
|
21
|
-
});
|
|
22
|
-
test('Properly rounds precision of number up and to 3 places', () => {
|
|
23
|
-
const value = 99.2966;
|
|
24
|
-
expect(utils_1.Utils.roundPrecision(value, 3)).toStrictEqual(99.297);
|
|
25
|
-
});
|
|
26
|
-
test('Invalid numeric values passed', () => {
|
|
27
|
-
expect(utils_1.Utils.roundPrecision('dasd', 3)).toBeNaN();
|
|
28
|
-
});
|
|
29
|
-
});
|
|
30
|
-
test('Should generate two deterministic numbers', () => {
|
|
31
|
-
// Should generate a deterministic random number
|
|
32
|
-
expect(utils_1.Utils.randomNumber('dasdasdas', '2312fsdfsdfsdf', 'kfjlksdjflksdjf999')).toStrictEqual(26);
|
|
33
|
-
expect(utils_1.Utils.randomNumber('fdfsdfsdfsdfsf', '2312fsdfsdfsdf', 'kfjlksdjflksdjf999')).toStrictEqual(43);
|
|
34
|
-
});
|
|
35
|
-
test('Should shuffle array in a non-deterministic way', () => {
|
|
36
|
-
const array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20];
|
|
37
|
-
const arrayCloned = [...array];
|
|
38
|
-
utils_1.Utils.shuffle(array);
|
|
39
|
-
expect(array).not.toMatchObject(arrayCloned);
|
|
40
|
-
});
|
|
41
|
-
describe('Generate String', () => {
|
|
42
|
-
test('Generates a memo 6 characters in length', () => {
|
|
43
|
-
expect(utils_1.Utils.randomString(6)).toHaveLength(6);
|
|
44
|
-
});
|
|
45
|
-
test('Generates a memo using default 12 character length', () => {
|
|
46
|
-
expect(utils_1.Utils.randomString()).toHaveLength(12);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
describe('Random Range', () => {
|
|
50
|
-
test('Should generate a random number between 0 and 10', () => {
|
|
51
|
-
expect(utils_1.Utils.randomRange(0, 10)).toBeLessThanOrEqual(10);
|
|
52
|
-
});
|
|
53
|
-
test('Should generate the number 10', () => {
|
|
54
|
-
expect(utils_1.Utils.randomRange(10, 10)).toStrictEqual(10);
|
|
55
|
-
});
|
|
56
|
-
test('Only pass min and not max', () => {
|
|
57
|
-
expect(utils_1.Utils.randomRange(0)).toBeLessThanOrEqual(2000);
|
|
58
|
-
});
|
|
59
|
-
test('Pass non numeric values to random range', () => {
|
|
60
|
-
expect(utils_1.Utils.randomRange('dd', 'asjj')).toBeNaN();
|
|
61
|
-
});
|
|
62
|
-
});
|
|
63
|
-
describe('Convert Hive Amount', () => {
|
|
64
|
-
test('Converts amount', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
65
|
-
const amount = 25;
|
|
66
|
-
const fiatSymbol = 'USD';
|
|
67
|
-
const hiveSymbol = 'HIVE';
|
|
68
|
-
fetch
|
|
69
|
-
.once(JSON.stringify({ 'success': true, 'message': '', 'result': { 'Bid': 6905.98900000, 'Ask': 6925.65900000, 'Last': 6925.66500000 } }))
|
|
70
|
-
.once(JSON.stringify({ 'success': true, 'message': '', 'result': { 'Bid': 0.00003083, 'Ask': 0.00003169, 'Last': 0.00003192 } }))
|
|
71
|
-
.once(JSON.stringify({ 'success': true, 'message': '', 'result': { 'Bid': 0.00010800, 'Ask': 0.00010900, 'Last': 0.00010800 } }))
|
|
72
|
-
.once(JSON.stringify({ 'rates': { 'CAD': 1.4383752203, 'HKD': 7.7558193453, 'ISK': 140.4989335064, 'PHP': 51.4003524066, 'DKK': 6.9281276083, 'HUF': 326.7458035797, 'CZK': 25.6283038116, 'GBP': 0.862190485, 'RON': 4.4960586108, 'SEK': 10.2675507744, 'IDR': 16574.9976815358, 'INR': 76.1620142817, 'BRL': 5.0683483261, 'RUB': 79.8293610313, 'HRK': 7.053695632, 'JPY': 110.4609106928, 'THB': 32.8646944264, 'CHF': 0.982101456, 'EUR': 0.9273856997, 'MYR': 4.4449596587, 'BGN': 1.8137809515, 'TRY': 6.5859222851, 'CNY': 7.0838356673, 'NOK': 11.3667810442, 'NZD': 1.7563757767, 'ZAR': 17.6333116943, 'USD': 1.0, 'MXN': 24.6805156264, 'SGD': 1.4601687842, 'AUD': 1.7236390615, 'ILS': 3.6698506909, 'KRW': 1256.7003616804, 'PLN': 4.2711675786 }, 'base': 'USD', 'date': '2020-03-23' }));
|
|
73
|
-
const value = yield utils_1.Utils.convertHiveAmount(amount, fiatSymbol, hiveSymbol);
|
|
74
|
-
expect(fetch).toBeCalledWith(`https://api.bittrex.com/api/v1.1/public/getticker?market=USD-BTC`);
|
|
75
|
-
expect(fetch).toBeCalledWith(`https://api.bittrex.com/api/v1.1/public/getticker?market=BTC-HIVE`);
|
|
76
|
-
expect(fetch).toBeCalledWith(`https://api.bittrex.com/api/v1.1/public/getticker?market=BTC-HBD`);
|
|
77
|
-
expect(fetch).toBeCalledWith(`https://api.exchangeratesapi.io/latest?base=USD`);
|
|
78
|
-
expect(value).toStrictEqual(113.088);
|
|
79
|
-
}));
|
|
80
|
-
});
|
|
81
|
-
describe('Get transfer URL', () => {
|
|
82
|
-
test('Gets a transfer URL string', () => {
|
|
83
|
-
expect(utils_1.Utils.getTransferUrl('beggars', 'TEST123', '10.000 HIVE', 'http://localhost:5001')).toStrictEqual(`https://hivesigner.com/sign/transfer?to=beggars&memo=TEST123&amount=10.000 HIVE&redirect_uri=http://localhost:5001`);
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
//# sourceMappingURL=utils.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.spec.js","sourceRoot":"","sources":["../../tests/utils.spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0CAAuC;AAEvC,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;IAEnB,UAAU,CAAC,GAAG,EAAE;QACZ,SAAS,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC7B,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,MAAM,KAAK,GAAG,SAAS,CAAC;YAExB,MAAM,CAAC,aAAK,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;YAChE,MAAM,KAAK,GAAG,OAAO,CAAC;YAEtB,MAAM,CAAC,aAAK,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,aAAK,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,gDAAgD;QAChD,MAAM,CAAC,aAAK,CAAC,YAAY,CAAC,WAAW,EAAE,gBAAgB,EAAE,oBAAoB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAElG,MAAM,CAAC,aAAK,CAAC,YAAY,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,oBAAoB,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAC3G,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACtF,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;QAE/B,aAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAErB,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC7B,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,CAAC,aAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC5D,MAAM,CAAC,aAAK,CAAC,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC1B,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,CAAC,aAAK,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,aAAK,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,CAAC,aAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,CAAC,aAAK,CAAC,WAAW,CAAC,IAAW,EAAE,MAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACpE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACjC,IAAI,CAAC,iBAAiB,EAAE,GAAS,EAAE;YAC/B,MAAM,MAAM,GAAG,EAAE,CAAC;YAClB,MAAM,UAAU,GAAG,KAAK,CAAC;YACzB,MAAM,UAAU,GAAG,MAAM,CAAC;YAEzB,KAAa;iBACT,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAC,EAAE,EAAC,QAAQ,EAAC,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,aAAa,EAAC,MAAM,EAAC,aAAa,EAAC,EAAC,CAAC,CAAC;iBAC3H,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAC,EAAE,EAAC,QAAQ,EAAC,EAAC,KAAK,EAAC,UAAU,EAAC,KAAK,EAAC,UAAU,EAAC,MAAM,EAAC,UAAU,EAAC,EAAC,CAAC,CAAC;iBAClH,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC,SAAS,EAAC,IAAI,EAAC,SAAS,EAAC,EAAE,EAAC,QAAQ,EAAC,EAAC,KAAK,EAAC,UAAU,EAAC,KAAK,EAAC,UAAU,EAAC,MAAM,EAAC,UAAU,EAAC,EAAC,CAAC,CAAC;iBAClH,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAC,OAAO,EAAC,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,WAAW,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,gBAAgB,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,WAAW,EAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,WAAW,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,GAAG,EAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,EAAC,eAAe,EAAC,KAAK,EAAC,YAAY,EAAC,EAAC,MAAM,EAAC,KAAK,EAAC,MAAM,EAAC,YAAY,EAAC,CAAC,CAAC,CAAC;YAErsB,MAAM,KAAK,GAAG,MAAM,aAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YAE5E,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,kEAAkE,CAAC,CAAC;YACjG,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,mEAAmE,CAAC,CAAC;YAClG,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,kEAAkE,CAAC,CAAC;YACjG,MAAM,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,iDAAiD,CAAC,CAAC;YAEhF,MAAM,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC,CAAA,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC9B,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,aAAK,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,uBAAuB,CAAC,CAAC,CAAC,aAAa,CAAC,oHAAoH,CAAC,CAAC;QACnO,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AAEP,CAAC,CAAC,CAAC"}
|
package/hive-stream.json
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"lastBlockNumber":42374138,"actions":[]}
|