+++ /dev/null
-{"version":3,"sources":["webpack:///./src/utils/BrowserApis.js","webpack:///./src/utils/errors/Error.js","webpack:///./node_modules/babel-runtime/helpers/extends.js","webpack:///./src/services/NotificationService.js","webpack:///./src/utils/errors/ErrorTypes.js","webpack:///./src/views/sendTransaction/signMessage.vue","webpack:///./src/models/transaction.js","webpack:///./src/utils/utils.js","webpack:///./src/assets/language/sdk/index.js","webpack:///./src/assets/language/sdk/cn.js","webpack:///./src/assets/img/backgroundHead/transfer.svg","webpack:///src/views/sendTransaction/signMessage.vue","webpack:///./src/views/sendTransaction/signMessage.vue?6ac3","webpack:///./src/views/sendTransaction/signMessage.vue?2cca","webpack:///./src/views/sendTransaction/signMessage.vue?51a6"],"names":["swallow","fn","e","ApiGenerator","map","chrome","api","browser","runtime","apis","ErrorCodes","NO_SIGNATURE","FORBIDDEN","TIMED_OUT","LOCKED","TOO_MANY_REQUESTS","TYPE_MISSED","TYPE_DUPLICATE","Error","_type","_message","_code","type","message","code","isError","signatureError","openWindow","NotificationService","notification","close","height","width","middleX","window","screen","availWidth","middleY","availHeight","getPopup","url","getURL","routeName","windows","create","_window","onRemoved","addListener","windowId","id","responder","promptClosedWithoutAction","win","open","data","console","log","InternalMessage","payload","send","popup","onbeforeunload","undefined","getCurrent","remove","MALICIOUS","PROMPT_CLOSED","TYPE_DUPLICATED","transaction","list","guid","asset_id","start","limit","tx_types","filter","bytom","convertArgument","argArray","asyncConvert","object","value","then","resp","actionFunction","all","chainStatus","query","getblockcount","asset","build","address","to","amount","fee","confirmations","retPromise","resolve","reject","buildPayment","toString","res","catch","error","buildCrossChain","buildVote","vote","memo","buildVeto","buildTransaction","inputs","outputs","gas","signTransaction","password","snakeize","transfer","submitPayment","ret","raw_transaction","signatures","transactionHash","res3","txHash","signMessage","keys","advancedTransfer","arrayData","camelize","key","newKey","test","replace","v","toUpperCase","toLowerCase","sdkLang","cn","getLang","str","lang"],"mappings":"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","file":"js/8.js","sourcesContent":["\nconst swallow = fn => {try { fn() } catch(e){}};\n\nclass ApiGenerator {\n constructor(){\n [\n 'app',\n 'storage',\n 'extension',\n 'runtime',\n 'windows'\n ]\n .map(api => {\n if(typeof chrome !== 'undefined') swallow(() => {if(chrome[api]) this[api] = chrome[api]});\n if(typeof browser !== 'undefined') swallow(() => {if(browser[api]) this[api] = browser[api]});\n });\n\n if(typeof browser !== 'undefined') swallow(() => {if (browser && browser.runtime) this.runtime = browser.runtime});\n }\n}\n\nexport const apis = new ApiGenerator();\n\n\n// WEBPACK FOOTER //\n// ./src/utils/BrowserApis.js","import * as ErrorTypes from './ErrorTypes'\n\nexport const ErrorCodes = {\n NO_SIGNATURE:402,\n FORBIDDEN:403,\n TIMED_OUT:408,\n LOCKED:423,\n TOO_MANY_REQUESTS:429,\n TYPE_MISSED:411,\n TYPE_DUPLICATE:405\n};\n\nexport default class Error {\n\n constructor(_type, _message, _code = ErrorCodes.LOCKED){\n this.type = _type;\n this.message = _message;\n this.code = _code;\n this.isError = true;\n }\n\n static locked(){\n return new Error(ErrorTypes.LOCKED, \"The user's Bytom is locked. They have been notified and should unlock before continuing.\")\n }\n\n static duplicate(_type){\n return new Error(ErrorTypes.TYPE_DUPLICATED, `The current value has been set to '${_type}', please select another parameter.`, ErrorCodes.TYPE_DUPLICATE)\n }\n\n static promptClosedWithoutAction(){\n return new Error(ErrorTypes.PROMPT_CLOSED, \"The user closed the prompt without any action.\", ErrorCodes.TIMED_OUT)\n }\n\n static signatureError(_type, _message){\n return new Error(_type, _message, ErrorCodes.NO_SIGNATURE)\n }\n\n static typeMissed(_type){\n return new Error(ErrorTypes.TYPE_MISSED, `Parameter '${_type}' is missing, please add the Parameter '${_type}'.`)\n }\n\n static identityMissing(){\n return this.signatureError(\"identity_missing\", \"Identity no longer exists on the user's keychain\");\n }\n\n static signatureAccountMissing(){\n return this.signatureError(\"account_missing\", \"Missing required accounts, repull the identity\");\n }\n\n static malformedRequiredFields(){\n return this.signatureError(\"malformed_requirements\", \"The requiredFields you passed in were malformed\");\n }\n\n static usedKeyProvider(){\n return new Error(\n ErrorTypes.MALICIOUS,\n \"Do not use a `keyProvider` with a Bytom. Use a `signProvider` and return only signatures to this object. A malicious person could retrieve your keys otherwise.\",\n ErrorCodes.NO_SIGNATURE\n )\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/errors/Error.js","\"use strict\";\n\nexports.__esModule = true;\n\nvar _assign = require(\"../core-js/object/assign\");\n\nvar _assign2 = _interopRequireDefault(_assign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _assign2.default || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/extends.js\n// module id = 532\n// module chunks = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 16 17 19 20 21 23 27","import Error from '../utils/errors/Error'\nimport {apis} from '../utils/BrowserApis';\nimport InternalMessage from '../messages/internal'\nimport * as InternalMessageTypes from '../messages/types'\n\nlet openWindow = null;\n\nexport default class NotificationService {\n\n /***\n * Opens a prompt window outside of the extension\n * @param notification\n */\n static async open(notification){\n if(openWindow){\n // For now we're just going to close the window to get rid of the error\n // that is caused by already open windows swallowing all further requests\n openWindow.close();\n openWindow = null;\n\n // Alternatively we could focus the old window, but this would cause\n // urgent 1-time messages to be lost, such as after dying in a game and\n // uploading a high-score. That message will be lost.\n // openWindow.focus();\n // return false;\n\n // A third option would be to add a queue, but this could cause\n // virus-like behavior as apps overflow the queue causing the user\n // to have to quit the browser to regain control.\n }\n\n\n const height = 623;\n const width = 360;\n let middleX = window.screen.availWidth/2 - (width/2);\n let middleY = window.screen.availHeight/2 - (height/2);\n\n const getPopup = async () => {\n try {\n const url = `${apis.runtime.getURL('pages/prompt.html')}#${notification.routeName()}`;\n\n // Notifications get bound differently depending on browser\n // as Firefox does not support opening windows from background.\n if(typeof chrome !== 'undefined') {\n window.notification = notification;\n apis.windows.create({\n url,\n height,\n width,\n type:'popup'\n },(_window) => {\n apis.windows.onRemoved.addListener(function(windowId){\n if(windowId === _window.id) {\n notification.responder(Error.promptClosedWithoutAction());\n return false;\n }\n });\n return _window;\n });\n }\n else {\n const win = window.open(url, 'BytomPrompt', `width=${width},height=${height},resizable=0,top=${middleY},left=${middleX},titlebar=0`);\n win.data = notification;\n openWindow = win;\n return win;\n }\n } catch (e) {\n console.log('notification error', e);\n return null;\n }\n }\n\n await InternalMessage.payload(InternalMessageTypes.SET_PROMPT, JSON.stringify(notification)).send();\n\n let popup = await getPopup();\n\n if(popup){\n popup.onbeforeunload = () => {\n notification.responder(Error.promptClosedWithoutAction());\n\n // https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload\n // Must return undefined to bypass form protection\n openWindow = null;\n return undefined;\n };\n }\n }\n\n /***\n * Always use this method for closing notification popups.\n * Otherwise you will double send responses and one will always be null.\n */\n static async close(){\n if(typeof browser !== 'undefined') {\n const {id: windowId,} = (await apis.windows.getCurrent());\n apis.windows.remove(windowId);\n } else {\n window.onbeforeunload = () => {};\n window.close();\n }\n }\n\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/services/NotificationService.js","export const MALICIOUS = 'malicious';\nexport const LOCKED = 'locked';\nexport const PROMPT_CLOSED = 'prompt_closed';\nexport const TYPE_MISSED = 'type_missed';\nexport const TYPE_DUPLICATED = 'type_duplicated';\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/errors/ErrorTypes.js","function injectStyle (ssrContext) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-61ebb274\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./signMessage.vue\")\n}\nvar normalizeComponent = require(\"!../../../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./signMessage.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./signMessage.vue\"\n/* template */\nimport __vue_template__ from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-61ebb274\\\",\\\"hasScoped\\\":true,\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./signMessage.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = \"data-v-61ebb274\"\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/views/sendTransaction/signMessage.vue\n// module id = 547\n// module chunks = 8","import bytom from \"./bytom\";\nimport { snakeize } from \"@/utils/utils\";\n\n\nlet transaction = {};\n\ntransaction.list = function(guid, asset_id, start, limit, tx_types) {\n const filter = {asset_id}\n if(tx_types){\n filter.tx_types = tx_types\n }\n return bytom.transaction.list(guid, filter, null, start, limit);\n};\n\ntransaction.convertArgument = function(argArray) {\n let fn = function asyncConvert(object){\n const type = object.type\n const value = object.value\n return bytom.transaction.convertArgument(type, value)\n .then(resp => resp.value);\n };\n\n let actionFunction = argArray.map(fn)\n return Promise.all(actionFunction);\n};\n\ntransaction.chainStatus = function() {\n return bytom.query.getblockcount();\n};\n\ntransaction.asset = function(asset_id) {\n return bytom.query.asset(asset_id);\n};\n\ntransaction.build = function(address, to, asset, amount, fee, confirmations) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .buildPayment(address, to, asset, amount.toString(), fee, confirmations)\n .then(res => {\n resolve(res);\n })\n .catch(error => {\n reject(error);\n });\n });\n return retPromise;\n};\n\ntransaction.buildCrossChain = function(address, to, asset, amount, confirmations) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .buildCrossChain(address, to, asset, amount.toString(), confirmations)\n .then(res => {\n resolve(res);\n })\n .catch(error => {\n reject(error);\n });\n });\n return retPromise;\n};\n\ntransaction.buildVote = function(address, vote, amount, confirmations, memo) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .buildVote(address, vote, amount.toString(), confirmations, memo)\n .then(res => {\n resolve(res);\n })\n .catch(error => {\n reject(error);\n });\n });\n return retPromise;\n};\n\ntransaction.buildVeto = function(address, vote, amount, confirmations, memo) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .buildVeto(address, vote, amount.toString(), confirmations, memo)\n .then(res => {\n resolve(res);\n })\n .catch(error => {\n reject(error);\n });\n });\n return retPromise;\n};\n\ntransaction.buildTransaction = function(address, inputs, outputs, gas, confirmations) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .buildTransaction(address, inputs, outputs, gas, confirmations)\n .then(res => {\n resolve(res);\n })\n .catch(error => {\n reject(error);\n });\n });\n return retPromise;\n};\n\ntransaction.signTransaction = function(guid, transaction, password) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .signTransaction(guid, JSON.stringify(snakeize(transaction)), password)\n .then(res => {\n resolve(res);\n })\n .catch(error => {\n reject(error);\n });\n });\n return retPromise;\n};\n\ntransaction.transfer = function(guid, transaction, password, address) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .signTransaction(guid, JSON.stringify(snakeize(transaction)), password)\n .then(ret => {\n bytom.transaction\n .submitPayment(address, ret.raw_transaction, ret.signatures)\n .then(res3 => {\n const object ={\n transactionHash: res3.txHash\n }\n resolve(object);\n })\n .catch(error => {\n reject(error);\n });\n })\n .catch(error => {\n reject(error);\n });\n });\n\n return retPromise;\n};\n\n\ntransaction.signMessage = function(message, password, address) {\n return bytom.keys.signMessage(message, password,address);\n};\n\ntransaction.advancedTransfer = function(guid, transaction, password, arrayData, address) {\n let retPromise = new Promise((resolve, reject) => {\n bytom.transaction\n .signTransaction(guid, JSON.stringify(snakeize(transaction)), password)\n .then(ret => {\n let signatures = ret.signatures\n if(arrayData){\n signatures[0] = arrayData\n }\n bytom.transaction\n .submitPayment(address, ret.raw_transaction, signatures)\n .then(res3 => {\n const object ={\n transactionHash: res3.txHash\n }\n resolve(object);\n })\n .catch(error => {\n reject(error);\n });\n })\n .catch(error => {\n reject(error);\n });\n });\n\n return retPromise;\n};\n\nexport default transaction;\n\n\n\n// WEBPACK FOOTER //\n// ./src/models/transaction.js","export const camelize = (object) => {\n if ( typeof object == 'object'){\n for (let key in object) {\n let value = object[key];\n let newKey = key;\n\n if (/_/.test(key)) {\n newKey = key.replace(/([_][a-z])/g, v => v[1].toUpperCase());\n delete object[key];\n }\n\n if (typeof value == 'object') {\n value = camelize(value);\n }\n\n object[newKey] = value;\n }\n\n return object;\n }else{\n return object.replace(/([_][a-z])/g, v => v[1].toUpperCase())\n }\n};\n\nexport const snakeize = (object) => {\n for(let key in object) {\n let value = object[key]\n let newKey = key\n\n // Skip all-caps keys\n if (/^[A-Z]+$/.test(key)) {\n continue\n }\n\n if (/[A-Z]/.test(key)) {\n newKey = key.replace(/([A-Z])/g, v => `_${v.toLowerCase()}`)\n delete object[key]\n }\n\n if (typeof value == 'object' ) {\n value = snakeize(value)\n }\n\n object[newKey] = value\n }\n\n return object\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/utils.js","import cn from './cn'\n\nconst sdkLang = {\n cn: cn\n};\n\nfunction getLang(str, lang) {\n if (sdkLang[lang] && sdkLang[lang][str]) {\n return sdkLang[lang][str];\n }\n return str;\n}\n\nexport default getLang;\n\n\n\n// WEBPACK FOOTER //\n// ./src/assets/language/sdk/index.js","const cn = {\n \"key alias already exists\": \"秘钥别名已经存在\",\n \"db insert error\": \"数据库写入异常\",\n \"db get error\": \"数据库查询异常\",\n \"not found by XPub\": \"未找到私钥数据\",\n \"db update error\": \"数据库更新失败\",\n \"db update error: not found by rootXPub\": \"数据库更新失败:未找到相应的私钥数据\",\n \"duplicate account alias\": \"账户别名已存在\",\n \"The wallet already has account data. Can't restore.\": \"当前钱包存在数据,无法从备份覆盖恢复\",\n \"could not decrypt key with given passphrase\": \"无法解密私钥,请检查密码是否正确\",\n \"unknown address type\": \"未知的地址类型\"\n};\n\nexport default cn;\n\n\n// WEBPACK FOOTER //\n// ./src/assets/language/sdk/cn.js","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMzIwIiBoZWlnaHQ9IjgwIiB2aWV3Qm94PSIwIDAgMzIwIDgwIj4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmNscy0xIHsKICAgICAgICBmaWxsOiB1cmwoI2xpbmVhci1ncmFkaWVudCk7CiAgICAgIH0KCiAgICAgIC5jbHMtMiB7CiAgICAgICAgZmlsbDogIzIwMjAyMDsKICAgICAgfQoKICAgICAgLmNscy0zIHsKICAgICAgICBvcGFjaXR5OiAwLjM3MjsKICAgICAgICBjbGlwLXBhdGg6IHVybCgjY2xpcC1wYXRoKTsKICAgICAgfQoKICAgICAgLmNscy00IHsKICAgICAgICBmaWxsOiAjM2MzYzNjOwogICAgICB9CiAgICA8L3N0eWxlPgogICAgPGxpbmVhckdyYWRpZW50IGlkPSJsaW5lYXItZ3JhZGllbnQiIHkxPSIxIiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giPgogICAgICA8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMwMzViZDQiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjM2NmZmRhIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPGNsaXBQYXRoIGlkPSJjbGlwLXBhdGgiPgogICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzUyMzUiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDUyMzUiIGNsYXNzPSJjbHMtMSIgd2lkdGg9IjMyMCIgaGVpZ2h0PSI4MCIgcng9IjQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIwIDIwKSIvPgogICAgPC9jbGlwUGF0aD4KICA8L2RlZnM+CiAgPGcgaWQ9ImJhY2tncm91bmQtd2FsbGV0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjAgLTc5KSI+CiAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzUyMzQiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDUyMzQiIGNsYXNzPSJjbHMtMiIgd2lkdGg9IjMyMCIgaGVpZ2h0PSI4MCIgcng9IjQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIwIDc5KSIvPgogICAgPGcgaWQ9Ik1hc2tfR3JvdXBfNDQiIGRhdGEtbmFtZT0iTWFzayBHcm91cCA0NCIgY2xhc3M9ImNscy0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDU5KSI+CiAgICAgIDxlbGxpcHNlIGlkPSJFbGxpcHNlXzEyNyIgZGF0YS1uYW1lPSJFbGxpcHNlIDEyNyIgY2xhc3M9ImNscy00IiBjeD0iMjA0LjUiIGN5PSIxNTEuNDgxIiByeD0iMjA0LjUiIHJ5PSIxNTEuNDgxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtODQgLTE2OC40NjYpIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4K\"\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/assets/img/backgroundHead/transfer.svg\n// module id = 592\n// module chunks = 1 8","<style lang=\"\" scoped>\n .warp {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n height: 600px;\n z-index: 2;\n overflow: scroll;\n }\n .header {\n display: flex;\n }\n .header p{\n text-align: center;\n width: 280px;\n padding-top: 17px;\n }\n\n .balance {\n width: 280px;\n height: 40px;\n margin: 20px;\n padding: 20px;\n display: flex;\n }\n .balance .token-amount {\n display: inline-block;\n }\n .balance .token-amount .asset {\n font-size: 18px;\n }\n .small{\n font-size: 12px;\n }\n .transfer-header{\n background-image: url(\"../../assets/img/backgroundHead/transfer.svg\");\n background-size: 320px 80px;\n }\n .wallet{\n width: 40px;\n height: 40px;\n background: rgba(255,255,255,0.1);\n border-radius: 50%;\n color: white;\n margin-right: 20px;\n line-height: 40px;\n text-align: center;\n }\n .content {\n margin: 20px;\n padding: 20px;\n overflow: hidden;\n border-radius:4px;\n width: 280px;\n }\n .divider {\n margin: 12px 0;\n }\n\n .value .uint {\n font-size: 12px;\n margin-left: 3px;\n }\n .btn-inline .btn {\n margin: 10px 15px;\n }\n .row{\n word-break: break-all;\n }\n .col{\n font-size: 14px;\n width: 35%;\n }\n .label{\n color: #7B7B7B;\n }\n .value{\n color: #282828;\n width: 60%;\n }\n table{\n width: 100%;\n }\n .form-item{\n padding:0;\n margin:0;\n margin-bottom: 10px;\n }\n .btn-container .btn{\n height: 48px;\n bottom: 20px;\n position: absolute;\n width: 320px;\n }\n</style>\n\n<template>\n <div class=\"warp bg-gray\">\n <section class=\"header bg-header\">\n <i class=\"iconfont icon-back\" @click=\"close\"></i>\n <p>{{$t('signMessage.title')}}</p>\n </section>\n\n <section class=\"balance transfer-header\">\n <div class=\"wallet\">\n <i class=\"iconfont icon-wallet\"></i>\n </div>\n <div>\n <div class=\"token-amount\">\n {{accountBalance}}\n <span class=\"asset\">BTM</span>\n </div>\n <div class=\"small color-grey\">\n {{account.alias}}\n </div>\n </div>\n </section>\n\n <section class=\"content bg-white\">\n <table>\n <tbody>\n <tr class=\"row\">\n <td class=\"col label\">{{ $t('signMessage.address') }}</td>\n <td class=\"col value\">{{address}}</td>\n </tr>\n\n <div class=\"divider\"></div>\n\n <tr class=\"row\">\n <td class=\"col label\">{{ $t('signMessage.message') }}</td>\n <td class=\"col value\">{{message}}</td>\n </tr>\n </tbody>\n </table>\n </section>\n <section class=\"content bg-white\">\n <div class=\"form\">\n <div class=\"form-item\">\n <label class=\"form-item-label\">{{ $t('transfer.confirmPassword') }}</label>\n <div class=\"form-item-content\">\n <input type=\"password\" v-model=\"password\" autofocus>\n </div>\n </div>\n </div>\n </section>\n\n <div class=\"row btn-container\" style=\"margin: 20px; position: static;\">\n <div class=\"btn bg-green\" @click=\"sign\">{{ $t('signMessage.confirmSignature') }}</div>\n </div>\n\n </div>\n</template>\n\n<script>\nimport transaction from \"@/models/transaction\";\nimport account from \"@/models/account\";\nimport getLang from \"@/assets/language/sdk\";\nimport { BTM } from \"@/utils/constants\";\nimport {apis} from '@/utils/BrowserApis';\nimport NotificationService from '../../services/NotificationService'\nimport { mapGetters } from 'vuex'\n\n\nexport default {\n data() {\n return {\n full: false,\n accounts:{},\n account: {},\n accountBalance: 0.00,\n address: '',\n message: '',\n password:'',\n prompt:''\n };\n },\n computed: {\n ...mapGetters([\n 'net',\n 'netType',\n 'accountList'\n ])\n },\n watch: {\n },\n methods: {\n close: function () {\n NotificationService.close();\n },\n sign: function () {\n let loader = this.$loading.show({\n container: null,\n canCancel: true,\n onCancel: this.onCancel\n });\n\n transaction.signMessage(this.message, this.password, this.address).then((resp) => {\n loader.hide();\n this.prompt.responder(resp);\n this.$dialog.show({\n type: 'success',\n body: this.$t(\"transfer.success\")\n });\n NotificationService.close();\n }).catch(error => {\n loader.hide();\n\n this.$dialog.show({\n body: getLang(error.message)\n });\n });\n }\n }, mounted() {\n this.prompt = window.data || apis.extension.getBackgroundPage().notification || null;\n const object = this.prompt.data\n\n if(object.address !== undefined){\n this.address = object.address\n }\n if(object.message !== undefined){\n this.message = object.message\n }\n\n const account = this.accountList.filter(a => (a.address === this.address || a.vpAddress === this.address) )[0]\n this.account = account\n\n const balances = this.netType ==='vapor'? account.vpBalances : account.balances\n let balance = 0\n if(balances.length > 0){\n const balanceObject = balances.filter(b => b.asset.assetId === BTM)[0]\n balance = balanceObject.availableBalance\n }\n\n this.accountBalance = balance\n }\n};\n</script>\n\n\n\n// WEBPACK FOOTER //\n// src/views/sendTransaction/signMessage.vue","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-61ebb274\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./signMessage.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar update = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\")(\"bee98954\", content, true, {});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-style-loader!./node_modules/css-loader?minimize!./node_modules/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-61ebb274\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/views/sendTransaction/signMessage.vue\n// module id = 659\n// module chunks = 8","var escape = require(\"../../../node_modules/css-loader/lib/url/escape.js\");\nexports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".warp[data-v-61ebb274]{position:absolute;top:0;left:0;right:0;height:600px;z-index:2;overflow:scroll}.header[data-v-61ebb274]{display:flex}.header p[data-v-61ebb274]{text-align:center;width:280px;padding-top:17px}.balance[data-v-61ebb274]{width:280px;height:40px;margin:20px;padding:20px;display:flex}.balance .token-amount[data-v-61ebb274]{display:inline-block}.balance .token-amount .asset[data-v-61ebb274]{font-size:18px}.small[data-v-61ebb274]{font-size:12px}.transfer-header[data-v-61ebb274]{background-image:url(\" + escape(require(\"../../assets/img/backgroundHead/transfer.svg\")) + \");background-size:320px 80px}.wallet[data-v-61ebb274]{width:40px;height:40px;background:hsla(0,0%,100%,.1);border-radius:50%;color:#fff;margin-right:20px;line-height:40px;text-align:center}.content[data-v-61ebb274]{margin:20px;padding:20px;overflow:hidden;border-radius:4px;width:280px}.divider[data-v-61ebb274]{margin:12px 0}.value .uint[data-v-61ebb274]{font-size:12px;margin-left:3px}.btn-inline .btn[data-v-61ebb274]{margin:10px 15px}.row[data-v-61ebb274]{word-break:break-all}.col[data-v-61ebb274]{font-size:14px;width:35%}.label[data-v-61ebb274]{color:#7b7b7b}.value[data-v-61ebb274]{color:#282828;width:60%}table[data-v-61ebb274]{width:100%}.form-item[data-v-61ebb274]{padding:0;margin:0;margin-bottom:10px}.btn-container .btn[data-v-61ebb274]{height:48px;bottom:20px;position:absolute;width:320px}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/css-loader?minimize!./node_modules/vue-loader/lib/style-compiler?{\"vue\":true,\"id\":\"data-v-61ebb274\",\"scoped\":true,\"hasInlineConfig\":false}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/views/sendTransaction/signMessage.vue\n// module id = 660\n// module chunks = 8","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"warp bg-gray\"},[_c('section',{staticClass:\"header bg-header\"},[_c('i',{staticClass:\"iconfont icon-back\",on:{\"click\":_vm.close}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('signMessage.title')))])]),_vm._v(\" \"),_c('section',{staticClass:\"balance transfer-header\"},[_vm._m(0),_vm._v(\" \"),_c('div',[_c('div',{staticClass:\"token-amount\"},[_vm._v(\"\\n \"+_vm._s(_vm.accountBalance)+\"\\n \"),_c('span',{staticClass:\"asset\"},[_vm._v(\"BTM\")])]),_vm._v(\" \"),_c('div',{staticClass:\"small color-grey\"},[_vm._v(\"\\n \"+_vm._s(_vm.account.alias)+\"\\n \")])])]),_vm._v(\" \"),_c('section',{staticClass:\"content bg-white\"},[_c('table',[_c('tbody',[_c('tr',{staticClass:\"row\"},[_c('td',{staticClass:\"col label\"},[_vm._v(_vm._s(_vm.$t('signMessage.address')))]),_vm._v(\" \"),_c('td',{staticClass:\"col value\"},[_vm._v(_vm._s(_vm.address))])]),_vm._v(\" \"),_c('div',{staticClass:\"divider\"}),_vm._v(\" \"),_c('tr',{staticClass:\"row\"},[_c('td',{staticClass:\"col label\"},[_vm._v(_vm._s(_vm.$t('signMessage.message')))]),_vm._v(\" \"),_c('td',{staticClass:\"col value\"},[_vm._v(_vm._s(_vm.message))])])])])]),_vm._v(\" \"),_c('section',{staticClass:\"content bg-white\"},[_c('div',{staticClass:\"form\"},[_c('div',{staticClass:\"form-item\"},[_c('label',{staticClass:\"form-item-label\"},[_vm._v(_vm._s(_vm.$t('transfer.confirmPassword')))]),_vm._v(\" \"),_c('div',{staticClass:\"form-item-content\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.password),expression:\"password\"}],attrs:{\"type\":\"password\",\"autofocus\":\"\"},domProps:{\"value\":(_vm.password)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.password=$event.target.value}}})])])])]),_vm._v(\" \"),_c('div',{staticClass:\"row btn-container\",staticStyle:{\"margin\":\"20px\",\"position\":\"static\"}},[_c('div',{staticClass:\"btn bg-green\",on:{\"click\":_vm.sign}},[_vm._v(_vm._s(_vm.$t('signMessage.confirmSignature')))])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wallet\"},[_c('i',{staticClass:\"iconfont icon-wallet\"})])}]\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-61ebb274\",\"hasScoped\":true,\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/views/sendTransaction/signMessage.vue\n// module id = 661\n// module chunks = 8"],"sourceRoot":""}
\ No newline at end of file