hive-stream 2.0.3 → 2.0.5

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 (99) hide show
  1. package/.env +3 -1
  2. package/.env.example +3 -2
  3. package/.travis.yml +11 -11
  4. package/LICENSE +21 -21
  5. package/README.md +238 -236
  6. package/dist/actions.d.ts +10 -9
  7. package/dist/actions.js +23 -15
  8. package/dist/actions.js.map +1 -1
  9. package/dist/adapters/base.adapter.d.ts +25 -21
  10. package/dist/adapters/base.adapter.js +49 -63
  11. package/dist/adapters/base.adapter.js.map +1 -1
  12. package/dist/adapters/mongodb.adapter.d.ts +37 -29
  13. package/dist/adapters/mongodb.adapter.js +158 -113
  14. package/dist/adapters/mongodb.adapter.js.map +1 -1
  15. package/dist/adapters/sqlite.adapter.d.ts +41 -23
  16. package/dist/adapters/sqlite.adapter.js +397 -121
  17. package/dist/adapters/sqlite.adapter.js.map +1 -1
  18. package/dist/api.d.ts +6 -0
  19. package/dist/api.js +56 -0
  20. package/dist/api.js.map +1 -0
  21. package/dist/config.d.ts +16 -14
  22. package/dist/config.js +18 -15
  23. package/dist/config.js.map +1 -1
  24. package/dist/contracts/coinflip.contract.d.ts +14 -0
  25. package/dist/contracts/coinflip.contract.js +95 -0
  26. package/dist/contracts/coinflip.contract.js.map +1 -0
  27. package/dist/contracts/dice.contract.d.ts +29 -29
  28. package/dist/contracts/dice.contract.js +155 -157
  29. package/dist/contracts/dice.contract.js.map +1 -1
  30. package/dist/contracts/lotto.contract.d.ts +20 -16
  31. package/dist/contracts/lotto.contract.js +246 -107
  32. package/dist/contracts/lotto.contract.js.map +1 -1
  33. package/dist/exchanges/bittrex.d.ts +6 -0
  34. package/dist/exchanges/bittrex.js +35 -0
  35. package/dist/exchanges/bittrex.js.map +1 -0
  36. package/dist/exchanges/exchange.d.ts +9 -0
  37. package/dist/exchanges/exchange.js +27 -0
  38. package/dist/exchanges/exchange.js.map +1 -0
  39. package/dist/hive-rates.d.ts +9 -0
  40. package/dist/hive-rates.js +76 -0
  41. package/dist/hive-rates.js.map +1 -0
  42. package/dist/index.d.ts +11 -10
  43. package/dist/index.js +32 -15
  44. package/dist/index.js.map +1 -1
  45. package/dist/streamer.d.ts +93 -70
  46. package/dist/streamer.js +545 -439
  47. package/dist/streamer.js.map +1 -1
  48. package/dist/test.d.ts +1 -1
  49. package/dist/test.js +25 -27
  50. package/dist/test.js.map +1 -1
  51. package/dist/types/hive-stream.d.ts +6 -6
  52. package/dist/types/hive-stream.js +2 -2
  53. package/dist/utils.d.ts +27 -14
  54. package/dist/utils.js +261 -85
  55. package/dist/utils.js.map +1 -1
  56. package/ecosystem.config.js +17 -17
  57. package/jest.config.js +8 -13
  58. package/package.json +48 -44
  59. package/test-contract-block.md +18 -18
  60. package/tests/adapters/sqlite.adapter.spec.ts +43 -0
  61. package/tests/contracts/coinflip.contract.spec.ts +132 -0
  62. package/tests/contracts/dice.contract.spec.ts +159 -156
  63. package/tests/contracts/entrants.json +728 -728
  64. package/tests/contracts/lotto.contract.spec.ts +323 -372
  65. package/tests/setup.ts +18 -20
  66. package/tests/streamer.spec.ts +151 -151
  67. package/tests/utils.spec.ts +94 -99
  68. package/tsconfig.build.json +22 -20
  69. package/tslint.json +20 -20
  70. package/wallaby.js +26 -0
  71. package/dist/adapters/file.adapter.d.ts +0 -8
  72. package/dist/adapters/file.adapter.js +0 -70
  73. package/dist/adapters/file.adapter.js.map +0 -1
  74. package/dist/test/setup.d.ts +0 -0
  75. package/dist/test/setup.js +0 -9
  76. package/dist/test/setup.js.map +0 -1
  77. package/dist/test/streamer.spec.d.ts +0 -1
  78. package/dist/test/streamer.spec.js +0 -145
  79. package/dist/test/streamer.spec.js.map +0 -1
  80. package/dist/test/utils.spec.d.ts +0 -1
  81. package/dist/test/utils.spec.js +0 -11
  82. package/dist/test/utils.spec.js.map +0 -1
  83. package/dist/tests/contracts/dice.contract.spec.d.ts +0 -1
  84. package/dist/tests/contracts/dice.contract.spec.js +0 -130
  85. package/dist/tests/contracts/dice.contract.spec.js.map +0 -1
  86. package/dist/tests/contracts/entrants.json +0 -729
  87. package/dist/tests/contracts/lotto.contract.spec.d.ts +0 -1
  88. package/dist/tests/contracts/lotto.contract.spec.js +0 -300
  89. package/dist/tests/contracts/lotto.contract.spec.js.map +0 -1
  90. package/dist/tests/setup.d.ts +0 -1
  91. package/dist/tests/setup.js +0 -19
  92. package/dist/tests/setup.js.map +0 -1
  93. package/dist/tests/streamer.spec.d.ts +0 -1
  94. package/dist/tests/streamer.spec.js +0 -123
  95. package/dist/tests/streamer.spec.js.map +0 -1
  96. package/dist/tests/utils.spec.d.ts +0 -1
  97. package/dist/tests/utils.spec.js +0 -87
  98. package/dist/tests/utils.spec.js.map +0 -1
  99. package/hive-stream.json +0 -1
