@steemit/steem-js 0.7.11 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/README.md +203 -87
  2. package/dist/api/index.d.ts +128 -0
  3. package/dist/api/methods.d.ts +9 -0
  4. package/dist/api/rpc-auth.d.ts +43 -0
  5. package/dist/api/transports/base.d.ts +13 -0
  6. package/dist/api/transports/http.d.ts +9 -0
  7. package/dist/api/transports/index.d.ts +9 -0
  8. package/dist/api/transports/types.d.ts +35 -0
  9. package/dist/api/transports/ws.d.ts +18 -0
  10. package/dist/auth/ecc/index.d.ts +9 -0
  11. package/dist/auth/ecc/src/address.d.ts +13 -0
  12. package/dist/auth/ecc/src/aes.d.ts +16 -0
  13. package/dist/auth/ecc/src/brain_key.d.ts +1 -0
  14. package/dist/auth/ecc/src/ecdsa.d.ts +28 -0
  15. package/dist/auth/ecc/src/ecsignature.d.ts +19 -0
  16. package/dist/auth/ecc/src/enforce_types.d.ts +5 -0
  17. package/dist/auth/ecc/src/hash.d.ts +25 -0
  18. package/dist/auth/ecc/src/index.d.ts +9 -0
  19. package/dist/auth/ecc/src/key_private.d.ts +38 -0
  20. package/dist/auth/ecc/src/key_public.d.ts +41 -0
  21. package/dist/auth/ecc/src/key_utils.d.ts +9 -0
  22. package/dist/auth/ecc/src/signature.d.ts +18 -0
  23. package/dist/auth/ecc.d.ts +3 -0
  24. package/dist/auth/index.d.ts +48 -0
  25. package/dist/auth/key_classes.d.ts +3 -0
  26. package/dist/auth/serializer.d.ts +19 -0
  27. package/dist/broadcast/helpers.d.ts +11 -0
  28. package/dist/broadcast/index.d.ts +43 -0
  29. package/dist/broadcast/operations.d.ts +6 -0
  30. package/dist/config.d.ts +25 -0
  31. package/dist/crypto/index.d.ts +25 -0
  32. package/dist/formatter/index.d.ts +92 -0
  33. package/dist/index.cjs +25848 -0
  34. package/dist/index.cjs.map +1 -0
  35. package/dist/index.d.ts +30 -0
  36. package/dist/index.js +25812 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/index.umd.js +57513 -0
  39. package/dist/index.umd.js.map +1 -0
  40. package/dist/memo/index.d.ts +11 -0
  41. package/dist/operations/index.d.ts +44 -0
  42. package/dist/serializer/convert.d.ts +12 -0
  43. package/dist/serializer/index.d.ts +11 -0
  44. package/dist/serializer/number_utils.d.ts +8 -0
  45. package/dist/serializer/precision.d.ts +5 -0
  46. package/dist/serializer/types.d.ts +36 -0
  47. package/dist/types/index.d.ts +131 -0
  48. package/dist/types.d.ts +34 -0
  49. package/dist/utils/index.d.ts +8 -0
  50. package/dist/utils.d.ts +2 -0
  51. package/package.json +72 -67
  52. package/.circleci/config.yml +0 -23
  53. package/.dockerignore +0 -12
  54. package/.editorconfig +0 -20
  55. package/.eslintrc +0 -27
  56. package/LICENSE +0 -21
  57. package/circle.yml +0 -3
  58. package/config.json +0 -10
  59. package/dist/statistics.html +0 -208
  60. package/dist/steem-tests.min.js +0 -23
  61. package/dist/steem-tests.min.js.gz +0 -0
  62. package/dist/steem-tests.min.js.map +0 -1
  63. package/dist/steem.min.js +0 -18
  64. package/dist/steem.min.js.gz +0 -0
  65. package/dist/steem.min.js.map +0 -1
  66. package/lib/api/index.js +0 -422
  67. package/lib/api/methods.js +0 -413
  68. package/lib/api/transports/base.js +0 -72
  69. package/lib/api/transports/http.js +0 -172
  70. package/lib/api/transports/index.js +0 -20
  71. package/lib/api/transports/ws.js +0 -228
  72. package/lib/auth/ecc/README.md +0 -20
  73. package/lib/auth/ecc/index.js +0 -13
  74. package/lib/auth/ecc/package.json +0 -36
  75. package/lib/auth/ecc/src/address.js +0 -84
  76. package/lib/auth/ecc/src/aes.js +0 -184
  77. package/lib/auth/ecc/src/brain_key.js +0 -13
  78. package/lib/auth/ecc/src/ecdsa.js +0 -219
  79. package/lib/auth/ecc/src/ecsignature.js +0 -128
  80. package/lib/auth/ecc/src/enforce_types.js +0 -49
  81. package/lib/auth/ecc/src/hash.js +0 -67
  82. package/lib/auth/ecc/src/key_private.js +0 -212
  83. package/lib/auth/ecc/src/key_public.js +0 -215
  84. package/lib/auth/ecc/src/key_utils.js +0 -112
  85. package/lib/auth/ecc/src/signature.js +0 -187
  86. package/lib/auth/index.js +0 -126
  87. package/lib/auth/memo.js +0 -147
  88. package/lib/auth/serializer/README.md +0 -13
  89. package/lib/auth/serializer/index.js +0 -21
  90. package/lib/auth/serializer/package.json +0 -32
  91. package/lib/auth/serializer/src/ChainTypes.js +0 -90
  92. package/lib/auth/serializer/src/convert.js +0 -37
  93. package/lib/auth/serializer/src/error_with_cause.js +0 -42
  94. package/lib/auth/serializer/src/fast_parser.js +0 -77
  95. package/lib/auth/serializer/src/number_utils.js +0 -67
  96. package/lib/auth/serializer/src/object_id.js +0 -68
  97. package/lib/auth/serializer/src/operations.js +0 -787
  98. package/lib/auth/serializer/src/precision.js +0 -95
  99. package/lib/auth/serializer/src/serializer.js +0 -211
  100. package/lib/auth/serializer/src/template.js +0 -17
  101. package/lib/auth/serializer/src/types.js +0 -1238
  102. package/lib/auth/serializer/src/validation.js +0 -360
  103. package/lib/broadcast/helpers.js +0 -177
  104. package/lib/broadcast/index.js +0 -127
  105. package/lib/broadcast/operations.js +0 -255
  106. package/lib/browser.js +0 -29
  107. package/lib/config.js +0 -45
  108. package/lib/formatter.js +0 -189
  109. package/lib/index.js +0 -19
  110. package/lib/utils.js +0 -55
  111. package/node-4.dockerfile +0 -6
  112. package/node-6.dockerfile +0 -6
  113. package/test/Crypto.js +0 -100
  114. package/test/KeyFormats.js +0 -105
  115. package/test/all_types.js +0 -115
  116. package/test/api.test.js +0 -326
  117. package/test/broadcast.test.js +0 -225
  118. package/test/browser/BrowserTests.js +0 -55
  119. package/test/comment.test.js +0 -69
  120. package/test/hf20-accounts.test.js +0 -76
  121. package/test/hf21-sps.test.js +0 -78
  122. package/test/memo.test.js +0 -37
  123. package/test/number_utils.js +0 -28
  124. package/test/operations_test.js +0 -39
  125. package/test/smt.test.js +0 -347
  126. package/test/test-post.json +0 -13
  127. package/test/test.html +0 -13
  128. package/test/test_helper.js +0 -19
  129. package/test/types_test.js +0 -139
  130. package/webpack/makeConfig.js +0 -105
  131. package/webpack.config.js +0 -2
  132. package/yarn.lock +0 -3336
