{"version":3,"sources":["webpack:///../../../src/components/VGrid/VFlex.ts","webpack:///./src/components/devices/DeviceSSHPage.vue?7078","webpack:///./node_modules/js-base64/base64.mjs","webpack:///src/components/devices/DeviceSSHPage.vue","webpack:///./src/components/devices/DeviceSSHPage.vue?4026","webpack:///./src/components/devices/DeviceSSHPage.vue","webpack:///./src/components/devices/DeviceSSHPage.vue?f160","webpack:///../../../src/components/VGrid/VLayout.ts","webpack:///../../../src/components/VChip/VChip.ts"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","_v","_s","device","name","deviceSSHCLI","_l","key","label","labels","ref","staticRenderFns","version","VERSION","_hasatob","atob","_hasbtoa","btoa","_hasBuffer","Buffer","_TD","TextDecoder","undefined","_TE","TextEncoder","b64ch","b64chs","b64tab","a","tab","forEach","c","i","b64re","_fromCC","String","fromCharCode","bind","_U8Afrom","Uint8Array","from","it","fn","x","Array","prototype","slice","call","map","_mkUriSafe","src","replace","m0","_tidyB64","s","btoaPolyfill","bin","u32","c0","c1","c2","asc","pad","length","charCodeAt","TypeError","substring","_btoa","toString","_fromUint8Array","u8a","maxargs","strs","l","push","apply","subarray","join","fromUint8Array","urlsafe","cb_utob","cc","re_utob","utob","u","_encode","encode","re_btou","cb_btou","cccc","cp","offset","btou","b","atobPolyfill","test","u24","r1","r2","charAt","_atob","_toUint8Array","toUint8Array","_unURI","_decode","decode","isValid","_noEnum","v","value","enumerable","writable","configurable","extendString","_add","body","Object","defineProperty","extendUint8Array","extendBuiltins","gBase64","fromBase64","toBase64","encodeURI","encodeURL","foreground","background","cursor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","websocket","send","term","on","onTermResize","addEventListener","off","socket","bufferedTime","messageBuffer","ev","data","setTimeout","write","onmessage","handleWebSocketMessage","bidirectional","handleTerminalData","JSON","stringify","removeEventListener","clearInterval","heartBeatTimer","components","Markup","ws","computed","$store","state","deviceId","$route","params","projectId","project","wsBase","wsUrl","mounted","dispatch","q","doOpened","beforeDestroy","doClose","methods","onWindowResize","fit","doLink","type","window","open","url","close","dispose","Terminal","fontSize","cursorBlink","cursorStyle","bellStyle","fontFamily","theme","solarizedDarkTheme","$refs","terminal","webLinksInit","WebSocket","onclose","ce","code","bindTerminalResize","component","VCard","VCardText","VCardTitle","VChip","VFlex","VLayout","VSpacer","props","active","default","activeClass","chipGroup","closeIcon","closeLabel","disabled","draggable","filter","filterIcon","link","outlined","pill","tag","textColor","proxyClass","classes","groupClasses","hasClose","Boolean","isClickable","created","breakingProps","original","replacement","click","genFilter","children","left","genClose","right","size","$vuetify","lang","t","e","genContent","$slots","tabindex","setBackgroundColor","color","h","setTextColor"],"mappings":"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","file":"js/chunk-f99966e2.c2c0fdaf.js","sourcesContent":["import './_grid.sass'\n\nimport Grid from './grid'\n\nexport default Grid('flex')\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-layout',{staticClass:\"mb-3\",attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"lg12\":\"\",\"md12\":\"\",\"sm12\":\"\",\"pr-2\":\"\"}},[_c('v-card',{attrs:{\"flat\":\"\"}},[_c('v-card-title',[_vm._v(\" \"+_vm._s(_vm.device.name)+\" \"),_c('v-spacer'),_c('markup',{attrs:{\"language\":\"bash\",\"code\":_vm.deviceSSHCLI,\"inline\":false}}),_c('v-spacer'),_vm._l((_vm.device.labels),function(key,label){return _c('v-chip',{key:key,staticClass:\"mr-1\",attrs:{\"outlined\":\"\",\"color\":\"primary\"}},[_vm._v(_vm._s(label)+\":\"+_vm._s(_vm.device.labels[label]))])})],2),_c('v-card-text',[_c('div',{ref:\"terminal\",staticClass:\"synpse-xterm pa-2\"})])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\nconst version = '3.6.1';\n/**\n * @deprecated use lowercase `version`.\n */\nconst VERSION = version;\nconst _hasatob = typeof atob === 'function';\nconst _hasbtoa = typeof btoa === 'function';\nconst _hasBuffer = typeof Buffer === 'function';\nconst _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\nconst _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\nconst b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nconst b64chs = [...b64ch];\nconst b64tab = ((a) => {\n let tab = {};\n a.forEach((c, i) => tab[c] = i);\n return tab;\n})(b64chs);\nconst b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\nconst _fromCC = String.fromCharCode.bind(String);\nconst _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : (it, fn = (x) => x) => new Uint8Array(Array.prototype.slice.call(it, 0).map(fn));\nconst _mkUriSafe = (src) => src\n .replace(/[+\\/]/g, (m0) => m0 == '+' ? '-' : '_')\n .replace(/=+$/m, '');\nconst _tidyB64 = (s) => s.replace(/[^A-Za-z0-9\\+\\/]/g, '');\n/**\n * polyfill version of `btoa`\n */\nconst btoaPolyfill = (bin) => {\n // console.log('polyfilled');\n let u32, c0, c1, c2, asc = '';\n const pad = bin.length % 3;\n for (let i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n};\n/**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\nconst _btoa = _hasbtoa ? (bin) => btoa(bin)\n : _hasBuffer ? (bin) => Buffer.from(bin, 'binary').toString('base64')\n : btoaPolyfill;\nconst _fromUint8Array = _hasBuffer\n ? (u8a) => Buffer.from(u8a).toString('base64')\n : (u8a) => {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n const maxargs = 0x1000;\n let strs = [];\n for (let i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n/**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 §5\n * @returns {string} Base64 string\n */\nconst fromUint8Array = (u8a, urlsafe = false) => urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n// This trick is found broken https://github.com/dankogai/js-base64/issues/130\n// const utob = (src: string) => unescape(encodeURIComponent(src));\n// reverting good old fationed regexp\nconst cb_utob = (c) => {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n};\nconst re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n/**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\nconst utob = (u) => u.replace(re_utob, cb_utob);\n//\nconst _encode = _hasBuffer\n ? (s) => Buffer.from(s, 'utf8').toString('base64')\n : _TE\n ? (s) => _fromUint8Array(_TE.encode(s))\n : (s) => _btoa(utob(s));\n/**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\nconst encode = (src, urlsafe = false) => urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n/**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 §5.\n * @returns {string} Base64 string\n */\nconst encodeURI = (src) => encode(src, true);\n// This trick is found broken https://github.com/dankogai/js-base64/issues/130\n// const btou = (src: string) => decodeURIComponent(escape(src));\n// reverting good old fationed regexp\nconst re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\nconst cb_btou = (cccc) => {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n};\n/**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\nconst btou = (b) => b.replace(re_btou, cb_btou);\n/**\n * polyfill version of `atob`\n */\nconst atobPolyfill = (asc) => {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n let u24, bin = '', r1, r2;\n for (let i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n};\n/**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\nconst _atob = _hasatob ? (asc) => atob(_tidyB64(asc))\n : _hasBuffer ? (asc) => Buffer.from(asc, 'base64').toString('binary')\n : atobPolyfill;\n//\nconst _toUint8Array = _hasBuffer\n ? (a) => _U8Afrom(Buffer.from(a, 'base64'))\n : (a) => _U8Afrom(_atob(a), c => c.charCodeAt(0));\n/**\n * converts a Base64 string to a Uint8Array.\n */\nconst toUint8Array = (a) => _toUint8Array(_unURI(a));\n//\nconst _decode = _hasBuffer\n ? (a) => Buffer.from(a, 'base64').toString('utf8')\n : _TD\n ? (a) => _TD.decode(_toUint8Array(a))\n : (a) => btou(_atob(a));\nconst _unURI = (a) => _tidyB64(a.replace(/[-_]/g, (m0) => m0 == '-' ? '+' : '/'));\n/**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\nconst decode = (src) => _decode(_unURI(src));\n/**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\nconst isValid = (src) => {\n if (typeof src !== 'string')\n return false;\n const s = src.replace(/\\s+/g, '').replace(/=+$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n};\n//\nconst _noEnum = (v) => {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n};\n/**\n * extend String.prototype with relevant methods\n */\nconst extendString = function () {\n const _add = (name, body) => Object.defineProperty(String.prototype, name, _noEnum(body));\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n};\n/**\n * extend Uint8Array.prototype with relevant methods\n */\nconst extendUint8Array = function () {\n const _add = (name, body) => Object.defineProperty(Uint8Array.prototype, name, _noEnum(body));\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n};\n/**\n * extend Builtin prototypes with relevant methods\n */\nconst extendBuiltins = () => {\n extendString();\n extendUint8Array();\n};\nconst gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins,\n};\n// makecjs:CUT //\nexport { version };\nexport { VERSION };\nexport { _atob as atob };\nexport { atobPolyfill };\nexport { _btoa as btoa };\nexport { btoaPolyfill };\nexport { decode as fromBase64 };\nexport { encode as toBase64 };\nexport { utob };\nexport { encode };\nexport { encodeURI };\nexport { encodeURI as encodeURL };\nexport { btou };\nexport { decode };\nexport { isValid };\nexport { fromUint8Array };\nexport { toUint8Array };\nexport { extendString };\nexport { extendUint8Array };\nexport { extendBuiltins };\n// and finally,\nexport { gBase64 as Base64 };\n","\n \n
\n \n \n \n {{ device.name }}\n \n \n \n {{ label }}:{{ device.labels[label] }}\n \n \n \n \n \n \n \n
\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!./DeviceSSHPage.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!./DeviceSSHPage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DeviceSSHPage.vue?vue&type=template&id=1e3fb60f&\"\nimport script from \"./DeviceSSHPage.vue?vue&type=script&lang=js&\"\nexport * from \"./DeviceSSHPage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DeviceSSHPage.vue?vue&type=style&index=0&lang=css&\"\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 null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCardText,VCardTitle,VChip,VFlex,VLayout,VSpacer})\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeviceSSHPage.vue?vue&type=style&index=0&lang=css&\"","import './_grid.sass'\n\nimport Grid from './grid'\n\nexport default Grid('layout')\n","// Styles\nimport './VChip.sass'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\n// Components\nimport { VExpandXTransition } from '../transitions'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Themeable from '../../mixins/themeable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\nimport Routable from '../../mixins/routable'\nimport Sizeable from '../../mixins/sizeable'\n\n// Utilities\nimport { breaking } from '../../util/console'\n\n// Types\nimport { PropValidator, PropType } from 'vue/types/options'\n\n/* @vue/component */\nexport default mixins(\n Colorable,\n Sizeable,\n Routable,\n Themeable,\n GroupableFactory('chipGroup'),\n ToggleableFactory('inputValue')\n).extend({\n name: 'v-chip',\n\n props: {\n active: {\n type: Boolean,\n default: true,\n },\n activeClass: {\n type: String,\n default (): string | undefined {\n if (!this.chipGroup) return ''\n\n return this.chipGroup.activeClass\n },\n } as any as PropValidator,\n close: Boolean,\n closeIcon: {\n type: String,\n default: '$delete',\n },\n closeLabel: {\n type: String,\n default: '$vuetify.close',\n },\n disabled: Boolean,\n draggable: Boolean,\n filter: Boolean,\n filterIcon: {\n type: String,\n default: '$complete',\n },\n label: Boolean,\n link: Boolean,\n outlined: Boolean,\n pill: Boolean,\n tag: {\n type: String,\n default: 'span',\n },\n textColor: String,\n value: null as any as PropType,\n },\n\n data: () => ({\n proxyClass: 'v-chip--active',\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-chip': true,\n ...Routable.options.computed.classes.call(this),\n 'v-chip--clickable': this.isClickable,\n 'v-chip--disabled': this.disabled,\n 'v-chip--draggable': this.draggable,\n 'v-chip--label': this.label,\n 'v-chip--link': this.isLink,\n 'v-chip--no-color': !this.color,\n 'v-chip--outlined': this.outlined,\n 'v-chip--pill': this.pill,\n 'v-chip--removable': this.hasClose,\n ...this.themeClasses,\n ...this.sizeableClasses,\n ...this.groupClasses,\n }\n },\n hasClose (): boolean {\n return Boolean(this.close)\n },\n isClickable (): boolean {\n return Boolean(\n Routable.options.computed.isClickable.call(this) ||\n this.chipGroup\n )\n },\n },\n\n created () {\n const breakingProps = [\n ['outline', 'outlined'],\n ['selected', 'input-value'],\n ['value', 'active'],\n ['@input', '@active.sync'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n methods: {\n click (e: MouseEvent): void {\n this.$emit('click', e)\n\n this.chipGroup && this.toggle()\n },\n genFilter (): VNode {\n const children = []\n\n if (this.isActive) {\n children.push(\n this.$createElement(VIcon, {\n staticClass: 'v-chip__filter',\n props: { left: true },\n }, this.filterIcon)\n )\n }\n\n return this.$createElement(VExpandXTransition, children)\n },\n genClose (): VNode {\n return this.$createElement(VIcon, {\n staticClass: 'v-chip__close',\n props: {\n right: true,\n size: 18,\n },\n attrs: {\n 'aria-label': this.$vuetify.lang.t(this.closeLabel),\n },\n on: {\n click: (e: Event) => {\n e.stopPropagation()\n e.preventDefault()\n\n this.$emit('click:close')\n this.$emit('update:active', false)\n },\n },\n }, this.closeIcon)\n },\n genContent (): VNode {\n return this.$createElement('span', {\n staticClass: 'v-chip__content',\n }, [\n this.filter && this.genFilter(),\n this.$slots.default,\n this.hasClose && this.genClose(),\n ])\n },\n },\n\n render (h): VNode {\n const children = [this.genContent()]\n let { tag, data } = this.generateRouteLink()\n\n data.attrs = {\n ...data.attrs,\n draggable: this.draggable ? 'true' : undefined,\n tabindex: this.chipGroup && !this.disabled ? 0 : data.attrs!.tabindex,\n }\n data.directives!.push({\n name: 'show',\n value: this.active,\n })\n data = this.setBackgroundColor(this.color, data)\n\n const color = this.textColor || (this.outlined && this.color)\n\n return h(tag, this.setTextColor(color, data), children)\n },\n})\n"],"sourceRoot":""}