{"version":3,"sources":["webpack:///./node_modules/uuid/lib/bytesToUuid.js","webpack:///./node_modules/core-js/modules/es6.regexp.split.js","webpack:///./src/views/deviceManage/deviceProtocol/index.vue?639b","webpack:///./src/utils/removeIdSlash.js","webpack:///./src/utils/APIParser.js","webpack:///./node_modules/uuid/v1.js","webpack:///./src/views/deviceManage/deviceProtocol/index.vue?4534","webpack:///src/views/deviceManage/deviceProtocol/index.vue","webpack:///./src/views/deviceManage/deviceProtocol/index.vue?e42f","webpack:///./src/views/deviceManage/deviceProtocol/index.vue","webpack:///./node_modules/uuid/lib/rng-browser.js"],"names":["byteToHex","i","toString","substr","bytesToUuid","buf","offset","bth","join","module","exports","isRegExp","__webpack_require__","anObject","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","regexpExec","fails","$min","Math","min","$push","push","$SPLIT","LENGTH","LAST_INDEX","MAX_UINT32","SUPPORTS_Y","RegExp","defined","SPLIT","$split","maybeCallNative","internalSplit","separator","limit","string","String","this","undefined","call","match","lastIndex","lastLength","output","flags","ignoreCase","multiline","unicode","sticky","lastLastIndex","splitLimit","separatorCopy","source","slice","index","apply","test","O","splitter","regexp","res","done","value","rx","S","C","unicodeMatching","lim","length","p","q","A","e","z","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_b7120910_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__","_node_modules_mini_css_extract_plugin_dist_loader_js_ref_8_oneOf_1_0_node_modules_css_loader_index_js_ref_8_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_2_node_modules_sass_loader_lib_loader_js_ref_8_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_id_b7120910_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default","n","removeSlash","str","substring","d","__webpack_exports__","uuid","require","moment","ThingsBoardTenantListParser","list","resultList","data","map","listItem","resultItem","item","ThingsBoardDeviceListParser","additionalInfo","JSON","parse","color","isVirtualDevice","label","name","allowDelete","allowMod","allowCopy","children","id","allowAdd","ThingsBoardTenantManagerListParser","ThingsBoardTenantUserListParser","append","val","ThingsBoardVirtualTableParser","typeInZh","type","virtualGroup","group","split","reverse","timeSharingParser","timeSharing","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","Symbol","iterator","next","key","filter","v","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_step3","_iterator3","timeList","timeSharingType","tempTimeValue","_iteratorNormalCompletion4","_didIteratorError4","_iteratorError4","_step4","_iterator4","timeItem","tempTimeItem","err","return","gatewayParser","origData","result","gateway","loading","shortId","isLeaf","lazy","createdTimeParsed","createdTime","format","devicePropsRegister","reg","preProcessData","_nodeId","_clockseq","rng","_lastMSecs","_lastNSecs","v1","options","b","node","clockseq","seedBytes","msecs","Date","getTime","nsecs","dt","Error","tl","tmh","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","API","staticRenderFns","deviceProtocolvue_type_script_lang_js_","components","itemTable","_this","noSelect","getter","device_controller","parser","APIParser","noDeletes","noDelete","noEdit","noAdd","rowOperations","editReg","operation","$router","path","concat","row","created","_created","Object","asyncToGenerator","regeneratorRuntime","mark","_callee","wrap","_context","prev","stop","arguments","deviceManage_deviceProtocolvue_type_script_lang_js_","component","componentNormalizer","getRandomValues","crypto","bind","window","msCrypto","rnds8","Uint8Array","rnds","Array","r","random"],"mappings":"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","file":"js/chunk-2b0f2620.3a313c2b.js","sourcesContent":["/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\nvar byteToHex = [];\nfor (var i = 0; i < 256; ++i) {\n byteToHex[i] = (i + 0x100).toString(16).substr(1);\n}\n\nfunction bytesToUuid(buf, offset) {\n var i = offset || 0;\n var bth = byteToHex;\n // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4\n return ([bth[buf[i++]], bth[buf[i++]], \n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]], '-',\n\tbth[buf[i++]], bth[buf[i++]],\n\tbth[buf[i++]], bth[buf[i++]],\n\tbth[buf[i++]], bth[buf[i++]]]).join('');\n}\n\nmodule.exports = bytesToUuid;\n","'use strict';\n\nvar isRegExp = require('./_is-regexp');\nvar anObject = require('./_an-object');\nvar speciesConstructor = require('./_species-constructor');\nvar advanceStringIndex = require('./_advance-string-index');\nvar toLength = require('./_to-length');\nvar callRegExpExec = require('./_regexp-exec-abstract');\nvar regexpExec = require('./_regexp-exec');\nvar fails = require('./_fails');\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nrequire('./_fix-re-wks')('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=b7120910&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=b7120910&lang=scss&scoped=true&\"","export function removeSlash(str) {\n return str.substring(15, 18) + str.substring(9, 13) + str.substring(0, 8) + str.substring(19, 23) + str.substring(24)\n}\n","import { removeSlash } from './removeIdSlash'\nconst uuid = require('uuid/v1')\nconst moment = require('moment')\n\nexport function ThingsBoardTenantListParser (list) {\n const resultList = list.data.data.map(listItem => {\n const resultItem = {}\n for (const item in listItem) {\n // if (item !== 'id') {\n resultItem[item] = listItem[item]\n // }\n }\n // resultItem.id = listItem.id.id\n // resultItem.name = listItem.name\n // resultItem.title = listItem.title\n return resultItem\n })\n return resultList\n}\n\nexport function ThingsBoardDeviceListParser (list) {\n const resultList = list.data.data.map(listItem => {\n const resultItem = {}\n for (const item in listItem) {\n resultItem[item] = listItem[item]\n // }\n }\n const additionalInfo = JSON.parse(resultItem.additionalInfo || '{}')\n resultItem.color = additionalInfo.isVirtualDevice ? '#66ccff' : undefined\n resultItem.label = listItem.name\n resultItem.allowDelete = true\n resultItem.allowMod = true\n resultItem.allowCopy = true\n resultItem.children = []\n resultItem.children[0] = {}\n resultItem.children[0].label = '开关量'\n resultItem.children[0].children = []\n resultItem.children[1] = {}\n resultItem.children[1].label = '变量'\n resultItem.children[1]['data-key'] = 'variables'\n resultItem.children[1]['data-device-id'] = listItem.id\n resultItem.children[1].allowAdd = true\n resultItem.children[1].children = []\n resultItem.children[2] = {}\n resultItem.children[2].label = '控制量'\n resultItem.children[2].children = []\n // resultItem.id = listItem.id.id\n // resultItem.name = listItem.name\n // resultItem.additionalInfo = {}\n // resultItem.additionalInfo.type = listItem.type\n return resultItem\n })\n return resultList\n}\n\nexport function ThingsBoardTenantManagerListParser (list) {\n const resultList = list.data.data.map(listItem => {\n const resultItem = {}\n // const rules = [\n // 'id',\n // 'createdTime',\n // 'authority'\n // ]\n for (const item in listItem) {\n resultItem[item] = listItem[item]\n }\n // resultItem.id = listItem.id.id\n // resultItem.name = listItem.name\n // resultItem.email = listItem.email\n return resultItem\n })\n return resultList\n}\n\nexport function ThingsBoardTenantUserListParser (list) {\n const resultList = list.data.data.map(listItem => {\n const resultItem = {}\n // const rules = [\n // 'id',\n // 'createdTime',\n // 'authority'\n // ]\n for (const item in listItem) {\n if (item === 'additionalInfo') {\n const append = JSON.parse(listItem[item])\n resultItem[item] = append\n for (const val in append) {\n resultItem[val] = append[val]\n if (val === 'alarmFromEmail') {\n append[val] ? resultItem[val] = '是' : resultItem[val] = '否'\n }\n if (val === 'alarmFromSms') {\n append[val] ? resultItem[val] = '是' : resultItem[val] = '否'\n }\n }\n } else {\n resultItem[item] = listItem[item]\n }\n }\n // resultItem.id = listItem.id.id\n // resultItem.name = listItem.name\n // resultItem.email = listItem.email\n return resultItem\n })\n return resultList\n}\n\n// 虚拟表解析\nexport function ThingsBoardVirtualTableParser (list) {\n const resultList = list.data.map(listItem => {\n const resultItem = {}\n // const rules = [\n // 'id',\n // 'createdTime',\n // 'authority'\n // ]\n for (const item in listItem) {\n // if (!rules.includes(item)) {\n resultItem[item] = listItem[item]\n resultItem.typeInZh = listItem.type === 'inputValue' ? '输入值' : '计算值'\n if (listItem.virtualGroup) {\n resultItem.group = listItem.virtualGroup\n if (!resultItem.group) {\n resultItem.group = ''\n }\n resultItem.virtualGroup = listItem.virtualGroup.split(',')\n if (!resultItem.virtualGroup) {\n resultItem.virtualGroup = []\n }\n }\n // }\n }\n // resultItem.id = listItem.id.id\n // resultItem.name = listItem.name\n // resultItem.email = listItem.email\n return resultItem\n })\n resultList.reverse()\n return resultList\n}\n\nexport function timeSharingParser (val) {\n let timeSharing = []\n for (const item of val.data) {\n if (item.key === 'timeSharing') {\n timeSharing = JSON.parse(item.value) || []\n timeSharing = timeSharing.filter(v => v.name)\n // let resultTree = []\n for (const item of timeSharing) {\n item.label = item.name\n item.children = item.data\n item.allowDelete = true\n item.id = uuid()\n item.allowAdd = true\n for (const timeList of item.children) {\n timeList.timeSharingType = item.type\n timeList.label = timeList.key\n timeList.allowDelete = true\n timeList.id = uuid()\n\n if (item.type === 'time') {\n const tempTimeValue = []\n for (const timeItem of timeList.value) {\n const tempTimeItem = []\n tempTimeItem[0] = timeItem.substring(0, 5)\n tempTimeItem[1] = timeItem.substring(6, 11)\n tempTimeValue.push(tempTimeItem)\n }\n timeList.value = tempTimeValue\n }\n }\n }\n return timeSharing || []\n }\n }\n}\n\nexport function gatewayParser (list) {\n const origData = list.data\n const result = origData.map(gateway => {\n gateway.label = gateway.name\n gateway.loading = false\n gateway.children = []\n gateway.allowAdd = true\n gateway.allowDelete = true\n gateway.shortId = removeSlash(gateway.id.id)\n gateway.isLeaf = false\n gateway.lazy = true\n gateway.createdTimeParsed = moment(gateway.createdTime).format('YYYY-MM-DD HH:mm')\n return gateway\n })\n return result\n}\n\nexport function devicePropsRegister (reg) {\n const preProcessData = (reg[0] || { value: '' }).value\n // const result = []\n return JSON.parse(preProcessData)\n}\n","var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\n\n// **`v1()` - Generate time-based UUID**\n//\n// Inspired by https://github.com/LiosK/UUID.js\n// and http://docs.python.org/library/uuid.html\n\nvar _nodeId;\nvar _clockseq;\n\n// Previous uuid creation time\nvar _lastMSecs = 0;\nvar _lastNSecs = 0;\n\n// See https://github.com/broofa/node-uuid for API details\nfunction v1(options, buf, offset) {\n var i = buf && offset || 0;\n var b = buf || [];\n\n options = options || {};\n var node = options.node || _nodeId;\n var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;\n\n // node and clockseq need to be initialized to random values if they're not\n // specified. We do this lazily to minimize issues related to insufficient\n // system entropy. See #189\n if (node == null || clockseq == null) {\n var seedBytes = rng();\n if (node == null) {\n // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)\n node = _nodeId = [\n seedBytes[0] | 0x01,\n seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]\n ];\n }\n if (clockseq == null) {\n // Per 4.2.2, randomize (14 bit) clockseq\n clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;\n }\n }\n\n // UUID timestamps are 100 nano-second units since the Gregorian epoch,\n // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so\n // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'\n // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.\n var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();\n\n // Per 4.2.1.2, use count of uuid's generated during the current clock\n // cycle to simulate higher resolution clock\n var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;\n\n // Time since last uuid creation (in msecs)\n var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;\n\n // Per 4.2.1.2, Bump clockseq on clock regression\n if (dt < 0 && options.clockseq === undefined) {\n clockseq = clockseq + 1 & 0x3fff;\n }\n\n // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new\n // time interval\n if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {\n nsecs = 0;\n }\n\n // Per 4.2.1.2 Throw error if too many uuids are requested\n if (nsecs >= 10000) {\n throw new Error('uuid.v1(): Can\\'t create more than 10M uuids/sec');\n }\n\n _lastMSecs = msecs;\n _lastNSecs = nsecs;\n _clockseq = clockseq;\n\n // Per 4.1.4 - Convert from unix epoch to Gregorian epoch\n msecs += 12219292800000;\n\n // `time_low`\n var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;\n b[i++] = tl >>> 24 & 0xff;\n b[i++] = tl >>> 16 & 0xff;\n b[i++] = tl >>> 8 & 0xff;\n b[i++] = tl & 0xff;\n\n // `time_mid`\n var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;\n b[i++] = tmh >>> 8 & 0xff;\n b[i++] = tmh & 0xff;\n\n // `time_high_and_version`\n b[i++] = tmh >>> 24 & 0xf | 0x10; // include version\n b[i++] = tmh >>> 16 & 0xff;\n\n // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)\n b[i++] = clockseq >>> 8 | 0x80;\n\n // `clock_seq_low`\n b[i++] = clockseq & 0xff;\n\n // `node`\n for (var n = 0; n < 6; ++n) {\n b[i + n] = node[n];\n }\n\n return buf ? buf : bytesToUuid(b);\n}\n\nmodule.exports = v1;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"device-protocol-container\"},[_c('itemTable',{attrs:{\"API\":_vm.API}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=b7120910&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=b7120910&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b7120910\",\n null\n \n)\n\nexport default component.exports","// Unique ID creation requires a high quality random # generator. In the\n// browser this is a little complicated due to unknown quality of Math.random()\n// and inconsistent support for the `crypto` API. We do the best we can via\n// feature-detection\n\n// getRandomValues needs to be invoked in a context where \"this\" is a Crypto\n// implementation. Also, find the complete implementation of crypto on IE11.\nvar getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto)) ||\n (typeof(msCrypto) != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto));\n\nif (getRandomValues) {\n // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto\n var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef\n\n module.exports = function whatwgRNG() {\n getRandomValues(rnds8);\n return rnds8;\n };\n} else {\n // Math.random()-based (RNG)\n //\n // If all else fails, use Math.random(). It's fast, but is of unspecified\n // quality.\n var rnds = new Array(16);\n\n module.exports = function mathRNG() {\n for (var i = 0, r; i < 16; i++) {\n if ((i & 0x03) === 0) r = Math.random() * 0x100000000;\n rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;\n }\n\n return rnds;\n };\n}\n"],"sourceRoot":""}