package/lib/auth/memo.js DELETED
@@ -1,147 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
-
7
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
8
-
9
- exports.decode = decode;
10
- exports.encode = encode;
11
-
12
- var _bytebuffer = require('bytebuffer');
13
-
14
- var _bytebuffer2 = _interopRequireDefault(_bytebuffer);
15
-
16
- var _assert = require('assert');
17
-
18
- var _assert2 = _interopRequireDefault(_assert);
19
-
20
- var _bs = require('bs58');
21
-
22
- var _bs2 = _interopRequireDefault(_bs);
23
-
24
- var _ecc = require('./ecc');
25
-
26
- var _serializer = require('./serializer');
27
-
28
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
-
30
- var encMemo = _serializer.ops.encrypted_memo;
31
-
32
- /**
33
- Some fields are only required if the memo is marked for decryption (starts with a hash).
34
- @arg {string|PrivateKey} private_key - WIF or PrivateKey object
35
- @arg {string} memo - plain text is returned, hash prefix base58 is decrypted
36
- @return {string} - utf8 decoded string (hash prefix)
37
- */
38
- function decode(private_key, memo) {
39
- (0, _assert2.default)(memo, 'memo is required');
40
- _assert2.default.equal(typeof memo === 'undefined' ? 'undefined' : _typeof(memo), 'string', 'memo');
41
- if (!/^#/.test(memo)) return memo;
42
- memo = memo.substring(1);
43
-
44
- (0, _assert2.default)(private_key, 'private_key is required');
45
- checkEncryption();
46
-
47
- private_key = toPrivateObj(private_key);
48
-
49
- memo = _bs2.default.decode(memo);
50
- memo = encMemo.fromBuffer(new Buffer(memo, 'binary'));
51
-
52
- var _memo = memo,
53
- from = _memo.from,
54
- to = _memo.to,
55
- nonce = _memo.nonce,
56
- check = _memo.check,
57
- encrypted = _memo.encrypted;
58
-
59
- var pubkey = private_key.toPublicKey().toString();
60
- var otherpub = pubkey === from.toString() ? to.toString() : from.toString();
61
- memo = _ecc.Aes.decrypt(private_key, otherpub, nonce, encrypted, check);
62
-
63
- // remove varint length prefix
64
- var mbuf = _bytebuffer2.default.fromBinary(memo.toString('binary'), _bytebuffer2.default.DEFAULT_CAPACITY, _bytebuffer2.default.LITTLE_ENDIAN);
65
- try {
66
- mbuf.mark();
67
- return '#' + mbuf.readVString();
68
- } catch (e) {
69
- mbuf.reset();
70
- // Sender did not length-prefix the memo
71
- memo = new Buffer(mbuf.toString('binary'), 'binary').toString('utf-8');
72
- return '#' + memo;
73
- }
74
- }
75
-
76
- /**
77
- Some fields are only required if the memo is marked for encryption (starts with a hash).
78
- @arg {string|PrivateKey} private_key - WIF or PrivateKey object
79
- @arg {string|PublicKey} public_key - Recipient
80
- @arg {string} memo - plain text is returned, hash prefix text is encrypted
81
- @arg {string} [testNonce = undefined] - just for testing
82
- @return {string} - base64 decoded string (or plain text)
83
- */
84
- function encode(private_key, public_key, memo, testNonce) {
85
- (0, _assert2.default)(memo, 'memo is required');
86
- _assert2.default.equal(typeof memo === 'undefined' ? 'undefined' : _typeof(memo), 'string', 'memo');
87
- if (!/^#/.test(memo)) return memo;
88
- memo = memo.substring(1);
89
-
90
- (0, _assert2.default)(private_key, 'private_key is required');
91
- (0, _assert2.default)(public_key, 'public_key is required');
92
- checkEncryption();
93
-
94
- private_key = toPrivateObj(private_key);
95
- public_key = toPublicObj(public_key);
96
-
97
- var mbuf = new _bytebuffer2.default(_bytebuffer2.default.DEFAULT_CAPACITY, _bytebuffer2.default.LITTLE_ENDIAN);
98
- mbuf.writeVString(memo);
99
- memo = new Buffer(mbuf.copy(0, mbuf.offset).toBinary(), 'binary');
100
-
101
- var _Aes$encrypt = _ecc.Aes.encrypt(private_key, public_key, memo, testNonce),
102
- nonce = _Aes$encrypt.nonce,
103
- message = _Aes$encrypt.message,
104
- checksum = _Aes$encrypt.checksum;
105
-
106
- memo = encMemo.fromObject({
107
- from: private_key.toPublicKey(),
108
- to: public_key,
109
- nonce: nonce,
110
- check: checksum,
111
- encrypted: message
112
- });
113
- // serialize
114
- memo = encMemo.toBuffer(memo);
115
- return '#' + _bs2.default.encode(new Buffer(memo, 'binary'));
116
- }
117
-
118
- var encodeTest = undefined;
119
-
120
- /**
121
- Memo encryption has failed in the browser before. An Error will be thrown
122
- if a memo can't be encrypted and decrypted.
123
- */
124
- function checkEncryption() {
125
- if (encodeTest === undefined) {
126
- var plaintext = void 0;
127
- encodeTest = true; // prevent infinate looping
128
- try {
129
- var wif = '5JdeC9P7Pbd1uGdFVEsJ41EkEnADbbHGq6p1BwFxm6txNBsQnsw';
130
- var pubkey = 'STM8m5UgaFAAYQRuaNejYdS8FVLVp9Ss3K1qAVk5de6F8s3HnVbvA';
131
- var cyphertext = encode(wif, pubkey, '#memo爱');
132
- plaintext = decode(wif, cyphertext);
133
- } catch (e) {
134
- console.error(e);
135
- } finally {
136
- encodeTest = plaintext === '#memo爱';
137
- }
138
- }
139
- if (encodeTest === false) throw new Error('This environment does not support encryption.');
140
- }
141
-
142
- var toPrivateObj = function toPrivateObj(o) {
143
- return o ? o.d ? o : _ecc.PrivateKey.fromWif(o) : o /*null or undefined*/;
144
- };
145
- var toPublicObj = function toPublicObj(o) {
146
- return o ? o.Q ? o : _ecc.PublicKey.fromString(o) : o /*null or undefined*/;
147
- };
@@ -1,13 +0,0 @@
1
- # About
2
- Binary serialization and deserialization library
3
-
4
- ```js
5
- import {} from "serializer"
6
- ```
7
-
8
- # Configure
9
- Update `./.npmrc` if you need to change something:
10
- ```bash
11
- serializer:hex_dump = false
12
-
13
- ```
@@ -1,21 +0,0 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
-
5
- // Primary class for creating operations
6
- Serializer: require('./src/serializer'),
7
-
8
- // helper functions for creating operations
9
- fp: require('./src/fast_parser'),
10
-
11
- // Low level types
12
- types: require('./src/types'),
13
-
14
- // Higher level operations (made out of generic types)
15
- ops: require('./src/operations'),
16
-
17
- // Utility that generates JSON examples
18
- template: require('./src/template'),
19
-
20
- number_utils: require('./src/number_utils')
21
- };
@@ -1,32 +0,0 @@
1
- {
2
- "name": "serializer",
3
- "version": "1.0.0",
4
- "description": "Binary serialization and deserialization library",
5
- "main": "index.js",
6
- "config": {
7
- "hex_dump": false
8
- },
9
- "scripts": {
10
- "test": "mocha --compilers js:babel-core/register --recursive",
11
- "test:watch": "npm test -- --watch"
12
- },
13
- "author": "",
14
- "license": "BSD-2-Clause-FreeBSD",
15
- "dependencies": {
16
- "bigi": "^1.4.1",
17
- "bytebuffer": "^5.0.0",
18
- "ecc": "^1.0.0"
19
- },
20
- "devDependencies": {
21
- "assert": "^1.3.0",
22
- "babel-cli": "^6.2.0",
23
- "babel-core": "^6.2.0",
24
- "babel-preset-es2015": "^6.1.18",
25
- "mocha": "^2.3.4"
26
- },
27
- "_babel": {
28
- "presets": [
29
- "es2015"
30
- ]
31
- }
32
- }
@@ -1,90 +0,0 @@
1
- "use strict";
2
-
3
- var ChainTypes;
4
-
5
- module.exports = ChainTypes = {};
6
-
7
- ChainTypes.reserved_spaces = {
8
- relative_protocol_ids: 0,
9
- protocol_ids: 1,
10
- implementation_ids: 2
11
- };
12
-
13
- ChainTypes.operations = {
14
- vote: 0,
15
- comment: 1,
16
- transfer: 2,
17
- transfer_to_vesting: 3,
18
- withdraw_vesting: 4,
19
- limit_order_create: 5,
20
- limit_order_cancel: 6,
21
- feed_publish: 7,
22
- convert: 8,
23
- account_create: 9,
24
- account_update: 10,
25
- witness_update: 11,
26
- account_witness_vote: 12,
27
- account_witness_proxy: 13,
28
- pow: 14,
29
- custom: 15,
30
- report_over_production: 16,
31
- delete_comment: 17,
32
- custom_json: 18,
33
- comment_options: 19,
34
- set_withdraw_vesting_route: 20,
35
- limit_order_create2: 21,
36
- claim_account: 22,
37
- create_claimed_account: 23,
38
- request_account_recovery: 24,
39
- recover_account: 25,
40
- change_recovery_account: 26,
41
- escrow_transfer: 27,
42
- escrow_dispute: 28,
43
- escrow_release: 29,
44
- pow2: 30,
45
- escrow_approve: 31,
46
- transfer_to_savings: 32,
47
- transfer_from_savings: 33,
48
- cancel_transfer_from_savings: 34,
49
- custom_binary: 35,
50
- decline_voting_rights: 36,
51
- reset_account: 37,
52
- set_reset_account: 38,
53
- claim_reward_balance: 39,
54
- delegate_vesting_shares: 40,
55
- account_create_with_delegation: 41,
56
- witness_set_properties: 42,
57
- account_update2: 43,
58
- create_proposal: 44,
59
- update_proposal_votes: 45,
60
- remove_proposal: 46,
61
- claim_reward_balance2: 47,
62
- vote2: 48,
63
- smt_setup: 49,
64
- smt_setup_emissions: 50,
65
- smt_setup_ico_tier: 51,
66
- smt_set_setup_parameters: 52,
67
- smt_set_runtime_parameters: 53,
68
- smt_create: 54,
69
- smt_contribute: 55,
70
- fill_convert_request: 56,
71
- author_reward: 57,
72
- curation_reward: 58,
73
- comment_reward: 59,
74
- liquidity_reward: 60,
75
- interest: 61,
76
- fill_vesting_withdraw: 62,
77
- fill_order: 63,
78
- shutdown_witness: 64,
79
- fill_transfer_from_savings: 65,
80
- hardfork: 66,
81
- comment_payout_update: 67,
82
- return_vesting_delegation: 68,
83
- comment_benefactor_reward: 69
84
- };
85
-
86
- //types.hpp
87
- ChainTypes.object_type = {
88
- "null": 0,
89
- base: 1
90
- };
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- var ByteBuffer = require('bytebuffer');
4
-
5
- module.exports = function (type) {
6
-
7
- return {
8
- fromHex: function fromHex(hex) {
9
- var b = ByteBuffer.fromHex(hex, ByteBuffer.LITTLE_ENDIAN);
10
- return type.fromByteBuffer(b);
11
- },
12
- toHex: function toHex(object) {
13
- var b = toByteBuffer(type, object);
14
- return b.toHex();
15
- },
16
- fromBuffer: function fromBuffer(buffer) {
17
- var b = ByteBuffer.fromBinary(buffer.toString(), ByteBuffer.LITTLE_ENDIAN);
18
- return type.fromByteBuffer(b);
19
- },
20
- toBuffer: function toBuffer(object) {
21
- return new Buffer(toByteBuffer(type, object).toBinary(), 'binary');
22
- },
23
- fromBinary: function fromBinary(string) {
24
- var b = ByteBuffer.fromBinary(string, ByteBuffer.LITTLE_ENDIAN);
25
- return type.fromByteBuffer(b);
26
- },
27
- toBinary: function toBinary(object) {
28
- return toByteBuffer(type, object).toBinary();
29
- }
30
- };
31
- };
32
-
33
- var toByteBuffer = function toByteBuffer(type, object) {
34
- var b = new ByteBuffer(ByteBuffer.DEFAULT_CAPACITY, ByteBuffer.LITTLE_ENDIAN);
35
- type.appendByteBuffer(b, object);
36
- return b.copy(0, b.offset);
37
- };
@@ -1,42 +0,0 @@
1
- "use strict";
2
-
3
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
4
-
5
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
-
7
- /** Exception nesting. */
8
- var ErrorWithCause = function () {
9
- function ErrorWithCause(message, cause) {
10
- _classCallCheck(this, ErrorWithCause);
11
-
12
- this.message = message;
13
- if (typeof cause !== "undefined" && cause !== null ? cause.message : undefined) {
14
- this.message = "cause\t" + cause.message + "\t" + this.message;
15
- }
16
-
17
- var stack = ""; //(new Error).stack
18
- if (typeof cause !== "undefined" && cause !== null ? cause.stack : undefined) {
19
- stack = "caused by\n\t" + cause.stack + "\t" + stack;
20
- }
21
-
22
- this.stack = this.message + "\n" + stack;
23
- }
24
-
25
- _createClass(ErrorWithCause, null, [{
26
- key: "throw",
27
- value: function _throw(message, cause) {
28
- var msg = message;
29
- if (typeof cause !== "undefined" && cause !== null ? cause.message : undefined) {
30
- msg += "\t cause: " + cause.message + " ";
31
- }
32
- if (typeof cause !== "undefined" && cause !== null ? cause.stack : undefined) {
33
- msg += "\n stack: " + cause.stack + " ";
34
- }
35
- throw new Error(msg);
36
- }
37
- }]);
38
-
39
- return ErrorWithCause;
40
- }();
41
-
42
- module.exports = ErrorWithCause;
@@ -1,77 +0,0 @@
1
- 'use strict';
2
-
3
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
4
-
5
- var _ecc = require('../../ecc');
6
-
7
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
8
-
9
- var FastParser = function () {
10
- function FastParser() {
11
- _classCallCheck(this, FastParser);
12
- }
13
-
14
- _createClass(FastParser, null, [{
15
- key: 'fixed_data',
16
- value: function fixed_data(b, len, buffer) {
17
- if (!b) {
18
- return;
19
- }
20
- if (buffer) {
21
- var data = buffer.slice(0, len).toString('binary');
22
- b.append(data, 'binary');
23
- while (len-- > data.length) {
24
- b.writeUint8(0);
25
- }
26
- } else {
27
- var b_copy = b.copy(b.offset, b.offset + len);
28
- b.skip(len);
29
- return new Buffer(b_copy.toBinary(), 'binary');
30
- }
31
- }
32
- }, {
33
- key: 'public_key',
34
- value: function public_key(b, _public_key) {
35
- if (!b) {
36
- return;
37
- }
38
- if (_public_key) {
39
- var buffer = _public_key.toBuffer();
40
- b.append(buffer.toString('binary'), 'binary');
41
- return;
42
- } else {
43
- buffer = FastParser.fixed_data(b, 33);
44
- return _ecc.PublicKey.fromBuffer(buffer);
45
- }
46
- }
47
- }, {
48
- key: 'ripemd160',
49
- value: function ripemd160(b, _ripemd) {
50
- if (!b) {
51
- return;
52
- }
53
- if (_ripemd) {
54
- FastParser.fixed_data(b, 20, _ripemd);
55
- return;
56
- } else {
57
- return FastParser.fixed_data(b, 20);
58
- }
59
- }
60
- }, {
61
- key: 'time_point_sec',
62
- value: function time_point_sec(b, epoch) {
63
- if (epoch) {
64
- epoch = Math.ceil(epoch / 1000);
65
- b.writeInt32(epoch);
66
- return;
67
- } else {
68
- epoch = b.readInt32(); // fc::time_point_sec
69
- return new Date(epoch * 1000);
70
- }
71
- }
72
- }]);
73
-
74
- return FastParser;
75
- }();
76
-
77
- module.exports = FastParser;
@@ -1,67 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
-
7
- var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
8
-
9
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
10
-
11
- exports.toImpliedDecimal = toImpliedDecimal;
12
- exports.fromImpliedDecimal = fromImpliedDecimal;
13
-
14
- var _assert = require("assert");
15
-
16
- var _assert2 = _interopRequireDefault(_assert);
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- /**
21
- Convert 12.34 with a precision of 3 into 12340
22
-
23
- @arg {number|string} number - Use strings for large numbers. This may contain one decimal but no sign
24
- @arg {number} precision - number of implied decimal places (usually causes right zero padding)
25
- @return {string} -
26
- */
27
- function toImpliedDecimal(number, precision) {
28
-
29
- if (typeof number === "number") {
30
- (0, _assert2.default)(number <= 9007199254740991, "overflow");
31
- number = "" + number;
32
- } else if (number.toString) number = number.toString();
33
-
34
- (0, _assert2.default)(typeof number === "string", "number should be an actual number or string: " + (typeof number === "undefined" ? "undefined" : _typeof(number)));
35
- number = number.trim();
36
- (0, _assert2.default)(/^[0-9]*\.?[0-9]*$/.test(number), "Invalid decimal number " + number);
37
-
38
- var _number$split = number.split("."),
39
- _number$split2 = _slicedToArray(_number$split, 2),
40
- _number$split2$ = _number$split2[0],
41
- whole = _number$split2$ === undefined ? "" : _number$split2$,
42
- _number$split2$2 = _number$split2[1],
43
- decimal = _number$split2$2 === undefined ? "" : _number$split2$2;
44
-
45
- var padding = precision - decimal.length;
46
- (0, _assert2.default)(padding >= 0, "Too many decimal digits in " + number + " to create an implied decimal of " + precision);
47
-
48
- for (var i = 0; i < padding; i++) {
49
- decimal += "0";
50
- }while (whole.charAt(0) === "0") {
51
- whole = whole.substring(1);
52
- }return whole + decimal;
53
- }
54
-
55
- function fromImpliedDecimal(number, precision) {
56
- if (typeof number === "number") {
57
- (0, _assert2.default)(number <= 9007199254740991, "overflow");
58
- number = "" + number;
59
- } else if (number.toString) number = number.toString();
60
-
61
- while (number.length < precision + 1) {
62
- // 0.123
63
- number = "0" + number;
64
- } // 44000 => 44.000
65
- var dec_string = number.substring(number.length - precision);
66
- return number.substring(0, number.length - precision) + (dec_string ? "." + dec_string : "");
67
- }
@@ -1,68 +0,0 @@
1
- 'use strict';
2
-
3
- var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
4
-
5
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
-
7
- var Long = require('bytebuffer').Long;
8
-
9
- var v = require('./validation');
10
- var DB_MAX_INSTANCE_ID = Long.fromNumber(Math.pow(2, 48) - 1);
11
-
12
- var ObjectId = function () {
13
- function ObjectId(space, type, instance) {
14
- _classCallCheck(this, ObjectId);
15
-
16
- this.space = space;
17
- this.type = type;
18
- this.instance = instance;
19
- var instance_string = this.instance.toString();
20
- var object_id = this.space + '.' + this.type + '.' + instance_string;
21
- if (!v.is_digits(instance_string)) {
22
- throw new ('Invalid object id ' + object_id)();
23
- }
24
- }
25
-
26
- _createClass(ObjectId, [{
27
- key: 'toLong',
28
- value: function toLong() {
29
- return Long.fromNumber(this.space).shiftLeft(56).or(Long.fromNumber(this.type).shiftLeft(48).or(this.instance));
30
- }
31
- }, {
32
- key: 'appendByteBuffer',
33
- value: function appendByteBuffer(b) {
34
- return b.writeUint64(this.toLong());
35
- }
36
- }, {
37
- key: 'toString',
38
- value: function toString() {
39
- return this.space + '.' + this.type + '.' + this.instance.toString();
40
- }
41
- }], [{
42
- key: 'fromString',
43
- value: function fromString(value) {
44
- if (value.space !== undefined && value.type !== undefined && value.instance !== undefined) {
45
- return value;
46
- }
47
- var params = v.require_match(/^([0-9]+)\.([0-9]+)\.([0-9]+)$/, v.required(value, "object_id"), "object_id");
48
- return new ObjectId(parseInt(params[1]), parseInt(params[2]), Long.fromString(params[3]));
49
- }
50
- }, {
51
- key: 'fromLong',
52
- value: function fromLong(long) {
53
- var space = long.shiftRight(56).toInt();
54
- var type = long.shiftRight(48).toInt() & 0x00ff;
55
- var instance = long.and(DB_MAX_INSTANCE_ID);
56
- return new ObjectId(space, type, instance);
57
- }
58
- }, {
59
- key: 'fromByteBuffer',
60
- value: function fromByteBuffer(b) {
61
- return ObjectId.fromLong(b.readUint64());
62
- }
63
- }]);
64
-
65
- return ObjectId;
66
- }();
67
-
68
- module.exports = ObjectId;