{"version":3,"sources":["webpack:///./app/javascript/shared/helpers/emoji.js","webpack:///./app/javascript/dashboard/components/widgets/Avatar.vue?a035","webpack:///./app/javascript/dashboard/components/widgets/Avatar.vue?1562","webpack:///app/javascript/dashboard/components/widgets/Avatar.vue","webpack:///./app/javascript/dashboard/components/widgets/Avatar.vue","webpack:///./app/javascript/dashboard/components/widgets/Avatar.vue?6a1e","webpack:///./app/javascript/dashboard/components/widgets/Thumbnail.vue?dfb8","webpack:///./app/javascript/dashboard/components/widgets/Thumbnail.vue?9e83","webpack:///./app/javascript/dashboard/components/widgets/Thumbnail.vue?8701","webpack:///app/javascript/dashboard/components/widgets/Thumbnail.vue","webpack:///./app/javascript/dashboard/components/widgets/Thumbnail.vue"],"names":["hasEmojiSupport","offset","window","devicePixelRatio","node","document","createElement","getContext","fillText","ctx","fillStyle","textBaseline","font","getImageData","data","removeEmoji","text","replace","trim","component","_vm","this","_c","_self","staticClass","style","attrs","_t","_v","_s","userInitial","class","thumbnailBoxClass","height","size","width","title","directives","name","rawName","value","expression","thumbnailClass","src","on","onImgLoad","onImgError","shouldShowImage","userNameWithoutEmoji","avatarSize","badgeSrc","_e","status"],"mappings":"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","file":"js/5-7a289950713a02b4f20c.chunk.js","sourcesContent":["/**\n * Detects support for emoji character sets.\n *\n * Based on the Modernizr emoji detection.\n * https://github.com/Modernizr/Modernizr/blob/347ddb078116cee91b25b6e897e211b023f9dcb4/feature-detects/emoji.js\n *\n * @return {Boolean} true or false\n * @example\n *\n * hasEmojiSupport()\n * // => true|false\n */\nexport const hasEmojiSupport = () => {\n const pixelRatio = window.devicePixelRatio || 1;\n const offset = 12 * pixelRatio;\n const node = document.createElement('canvas');\n\n // canvastext support\n if (\n !node.getContext ||\n !node.getContext('2d') ||\n typeof node.getContext('2d').fillText !== 'function'\n ) {\n return false;\n }\n\n const ctx = node.getContext('2d');\n\n ctx.fillStyle = '#f00';\n ctx.textBaseline = 'top';\n ctx.font = '32px Arial';\n ctx.fillText('\\ud83d\\udc28', 0, 0); // U+1F428 KOALA\n return ctx.getImageData(offset, offset, 1, 1).data[0] !== 0;\n};\n\nexport const removeEmoji = text => {\n if (text) {\n return text\n .replace(\n /([\\u2700-\\u27BF]|[\\uE000-\\uF8FF]|\\uD83C[\\uDC00-\\uDFFF]|\\uD83D[\\uDC00-\\uDFFF]|[\\u2011-\\u26FF]|\\uD83E[\\uDD10-\\uDDFF])/g,\n ''\n )\n .replace(/\\s+/g, ' ')\n .trim();\n }\n return '';\n};\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"avatar-container\",style:(_vm.style),attrs:{\"aria-hidden\":\"true\"}},[_vm._t(\"default\",function(){return [_vm._v(_vm._s(_vm.userInitial))]})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./Avatar.vue?vue&type=template&id=139a08b4&scoped=true&\"\nimport script from \"./Avatar.vue?vue&type=script&lang=js&\"\nexport * from \"./Avatar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Avatar.vue?vue&type=style&index=0&id=139a08b4&prod&scoped=true&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 \"139a08b4\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/dist/cjs.js??ref--2-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??ref--2-2!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&id=139a08b4&prod&scoped=true&lang=css&\"","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js!../../../../../node_modules/css-loader/dist/cjs.js??ref--3-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/dist/cjs.js??ref--3-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--3-3!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=style&index=0&id=478e95b6&prod&lang=scss&scoped=true&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:_vm.thumbnailBoxClass,style:({ height: _vm.size, width: _vm.size }),attrs:{\"title\":_vm.title}},[_vm._t(\"default\",function(){return [_c('img',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.shouldShowImage),expression:\"shouldShowImage\"}],class:_vm.thumbnailClass,attrs:{\"src\":_vm.src},on:{\"load\":_vm.onImgLoad,\"error\":_vm.onImgError}}),_vm._v(\" \"),_c('Avatar',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.shouldShowImage),expression:\"!shouldShowImage\"}],class:_vm.thumbnailClass,attrs:{\"username\":_vm.userNameWithoutEmoji,\"size\":_vm.avatarSize}})]}),_vm._v(\" \"),(_vm.badgeSrc)?_c('img',{staticClass:\"source-badge\",style:(_vm.badgeStyle),attrs:{\"src\":`/integrations/channels/badges/${_vm.badgeSrc}.png`,\"alt\":\"Badge\"}}):_vm._e(),_vm._v(\" \"),(_vm.showStatusIndicator)?_c('div',{class:`source-badge user-online-status user-online-status--${_vm.status}`,style:(_vm.statusStyle)}):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??ref--7-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=script&lang=js&\"","\n\n\n\n","import { render, staticRenderFns } from \"./Thumbnail.vue?vue&type=template&id=478e95b6&scoped=true&\"\nimport script from \"./Thumbnail.vue?vue&type=script&lang=js&\"\nexport * from \"./Thumbnail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Thumbnail.vue?vue&type=style&index=0&id=478e95b6&prod&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 \"478e95b6\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}