package/dist/index.d.ts CHANGED
@@ -1,10 +1,11 @@
1
- export * from './config';
2
- export * from './streamer';
3
- export * from './utils';
4
- export * from './actions';
5
- export * from './adapters/base.adapter';
6
- export * from './adapters/file.adapter';
7
- export * from './adapters/sqlite.adapter';
8
- export * from './adapters/mongodb.adapter';
9
- export { LottoContract } from './contracts/lotto.contract';
10
- export * from './types/hive-stream';
1
+ export * from './config';
2
+ export * from './streamer';
3
+ export * from './utils';
4
+ export * from './actions';
5
+ export * from './adapters/base.adapter';
6
+ export * from './adapters/sqlite.adapter';
7
+ export * from './adapters/mongodb.adapter';
8
+ export { DiceContract } from './contracts/dice.contract';
9
+ export { LottoContract } from './contracts/lotto.contract';
10
+ export { CoinflipContract } from './contracts/coinflip.contract';
11
+ export * from './types/hive-stream';
package/dist/index.js CHANGED
@@ -1,16 +1,33 @@
1
- "use strict";
2
- function __export(m) {
3
- for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
4
- }
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- __export(require("./config"));
7
- __export(require("./streamer"));
8
- __export(require("./utils"));
9
- __export(require("./actions"));
10
- __export(require("./adapters/base.adapter"));
11
- __export(require("./adapters/file.adapter"));
12
- __export(require("./adapters/sqlite.adapter"));
13
- __export(require("./adapters/mongodb.adapter"));
14
- var lotto_contract_1 = require("./contracts/lotto.contract");
15
- exports.LottoContract = lotto_contract_1.LottoContract;
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.CoinflipContract = exports.LottoContract = exports.DiceContract = void 0;
18
+ __exportStar(require("./config"), exports);
19
+ __exportStar(require("./streamer"), exports);
20
+ __exportStar(require("./utils"), exports);
21
+ __exportStar(require("./actions"), exports);
22
+ __exportStar(require("./adapters/base.adapter"), exports);
23
+ __exportStar(require("./adapters/sqlite.adapter"), exports);
24
+ __exportStar(require("./adapters/mongodb.adapter"), exports);
25
+ var dice_contract_1 = require("./contracts/dice.contract");
26
+ Object.defineProperty(exports, "DiceContract", { enumerable: true, get: function () { return dice_contract_1.DiceContract; } });
27
+ var lotto_contract_1 = require("./contracts/lotto.contract");
28
+ Object.defineProperty(exports, "LottoContract", { enumerable: true, get: function () { return lotto_contract_1.LottoContract; } });
29
+ var coinflip_contract_1 = require("./contracts/coinflip.contract");
30
+ Object.defineProperty(exports, "CoinflipContract", { enumerable: true, get: function () { return coinflip_contract_1.CoinflipContract; } });
31
+ // Types
32
+ __exportStar(require("./types/hive-stream"), exports);
16
33
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;AAAA,8BAAyB;AACzB,gCAA2B;AAC3B,6BAAwB;AACxB,+BAA0B;AAE1B,6CAAwC;AACxC,6CAAwC;AACxC,+CAA0C;AAC1C,gDAA2C;AAG3C,6DAA2D;AAAlD,yCAAA,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,6CAA2B;AAC3B,0CAAwB;AACxB,4CAA0B;AAE1B,0DAAwC;AACxC,4DAA0C;AAC1C,6DAA2C;AAE3C,2DAAyD;AAAhD,6GAAA,YAAY,OAAA;AACrB,6DAA2D;AAAlD,+GAAA,aAAa,OAAA;AACtB,mEAAiE;AAAxD,qHAAA,gBAAgB,OAAA;AAEzB,QAAQ;AACR,sDAAoC"}
@@ -1,70 +1,93 @@
1
- import { TimeAction } from './actions';
2
- import { ConfigInterface } from './config';
3
- export declare class Streamer {
4
- private customJsonSubscriptions;
5
- private customJsonIdSubscriptions;
6
- private commentSubscriptions;
7
- private postSubscriptions;
8
- private transferSubscriptions;
9
- private attempts;
10
- private config;
11
- private client;
12
- private username;
13
- private postingKey;
14
- private activeKey;
15
- private blockNumberTimeout;
16
- private lastBlockNumber;
17
- private blockId;
18
- private previousBlockId;
19
- private transactionId;
20
- private blockTime;
21
- private latestBlockchainTime;
22
- private disableAllProcessing;
23
- private contracts;
24
- private adapter;
25
- private actions;
26
- private utils;
27
- constructor(userConfig?: Partial<ConfigInterface>);
28
- registerAdapter(adapter: any): void;
29
- getAdapter(): any;
30
- registerAction(action: TimeAction): Promise<void>;
31
- registerContract(name: string, contract: any): this;
32
- unregisterContract(name: string): void;
33
- /**
34
- * setConfig
35
- *
36
- * Allows specific configuration settings to be overridden
37
- *
38
- * @param config
39
- */
40
- setConfig(config: Partial<ConfigInterface>): this;
41
- /**
42
- * Start
43
- *
44
- * Starts the streamer bot to get blocks from the Hive API
45
- *
46
- */
47
- start(): Promise<void>;
48
- /**
49
- * Stop
50
- *
51
- * Stops the streamer from running
52
- */
53
- stop(): void;
54
- private getLatestBlock;
55
- private getBlock;
56
- private loadBlock;
57
- processOperation(op: any, blockNumber: number, blockId: string, prevBlockId: string, trxId: string, blockTime: Date): void;
58
- private processActions;
59
- saveStateToDisk(): Promise<void>;
60
- transferHiveTokens(from: string, to: string, amount: string, symbol: string, memo?: string): Promise<import("@hivechain/dhive").TransactionConfirmation>;
61
- upvote(votePercentage: string, username: string, permlink: string): Promise<import("@hivechain/dhive").TransactionConfirmation>;
62
- downvote(votePercentage: string, username: string, permlink: string): Promise<import("@hivechain/dhive").TransactionConfirmation>;
63
- getTransaction(blockNumber: number, transactionId: string): Promise<import("@hivechain/dhive").SignedTransaction>;
64
- verifyTransfer(transaction: any, from: string, to: string, amount: string): Promise<boolean>;
65
- onComment(callback: any): void;
66
- onPost(callback: any): void;
67
- onTransfer(account: string, callback: () => void): void;
68
- onCustomJson(callback: any): void;
69
- onCustomJsonId(callback: any, id: string): void;
70
- }
1
+ import { AdapterBase } from './adapters/base.adapter';
2
+ import { TimeAction } from './actions';
3
+ import { ConfigInterface } from './config';
4
+ export declare class Streamer {
5
+ private customJsonSubscriptions;
6
+ private customJsonIdSubscriptions;
7
+ private customJsonHiveEngineSubscriptions;
8
+ private commentSubscriptions;
9
+ private postSubscriptions;
10
+ private transferSubscriptions;
11
+ private attempts;
12
+ private config;
13
+ private client;
14
+ private hive;
15
+ private username;
16
+ private postingKey;
17
+ private activeKey;
18
+ private blockNumberTimeout;
19
+ private latestBlockTimer;
20
+ private lastBlockNumber;
21
+ private blockId;
22
+ private previousBlockId;
23
+ private transactionId;
24
+ private blockTime;
25
+ private latestBlockchainTime;
26
+ private disableAllProcessing;
27
+ private contracts;
28
+ private adapter;
29
+ private actions;
30
+ private utils;
31
+ constructor(userConfig?: Partial<ConfigInterface>);
32
+ registerAdapter(adapter: any): void;
33
+ getAdapter(): AdapterBase;
34
+ /**
35
+ * Register a new action
36
+ *
37
+ */
38
+ registerAction(action: TimeAction): Promise<void>;
39
+ /**
40
+ * Resets a specific action time value
41
+ *
42
+ * @param id
43
+ *
44
+ */
45
+ resetAction(id: string): void;
46
+ registerContract(name: string, contract: any): this;
47
+ unregisterContract(name: string): void;
48
+ /**
49
+ * setConfig
50
+ *
51
+ * Allows specific configuration settings to be overridden
52
+ *
53
+ * @param config
54
+ */
55
+ setConfig(config: Partial<ConfigInterface>): this;
56
+ /**
57
+ * Start
58
+ *
59
+ * Starts the streamer bot to get blocks from the Hive API
60
+ *
61
+ */
62
+ start(): Promise<Streamer>;
63
+ /**
64
+ * Stop
65
+ *
66
+ * Stops the streamer from running
67
+ */
68
+ stop(): Promise<void>;
69
+ private getLatestBlock;
70
+ private getBlock;
71
+ private loadBlock;
72
+ processOperation(op: any, blockNumber: number, blockId: string, prevBlockId: string, trxId: string, blockTime: Date): void;
73
+ private processActions;
74
+ saveStateToDisk(): Promise<void>;
75
+ saveToHiveApi(from: string, data: string): Promise<import("@hiveio/dhive").TransactionConfirmation>;
76
+ getAccountTransfers(account: string, from?: number, limit?: number): Promise<any>;
77
+ transferHiveTokens(from: string, to: string, amount: string, symbol: string, memo?: string): Promise<import("@hiveio/dhive").TransactionConfirmation>;
78
+ transferHiveTokensMultiple(from: string, accounts: string[], amount: string, symbol: string, memo?: string): Promise<boolean>;
79
+ transferHiveEngineTokens(from: string, to: string, symbol: string, quantity: string, memo?: string): Promise<import("@hiveio/dhive").TransactionConfirmation>;
80
+ transferHiveEngineTokensMultiple(from: string, accounts: any[], symbol: string, memo?: string, amount?: string): Promise<void>;
81
+ issueHiveEngineTokens(from: string, to: string, symbol: string, quantity: string, memo?: string): Promise<import("@hiveio/dhive").TransactionConfirmation>;
82
+ issueHiveEngineTokensMultiple(from: string, accounts: any[], symbol: string, memo?: string, amount?: string): Promise<void>;
83
+ upvote(votePercentage: string, username: string, permlink: string): Promise<import("@hiveio/dhive").TransactionConfirmation>;
84
+ downvote(votePercentage: string, username: string, permlink: string): Promise<import("@hiveio/dhive").TransactionConfirmation>;
85
+ getTransaction(blockNumber: number, transactionId: string): Promise<import("@hiveio/dhive").SignedTransaction>;
86
+ verifyTransfer(transaction: any, from: string, to: string, amount: string): Promise<boolean>;
87
+ onComment(callback: any): void;
88
+ onPost(callback: any): void;
89
+ onTransfer(account: string, callback: () => void): void;
90
+ onCustomJson(callback: any): void;
91
+ onCustomJsonId(callback: any, id: string): void;
92
+ onHiveEngine(callback: any): void;
93
+ }