{"version":3,"sources":["webpack:///./node_modules/@hiveio/hive-js/lib/auth/serializer/src/types.js"],"names":["obj","_slicedToArray","arr","i","Array","isArray","Symbol","iterator","Object","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","value","length","err","sliceIterator","TypeError","_typeof","constructor","prototype","_ecc","_number_utils","_config","_config2","__esModule","default","v","ObjectId","fp","chain_types","Types","module","exports","HEX_DUMP","process","env","npm_config__graphene_serializer_hex_dump","damm_checksum_8digit","Error","t","q0","q1","q2","q3","q4","q5","x","asset","fromByteBuffer","b","amount","readInt64","precision","readUint8","amount_string","symbol","b_copy","copy","offset","nai","Buffer","toBinary","readInt32","toString","padStart","to_String","skip","fromImpliedDecimal","_b_copy","replace","appendByteBuffer","object","parseInt","slice","Math","floor","get","writeInt64","to_long","trim","test","res","split","startsWith","dot","indexOf","writeUint32","writeUint8","append","toUpperCase","fromObject","toObject","debug","arguments","use_default","asset_symbol","nai_string","_b_copy2","uint8","require_range","uint16","readUint16","writeUint16","uint32","readUint32","MIN_SIGNED_32","pow","MAX_SIGNED_32","varint32","readVarint32","writeVarint32","int16","readInt16","writeInt16","int64","required","uint64","readUint64","writeUint64","unsigned","uint128","readBigInt64","string","readVString","writeVString","string_binary","len","bytes","size","isBuffer","zeros","num","join","bool","JSON","parse","void","array","st_operation","console","log","result","sortOperation","o","time_point_sec","getTime","Date","toISOString","int","set","validate","dup_map","ref","this","iterable","fixed_array","count","j","results","k","ref1","results1","protocol_id_type","name","reserved_spaces","protocol_ids","object_type","resolve","get_instance","to_number","is_digits","object_type_id","object_id_type","fromString","vote_id","TYPE","ID","type","id","require_test","_object$split","_object$split2","compare","a","optional","result_object","annotate","__optional","static_variant","_st_operations","nosort","st_operations","opTypeId","pos","type_id","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","operation_name","return","error","strCmp","map","key_st_operation","value_st_operation","end","public_key","toPublic","Q","PublicKey","fromStringOrThrow","ecc_config","address","_to_address","addy","Address","ripemd160","toBuffer","firstEl","el","sort"],"mappings":"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","file":"vendor.hiveio~26cbf202.32ec3dd524c339f4ca6c.chunk.js","sourcesContent":["'use strict';\n\nvar _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\"); } }; }();\n\nvar _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; };\n\nvar _ecc = require('../../ecc');\n\nvar _number_utils = require('./number_utils');\n\nvar _config = require('../../../config.js');\n\nvar _config2 = _interopRequireDefault(_config);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Low-level types that make up operations\n\nvar v = require('./validation');\nvar ObjectId = require('./object_id');\nvar fp = require('./fast_parser');\nvar chain_types = require('./ChainTypes');\n//const BigInt = require('BigInt')\n\nvar Types = {};\nmodule.exports = Types;\n\nvar HEX_DUMP = process.env.npm_config__graphene_serializer_hex_dump;\n\n// Highly optimized implementation of Damm algorithm\n// https://en.wikipedia.org/wiki/Damm_algorithm\nfunction damm_checksum_8digit(value) {\n if (value >= 100000000) throw new Error(\"Expected value less than 100000000, instead got \" + value);\n\n var t = [0, 30, 10, 70, 50, 90, 80, 60, 40, 20, 70, 0, 90, 20, 10, 50, 40, 80, 60, 30, 40, 20, 0, 60, 80, 70, 10, 30, 50, 90, 10, 70, 50, 0, 90, 80, 30, 40, 20, 60, 60, 10, 20, 30, 0, 40, 50, 90, 70, 80, 30, 60, 70, 40, 20, 0, 90, 50, 80, 10, 50, 80, 60, 90, 70, 20, 0, 10, 30, 40, 80, 90, 40, 50, 30, 60, 20, 0, 10, 70, 90, 40, 30, 80, 60, 10, 70, 20, 0, 50, 20, 50, 80, 10, 40, 30, 60, 70, 90, 0];\n\n var q0 = value / 10;\n var d0 = value % 10;\n var q1 = q0 / 10;\n var d1 = q0 % 10;\n var q2 = q1 / 10;\n var d2 = q1 % 10;\n var q3 = q2 / 10;\n var d3 = q2 % 10;\n var q4 = q3 / 10;\n var d4 = q3 % 10;\n var q5 = q4 / 10;\n var d5 = q4 % 10;\n var d6 = q5 % 10;\n var d7 = q5 / 10;\n\n var x = t[d7];\n x = t[x + d6];\n x = t[x + d5];\n x = t[x + d4];\n x = t[x + d3];\n x = t[x + d2];\n x = t[x + d1];\n x = t[x + d0];\n\n return x / 10;\n}\n\n/**\n* Asset symbols contain the following information\n*\n* 4 bit PRECISION\n* 4 bit RESERVED\n* CHAR[6] up to 6 upper case alpha numeric ascii characters,\n* char = \\0 null terminated\n*\n* It is treated as a uint64_t for all internal operations, but\n* is easily converted to something that can be displayed.\n*\n* Legacy serialization of assets\n* 0000pppp aaaaaaaa bbbbbbbb cccccccc dddddddd eeeeeeee ffffffff 00000000\n* Symbol = abcdef\n*\n* NAI serialization of assets\n* aaa1pppp bbbbbbbb cccccccc dddddddd\n* NAI = (MSB to LSB) dddddddd cccccccc bbbbbbbb aaa\n*\n* NAI internal storage of legacy assets\n*/\nTypes.asset = {\n fromByteBuffer: function fromByteBuffer(b) {\n var amount = b.readInt64();\n var precision = b.readUint8();\n var amount_string = \"\";\n var symbol = \"\";\n\n if (precision >= 16) {\n // NAI Case\n var b_copy = b.copy(b.offset - 1, b.offset + 3);\n var nai = new Buffer(b_copy.toBinary(), \"binary\").readInt32();\n nai = nai / 32;\n symbol = \"@@\" + nai.toString().padStart(8, '0') + damm_checksum_8digit(nai).to_String();\n precision = precision % 16;\n b.skip(3);\n amount_string = (0, _number_utils.fromImpliedDecimal)(amount, precision);\n } else {\n // Legacy Case\n var _b_copy = b.copy(b.offset, b.offset + 7);\n symbol = new Buffer(_b_copy.toBinary(), \"binary\").toString().replace(/\\x00/g, \"\");\n b.skip(7);\n // \"1.000 HIVE\" always written with full precision\n amount_string = (0, _number_utils.fromImpliedDecimal)(amount, precision);\n }\n\n return amount_string + \" \" + symbol;\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n var amount = \"\";\n var symbol = \"\";\n var nai = 0;\n var precision = 0;\n\n if (object[\"nai\"]) {\n symbol = object[\"nai\"];\n nai = parseInt(symbol.slice(2));\n var checksum = nai % 10;\n nai = Math.floor(nai / 10);\n var expected_checksum = damm_checksum_8digit(nai);\n\n switch (object[\"nai\"]) {\n case \"@@000000021\":\n precision = 3;\n symbol = _config2.default.get(\"address_prefix\") == \"STM\" ? \"STEEM\" : \"TESTS\";\n break;\n case \"@@000000013\":\n precision = 3;\n symbol = _config2.default.get(\"address_prefix\") == \"STM\" ? \"SBD\" : \"TBD\";\n break;\n case \"@@000000037\":\n precision = 6;\n symbol = \"VESTS\";\n break;\n }\n\n precision = parseInt(object[\"precision\"]);\n b.writeInt64(v.to_long(parseInt(object[\"amount\"])));\n } else {\n object = object.trim();\n if (!/^[0-9]+\\.?[0-9]* [A-Za-z0-9@]+$/.test(object)) throw new Error(\"Expecting amount like '99.000 SYMBOL', instead got '\" + object + \"'\");\n\n var res = object.split(\" \");\n amount = res[0];\n symbol = res[1];\n\n // Hive workaround for now\n symbol = symbol == \"HIVE\" ? \"STEEM\" : symbol == \"HBD\" ? \"SBD\" : symbol;\n\n if (symbol.startsWith(\"@@\")) {\n // NAI Case\n nai = parseInt(symbol.slice(2));\n var _checksum = nai % 10;\n nai = Math.floor(nai / 10);\n var _expected_checksum = damm_checksum_8digit(nai);\n } else if (symbol.length > 6) throw new Error(\"Symbols are not longer than 6 characters \" + symbol + \"-\" + symbol.length);\n\n b.writeInt64(v.to_long(amount.replace(\".\", \"\")));\n var dot = amount.indexOf(\".\"); // 0.000\n precision = dot === -1 ? 0 : amount.length - dot - 1;\n }\n\n if (symbol.startsWith(\"@@\")) {\n nai = (nai << 5) + 16 + precision;\n b.writeUint32(nai);\n } else {\n b.writeUint8(precision);\n b.append(symbol.toUpperCase(), 'binary');\n for (var i = 0; i < 7 - symbol.length; i++) {\n b.writeUint8(0);\n }\n }\n\n return;\n },\n fromObject: function fromObject(object) {\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"0.000 HIVE\";\n }\n return object;\n }\n};\n\nTypes.asset_symbol = {\n fromByteBuffer: function fromByteBuffer(b) {\n var precision = b.readUint8();\n var amount_string = \"\";\n var nai_string = \"\";\n\n if (precision >= 16) {\n // NAI Case\n var b_copy = b.copy(b.offset - 1, b.offset + 3);\n var nai = new Buffer(b_copy.toBinary(), \"binary\").readInt32();\n nai = nai / 32;\n nai_string = \"@@\" + nai.toString().padStart(8, '0') + damm_checksum_8digit(nai).to_String();\n precision = precision % 16;\n b.skip(3);\n } else {\n // Legacy Case\n var _b_copy2 = b.copy(b.offset, b.offset + 7);\n var symbol = new Buffer(_b_copy2.toBinary(), \"binary\").toString().replace(/\\x00/g, \"\");\n if (symbol == \"STEEM\" || symbol == \"TESTS\") nai_string = \"@@000000021\";else if (symbol == \"SBD\" || symbol == \"TBD\") nai_string = \"@@000000013\";else if (symbol == \"VESTS\") nai_string = \"@@000000037\";else throw new Error(\"Expecting non-smt core asset symbol, instead got '\" + symbol + \"'\");\n b.skip(7);\n }\n\n return { \"nai\": nai_string, \"precision\": precision };\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n\n var nai = 0;\n if (!object[\"nai\"].startsWith(\"@@\")) throw new Error(\"Asset Symbols NAIs must be prefixed with '@@'. Was \" + object[\"nai\"]);\n\n nai = parseInt(object[\"nai\"].slice(2));\n var checksum = nai % 10;\n nai = Math.floor(nai / 10);\n var expected_checksum = damm_checksum_8digit(nai);\n\n var precision = 0;\n var symbol = \"\";\n switch (object[\"nai\"]) {\n case \"@@000000021\":\n precision = 3;\n symbol = _config2.default.get(\"address_prefix\") == \"STM\" ? \"STEEM\" : \"TESTS\";\n break;\n case \"@@000000013\":\n precision = 3;\n symbol = _config2.default.get(\"address_prefix\") == \"STM\" ? \"SBD\" : \"TBD\";\n break;\n case \"@@000000037\":\n precision = 6;\n symbol = \"VESTS\";\n break;\n }\n\n if (precision > 0) {\n //Core Symbol Case\n b.writeUint8(precision);\n b.append(symbol, 'binary');\n for (var i = 0; i < 7 - symbol.length; i++) {\n b.writeUint8(0);\n }\n } else {\n nai = (nai << 5) + 16 + object[\"precision\"];\n b.writeUint32(nai);\n }\n\n return;\n },\n fromObject: function fromObject(object) {\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"STEEM\";\n }\n return object;\n }\n};\n\nTypes.uint8 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readUint8();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.require_range(0, 0xFF, object, 'uint8 ' + object);\n b.writeUint8(object);\n return;\n },\n fromObject: function fromObject(object) {\n v.require_range(0, 0xFF, object, 'uint8 ' + object);\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return 0;\n }\n v.require_range(0, 0xFF, object, 'uint8 ' + object);\n return parseInt(object);\n }\n};\n\nTypes.uint16 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readUint16();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.require_range(0, 0xFFFF, object, 'uint16 ' + object);\n b.writeUint16(object);\n return;\n },\n fromObject: function fromObject(object) {\n v.require_range(0, 0xFFFF, object, 'uint16 ' + object);\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return 0;\n }\n v.require_range(0, 0xFFFF, object, 'uint16 ' + object);\n return parseInt(object);\n }\n};\n\nTypes.uint32 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readUint32();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.require_range(0, 0xFFFFFFFF, object, 'uint32 ' + object);\n b.writeUint32(object);\n return;\n },\n fromObject: function fromObject(object) {\n v.require_range(0, 0xFFFFFFFF, object, 'uint32 ' + object);\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return 0;\n }\n v.require_range(0, 0xFFFFFFFF, object, 'uint32 ' + object);\n return parseInt(object);\n }\n};\n\nvar MIN_SIGNED_32 = -1 * Math.pow(2, 31);\nvar MAX_SIGNED_32 = Math.pow(2, 31) - 1;\n\nTypes.varint32 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readVarint32();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.require_range(MIN_SIGNED_32, MAX_SIGNED_32, object, 'uint32 ' + object);\n b.writeVarint32(object);\n return;\n },\n fromObject: function fromObject(object) {\n v.require_range(MIN_SIGNED_32, MAX_SIGNED_32, object, 'uint32 ' + object);\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return 0;\n }\n v.require_range(MIN_SIGNED_32, MAX_SIGNED_32, object, 'uint32 ' + object);\n return parseInt(object);\n }\n};\n\nTypes.int16 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readInt16();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n b.writeInt16(object);\n return;\n },\n fromObject: function fromObject(object) {\n return object;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return 0;\n }\n return parseInt(object);\n }\n};\n\nTypes.int64 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readInt64();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n b.writeInt64(v.to_long(object));\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n return v.to_long(object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"0\";\n }\n v.required(object);\n return v.to_long(object).toString();\n }\n};\n\nTypes.uint64 = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readUint64();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n b.writeUint64(v.to_long(v.unsigned(object)));\n return;\n },\n fromObject: function fromObject(object) {\n return v.to_long(v.unsigned(object));\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"0\";\n }\n return v.to_long(object).toString();\n }\n};\n\nTypes.uint128 = {\n fromByteBuffer: function fromByteBuffer(b) {\n b.readBigInt64();\n return b.readBigInt64();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n b.writeUint64(v.to_long(v.unsigned(0)));\n b.writeUint64(v.to_long(v.unsigned(object)));\n return;\n },\n fromObject: function fromObject(object) {\n return v.to_long(v.unsigned(object));\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"0\";\n }\n return v.to_long(object).toString();\n }\n};\n\nTypes.string = {\n fromByteBuffer: function fromByteBuffer(b) {\n return new Buffer(b.readVString(), 'utf8');\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n b.writeVString(object.toString());\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n return new Buffer(object, 'utf8');\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"\";\n }\n return object.toString('utf8');\n }\n};\n\nTypes.string_binary = {\n fromByteBuffer: function fromByteBuffer(b) {\n var b_copy;\n var len = b.readVarint32();\n b_copy = b.copy(b.offset, b.offset + len), b.skip(len);\n return new Buffer(b_copy.toBinary(), 'binary');\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n b.writeVarint32(object.length);\n b.append(object.toString('binary'), 'binary');\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n return new Buffer(object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"\";\n }\n return object.toString();\n }\n};\n\nTypes.bytes = function (size) {\n return {\n fromByteBuffer: function fromByteBuffer(b) {\n if (size === undefined) {\n var b_copy;\n var len = b.readVarint32();\n b_copy = b.copy(b.offset, b.offset + len), b.skip(len);\n return new Buffer(b_copy.toBinary(), 'binary');\n } else {\n b_copy = b.copy(b.offset, b.offset + size), b.skip(size);\n return new Buffer(b_copy.toBinary(), 'binary');\n }\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n if (typeof object === \"string\") object = new Buffer(object, \"hex\");\n\n if (size === undefined) {\n b.writeVarint32(object.length);\n }\n b.append(object.toString('binary'), 'binary');\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n if (Buffer.isBuffer(object)) return object;\n\n return new Buffer(object, 'hex');\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n var zeros = function zeros(num) {\n return new Array(num).join(\"00\");\n };\n return zeros(size);\n }\n v.required(object);\n return object.toString('hex');\n }\n };\n};\n\nTypes.bool = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readUint8() === 1;\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n // supports boolean or integer\n b.writeUint8(JSON.parse(object) ? 1 : 0);\n return;\n },\n fromObject: function fromObject(object) {\n return JSON.parse(object) ? true : false;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return false;\n }\n return JSON.parse(object) ? true : false;\n }\n};\n\nTypes.void = {\n fromByteBuffer: function fromByteBuffer(b) {\n throw new Error(\"(void) undefined type\");\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n throw new Error(\"(void) undefined type\");\n },\n fromObject: function fromObject(object) {\n throw new Error(\"(void) undefined type\");\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return undefined;\n }\n throw new Error(\"(void) undefined type\");\n }\n};\n\nTypes.array = function (st_operation) {\n return {\n fromByteBuffer: function fromByteBuffer(b) {\n var size = b.readVarint32();\n if (HEX_DUMP) {\n console.log(\"varint32 size = \" + size.toString(16));\n }\n var result = [];\n for (var i = 0; 0 < size ? i < size : i > size; 0 < size ? i++ : i++) {\n result.push(st_operation.fromByteBuffer(b));\n }\n return sortOperation(result, st_operation);\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n object = sortOperation(object, st_operation);\n b.writeVarint32(object.length);\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n st_operation.appendByteBuffer(b, o);\n }\n },\n fromObject: function fromObject(object) {\n v.required(object);\n object = sortOperation(object, st_operation);\n var result = [];\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n result.push(st_operation.fromObject(o));\n }\n return result;\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return [st_operation.toObject(object, debug)];\n }\n v.required(object);\n object = sortOperation(object, st_operation);\n\n var result = [];\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n result.push(st_operation.toObject(o, debug));\n }\n return result;\n }\n };\n};\n\nTypes.time_point_sec = {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readUint32();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n if (typeof object !== \"number\") object = Types.time_point_sec.fromObject(object);\n\n b.writeUint32(object);\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n\n if (typeof object === \"number\") return object;\n\n if (object.getTime) return Math.floor(object.getTime() / 1000);\n\n if (typeof object !== \"string\") throw new Error(\"Unknown date type: \" + object);\n\n if (typeof object === \"string\" && !/Z$/.test(object)) object = object + \"Z\";\n\n return Math.floor(new Date(object).getTime() / 1000);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) return new Date(0).toISOString().split('.')[0];\n\n v.required(object);\n\n if (typeof object === \"string\") return object;\n\n if (object.getTime) return object.toISOString().split('.')[0];\n\n var int = parseInt(object);\n v.require_range(0, 0xFFFFFFFF, int, 'uint32 ' + object);\n return new Date(int * 1000).toISOString().split('.')[0];\n }\n};\n\nTypes.set = function (st_operation) {\n return {\n validate: function validate(array) {\n var dup_map = {};\n for (var i = 0, o; i < array.length; i++) {\n o = array[i];\n var ref;\n if (ref = typeof o === 'undefined' ? 'undefined' : _typeof(o), ['string', 'number'].indexOf(ref) >= 0) {\n if (dup_map[o] !== undefined) {\n throw new Error(\"duplicate (set)\");\n }\n dup_map[o] = true;\n }\n }\n return sortOperation(array, st_operation);\n },\n fromByteBuffer: function fromByteBuffer(b) {\n var size = b.readVarint32();\n if (HEX_DUMP) {\n console.log(\"varint32 size = \" + size.toString(16));\n }\n return this.validate(function () {\n var result = [];\n for (var i = 0; 0 < size ? i < size : i > size; 0 < size ? i++ : i++) {\n result.push(st_operation.fromByteBuffer(b));\n }\n return result;\n }());\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n if (!object) {\n object = [];\n }\n b.writeVarint32(object.length);\n var iterable = this.validate(object);\n for (var i = 0, o; i < iterable.length; i++) {\n o = iterable[i];\n st_operation.appendByteBuffer(b, o);\n }\n return;\n },\n fromObject: function fromObject(object) {\n if (!object) {\n object = [];\n }\n return this.validate(function () {\n var result = [];\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n result.push(st_operation.fromObject(o));\n }\n return result;\n }());\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return [st_operation.toObject(object, debug)];\n }\n if (!object) {\n object = [];\n }\n return this.validate(function () {\n var result = [];\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n result.push(st_operation.toObject(o, debug));\n }\n return result;\n }());\n }\n };\n};\n\n// global_parameters_update_operation current_fees\nTypes.fixed_array = function (count, st_operation) {\n return {\n fromByteBuffer: function fromByteBuffer(b) {\n var i, j, ref, results;\n results = [];\n for (i = j = 0, ref = count; j < ref; i = j += 1) {\n results.push(st_operation.fromByteBuffer(b));\n }\n return sortOperation(results, st_operation);\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n var i, j, ref;\n if (count !== 0) {\n v.required(object);\n object = sortOperation(object, st_operation);\n }\n for (i = j = 0, ref = count; j < ref; i = j += 1) {\n st_operation.appendByteBuffer(b, object[i]);\n }\n },\n fromObject: function fromObject(object) {\n var i, j, ref, results;\n if (count !== 0) {\n v.required(object);\n }\n results = [];\n for (i = j = 0, ref = count; j < ref; i = j += 1) {\n results.push(st_operation.fromObject(object[i]));\n }\n return results;\n },\n toObject: function toObject(object, debug) {\n var i, j, k, ref, ref1, results, results1;\n if (debug == null) {\n debug = {};\n }\n if (debug.use_default && object === void 0) {\n results = [];\n for (i = j = 0, ref = count; j < ref; i = j += 1) {\n results.push(st_operation.toObject(void 0, debug));\n }\n return results;\n }\n if (count !== 0) {\n v.required(object);\n }\n results1 = [];\n for (i = k = 0, ref1 = count; k < ref1; i = k += 1) {\n results1.push(st_operation.toObject(object[i], debug));\n }\n return results1;\n }\n };\n};\n\n/* Supports instance numbers (11) or object types (1.2.11). Object type\nvalidation is enforced when an object type is used. */\nvar id_type = function id_type(reserved_spaces, object_type) {\n v.required(reserved_spaces, \"reserved_spaces\");\n v.required(object_type, \"object_type\");\n return {\n fromByteBuffer: function fromByteBuffer(b) {\n return b.readVarint32();\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n // convert 1.2.n into just n\n if (/^[0-9]+\\.[0-9]+\\.[0-9]+$/.test(object)) {\n object = v.get_instance(reserved_spaces, object_type, object);\n }\n b.writeVarint32(v.to_number(object));\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n if (v.is_digits(object)) {\n return v.to_number(object);\n }\n return v.get_instance(reserved_spaces, object_type, object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var object_type_id = chain_types.object_type[object_type];\n if (debug.use_default && object === undefined) {\n return reserved_spaces + '.' + object_type_id + '.0';\n }\n v.required(object);\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n if (/^[0-9]+\\.[0-9]+\\.[0-9]+$/.test(object)) {\n object = v.get_instance(reserved_spaces, object_type, object);\n }\n\n return reserved_spaces + '.' + object_type_id + '.' + object;\n }\n };\n};\n\nTypes.protocol_id_type = function (name) {\n v.required(name, \"name\");\n return id_type(chain_types.reserved_spaces.protocol_ids, name);\n};\n\nTypes.object_id_type = {\n fromByteBuffer: function fromByteBuffer(b) {\n return ObjectId.fromByteBuffer(b);\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n object = ObjectId.fromString(object);\n object.appendByteBuffer(b);\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n return ObjectId.fromString(object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"0.0.0\";\n }\n v.required(object);\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n object = ObjectId.fromString(object);\n return object.toString();\n }\n};\n\nTypes.vote_id = { TYPE: 0x000000FF,\n ID: 0xFFFFFF00,\n fromByteBuffer: function fromByteBuffer(b) {\n var value = b.readUint32();\n return {\n type: value & this.TYPE,\n id: value & this.ID\n };\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n if (object === \"string\") object = Types.vote_id.fromObject(object);\n\n var value = object.id << 8 | object.type;\n b.writeUint32(value);\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object, \"(type vote_id)\");\n if ((typeof object === 'undefined' ? 'undefined' : _typeof(object)) === \"object\") {\n v.required(object.type, \"type\");\n v.required(object.id, \"id\");\n return object;\n }\n v.require_test(/^[0-9]+:[0-9]+$/, object, 'vote_id format ' + object);\n\n var _object$split = object.split(':'),\n _object$split2 = _slicedToArray(_object$split, 2),\n type = _object$split2[0],\n id = _object$split2[1];\n\n v.require_range(0, 0xff, type, 'vote type ' + object);\n v.require_range(0, 0xffffff, id, 'vote id ' + object);\n return { type: type, id: id };\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return \"0:0\";\n }\n v.required(object);\n if (typeof object === \"string\") object = Types.vote_id.fromObject(object);\n\n return object.type + \":\" + object.id;\n },\n compare: function compare(a, b) {\n if ((typeof a === 'undefined' ? 'undefined' : _typeof(a)) !== \"object\") a = Types.vote_id.fromObject(a);\n if ((typeof b === 'undefined' ? 'undefined' : _typeof(b)) !== \"object\") b = Types.vote_id.fromObject(b);\n return parseInt(a.id) - parseInt(b.id);\n }\n};\n\nTypes.optional = function (st_operation) {\n v.required(st_operation, \"st_operation\");\n return {\n fromByteBuffer: function fromByteBuffer(b) {\n if (!(b.readUint8() === 1)) {\n return undefined;\n }\n return st_operation.fromByteBuffer(b);\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n if (object !== null && object !== undefined) {\n b.writeUint8(1);\n st_operation.appendByteBuffer(b, object);\n } else {\n b.writeUint8(0);\n }\n return;\n },\n fromObject: function fromObject(object) {\n if (object === undefined) {\n return undefined;\n }\n return st_operation.fromObject(object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n // toObject is only null save if use_default is true\n var result_object = function () {\n if (!debug.use_default && object === undefined) {\n return undefined;\n } else {\n return st_operation.toObject(object, debug);\n }\n }();\n\n if (debug.annotate) {\n if ((typeof result_object === 'undefined' ? 'undefined' : _typeof(result_object)) === \"object\") {\n result_object.__optional = \"parent is optional\";\n } else {\n result_object = { __optional: result_object };\n }\n }\n return result_object;\n }\n };\n};\n\nTypes.static_variant = function (_st_operations) {\n return {\n nosort: true,\n st_operations: _st_operations,\n opTypeId: function opTypeId(value) {\n var pos = 0,\n type_id = void 0;\n if (typeof value === \"number\") type_id = value;else {\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = this.st_operations[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var op = _step.value;\n\n if (op.operation_name === value) {\n type_id = pos;\n break;\n }\n pos++;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n return type_id;\n },\n fromByteBuffer: function fromByteBuffer(b) {\n var type_id = b.readVarint32();\n var st_operation = this.st_operations[type_id];\n if (HEX_DUMP) {\n console.error('static_variant id 0x' + type_id.toString(16) + ' (' + type_id + ')');\n }\n v.required(st_operation, 'operation ' + type_id);\n return [type_id, st_operation.fromByteBuffer(b)];\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n var type_id = this.opTypeId(object[0]);\n var st_operation = this.st_operations[type_id];\n v.required(st_operation, 'operation ' + type_id);\n b.writeVarint32(type_id);\n st_operation.appendByteBuffer(b, object[1]);\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n var type_id = this.opTypeId(object[0]);\n var st_operation = this.st_operations[type_id];\n v.required(st_operation, 'operation ' + type_id);\n return [type_id, st_operation.fromObject(object[1])];\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return [this.st_operations[0].operation_name, this.st_operations[0].toObject(undefined, debug)];\n }\n v.required(object);\n var type_id = this.opTypeId(object[0]);\n var st_operation = this.st_operations[type_id];\n v.required(st_operation, 'operation ' + type_id);\n return [st_operation.operation_name, st_operation.toObject(object[1], debug)];\n },\n compare: function compare(a, b) {\n return strCmp(this.opTypeId(a[0]), this.opTypeId(b[0]));\n }\n };\n};\n\nTypes.map = function (key_st_operation, value_st_operation) {\n return {\n validate: function validate(array) {\n if (!Array.isArray(array)) {\n throw new Error(\"expecting array\");\n }\n var dup_map = {};\n for (var i = 0, o; i < array.length; i++) {\n o = array[i];\n var ref;\n if (!(o.length === 2)) {\n throw new Error(\"expecting two elements\");\n }\n if (ref = _typeof(o[0]), ['number', 'string'].indexOf(ref) >= 0) {\n if (dup_map[o[0]] !== undefined) {\n throw new Error(\"duplicate (map)\");\n }\n dup_map[o[0]] = true;\n }\n }\n return sortOperation(array, key_st_operation);\n },\n fromByteBuffer: function fromByteBuffer(b) {\n var result = [];\n var end = b.readVarint32();\n for (var i = 0; 0 < end ? i < end : i > end; 0 < end ? i++ : i++) {\n result.push([key_st_operation.fromByteBuffer(b), value_st_operation.fromByteBuffer(b)]);\n }\n return this.validate(result);\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n this.validate(object);\n b.writeVarint32(object.length);\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n key_st_operation.appendByteBuffer(b, o[0]);\n value_st_operation.appendByteBuffer(b, o[1]);\n }\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n var result = [];\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n result.push([key_st_operation.fromObject(o[0]), value_st_operation.fromObject(o[1])]);\n }\n return this.validate(result);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return [[key_st_operation.toObject(undefined, debug), value_st_operation.toObject(undefined, debug)]];\n }\n v.required(object);\n object = this.validate(object);\n var result = [];\n for (var i = 0, o; i < object.length; i++) {\n o = object[i];\n result.push([key_st_operation.toObject(o[0], debug), value_st_operation.toObject(o[1], debug)]);\n }\n return result;\n }\n };\n};\n\nTypes.public_key = {\n toPublic: function toPublic(object) {\n if (object.resolve !== undefined) {\n object = object.resolve;\n }\n return object == null ? object : object.Q ? object : _ecc.PublicKey.fromStringOrThrow(object);\n },\n fromByteBuffer: function fromByteBuffer(b) {\n return fp.public_key(b);\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n v.required(object);\n fp.public_key(b, Types.public_key.toPublic(object));\n return;\n },\n fromObject: function fromObject(object) {\n v.required(object);\n if (object.Q) {\n return object;\n }\n return Types.public_key.toPublic(object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return _ecc.ecc_config.get('address_prefix') + \"859gxfnXyUriMgUeThh1fWv3oqcpLFyHa3TfFYC4PK2HqhToVM\";\n }\n v.required(object);\n return object.toString();\n },\n compare: function compare(a, b) {\n // sort ascending\n return 1 * strCmp(a.toString(), b.toString());\n }\n};\n\nTypes.address = {\n _to_address: function _to_address(object) {\n v.required(object);\n if (object.addy) {\n return object;\n }\n return _ecc.Address.fromString(object);\n },\n fromByteBuffer: function fromByteBuffer(b) {\n return new _ecc.Address(fp.ripemd160(b));\n },\n appendByteBuffer: function appendByteBuffer(b, object) {\n fp.ripemd160(b, Types.address._to_address(object).toBuffer());\n return;\n },\n fromObject: function fromObject(object) {\n return Types.address._to_address(object);\n },\n toObject: function toObject(object) {\n var debug = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (debug.use_default && object === undefined) {\n return _ecc.ecc_config.get('address_prefix') + \"664KmHxSuQyDsfwo4WEJvWpzg1QKdg67S\";\n }\n return Types.address._to_address(object).toString();\n },\n compare: function compare(a, b) {\n // sort decending\n return -1 * strCmp(a.toString(), b.toString());\n }\n};\n\nvar strCmp = function strCmp(a, b) {\n return a > b ? 1 : a < b ? -1 : 0;\n};\nvar firstEl = function firstEl(el) {\n return Array.isArray(el) ? el[0] : el;\n};\nvar sortOperation = function sortOperation(array, st_operation) {\n // console.log('operation.nosort', st_operation.nosort)\n return st_operation.nosort ? array : st_operation.compare ? array.sort(function (a, b) {\n return st_operation.compare(firstEl(a), firstEl(b));\n }) : // custom compare operation\n array.sort(function (a, b) {\n return typeof firstEl(a) === \"number\" && typeof firstEl(b) === \"number\" ? firstEl(a) - firstEl(b) :\n // A binary string compare does not work. Performanance is very good so HEX is used.. localeCompare is another option.\n Buffer.isBuffer(firstEl(a)) && Buffer.isBuffer(firstEl(b)) ? strCmp(firstEl(a).toString(\"hex\"), firstEl(b).toString(\"hex\")) : strCmp(firstEl(a).toString(), firstEl(b).toString());\n });\n};"],"sourceRoot":""}