diff --git a/.gitignore b/.gitignore index 403adbc..4a2e501 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,5 @@ .DS_Store node_modules -/dist # local env files diff --git a/dist/vue-stories-instagram.esm.js b/dist/vue-stories-instagram.esm.js new file mode 100644 index 0000000..19db0f7 --- /dev/null +++ b/dist/vue-stories-instagram.esm.js @@ -0,0 +1,725 @@ +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// +// + +var script = { + name: "Stories", + props: { + stories: { + type: Array, + required: true, + }, + duration: { + type: Number, + default: 3000, + }, + currentIndex: { + type: Number, + default: 0, + }, + showInnerContent: { + type: Boolean, + default: false, + }, + showOuterContent: { + type: Boolean, + default: false, + }, + }, + data: function () { return ({ + indexSelected: 0, + difference: 0, + key: 0, + percent: 0, + timer: 0, + progress: 0, + interval: 0, + isPaused: false, + newDur: 0, + pausePer: 0, + mobile: false, + }); }, + computed: { + isAllStoriesEnd: function isAllStoriesEnd() { + return ( + this.indexSelected >= this.stories.length - 1 && + this.isCurrentAllImagesEnd + ); + }, + isCurrentAllImagesEnd: function isCurrentAllImagesEnd() { + return this.key >= this.stories[this.indexSelected].images.length - 1; + }, + }, + mounted: function mounted() { + if (process.client) { + this.mobile = this.isMobile(); + } + }, + methods: { + isMobile: function isMobile() { + if ( + /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test( + navigator.userAgent + ) + ) { + return true; + } else { + return false; + } + }, + getSrc: function getSrc(story, index) { + var viewedIndex = this.getLastViewedIndex(story); + return index === this.indexSelected + ? { + url: story.images[this.key].url, + type: story.images[this.key].type, + } + : { + url: story.images[viewedIndex].url, + type: story.images[viewedIndex].type, + }; + }, + getNotViewedIndex: function getNotViewedIndex(story) { + return story.images.findIndex(function (item) { return !item.viewed; }); + }, + getLastViewedIndex: function getLastViewedIndex(story) { + var keyIndex = this.getNotViewedIndex(story); + var index = story.images.length - 1; + return keyIndex === -1 ? index : keyIndex; + }, + selectSlide: function selectSlide(index) { + this.isPaused = false; + this.difference += this.indexSelected - index; + this.stopVideo(this.stories[this.indexSelected].images[this.key].url); + this.indexSelected = index; + this.key = this.getLastViewedIndex(this.stories[this.indexSelected]); + this.reset(); + }, + onAllStoriesEnd: function onAllStoriesEnd() { + this.difference = 0; + this.indexSelected = 0; + this.key = 0; + this.$emit("allStoriesEnd"); + }, + onCurrentAllImagesEnd: function onCurrentAllImagesEnd(index) { + this.difference += index - (index + 1); + this.stopVideo(this.stories[this.indexSelected].images[this.key].url); + this.stories[index].images[this.key].viewed = true; + this.indexSelected++; + this.key = this.getLastViewedIndex(this.stories[this.indexSelected]); + this.$emit("сurrentAllImagesEnd", index); + }, + onCurrentImageEnd: function onCurrentImageEnd(index) { + this.stories[index].images[this.key].viewed = true; + this.$emit("сurrentImageEnd", this.key); + this.key++; + }, + next: function next(index) { + var this$1 = this; + + this.isPaused = false; + if (this.isAllStoriesEnd) { + this.onAllStoriesEnd(); + } else if (this.isCurrentAllImagesEnd) { + setTimeout(function () { + this$1.onCurrentAllImagesEnd(index); + }); + } else { + this.stories[this.indexSelected].images[this.key].viewed = true; + this.key++; + } + this.reset(); + }, + prev: function prev(index) { + var this$1 = this; + + this.isPaused = false; + if (this.indexSelected <= 0 && this.key <= 0) { + this.key = 0; + } else if (this.key <= 0) { + // Without delay + setTimeout(function () { + this$1.difference += index - (index - 1); + this$1.indexSelected--; + this$1.key = this$1.getLastViewedIndex(this$1.stories[this$1.indexSelected]); + }); + } else { + this.key--; + this.stories[this.indexSelected].images[this.key].viewed = false; + } + this.reset(); + }, + autoPlay: function autoPlay() { + if (this.isAllStoriesEnd) { + this.onAllStoriesEnd(); + } else if (this.isCurrentAllImagesEnd) { + this.onCurrentAllImagesEnd(this.indexSelected); + } else { + this.onCurrentImageEnd(this.indexSelected); + } + this.reset(); + }, + play: function play() { + var this$1 = this; + + this.timer = new Date().getTime(); + this.progress = setInterval(function () { + // forward + var time = new Date().getTime(); + if (this$1.newDur > 0) { + this$1.percent = + this$1.pausePer + + Math.floor((100 * (time - this$1.timer)) / this$1.duration); + } else { + this$1.percent = Math.floor( + (100 * (time - this$1.timer)) / this$1.duration + ); + } + }, this.duration / 100); + if (this.newDur > 0) { + this.interval = setInterval(this.autoPlay, this.newDur); + } else { + this.interval = setInterval(this.autoPlay, this.duration); + } + }, + reset: function reset() { + this.percent = 0; + clearInterval(this.interval); + clearInterval(this.progress); + this.newDur = 0; + this.play(); + }, + pauseStory: function pauseStory(event) { + if (event) { + this.toggleVideo("pause", event); + } + this.isPaused = true; + this.pausePer = this.percent; + clearInterval(this.progress); + clearInterval(this.interval); + this.newDur = this.duration - (this.pausePer * this.duration) / 100; + }, + playStory: function playStory(event) { + if (event) { + this.toggleVideo("play", event); + } + this.isPaused = false; + this.play(); + }, + toggleVideo: function toggleVideo(type, event) { + var video = document.getElementById(event.target.id); + if (video) { + video[type](); + } + }, + stopVideo: function stopVideo(id) { + var video = document.getElementById(id); + if (video) { + video.pause(); + video.currentTime = 0; + } + }, + calculateTransform: function calculateTransform(index) { + if ( + this.indexSelected - index === -1 || + this.indexSelected - index === 1 + ) { + return 315 * (index + this.difference); + } + if (index > this.indexSelected) { + return (315 + 315 * (index + this.difference)) * 0.5; + } else { + return Math.abs((315 - 315 * (index + this.difference)) * 0.5) * -1; + } + }, + closeStories: function closeStories() { + this.$emit("closeStories"); + }, + }, + mounted: function mounted() { + this.play(); + this.selectSlide(this.currentIndex); + }, +}; + +function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { + if (typeof shadowMode !== 'boolean') { + createInjectorSSR = createInjector; + createInjector = shadowMode; + shadowMode = false; + } + // Vue.extend constructor export interop. + var options = typeof script === 'function' ? script.options : script; + // render functions + if (template && template.render) { + options.render = template.render; + options.staticRenderFns = template.staticRenderFns; + options._compiled = true; + // functional template + if (isFunctionalTemplate) { + options.functional = true; + } + } + // scopedId + if (scopeId) { + options._scopeId = scopeId; + } + var hook; + if (moduleIdentifier) { + // server build + hook = function (context) { + // 2.3 injection + context = + context || // cached call + (this.$vnode && this.$vnode.ssrContext) || // stateful + (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional + // 2.2 with runInNewContext: true + if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { + context = __VUE_SSR_CONTEXT__; + } + // inject component styles + if (style) { + style.call(this, createInjectorSSR(context)); + } + // register component module identifier for async chunk inference + if (context && context._registeredComponents) { + context._registeredComponents.add(moduleIdentifier); + } + }; + // used by ssr in case component is cached and beforeCreate + // never gets called + options._ssrRegister = hook; + } + else if (style) { + hook = shadowMode + ? function (context) { + style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); + } + : function (context) { + style.call(this, createInjector(context)); + }; + } + if (hook) { + if (options.functional) { + // register for functional component in vue file + var originalRender = options.render; + options.render = function renderWithStyleInjection(h, context) { + hook.call(context); + return originalRender(h, context); + }; + } + else { + // inject component registration as beforeCreate hook + var existing = options.beforeCreate; + options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; + } + } + return script; +} + +var isOldIE = typeof navigator !== 'undefined' && + /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase()); +function createInjector(context) { + return function (id, style) { return addStyle(id, style); }; +} +var HEAD; +var styles = {}; +function addStyle(id, css) { + var group = isOldIE ? css.media || 'default' : id; + var style = styles[group] || (styles[group] = { ids: new Set(), styles: [] }); + if (!style.ids.has(id)) { + style.ids.add(id); + var code = css.source; + if (css.map) { + // https://developer.chrome.com/devtools/docs/javascript-debugging + // this makes source maps inside style tags work properly in Chrome + code += '\n/*# sourceURL=' + css.map.sources[0] + ' */'; + // http://stackoverflow.com/a/26603875 + code += + '\n/*# sourceMappingURL=data:application/json;base64,' + + btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) + + ' */'; + } + if (!style.element) { + style.element = document.createElement('style'); + style.element.type = 'text/css'; + if (css.media) + { style.element.setAttribute('media', css.media); } + if (HEAD === undefined) { + HEAD = document.head || document.getElementsByTagName('head')[0]; + } + HEAD.appendChild(style.element); + } + if ('styleSheet' in style.element) { + style.styles.push(code); + style.element.styleSheet.cssText = style.styles + .filter(Boolean) + .join('\n'); + } + else { + var index = style.ids.size - 1; + var textNode = document.createTextNode(code); + var nodes = style.element.childNodes; + if (nodes[index]) + { style.element.removeChild(nodes[index]); } + if (nodes.length) + { style.element.insertBefore(textNode, nodes[index]); } + else + { style.element.appendChild(textNode); } + } + } +} + +/* script */ +var __vue_script__ = script; + +/* template */ +var __vue_render__ = function () { + var _vm = this; + var _h = _vm.$createElement; + var _c = _vm._self._c || _h; + return _c( + "div", + { staticClass: "stories-wrapper", attrs: { id: "storiesTemplateID" } }, + [ + _c("div", { staticClass: "close", on: { click: _vm.closeStories } }), + _vm._v(" "), + _c( + "div", + { + staticClass: "stories", + on: { + click: function ($event) { + if ($event.target !== $event.currentTarget) { + return null + } + return _vm.closeStories.apply(null, arguments) + }, + }, + }, + _vm._l(_vm.stories, function (story, index) { + return _c( + "div", + { + key: index, + staticClass: "story", + style: + index === _vm.indexSelected + ? "transform: translate(0px)" + : "transform: translate(" + + _vm.calculateTransform(index) + + "px) scale(0.3);cursor:pointer;", + on: { + click: function ($event) { + index !== _vm.indexSelected ? _vm.selectSlide(index) : ""; + }, + }, + }, + [ + _c( + "div", + { + staticClass: "story__source", + on: { + touchstart: function ($event) { + !_vm.isPaused + ? _vm.pauseStory($event) + : _vm.playStory($event); + }, + touchend: function ($event) { + _vm.isPaused + ? _vm.playStory($event) + : _vm.pauseStory($event); + }, + click: function ($event) { + _vm.isPaused + ? _vm.playStory($event) + : _vm.pauseStory($event); + }, + }, + }, + [ + _vm.getSrc(story, index).type === "video" + ? _c("video", { + attrs: { + id: _vm.getSrc(story, index).url, + src: _vm.getSrc(story, index).url, + autoplay: "", + }, + }) + : _c("img", { + staticClass: "img-style", + attrs: { src: _vm.getSrc(story, index).url, alt: "" }, + }), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { staticClass: "story__header" }, [ + _c( + "div", + { staticClass: "time" }, + _vm._l(story.images.length, function (elm, index) { + return _c( + "div", + { key: index, staticClass: "time__item" }, + [ + _c("div", { + staticClass: "time__fill", + style: + index === _vm.key + ? "width: " + _vm.percent + "%" + : _vm.key > index + ? "width:100%" + : "width:0%", + }) ] + ) + }), + 0 + ), + _vm._v(" "), + _c("div", { staticClass: "story__top" }, [ + _c("div", { staticClass: "user" }, [ + _c("div", { staticClass: "user__image" }, [ + _c("img", { + attrs: { src: story.picture, alt: "" }, + }) ]), + _vm._v(" "), + _c("div", { staticClass: "user__name" }, [ + _vm._v( + "\n " + + _vm._s(story.username) + + "\n " + ) ]) ]), + _vm._v(" "), + _c("div", { staticClass: "story__time" }, [ + _vm._v(_vm._s(story.time)) ]) ]) ]) + : _vm._e(), + _vm._v(" "), + _c( + "div", + { staticClass: "story__body" }, + [ + index !== _vm.indexSelected + ? _c("div", { staticClass: "user" }, [ + _c( + "div", + { + staticClass: "user__image", + style: + _vm.getNotViewedIndex(story) === -1 + ? "background: #FFFFFF" + : "", + }, + [ + _c("img", { + attrs: { src: story.picture, alt: "" }, + }) ] + ), + _vm._v(" "), + _c("div", { staticClass: "user__name" }, [ + _vm._v( + "\n " + + _vm._s(story.username) + + "\n " + ) ]) ]) + : _vm._e(), + _vm._v(" "), + _vm.showInnerContent && index === _vm.indexSelected + ? _vm._t("innerContent", null, { story: story }) + : _vm._e() ], + 2 + ) ] + ), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { + staticClass: "story__icon story__icon--prev", + on: { + click: function ($event) { + return _vm.prev(index) + }, + }, + }) + : _vm._e(), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { + staticClass: "story__icon story__icon--next", + on: { + click: function ($event) { + return _vm.next(index) + }, + }, + }) + : _vm._e(), + _vm._v(" "), + _vm.showOuterContent && index === _vm.indexSelected + ? _vm._t("outerContent", null, { story: story }) + : _vm._e() ], + 2 + ) + }), + 0 + ) ] + ) +}; +var __vue_staticRenderFns__ = []; +__vue_render__._withStripped = true; + + /* style */ + var __vue_inject_styles__ = function (inject) { + if (!inject) { return } + inject("data-v-af707b42_0", { source: "@charset \"UTF-8\";\n*[data-v-af707b42] {\n box-sizing: border-box;\n}\n.stories-wrapper[data-v-af707b42] {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(16, 16, 16, 0.98);\n font-family: sans-serif;\n}\n.stories[data-v-af707b42] {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.story[data-v-af707b42] {\n position: absolute;\n transition: transform 0.2s cubic-bezier(0.4, 0, 1, 1);\n}\n@media screen and (max-width: 768px) {\n.story[data-v-af707b42] {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n}\n.story__source[data-v-af707b42] {\n position: relative;\n border-radius: 16px;\n background: #000000;\n width: 414px;\n height: 751px;\n background-size: contain;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n.story__source[data-v-af707b42] {\n width: 100%;\n height: auto;\n flex: 1 1 auto;\n}\n}\n.story__source img[data-v-af707b42],\n.story__source video[data-v-af707b42] {\n width: 100%;\n height: auto;\n display: block;\n pointer-events: none;\n}\n.story__header[data-v-af707b42] {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding: 8px 11px;\n}\n.story__time[data-v-af707b42] {\n font-size: 16px;\n line-height: 20px;\n color: #ffffff;\n}\n.story__top[data-v-af707b42] {\n display: flex;\n align-items: center;\n}\n.story__body[data-v-af707b42] {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n}\n.story__body .user[data-v-af707b42] {\n position: absolute;\n bottom: 30px;\n left: 50%;\n transform: translateX(-50%);\n}\n@media screen and (max-width: 768px) {\n.story__body .user[data-v-af707b42] {\n display: none;\n}\n}\n.story__body .user__name[data-v-af707b42] {\n display: none;\n}\n.story__body .user__image[data-v-af707b42] {\n width: 140px;\n height: 140px;\n background: linear-gradient(180deg, #4c7cf6 0%, #6200c3 100%);\n margin: 0;\n padding: 5px;\n}\n.story__body .user__image img[data-v-af707b42] {\n border: 5px solid #ffffff;\n border-radius: 100%;\n}\n.story__icon[data-v-af707b42] {\n width: 24px;\n height: 24px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 50px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n cursor: pointer;\n}\n@media screen and (max-width: 768px) {\n.story__icon[data-v-af707b42] {\n top: 0;\n bottom: 0;\n transform: none;\n width: 100px;\n height: auto;\n background: none;\n}\n}\n.story__icon[data-v-af707b42]:before {\n content: \"\";\n position: absolute;\n top: 8px;\n left: 9px;\n border: solid #323232;\n border-width: 0 2px 2px 0;\n display: inline-block;\n padding: 3px;\n transform: rotate(135deg);\n border-radius: 1px;\n}\n@media screen and (max-width: 768px) {\n.story__icon[data-v-af707b42]:before {\n content: none;\n}\n}\n.story__icon--prev[data-v-af707b42] {\n left: -35px;\n}\n@media screen and (max-width: 768px) {\n.story__icon--prev[data-v-af707b42] {\n left: 0;\n}\n}\n.story__icon--next[data-v-af707b42] {\n right: -35px;\n transform: translateY(-50%) rotate(180deg);\n}\n@media screen and (max-width: 768px) {\n.story__icon--next[data-v-af707b42] {\n right: 0;\n transform: none;\n}\n}\n.user[data-v-af707b42] {\n display: flex;\n align-items: center;\n}\n.user__image[data-v-af707b42] {\n width: 32px;\n height: 32px;\n border-radius: 100px;\n overflow: hidden;\n margin-right: 8px;\n}\n.user__image img[data-v-af707b42] {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n}\n.user__name[data-v-af707b42] {\n font-weight: 600;\n font-size: 16px;\n line-height: 18px;\n color: #ffffff;\n margin-right: 5px;\n}\n.time[data-v-af707b42] {\n display: flex;\n margin-bottom: 10px;\n}\n.time__item[data-v-af707b42] {\n position: relative;\n width: 100%;\n height: 2px;\n margin-right: 4px;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n}\n.time__item[data-v-af707b42]:last-child {\n margin-right: 0;\n}\n.time__fill[data-v-af707b42] {\n position: absolute;\n width: 100%;\n background: #ffffff;\n height: 2px;\n}\n.close[data-v-af707b42] {\n position: absolute;\n width: 50px;\n height: 50px;\n top: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.close[data-v-af707b42]:after {\n content: \"×\";\n color: #ffffff;\n font-weight: 100;\n font-size: 35px;\n}\n@media screen and (min-width: 768px) {\n.img-style[data-v-af707b42] {\n max-height: 640px;\n}\n}\n@media screen and (max-width: 768px) {\n.img-style[data-v-af707b42] {\n max-height: 640px;\n}\n}\n\n/*# sourceMappingURL=Stories.vue.map */", map: {"version":3,"sources":["Stories.vue","/Users/mehmet/Desktop/a/vue-stories-instagram/src/components/Stories.vue"],"names":[],"mappings":"AAAA,gBAAgB;ACwVhB;EACA,sBAAA;ADtVA;ACyVA;EACA,eAAA;EACA,MAAA;EACA,QAAA;EACA,SAAA;EACA,OAAA;EACA,kCAAA;EACA,uBAAA;ADtVA;ACgWA;EACA,YAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;AD7VA;ACgWA;EACA,kBAAA;EACA,qDAAA;AD7VA;AC+VA;AAJA;IAKA,WAAA;IACA,YAAA;IACA,aAAA;IACA,sBAAA;AD5VE;AACF;AC8VA;EACA,kBAAA;EACA,mBAAA;EACA,mBAAA;EACA,YAAA;EACA,aAAA;EACA,wBAAA;EACA,aAAA;EACA,sBAAA;EACA,uBAAA;AD5VA;AC8VA;AAXA;IAYA,WAAA;IACA,YAAA;IACA,cAAA;AD3VE;AACF;AC6VA;;EAEA,WAAA;EACA,YAAA;EACA,cAAA;EACA,oBAAA;AD3VA;AC+VA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,iBAAA;AD7VA;ACgWA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;AD9VA;ACiWA;EACA,aAAA;EACA,mBAAA;AD/VA;ACkWA;EACA,kBAAA;EACA,SAAA;EACA,OAAA;EACA,QAAA;ADhWA;ACkWA;EACA,kBAAA;EACA,YAAA;EACA,SAAA;EACA,2BAAA;ADhWA;ACkWA;AANA;IAOA,aAAA;AD/VE;AACF;ACkWA;EACA,aAAA;ADhWA;ACmWA;EACA,YAAA;EACA,aAAA;EACA,6DAAA;EACA,SAAA;EACA,YAAA;ADjWA;ACmWA;EACA,yBAAA;EACA,mBAAA;ADjWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,oCAAA;EACA,mBAAA;EACA,kBAAA;EACA,QAAA;EACA,2BAAA;EACA,eAAA;ADpWA;ACsWA;AAVA;IAWA,MAAA;IACA,SAAA;IACA,eAAA;IACA,YAAA;IACA,YAAA;IACA,gBAAA;ADnWE;AACF;ACqWA;EACA,WAAA;EACA,kBAAA;EACA,QAAA;EACA,SAAA;EACA,qBAAA;EACA,yBAAA;EACA,qBAAA;EACA,YAAA;EACA,yBAAA;EACA,kBAAA;ADnWA;ACqWA;AAZA;IAaA,aAAA;ADlWE;AACF;ACqWA;EACA,WAAA;ADnWA;ACqWA;AAHA;IAIA,OAAA;ADlWE;AACF;ACqWA;EACA,YAAA;EACA,0CAAA;ADnWA;ACqWA;AAJA;IAKA,QAAA;IACA,eAAA;ADlWE;AACF;ACuWA;EACA,aAAA;EACA,mBAAA;ADpWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,oBAAA;EACA,gBAAA;EACA,iBAAA;ADpWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,cAAA;EACA,iBAAA;ADpWA;ACwWA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;EACA,iBAAA;ADtWA;AC0WA;EACA,aAAA;EACA,mBAAA;ADvWA;ACyWA;EACA,kBAAA;EACA,WAAA;EACA,WAAA;EACA,iBAAA;EACA,oCAAA;EACA,kBAAA;ADvWA;ACyWA;EACA,eAAA;ADvWA;AC2WA;EACA,kBAAA;EACA,WAAA;EACA,mBAAA;EACA,WAAA;ADzWA;AC6WA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,SAAA;EACA,WAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,eAAA;AD1WA;AC4WA;EACA,YAAA;EACA,cAAA;EACA,gBAAA;EACA,eAAA;AD1WA;AC6WA;AACA;IACA,iBAAA;AD1WE;AACF;AC4WA;AACA;IACA,iBAAA;AD1WE;AACF;;AAEA,sCAAsC","file":"Stories.vue","sourcesContent":["@charset \"UTF-8\";\n* {\n box-sizing: border-box;\n}\n\n.stories-wrapper {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(16, 16, 16, 0.98);\n font-family: sans-serif;\n}\n\n.stories {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.story {\n position: absolute;\n transition: transform 0.2s cubic-bezier(0.4, 0, 1, 1);\n}\n@media screen and (max-width: 768px) {\n .story {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n }\n}\n.story__source {\n position: relative;\n border-radius: 16px;\n background: #000000;\n width: 414px;\n height: 751px;\n background-size: contain;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n .story__source {\n width: 100%;\n height: auto;\n flex: 1 1 auto;\n }\n}\n.story__source img,\n.story__source video {\n width: 100%;\n height: auto;\n display: block;\n pointer-events: none;\n}\n.story__header {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding: 8px 11px;\n}\n.story__time {\n font-size: 16px;\n line-height: 20px;\n color: #ffffff;\n}\n.story__top {\n display: flex;\n align-items: center;\n}\n.story__body {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n}\n.story__body .user {\n position: absolute;\n bottom: 30px;\n left: 50%;\n transform: translateX(-50%);\n}\n@media screen and (max-width: 768px) {\n .story__body .user {\n display: none;\n }\n}\n.story__body .user__name {\n display: none;\n}\n.story__body .user__image {\n width: 140px;\n height: 140px;\n background: linear-gradient(180deg, #4c7cf6 0%, #6200c3 100%);\n margin: 0;\n padding: 5px;\n}\n.story__body .user__image img {\n border: 5px solid #ffffff;\n border-radius: 100%;\n}\n.story__icon {\n width: 24px;\n height: 24px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 50px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n cursor: pointer;\n}\n@media screen and (max-width: 768px) {\n .story__icon {\n top: 0;\n bottom: 0;\n transform: none;\n width: 100px;\n height: auto;\n background: none;\n }\n}\n.story__icon:before {\n content: \"\";\n position: absolute;\n top: 8px;\n left: 9px;\n border: solid #323232;\n border-width: 0 2px 2px 0;\n display: inline-block;\n padding: 3px;\n transform: rotate(135deg);\n border-radius: 1px;\n}\n@media screen and (max-width: 768px) {\n .story__icon:before {\n content: none;\n }\n}\n.story__icon--prev {\n left: -35px;\n}\n@media screen and (max-width: 768px) {\n .story__icon--prev {\n left: 0;\n }\n}\n.story__icon--next {\n right: -35px;\n transform: translateY(-50%) rotate(180deg);\n}\n@media screen and (max-width: 768px) {\n .story__icon--next {\n right: 0;\n transform: none;\n }\n}\n\n.user {\n display: flex;\n align-items: center;\n}\n.user__image {\n width: 32px;\n height: 32px;\n border-radius: 100px;\n overflow: hidden;\n margin-right: 8px;\n}\n.user__image img {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n}\n.user__name {\n font-weight: 600;\n font-size: 16px;\n line-height: 18px;\n color: #ffffff;\n margin-right: 5px;\n}\n\n.time {\n display: flex;\n margin-bottom: 10px;\n}\n.time__item {\n position: relative;\n width: 100%;\n height: 2px;\n margin-right: 4px;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n}\n.time__item:last-child {\n margin-right: 0;\n}\n.time__fill {\n position: absolute;\n width: 100%;\n background: #ffffff;\n height: 2px;\n}\n\n.close {\n position: absolute;\n width: 50px;\n height: 50px;\n top: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.close:after {\n content: \"×\";\n color: #ffffff;\n font-weight: 100;\n font-size: 35px;\n}\n\n@media screen and (min-width: 768px) {\n .img-style {\n max-height: 640px;\n }\n}\n@media screen and (max-width: 768px) {\n .img-style {\n max-height: 640px;\n }\n}\n\n/*# sourceMappingURL=Stories.vue.map */","\n \n \n \n \n \n \n \n \n \n \n index\n ? `width:100%`\n : `width:0%`\n \"\n >\n \n \n \n \n \n \n \n \n {{ story.username }}\n \n \n {{ story.time }}\n \n \n \n \n \n \n \n \n {{ story.username }}\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n"]}, media: undefined }); + + }; + /* scoped */ + var __vue_scope_id__ = "data-v-af707b42"; + /* module identifier */ + var __vue_module_identifier__ = undefined; + /* functional template */ + var __vue_is_functional_template__ = false; + /* style inject SSR */ + + /* style inject shadow dom */ + + + + var __vue_component__ = /*#__PURE__*/normalizeComponent( + { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ }, + __vue_inject_styles__, + __vue_script__, + __vue_scope_id__, + __vue_is_functional_template__, + __vue_module_identifier__, + false, + createInjector, + undefined, + undefined + ); + +function install(Vue) { + if (install.installed) { return; } + install.installed = true; + Vue.component('Stories', __vue_component__); +} + +var plugin = { + install: install +}; + + +var GlobalVue = null; +if (typeof window !== 'undefined') { + GlobalVue = window.Vue; +} else if (typeof global !== 'undefined') { + GlobalVue = global.Vue; +} +if (GlobalVue) { + GlobalVue.use(plugin); +} + +export default __vue_component__; +export { install }; diff --git a/dist/vue-stories-instagram.min.js b/dist/vue-stories-instagram.min.js new file mode 100644 index 0000000..5a8c5a4 --- /dev/null +++ b/dist/vue-stories-instagram.min.js @@ -0,0 +1,732 @@ +var Stories = (function (exports) { + 'use strict'; + + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + + var script = { + name: "Stories", + props: { + stories: { + type: Array, + required: true, + }, + duration: { + type: Number, + default: 3000, + }, + currentIndex: { + type: Number, + default: 0, + }, + showInnerContent: { + type: Boolean, + default: false, + }, + showOuterContent: { + type: Boolean, + default: false, + }, + }, + data: function () { return ({ + indexSelected: 0, + difference: 0, + key: 0, + percent: 0, + timer: 0, + progress: 0, + interval: 0, + isPaused: false, + newDur: 0, + pausePer: 0, + mobile: false, + }); }, + computed: { + isAllStoriesEnd: function isAllStoriesEnd() { + return ( + this.indexSelected >= this.stories.length - 1 && + this.isCurrentAllImagesEnd + ); + }, + isCurrentAllImagesEnd: function isCurrentAllImagesEnd() { + return this.key >= this.stories[this.indexSelected].images.length - 1; + }, + }, + mounted: function mounted() { + if (process.client) { + this.mobile = this.isMobile(); + } + }, + methods: { + isMobile: function isMobile() { + if ( + /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test( + navigator.userAgent + ) + ) { + return true; + } else { + return false; + } + }, + getSrc: function getSrc(story, index) { + var viewedIndex = this.getLastViewedIndex(story); + return index === this.indexSelected + ? { + url: story.images[this.key].url, + type: story.images[this.key].type, + } + : { + url: story.images[viewedIndex].url, + type: story.images[viewedIndex].type, + }; + }, + getNotViewedIndex: function getNotViewedIndex(story) { + return story.images.findIndex(function (item) { return !item.viewed; }); + }, + getLastViewedIndex: function getLastViewedIndex(story) { + var keyIndex = this.getNotViewedIndex(story); + var index = story.images.length - 1; + return keyIndex === -1 ? index : keyIndex; + }, + selectSlide: function selectSlide(index) { + this.isPaused = false; + this.difference += this.indexSelected - index; + this.stopVideo(this.stories[this.indexSelected].images[this.key].url); + this.indexSelected = index; + this.key = this.getLastViewedIndex(this.stories[this.indexSelected]); + this.reset(); + }, + onAllStoriesEnd: function onAllStoriesEnd() { + this.difference = 0; + this.indexSelected = 0; + this.key = 0; + this.$emit("allStoriesEnd"); + }, + onCurrentAllImagesEnd: function onCurrentAllImagesEnd(index) { + this.difference += index - (index + 1); + this.stopVideo(this.stories[this.indexSelected].images[this.key].url); + this.stories[index].images[this.key].viewed = true; + this.indexSelected++; + this.key = this.getLastViewedIndex(this.stories[this.indexSelected]); + this.$emit("сurrentAllImagesEnd", index); + }, + onCurrentImageEnd: function onCurrentImageEnd(index) { + this.stories[index].images[this.key].viewed = true; + this.$emit("сurrentImageEnd", this.key); + this.key++; + }, + next: function next(index) { + var this$1 = this; + + this.isPaused = false; + if (this.isAllStoriesEnd) { + this.onAllStoriesEnd(); + } else if (this.isCurrentAllImagesEnd) { + setTimeout(function () { + this$1.onCurrentAllImagesEnd(index); + }); + } else { + this.stories[this.indexSelected].images[this.key].viewed = true; + this.key++; + } + this.reset(); + }, + prev: function prev(index) { + var this$1 = this; + + this.isPaused = false; + if (this.indexSelected <= 0 && this.key <= 0) { + this.key = 0; + } else if (this.key <= 0) { + // Without delay + setTimeout(function () { + this$1.difference += index - (index - 1); + this$1.indexSelected--; + this$1.key = this$1.getLastViewedIndex(this$1.stories[this$1.indexSelected]); + }); + } else { + this.key--; + this.stories[this.indexSelected].images[this.key].viewed = false; + } + this.reset(); + }, + autoPlay: function autoPlay() { + if (this.isAllStoriesEnd) { + this.onAllStoriesEnd(); + } else if (this.isCurrentAllImagesEnd) { + this.onCurrentAllImagesEnd(this.indexSelected); + } else { + this.onCurrentImageEnd(this.indexSelected); + } + this.reset(); + }, + play: function play() { + var this$1 = this; + + this.timer = new Date().getTime(); + this.progress = setInterval(function () { + // forward + var time = new Date().getTime(); + if (this$1.newDur > 0) { + this$1.percent = + this$1.pausePer + + Math.floor((100 * (time - this$1.timer)) / this$1.duration); + } else { + this$1.percent = Math.floor( + (100 * (time - this$1.timer)) / this$1.duration + ); + } + }, this.duration / 100); + if (this.newDur > 0) { + this.interval = setInterval(this.autoPlay, this.newDur); + } else { + this.interval = setInterval(this.autoPlay, this.duration); + } + }, + reset: function reset() { + this.percent = 0; + clearInterval(this.interval); + clearInterval(this.progress); + this.newDur = 0; + this.play(); + }, + pauseStory: function pauseStory(event) { + if (event) { + this.toggleVideo("pause", event); + } + this.isPaused = true; + this.pausePer = this.percent; + clearInterval(this.progress); + clearInterval(this.interval); + this.newDur = this.duration - (this.pausePer * this.duration) / 100; + }, + playStory: function playStory(event) { + if (event) { + this.toggleVideo("play", event); + } + this.isPaused = false; + this.play(); + }, + toggleVideo: function toggleVideo(type, event) { + var video = document.getElementById(event.target.id); + if (video) { + video[type](); + } + }, + stopVideo: function stopVideo(id) { + var video = document.getElementById(id); + if (video) { + video.pause(); + video.currentTime = 0; + } + }, + calculateTransform: function calculateTransform(index) { + if ( + this.indexSelected - index === -1 || + this.indexSelected - index === 1 + ) { + return 315 * (index + this.difference); + } + if (index > this.indexSelected) { + return (315 + 315 * (index + this.difference)) * 0.5; + } else { + return Math.abs((315 - 315 * (index + this.difference)) * 0.5) * -1; + } + }, + closeStories: function closeStories() { + this.$emit("closeStories"); + }, + }, + mounted: function mounted() { + this.play(); + this.selectSlide(this.currentIndex); + }, + }; + + function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { + if (typeof shadowMode !== 'boolean') { + createInjectorSSR = createInjector; + createInjector = shadowMode; + shadowMode = false; + } + // Vue.extend constructor export interop. + var options = typeof script === 'function' ? script.options : script; + // render functions + if (template && template.render) { + options.render = template.render; + options.staticRenderFns = template.staticRenderFns; + options._compiled = true; + // functional template + if (isFunctionalTemplate) { + options.functional = true; + } + } + // scopedId + if (scopeId) { + options._scopeId = scopeId; + } + var hook; + if (moduleIdentifier) { + // server build + hook = function (context) { + // 2.3 injection + context = + context || // cached call + (this.$vnode && this.$vnode.ssrContext) || // stateful + (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional + // 2.2 with runInNewContext: true + if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { + context = __VUE_SSR_CONTEXT__; + } + // inject component styles + if (style) { + style.call(this, createInjectorSSR(context)); + } + // register component module identifier for async chunk inference + if (context && context._registeredComponents) { + context._registeredComponents.add(moduleIdentifier); + } + }; + // used by ssr in case component is cached and beforeCreate + // never gets called + options._ssrRegister = hook; + } + else if (style) { + hook = shadowMode + ? function (context) { + style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); + } + : function (context) { + style.call(this, createInjector(context)); + }; + } + if (hook) { + if (options.functional) { + // register for functional component in vue file + var originalRender = options.render; + options.render = function renderWithStyleInjection(h, context) { + hook.call(context); + return originalRender(h, context); + }; + } + else { + // inject component registration as beforeCreate hook + var existing = options.beforeCreate; + options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; + } + } + return script; + } + + var isOldIE = typeof navigator !== 'undefined' && + /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase()); + function createInjector(context) { + return function (id, style) { return addStyle(id, style); }; + } + var HEAD; + var styles = {}; + function addStyle(id, css) { + var group = isOldIE ? css.media || 'default' : id; + var style = styles[group] || (styles[group] = { ids: new Set(), styles: [] }); + if (!style.ids.has(id)) { + style.ids.add(id); + var code = css.source; + if (css.map) { + // https://developer.chrome.com/devtools/docs/javascript-debugging + // this makes source maps inside style tags work properly in Chrome + code += '\n/*# sourceURL=' + css.map.sources[0] + ' */'; + // http://stackoverflow.com/a/26603875 + code += + '\n/*# sourceMappingURL=data:application/json;base64,' + + btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) + + ' */'; + } + if (!style.element) { + style.element = document.createElement('style'); + style.element.type = 'text/css'; + if (css.media) + { style.element.setAttribute('media', css.media); } + if (HEAD === undefined) { + HEAD = document.head || document.getElementsByTagName('head')[0]; + } + HEAD.appendChild(style.element); + } + if ('styleSheet' in style.element) { + style.styles.push(code); + style.element.styleSheet.cssText = style.styles + .filter(Boolean) + .join('\n'); + } + else { + var index = style.ids.size - 1; + var textNode = document.createTextNode(code); + var nodes = style.element.childNodes; + if (nodes[index]) + { style.element.removeChild(nodes[index]); } + if (nodes.length) + { style.element.insertBefore(textNode, nodes[index]); } + else + { style.element.appendChild(textNode); } + } + } + } + + /* script */ + var __vue_script__ = script; + + /* template */ + var __vue_render__ = function () { + var _vm = this; + var _h = _vm.$createElement; + var _c = _vm._self._c || _h; + return _c( + "div", + { staticClass: "stories-wrapper", attrs: { id: "storiesTemplateID" } }, + [ + _c("div", { staticClass: "close", on: { click: _vm.closeStories } }), + _vm._v(" "), + _c( + "div", + { + staticClass: "stories", + on: { + click: function ($event) { + if ($event.target !== $event.currentTarget) { + return null + } + return _vm.closeStories.apply(null, arguments) + }, + }, + }, + _vm._l(_vm.stories, function (story, index) { + return _c( + "div", + { + key: index, + staticClass: "story", + style: + index === _vm.indexSelected + ? "transform: translate(0px)" + : "transform: translate(" + + _vm.calculateTransform(index) + + "px) scale(0.3);cursor:pointer;", + on: { + click: function ($event) { + index !== _vm.indexSelected ? _vm.selectSlide(index) : ""; + }, + }, + }, + [ + _c( + "div", + { + staticClass: "story__source", + on: { + touchstart: function ($event) { + !_vm.isPaused + ? _vm.pauseStory($event) + : _vm.playStory($event); + }, + touchend: function ($event) { + _vm.isPaused + ? _vm.playStory($event) + : _vm.pauseStory($event); + }, + click: function ($event) { + _vm.isPaused + ? _vm.playStory($event) + : _vm.pauseStory($event); + }, + }, + }, + [ + _vm.getSrc(story, index).type === "video" + ? _c("video", { + attrs: { + id: _vm.getSrc(story, index).url, + src: _vm.getSrc(story, index).url, + autoplay: "", + }, + }) + : _c("img", { + staticClass: "img-style", + attrs: { src: _vm.getSrc(story, index).url, alt: "" }, + }), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { staticClass: "story__header" }, [ + _c( + "div", + { staticClass: "time" }, + _vm._l(story.images.length, function (elm, index) { + return _c( + "div", + { key: index, staticClass: "time__item" }, + [ + _c("div", { + staticClass: "time__fill", + style: + index === _vm.key + ? "width: " + _vm.percent + "%" + : _vm.key > index + ? "width:100%" + : "width:0%", + }) ] + ) + }), + 0 + ), + _vm._v(" "), + _c("div", { staticClass: "story__top" }, [ + _c("div", { staticClass: "user" }, [ + _c("div", { staticClass: "user__image" }, [ + _c("img", { + attrs: { src: story.picture, alt: "" }, + }) ]), + _vm._v(" "), + _c("div", { staticClass: "user__name" }, [ + _vm._v( + "\n " + + _vm._s(story.username) + + "\n " + ) ]) ]), + _vm._v(" "), + _c("div", { staticClass: "story__time" }, [ + _vm._v(_vm._s(story.time)) ]) ]) ]) + : _vm._e(), + _vm._v(" "), + _c( + "div", + { staticClass: "story__body" }, + [ + index !== _vm.indexSelected + ? _c("div", { staticClass: "user" }, [ + _c( + "div", + { + staticClass: "user__image", + style: + _vm.getNotViewedIndex(story) === -1 + ? "background: #FFFFFF" + : "", + }, + [ + _c("img", { + attrs: { src: story.picture, alt: "" }, + }) ] + ), + _vm._v(" "), + _c("div", { staticClass: "user__name" }, [ + _vm._v( + "\n " + + _vm._s(story.username) + + "\n " + ) ]) ]) + : _vm._e(), + _vm._v(" "), + _vm.showInnerContent && index === _vm.indexSelected + ? _vm._t("innerContent", null, { story: story }) + : _vm._e() ], + 2 + ) ] + ), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { + staticClass: "story__icon story__icon--prev", + on: { + click: function ($event) { + return _vm.prev(index) + }, + }, + }) + : _vm._e(), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { + staticClass: "story__icon story__icon--next", + on: { + click: function ($event) { + return _vm.next(index) + }, + }, + }) + : _vm._e(), + _vm._v(" "), + _vm.showOuterContent && index === _vm.indexSelected + ? _vm._t("outerContent", null, { story: story }) + : _vm._e() ], + 2 + ) + }), + 0 + ) ] + ) + }; + var __vue_staticRenderFns__ = []; + __vue_render__._withStripped = true; + + /* style */ + var __vue_inject_styles__ = function (inject) { + if (!inject) { return } + inject("data-v-af707b42_0", { source: "@charset \"UTF-8\";\n*[data-v-af707b42] {\n box-sizing: border-box;\n}\n.stories-wrapper[data-v-af707b42] {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(16, 16, 16, 0.98);\n font-family: sans-serif;\n}\n.stories[data-v-af707b42] {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.story[data-v-af707b42] {\n position: absolute;\n transition: transform 0.2s cubic-bezier(0.4, 0, 1, 1);\n}\n@media screen and (max-width: 768px) {\n.story[data-v-af707b42] {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n}\n.story__source[data-v-af707b42] {\n position: relative;\n border-radius: 16px;\n background: #000000;\n width: 414px;\n height: 751px;\n background-size: contain;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n.story__source[data-v-af707b42] {\n width: 100%;\n height: auto;\n flex: 1 1 auto;\n}\n}\n.story__source img[data-v-af707b42],\n.story__source video[data-v-af707b42] {\n width: 100%;\n height: auto;\n display: block;\n pointer-events: none;\n}\n.story__header[data-v-af707b42] {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding: 8px 11px;\n}\n.story__time[data-v-af707b42] {\n font-size: 16px;\n line-height: 20px;\n color: #ffffff;\n}\n.story__top[data-v-af707b42] {\n display: flex;\n align-items: center;\n}\n.story__body[data-v-af707b42] {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n}\n.story__body .user[data-v-af707b42] {\n position: absolute;\n bottom: 30px;\n left: 50%;\n transform: translateX(-50%);\n}\n@media screen and (max-width: 768px) {\n.story__body .user[data-v-af707b42] {\n display: none;\n}\n}\n.story__body .user__name[data-v-af707b42] {\n display: none;\n}\n.story__body .user__image[data-v-af707b42] {\n width: 140px;\n height: 140px;\n background: linear-gradient(180deg, #4c7cf6 0%, #6200c3 100%);\n margin: 0;\n padding: 5px;\n}\n.story__body .user__image img[data-v-af707b42] {\n border: 5px solid #ffffff;\n border-radius: 100%;\n}\n.story__icon[data-v-af707b42] {\n width: 24px;\n height: 24px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 50px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n cursor: pointer;\n}\n@media screen and (max-width: 768px) {\n.story__icon[data-v-af707b42] {\n top: 0;\n bottom: 0;\n transform: none;\n width: 100px;\n height: auto;\n background: none;\n}\n}\n.story__icon[data-v-af707b42]:before {\n content: \"\";\n position: absolute;\n top: 8px;\n left: 9px;\n border: solid #323232;\n border-width: 0 2px 2px 0;\n display: inline-block;\n padding: 3px;\n transform: rotate(135deg);\n border-radius: 1px;\n}\n@media screen and (max-width: 768px) {\n.story__icon[data-v-af707b42]:before {\n content: none;\n}\n}\n.story__icon--prev[data-v-af707b42] {\n left: -35px;\n}\n@media screen and (max-width: 768px) {\n.story__icon--prev[data-v-af707b42] {\n left: 0;\n}\n}\n.story__icon--next[data-v-af707b42] {\n right: -35px;\n transform: translateY(-50%) rotate(180deg);\n}\n@media screen and (max-width: 768px) {\n.story__icon--next[data-v-af707b42] {\n right: 0;\n transform: none;\n}\n}\n.user[data-v-af707b42] {\n display: flex;\n align-items: center;\n}\n.user__image[data-v-af707b42] {\n width: 32px;\n height: 32px;\n border-radius: 100px;\n overflow: hidden;\n margin-right: 8px;\n}\n.user__image img[data-v-af707b42] {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n}\n.user__name[data-v-af707b42] {\n font-weight: 600;\n font-size: 16px;\n line-height: 18px;\n color: #ffffff;\n margin-right: 5px;\n}\n.time[data-v-af707b42] {\n display: flex;\n margin-bottom: 10px;\n}\n.time__item[data-v-af707b42] {\n position: relative;\n width: 100%;\n height: 2px;\n margin-right: 4px;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n}\n.time__item[data-v-af707b42]:last-child {\n margin-right: 0;\n}\n.time__fill[data-v-af707b42] {\n position: absolute;\n width: 100%;\n background: #ffffff;\n height: 2px;\n}\n.close[data-v-af707b42] {\n position: absolute;\n width: 50px;\n height: 50px;\n top: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.close[data-v-af707b42]:after {\n content: \"×\";\n color: #ffffff;\n font-weight: 100;\n font-size: 35px;\n}\n@media screen and (min-width: 768px) {\n.img-style[data-v-af707b42] {\n max-height: 640px;\n}\n}\n@media screen and (max-width: 768px) {\n.img-style[data-v-af707b42] {\n max-height: 640px;\n}\n}\n\n/*# sourceMappingURL=Stories.vue.map */", map: {"version":3,"sources":["Stories.vue","/Users/mehmet/Desktop/a/vue-stories-instagram/src/components/Stories.vue"],"names":[],"mappings":"AAAA,gBAAgB;ACwVhB;EACA,sBAAA;ADtVA;ACyVA;EACA,eAAA;EACA,MAAA;EACA,QAAA;EACA,SAAA;EACA,OAAA;EACA,kCAAA;EACA,uBAAA;ADtVA;ACgWA;EACA,YAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;AD7VA;ACgWA;EACA,kBAAA;EACA,qDAAA;AD7VA;AC+VA;AAJA;IAKA,WAAA;IACA,YAAA;IACA,aAAA;IACA,sBAAA;AD5VE;AACF;AC8VA;EACA,kBAAA;EACA,mBAAA;EACA,mBAAA;EACA,YAAA;EACA,aAAA;EACA,wBAAA;EACA,aAAA;EACA,sBAAA;EACA,uBAAA;AD5VA;AC8VA;AAXA;IAYA,WAAA;IACA,YAAA;IACA,cAAA;AD3VE;AACF;AC6VA;;EAEA,WAAA;EACA,YAAA;EACA,cAAA;EACA,oBAAA;AD3VA;AC+VA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,iBAAA;AD7VA;ACgWA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;AD9VA;ACiWA;EACA,aAAA;EACA,mBAAA;AD/VA;ACkWA;EACA,kBAAA;EACA,SAAA;EACA,OAAA;EACA,QAAA;ADhWA;ACkWA;EACA,kBAAA;EACA,YAAA;EACA,SAAA;EACA,2BAAA;ADhWA;ACkWA;AANA;IAOA,aAAA;AD/VE;AACF;ACkWA;EACA,aAAA;ADhWA;ACmWA;EACA,YAAA;EACA,aAAA;EACA,6DAAA;EACA,SAAA;EACA,YAAA;ADjWA;ACmWA;EACA,yBAAA;EACA,mBAAA;ADjWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,oCAAA;EACA,mBAAA;EACA,kBAAA;EACA,QAAA;EACA,2BAAA;EACA,eAAA;ADpWA;ACsWA;AAVA;IAWA,MAAA;IACA,SAAA;IACA,eAAA;IACA,YAAA;IACA,YAAA;IACA,gBAAA;ADnWE;AACF;ACqWA;EACA,WAAA;EACA,kBAAA;EACA,QAAA;EACA,SAAA;EACA,qBAAA;EACA,yBAAA;EACA,qBAAA;EACA,YAAA;EACA,yBAAA;EACA,kBAAA;ADnWA;ACqWA;AAZA;IAaA,aAAA;ADlWE;AACF;ACqWA;EACA,WAAA;ADnWA;ACqWA;AAHA;IAIA,OAAA;ADlWE;AACF;ACqWA;EACA,YAAA;EACA,0CAAA;ADnWA;ACqWA;AAJA;IAKA,QAAA;IACA,eAAA;ADlWE;AACF;ACuWA;EACA,aAAA;EACA,mBAAA;ADpWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,oBAAA;EACA,gBAAA;EACA,iBAAA;ADpWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,cAAA;EACA,iBAAA;ADpWA;ACwWA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;EACA,iBAAA;ADtWA;AC0WA;EACA,aAAA;EACA,mBAAA;ADvWA;ACyWA;EACA,kBAAA;EACA,WAAA;EACA,WAAA;EACA,iBAAA;EACA,oCAAA;EACA,kBAAA;ADvWA;ACyWA;EACA,eAAA;ADvWA;AC2WA;EACA,kBAAA;EACA,WAAA;EACA,mBAAA;EACA,WAAA;ADzWA;AC6WA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,SAAA;EACA,WAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,eAAA;AD1WA;AC4WA;EACA,YAAA;EACA,cAAA;EACA,gBAAA;EACA,eAAA;AD1WA;AC6WA;AACA;IACA,iBAAA;AD1WE;AACF;AC4WA;AACA;IACA,iBAAA;AD1WE;AACF;;AAEA,sCAAsC","file":"Stories.vue","sourcesContent":["@charset \"UTF-8\";\n* {\n box-sizing: border-box;\n}\n\n.stories-wrapper {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(16, 16, 16, 0.98);\n font-family: sans-serif;\n}\n\n.stories {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.story {\n position: absolute;\n transition: transform 0.2s cubic-bezier(0.4, 0, 1, 1);\n}\n@media screen and (max-width: 768px) {\n .story {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n }\n}\n.story__source {\n position: relative;\n border-radius: 16px;\n background: #000000;\n width: 414px;\n height: 751px;\n background-size: contain;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n .story__source {\n width: 100%;\n height: auto;\n flex: 1 1 auto;\n }\n}\n.story__source img,\n.story__source video {\n width: 100%;\n height: auto;\n display: block;\n pointer-events: none;\n}\n.story__header {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding: 8px 11px;\n}\n.story__time {\n font-size: 16px;\n line-height: 20px;\n color: #ffffff;\n}\n.story__top {\n display: flex;\n align-items: center;\n}\n.story__body {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n}\n.story__body .user {\n position: absolute;\n bottom: 30px;\n left: 50%;\n transform: translateX(-50%);\n}\n@media screen and (max-width: 768px) {\n .story__body .user {\n display: none;\n }\n}\n.story__body .user__name {\n display: none;\n}\n.story__body .user__image {\n width: 140px;\n height: 140px;\n background: linear-gradient(180deg, #4c7cf6 0%, #6200c3 100%);\n margin: 0;\n padding: 5px;\n}\n.story__body .user__image img {\n border: 5px solid #ffffff;\n border-radius: 100%;\n}\n.story__icon {\n width: 24px;\n height: 24px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 50px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n cursor: pointer;\n}\n@media screen and (max-width: 768px) {\n .story__icon {\n top: 0;\n bottom: 0;\n transform: none;\n width: 100px;\n height: auto;\n background: none;\n }\n}\n.story__icon:before {\n content: \"\";\n position: absolute;\n top: 8px;\n left: 9px;\n border: solid #323232;\n border-width: 0 2px 2px 0;\n display: inline-block;\n padding: 3px;\n transform: rotate(135deg);\n border-radius: 1px;\n}\n@media screen and (max-width: 768px) {\n .story__icon:before {\n content: none;\n }\n}\n.story__icon--prev {\n left: -35px;\n}\n@media screen and (max-width: 768px) {\n .story__icon--prev {\n left: 0;\n }\n}\n.story__icon--next {\n right: -35px;\n transform: translateY(-50%) rotate(180deg);\n}\n@media screen and (max-width: 768px) {\n .story__icon--next {\n right: 0;\n transform: none;\n }\n}\n\n.user {\n display: flex;\n align-items: center;\n}\n.user__image {\n width: 32px;\n height: 32px;\n border-radius: 100px;\n overflow: hidden;\n margin-right: 8px;\n}\n.user__image img {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n}\n.user__name {\n font-weight: 600;\n font-size: 16px;\n line-height: 18px;\n color: #ffffff;\n margin-right: 5px;\n}\n\n.time {\n display: flex;\n margin-bottom: 10px;\n}\n.time__item {\n position: relative;\n width: 100%;\n height: 2px;\n margin-right: 4px;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n}\n.time__item:last-child {\n margin-right: 0;\n}\n.time__fill {\n position: absolute;\n width: 100%;\n background: #ffffff;\n height: 2px;\n}\n\n.close {\n position: absolute;\n width: 50px;\n height: 50px;\n top: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.close:after {\n content: \"×\";\n color: #ffffff;\n font-weight: 100;\n font-size: 35px;\n}\n\n@media screen and (min-width: 768px) {\n .img-style {\n max-height: 640px;\n }\n}\n@media screen and (max-width: 768px) {\n .img-style {\n max-height: 640px;\n }\n}\n\n/*# sourceMappingURL=Stories.vue.map */","\n \n \n \n \n \n \n \n \n \n \n index\n ? `width:100%`\n : `width:0%`\n \"\n >\n \n \n \n \n \n \n \n \n {{ story.username }}\n \n \n {{ story.time }}\n \n \n \n \n \n \n \n \n {{ story.username }}\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n"]}, media: undefined }); + + }; + /* scoped */ + var __vue_scope_id__ = "data-v-af707b42"; + /* module identifier */ + var __vue_module_identifier__ = undefined; + /* functional template */ + var __vue_is_functional_template__ = false; + /* style inject SSR */ + + /* style inject shadow dom */ + + + + var __vue_component__ = /*#__PURE__*/normalizeComponent( + { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ }, + __vue_inject_styles__, + __vue_script__, + __vue_scope_id__, + __vue_is_functional_template__, + __vue_module_identifier__, + false, + createInjector, + undefined, + undefined + ); + + function install(Vue) { + if (install.installed) { return; } + install.installed = true; + Vue.component('Stories', __vue_component__); + } + + var plugin = { + install: install + }; + + + var GlobalVue = null; + if (typeof window !== 'undefined') { + GlobalVue = window.Vue; + } else if (typeof global !== 'undefined') { + GlobalVue = global.Vue; + } + if (GlobalVue) { + GlobalVue.use(plugin); + } + + exports.default = __vue_component__; + exports.install = install; + + return exports; + +}({})); diff --git a/dist/vue-stories-instagram.umd.js b/dist/vue-stories-instagram.umd.js new file mode 100644 index 0000000..aa8fbec --- /dev/null +++ b/dist/vue-stories-instagram.umd.js @@ -0,0 +1,735 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : + typeof define === 'function' && define.amd ? define(['exports'], factory) : + (global = global || self, factory(global.Stories = {})); +}(this, (function (exports) { 'use strict'; + + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + // + + var script = { + name: "Stories", + props: { + stories: { + type: Array, + required: true, + }, + duration: { + type: Number, + default: 3000, + }, + currentIndex: { + type: Number, + default: 0, + }, + showInnerContent: { + type: Boolean, + default: false, + }, + showOuterContent: { + type: Boolean, + default: false, + }, + }, + data: function () { return ({ + indexSelected: 0, + difference: 0, + key: 0, + percent: 0, + timer: 0, + progress: 0, + interval: 0, + isPaused: false, + newDur: 0, + pausePer: 0, + mobile: false, + }); }, + computed: { + isAllStoriesEnd: function isAllStoriesEnd() { + return ( + this.indexSelected >= this.stories.length - 1 && + this.isCurrentAllImagesEnd + ); + }, + isCurrentAllImagesEnd: function isCurrentAllImagesEnd() { + return this.key >= this.stories[this.indexSelected].images.length - 1; + }, + }, + mounted: function mounted() { + if (process.client) { + this.mobile = this.isMobile(); + } + }, + methods: { + isMobile: function isMobile() { + if ( + /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test( + navigator.userAgent + ) + ) { + return true; + } else { + return false; + } + }, + getSrc: function getSrc(story, index) { + var viewedIndex = this.getLastViewedIndex(story); + return index === this.indexSelected + ? { + url: story.images[this.key].url, + type: story.images[this.key].type, + } + : { + url: story.images[viewedIndex].url, + type: story.images[viewedIndex].type, + }; + }, + getNotViewedIndex: function getNotViewedIndex(story) { + return story.images.findIndex(function (item) { return !item.viewed; }); + }, + getLastViewedIndex: function getLastViewedIndex(story) { + var keyIndex = this.getNotViewedIndex(story); + var index = story.images.length - 1; + return keyIndex === -1 ? index : keyIndex; + }, + selectSlide: function selectSlide(index) { + this.isPaused = false; + this.difference += this.indexSelected - index; + this.stopVideo(this.stories[this.indexSelected].images[this.key].url); + this.indexSelected = index; + this.key = this.getLastViewedIndex(this.stories[this.indexSelected]); + this.reset(); + }, + onAllStoriesEnd: function onAllStoriesEnd() { + this.difference = 0; + this.indexSelected = 0; + this.key = 0; + this.$emit("allStoriesEnd"); + }, + onCurrentAllImagesEnd: function onCurrentAllImagesEnd(index) { + this.difference += index - (index + 1); + this.stopVideo(this.stories[this.indexSelected].images[this.key].url); + this.stories[index].images[this.key].viewed = true; + this.indexSelected++; + this.key = this.getLastViewedIndex(this.stories[this.indexSelected]); + this.$emit("сurrentAllImagesEnd", index); + }, + onCurrentImageEnd: function onCurrentImageEnd(index) { + this.stories[index].images[this.key].viewed = true; + this.$emit("сurrentImageEnd", this.key); + this.key++; + }, + next: function next(index) { + var this$1 = this; + + this.isPaused = false; + if (this.isAllStoriesEnd) { + this.onAllStoriesEnd(); + } else if (this.isCurrentAllImagesEnd) { + setTimeout(function () { + this$1.onCurrentAllImagesEnd(index); + }); + } else { + this.stories[this.indexSelected].images[this.key].viewed = true; + this.key++; + } + this.reset(); + }, + prev: function prev(index) { + var this$1 = this; + + this.isPaused = false; + if (this.indexSelected <= 0 && this.key <= 0) { + this.key = 0; + } else if (this.key <= 0) { + // Without delay + setTimeout(function () { + this$1.difference += index - (index - 1); + this$1.indexSelected--; + this$1.key = this$1.getLastViewedIndex(this$1.stories[this$1.indexSelected]); + }); + } else { + this.key--; + this.stories[this.indexSelected].images[this.key].viewed = false; + } + this.reset(); + }, + autoPlay: function autoPlay() { + if (this.isAllStoriesEnd) { + this.onAllStoriesEnd(); + } else if (this.isCurrentAllImagesEnd) { + this.onCurrentAllImagesEnd(this.indexSelected); + } else { + this.onCurrentImageEnd(this.indexSelected); + } + this.reset(); + }, + play: function play() { + var this$1 = this; + + this.timer = new Date().getTime(); + this.progress = setInterval(function () { + // forward + var time = new Date().getTime(); + if (this$1.newDur > 0) { + this$1.percent = + this$1.pausePer + + Math.floor((100 * (time - this$1.timer)) / this$1.duration); + } else { + this$1.percent = Math.floor( + (100 * (time - this$1.timer)) / this$1.duration + ); + } + }, this.duration / 100); + if (this.newDur > 0) { + this.interval = setInterval(this.autoPlay, this.newDur); + } else { + this.interval = setInterval(this.autoPlay, this.duration); + } + }, + reset: function reset() { + this.percent = 0; + clearInterval(this.interval); + clearInterval(this.progress); + this.newDur = 0; + this.play(); + }, + pauseStory: function pauseStory(event) { + if (event) { + this.toggleVideo("pause", event); + } + this.isPaused = true; + this.pausePer = this.percent; + clearInterval(this.progress); + clearInterval(this.interval); + this.newDur = this.duration - (this.pausePer * this.duration) / 100; + }, + playStory: function playStory(event) { + if (event) { + this.toggleVideo("play", event); + } + this.isPaused = false; + this.play(); + }, + toggleVideo: function toggleVideo(type, event) { + var video = document.getElementById(event.target.id); + if (video) { + video[type](); + } + }, + stopVideo: function stopVideo(id) { + var video = document.getElementById(id); + if (video) { + video.pause(); + video.currentTime = 0; + } + }, + calculateTransform: function calculateTransform(index) { + if ( + this.indexSelected - index === -1 || + this.indexSelected - index === 1 + ) { + return 315 * (index + this.difference); + } + if (index > this.indexSelected) { + return (315 + 315 * (index + this.difference)) * 0.5; + } else { + return Math.abs((315 - 315 * (index + this.difference)) * 0.5) * -1; + } + }, + closeStories: function closeStories() { + this.$emit("closeStories"); + }, + }, + mounted: function mounted() { + this.play(); + this.selectSlide(this.currentIndex); + }, + }; + + function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) { + if (typeof shadowMode !== 'boolean') { + createInjectorSSR = createInjector; + createInjector = shadowMode; + shadowMode = false; + } + // Vue.extend constructor export interop. + var options = typeof script === 'function' ? script.options : script; + // render functions + if (template && template.render) { + options.render = template.render; + options.staticRenderFns = template.staticRenderFns; + options._compiled = true; + // functional template + if (isFunctionalTemplate) { + options.functional = true; + } + } + // scopedId + if (scopeId) { + options._scopeId = scopeId; + } + var hook; + if (moduleIdentifier) { + // server build + hook = function (context) { + // 2.3 injection + context = + context || // cached call + (this.$vnode && this.$vnode.ssrContext) || // stateful + (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional + // 2.2 with runInNewContext: true + if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { + context = __VUE_SSR_CONTEXT__; + } + // inject component styles + if (style) { + style.call(this, createInjectorSSR(context)); + } + // register component module identifier for async chunk inference + if (context && context._registeredComponents) { + context._registeredComponents.add(moduleIdentifier); + } + }; + // used by ssr in case component is cached and beforeCreate + // never gets called + options._ssrRegister = hook; + } + else if (style) { + hook = shadowMode + ? function (context) { + style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot)); + } + : function (context) { + style.call(this, createInjector(context)); + }; + } + if (hook) { + if (options.functional) { + // register for functional component in vue file + var originalRender = options.render; + options.render = function renderWithStyleInjection(h, context) { + hook.call(context); + return originalRender(h, context); + }; + } + else { + // inject component registration as beforeCreate hook + var existing = options.beforeCreate; + options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; + } + } + return script; + } + + var isOldIE = typeof navigator !== 'undefined' && + /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase()); + function createInjector(context) { + return function (id, style) { return addStyle(id, style); }; + } + var HEAD; + var styles = {}; + function addStyle(id, css) { + var group = isOldIE ? css.media || 'default' : id; + var style = styles[group] || (styles[group] = { ids: new Set(), styles: [] }); + if (!style.ids.has(id)) { + style.ids.add(id); + var code = css.source; + if (css.map) { + // https://developer.chrome.com/devtools/docs/javascript-debugging + // this makes source maps inside style tags work properly in Chrome + code += '\n/*# sourceURL=' + css.map.sources[0] + ' */'; + // http://stackoverflow.com/a/26603875 + code += + '\n/*# sourceMappingURL=data:application/json;base64,' + + btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) + + ' */'; + } + if (!style.element) { + style.element = document.createElement('style'); + style.element.type = 'text/css'; + if (css.media) + { style.element.setAttribute('media', css.media); } + if (HEAD === undefined) { + HEAD = document.head || document.getElementsByTagName('head')[0]; + } + HEAD.appendChild(style.element); + } + if ('styleSheet' in style.element) { + style.styles.push(code); + style.element.styleSheet.cssText = style.styles + .filter(Boolean) + .join('\n'); + } + else { + var index = style.ids.size - 1; + var textNode = document.createTextNode(code); + var nodes = style.element.childNodes; + if (nodes[index]) + { style.element.removeChild(nodes[index]); } + if (nodes.length) + { style.element.insertBefore(textNode, nodes[index]); } + else + { style.element.appendChild(textNode); } + } + } + } + + /* script */ + var __vue_script__ = script; + + /* template */ + var __vue_render__ = function () { + var _vm = this; + var _h = _vm.$createElement; + var _c = _vm._self._c || _h; + return _c( + "div", + { staticClass: "stories-wrapper", attrs: { id: "storiesTemplateID" } }, + [ + _c("div", { staticClass: "close", on: { click: _vm.closeStories } }), + _vm._v(" "), + _c( + "div", + { + staticClass: "stories", + on: { + click: function ($event) { + if ($event.target !== $event.currentTarget) { + return null + } + return _vm.closeStories.apply(null, arguments) + }, + }, + }, + _vm._l(_vm.stories, function (story, index) { + return _c( + "div", + { + key: index, + staticClass: "story", + style: + index === _vm.indexSelected + ? "transform: translate(0px)" + : "transform: translate(" + + _vm.calculateTransform(index) + + "px) scale(0.3);cursor:pointer;", + on: { + click: function ($event) { + index !== _vm.indexSelected ? _vm.selectSlide(index) : ""; + }, + }, + }, + [ + _c( + "div", + { + staticClass: "story__source", + on: { + touchstart: function ($event) { + !_vm.isPaused + ? _vm.pauseStory($event) + : _vm.playStory($event); + }, + touchend: function ($event) { + _vm.isPaused + ? _vm.playStory($event) + : _vm.pauseStory($event); + }, + click: function ($event) { + _vm.isPaused + ? _vm.playStory($event) + : _vm.pauseStory($event); + }, + }, + }, + [ + _vm.getSrc(story, index).type === "video" + ? _c("video", { + attrs: { + id: _vm.getSrc(story, index).url, + src: _vm.getSrc(story, index).url, + autoplay: "", + }, + }) + : _c("img", { + staticClass: "img-style", + attrs: { src: _vm.getSrc(story, index).url, alt: "" }, + }), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { staticClass: "story__header" }, [ + _c( + "div", + { staticClass: "time" }, + _vm._l(story.images.length, function (elm, index) { + return _c( + "div", + { key: index, staticClass: "time__item" }, + [ + _c("div", { + staticClass: "time__fill", + style: + index === _vm.key + ? "width: " + _vm.percent + "%" + : _vm.key > index + ? "width:100%" + : "width:0%", + }) ] + ) + }), + 0 + ), + _vm._v(" "), + _c("div", { staticClass: "story__top" }, [ + _c("div", { staticClass: "user" }, [ + _c("div", { staticClass: "user__image" }, [ + _c("img", { + attrs: { src: story.picture, alt: "" }, + }) ]), + _vm._v(" "), + _c("div", { staticClass: "user__name" }, [ + _vm._v( + "\n " + + _vm._s(story.username) + + "\n " + ) ]) ]), + _vm._v(" "), + _c("div", { staticClass: "story__time" }, [ + _vm._v(_vm._s(story.time)) ]) ]) ]) + : _vm._e(), + _vm._v(" "), + _c( + "div", + { staticClass: "story__body" }, + [ + index !== _vm.indexSelected + ? _c("div", { staticClass: "user" }, [ + _c( + "div", + { + staticClass: "user__image", + style: + _vm.getNotViewedIndex(story) === -1 + ? "background: #FFFFFF" + : "", + }, + [ + _c("img", { + attrs: { src: story.picture, alt: "" }, + }) ] + ), + _vm._v(" "), + _c("div", { staticClass: "user__name" }, [ + _vm._v( + "\n " + + _vm._s(story.username) + + "\n " + ) ]) ]) + : _vm._e(), + _vm._v(" "), + _vm.showInnerContent && index === _vm.indexSelected + ? _vm._t("innerContent", null, { story: story }) + : _vm._e() ], + 2 + ) ] + ), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { + staticClass: "story__icon story__icon--prev", + on: { + click: function ($event) { + return _vm.prev(index) + }, + }, + }) + : _vm._e(), + _vm._v(" "), + index === _vm.indexSelected + ? _c("div", { + staticClass: "story__icon story__icon--next", + on: { + click: function ($event) { + return _vm.next(index) + }, + }, + }) + : _vm._e(), + _vm._v(" "), + _vm.showOuterContent && index === _vm.indexSelected + ? _vm._t("outerContent", null, { story: story }) + : _vm._e() ], + 2 + ) + }), + 0 + ) ] + ) + }; + var __vue_staticRenderFns__ = []; + __vue_render__._withStripped = true; + + /* style */ + var __vue_inject_styles__ = function (inject) { + if (!inject) { return } + inject("data-v-af707b42_0", { source: "@charset \"UTF-8\";\n*[data-v-af707b42] {\n box-sizing: border-box;\n}\n.stories-wrapper[data-v-af707b42] {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(16, 16, 16, 0.98);\n font-family: sans-serif;\n}\n.stories[data-v-af707b42] {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.story[data-v-af707b42] {\n position: absolute;\n transition: transform 0.2s cubic-bezier(0.4, 0, 1, 1);\n}\n@media screen and (max-width: 768px) {\n.story[data-v-af707b42] {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n}\n.story__source[data-v-af707b42] {\n position: relative;\n border-radius: 16px;\n background: #000000;\n width: 414px;\n height: 751px;\n background-size: contain;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n.story__source[data-v-af707b42] {\n width: 100%;\n height: auto;\n flex: 1 1 auto;\n}\n}\n.story__source img[data-v-af707b42],\n.story__source video[data-v-af707b42] {\n width: 100%;\n height: auto;\n display: block;\n pointer-events: none;\n}\n.story__header[data-v-af707b42] {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding: 8px 11px;\n}\n.story__time[data-v-af707b42] {\n font-size: 16px;\n line-height: 20px;\n color: #ffffff;\n}\n.story__top[data-v-af707b42] {\n display: flex;\n align-items: center;\n}\n.story__body[data-v-af707b42] {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n}\n.story__body .user[data-v-af707b42] {\n position: absolute;\n bottom: 30px;\n left: 50%;\n transform: translateX(-50%);\n}\n@media screen and (max-width: 768px) {\n.story__body .user[data-v-af707b42] {\n display: none;\n}\n}\n.story__body .user__name[data-v-af707b42] {\n display: none;\n}\n.story__body .user__image[data-v-af707b42] {\n width: 140px;\n height: 140px;\n background: linear-gradient(180deg, #4c7cf6 0%, #6200c3 100%);\n margin: 0;\n padding: 5px;\n}\n.story__body .user__image img[data-v-af707b42] {\n border: 5px solid #ffffff;\n border-radius: 100%;\n}\n.story__icon[data-v-af707b42] {\n width: 24px;\n height: 24px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 50px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n cursor: pointer;\n}\n@media screen and (max-width: 768px) {\n.story__icon[data-v-af707b42] {\n top: 0;\n bottom: 0;\n transform: none;\n width: 100px;\n height: auto;\n background: none;\n}\n}\n.story__icon[data-v-af707b42]:before {\n content: \"\";\n position: absolute;\n top: 8px;\n left: 9px;\n border: solid #323232;\n border-width: 0 2px 2px 0;\n display: inline-block;\n padding: 3px;\n transform: rotate(135deg);\n border-radius: 1px;\n}\n@media screen and (max-width: 768px) {\n.story__icon[data-v-af707b42]:before {\n content: none;\n}\n}\n.story__icon--prev[data-v-af707b42] {\n left: -35px;\n}\n@media screen and (max-width: 768px) {\n.story__icon--prev[data-v-af707b42] {\n left: 0;\n}\n}\n.story__icon--next[data-v-af707b42] {\n right: -35px;\n transform: translateY(-50%) rotate(180deg);\n}\n@media screen and (max-width: 768px) {\n.story__icon--next[data-v-af707b42] {\n right: 0;\n transform: none;\n}\n}\n.user[data-v-af707b42] {\n display: flex;\n align-items: center;\n}\n.user__image[data-v-af707b42] {\n width: 32px;\n height: 32px;\n border-radius: 100px;\n overflow: hidden;\n margin-right: 8px;\n}\n.user__image img[data-v-af707b42] {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n}\n.user__name[data-v-af707b42] {\n font-weight: 600;\n font-size: 16px;\n line-height: 18px;\n color: #ffffff;\n margin-right: 5px;\n}\n.time[data-v-af707b42] {\n display: flex;\n margin-bottom: 10px;\n}\n.time__item[data-v-af707b42] {\n position: relative;\n width: 100%;\n height: 2px;\n margin-right: 4px;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n}\n.time__item[data-v-af707b42]:last-child {\n margin-right: 0;\n}\n.time__fill[data-v-af707b42] {\n position: absolute;\n width: 100%;\n background: #ffffff;\n height: 2px;\n}\n.close[data-v-af707b42] {\n position: absolute;\n width: 50px;\n height: 50px;\n top: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.close[data-v-af707b42]:after {\n content: \"×\";\n color: #ffffff;\n font-weight: 100;\n font-size: 35px;\n}\n@media screen and (min-width: 768px) {\n.img-style[data-v-af707b42] {\n max-height: 640px;\n}\n}\n@media screen and (max-width: 768px) {\n.img-style[data-v-af707b42] {\n max-height: 640px;\n}\n}\n\n/*# sourceMappingURL=Stories.vue.map */", map: {"version":3,"sources":["Stories.vue","/Users/mehmet/Desktop/a/vue-stories-instagram/src/components/Stories.vue"],"names":[],"mappings":"AAAA,gBAAgB;ACwVhB;EACA,sBAAA;ADtVA;ACyVA;EACA,eAAA;EACA,MAAA;EACA,QAAA;EACA,SAAA;EACA,OAAA;EACA,kCAAA;EACA,uBAAA;ADtVA;ACgWA;EACA,YAAA;EACA,aAAA;EACA,uBAAA;EACA,mBAAA;AD7VA;ACgWA;EACA,kBAAA;EACA,qDAAA;AD7VA;AC+VA;AAJA;IAKA,WAAA;IACA,YAAA;IACA,aAAA;IACA,sBAAA;AD5VE;AACF;AC8VA;EACA,kBAAA;EACA,mBAAA;EACA,mBAAA;EACA,YAAA;EACA,aAAA;EACA,wBAAA;EACA,aAAA;EACA,sBAAA;EACA,uBAAA;AD5VA;AC8VA;AAXA;IAYA,WAAA;IACA,YAAA;IACA,cAAA;AD3VE;AACF;AC6VA;;EAEA,WAAA;EACA,YAAA;EACA,cAAA;EACA,oBAAA;AD3VA;AC+VA;EACA,kBAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,iBAAA;AD7VA;ACgWA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;AD9VA;ACiWA;EACA,aAAA;EACA,mBAAA;AD/VA;ACkWA;EACA,kBAAA;EACA,SAAA;EACA,OAAA;EACA,QAAA;ADhWA;ACkWA;EACA,kBAAA;EACA,YAAA;EACA,SAAA;EACA,2BAAA;ADhWA;ACkWA;AANA;IAOA,aAAA;AD/VE;AACF;ACkWA;EACA,aAAA;ADhWA;ACmWA;EACA,YAAA;EACA,aAAA;EACA,6DAAA;EACA,SAAA;EACA,YAAA;ADjWA;ACmWA;EACA,yBAAA;EACA,mBAAA;ADjWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,oCAAA;EACA,mBAAA;EACA,kBAAA;EACA,QAAA;EACA,2BAAA;EACA,eAAA;ADpWA;ACsWA;AAVA;IAWA,MAAA;IACA,SAAA;IACA,eAAA;IACA,YAAA;IACA,YAAA;IACA,gBAAA;ADnWE;AACF;ACqWA;EACA,WAAA;EACA,kBAAA;EACA,QAAA;EACA,SAAA;EACA,qBAAA;EACA,yBAAA;EACA,qBAAA;EACA,YAAA;EACA,yBAAA;EACA,kBAAA;ADnWA;ACqWA;AAZA;IAaA,aAAA;ADlWE;AACF;ACqWA;EACA,WAAA;ADnWA;ACqWA;AAHA;IAIA,OAAA;ADlWE;AACF;ACqWA;EACA,YAAA;EACA,0CAAA;ADnWA;ACqWA;AAJA;IAKA,QAAA;IACA,eAAA;ADlWE;AACF;ACuWA;EACA,aAAA;EACA,mBAAA;ADpWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,oBAAA;EACA,gBAAA;EACA,iBAAA;ADpWA;ACsWA;EACA,WAAA;EACA,YAAA;EACA,cAAA;EACA,iBAAA;ADpWA;ACwWA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,cAAA;EACA,iBAAA;ADtWA;AC0WA;EACA,aAAA;EACA,mBAAA;ADvWA;ACyWA;EACA,kBAAA;EACA,WAAA;EACA,WAAA;EACA,iBAAA;EACA,oCAAA;EACA,kBAAA;ADvWA;ACyWA;EACA,eAAA;ADvWA;AC2WA;EACA,kBAAA;EACA,WAAA;EACA,mBAAA;EACA,WAAA;ADzWA;AC6WA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,SAAA;EACA,WAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;EACA,eAAA;AD1WA;AC4WA;EACA,YAAA;EACA,cAAA;EACA,gBAAA;EACA,eAAA;AD1WA;AC6WA;AACA;IACA,iBAAA;AD1WE;AACF;AC4WA;AACA;IACA,iBAAA;AD1WE;AACF;;AAEA,sCAAsC","file":"Stories.vue","sourcesContent":["@charset \"UTF-8\";\n* {\n box-sizing: border-box;\n}\n\n.stories-wrapper {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(16, 16, 16, 0.98);\n font-family: sans-serif;\n}\n\n.stories {\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.story {\n position: absolute;\n transition: transform 0.2s cubic-bezier(0.4, 0, 1, 1);\n}\n@media screen and (max-width: 768px) {\n .story {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n }\n}\n.story__source {\n position: relative;\n border-radius: 16px;\n background: #000000;\n width: 414px;\n height: 751px;\n background-size: contain;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n@media screen and (max-width: 768px) {\n .story__source {\n width: 100%;\n height: auto;\n flex: 1 1 auto;\n }\n}\n.story__source img,\n.story__source video {\n width: 100%;\n height: auto;\n display: block;\n pointer-events: none;\n}\n.story__header {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding: 8px 11px;\n}\n.story__time {\n font-size: 16px;\n line-height: 20px;\n color: #ffffff;\n}\n.story__top {\n display: flex;\n align-items: center;\n}\n.story__body {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n}\n.story__body .user {\n position: absolute;\n bottom: 30px;\n left: 50%;\n transform: translateX(-50%);\n}\n@media screen and (max-width: 768px) {\n .story__body .user {\n display: none;\n }\n}\n.story__body .user__name {\n display: none;\n}\n.story__body .user__image {\n width: 140px;\n height: 140px;\n background: linear-gradient(180deg, #4c7cf6 0%, #6200c3 100%);\n margin: 0;\n padding: 5px;\n}\n.story__body .user__image img {\n border: 5px solid #ffffff;\n border-radius: 100%;\n}\n.story__icon {\n width: 24px;\n height: 24px;\n background: rgba(255, 255, 255, 0.8);\n border-radius: 50px;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n cursor: pointer;\n}\n@media screen and (max-width: 768px) {\n .story__icon {\n top: 0;\n bottom: 0;\n transform: none;\n width: 100px;\n height: auto;\n background: none;\n }\n}\n.story__icon:before {\n content: \"\";\n position: absolute;\n top: 8px;\n left: 9px;\n border: solid #323232;\n border-width: 0 2px 2px 0;\n display: inline-block;\n padding: 3px;\n transform: rotate(135deg);\n border-radius: 1px;\n}\n@media screen and (max-width: 768px) {\n .story__icon:before {\n content: none;\n }\n}\n.story__icon--prev {\n left: -35px;\n}\n@media screen and (max-width: 768px) {\n .story__icon--prev {\n left: 0;\n }\n}\n.story__icon--next {\n right: -35px;\n transform: translateY(-50%) rotate(180deg);\n}\n@media screen and (max-width: 768px) {\n .story__icon--next {\n right: 0;\n transform: none;\n }\n}\n\n.user {\n display: flex;\n align-items: center;\n}\n.user__image {\n width: 32px;\n height: 32px;\n border-radius: 100px;\n overflow: hidden;\n margin-right: 8px;\n}\n.user__image img {\n width: 100%;\n height: 100%;\n display: block;\n object-fit: cover;\n}\n.user__name {\n font-weight: 600;\n font-size: 16px;\n line-height: 18px;\n color: #ffffff;\n margin-right: 5px;\n}\n\n.time {\n display: flex;\n margin-bottom: 10px;\n}\n.time__item {\n position: relative;\n width: 100%;\n height: 2px;\n margin-right: 4px;\n background: rgba(255, 255, 255, 0.5);\n border-radius: 4px;\n}\n.time__item:last-child {\n margin-right: 0;\n}\n.time__fill {\n position: absolute;\n width: 100%;\n background: #ffffff;\n height: 2px;\n}\n\n.close {\n position: absolute;\n width: 50px;\n height: 50px;\n top: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n.close:after {\n content: \"×\";\n color: #ffffff;\n font-weight: 100;\n font-size: 35px;\n}\n\n@media screen and (min-width: 768px) {\n .img-style {\n max-height: 640px;\n }\n}\n@media screen and (max-width: 768px) {\n .img-style {\n max-height: 640px;\n }\n}\n\n/*# sourceMappingURL=Stories.vue.map */","\n \n \n \n \n \n \n \n \n \n \n index\n ? `width:100%`\n : `width:0%`\n \"\n >\n \n \n \n \n \n \n \n \n {{ story.username }}\n \n \n {{ story.time }}\n \n \n \n \n \n \n \n \n {{ story.username }}\n \n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n"]}, media: undefined }); + + }; + /* scoped */ + var __vue_scope_id__ = "data-v-af707b42"; + /* module identifier */ + var __vue_module_identifier__ = undefined; + /* functional template */ + var __vue_is_functional_template__ = false; + /* style inject SSR */ + + /* style inject shadow dom */ + + + + var __vue_component__ = /*#__PURE__*/normalizeComponent( + { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ }, + __vue_inject_styles__, + __vue_script__, + __vue_scope_id__, + __vue_is_functional_template__, + __vue_module_identifier__, + false, + createInjector, + undefined, + undefined + ); + + function install(Vue) { + if (install.installed) { return; } + install.installed = true; + Vue.component('Stories', __vue_component__); + } + + var plugin = { + install: install + }; + + + var GlobalVue = null; + if (typeof window !== 'undefined') { + GlobalVue = window.Vue; + } else if (typeof global !== 'undefined') { + GlobalVue = global.Vue; + } + if (GlobalVue) { + GlobalVue.use(plugin); + } + + exports.default = __vue_component__; + exports.install = install; + + Object.defineProperty(exports, '__esModule', { value: true }); + +}))); diff --git a/src/components/Stories.vue b/src/components/Stories.vue index 4056488..2cee89e 100644 --- a/src/components/Stories.vue +++ b/src/components/Stories.vue @@ -1,36 +1,48 @@ - + - + - - + + - + {{ story.username }} @@ -54,28 +66,48 @@ - - + + {{ story.username }} - + - - - + + + diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..c4b1936 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,1447 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/helper-string-parser@^7.18.10": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.18.10.tgz#181f22d28ebe1b3857fa575f5c290b1aaf659b56" + integrity sha512-XtIfWmeNY3i4t7t4D2t02q50HvqHybPqW2ki1kosnvWCwuCMeo81Jf0gwr85jy/neUdg5XDdeFE/80DXiO+njw== + +"@babel/helper-validator-identifier@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.18.6.tgz#9c97e30d31b2b8c72a1d08984f2ca9b574d7a076" + integrity sha512-MmetCkz9ej86nJQV+sFCxoGGrUbU3q02kgLciwkrt9QqEB7cP39oKEY0PakknEO0Gu20SskMRi+AYZ3b1TpN9g== + +"@babel/parser@^7.18.4", "@babel/parser@^7.6.0", "@babel/parser@^7.9.6": + version "7.18.11" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.18.11.tgz#68bb07ab3d380affa9a3f96728df07969645d2d9" + integrity sha512-9JKn5vN+hDt0Hdqn1PiJ2guflwP+B6Ga8qbDuoF0PzzVhrzsKIJo8yGqVk6CmMHiMei9w1C1Bp9IMJSIK+HPIQ== + +"@babel/types@^7.6.1", "@babel/types@^7.9.6": + version "7.18.10" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.18.10.tgz#4908e81b6b339ca7c6b7a555a5fc29446f26dde6" + integrity sha512-MJvnbEiiNkpjo+LknnmRrqbY1GPUUggjv+wQVjetM/AONoupqRALB7I6jGqNUAZsKcRIEu2J6FRFvsczljjsaQ== + dependencies: + "@babel/helper-string-parser" "^7.18.10" + "@babel/helper-validator-identifier" "^7.18.6" + to-fast-properties "^2.0.0" + +"@rollup/plugin-buble@^0.21.3": + version "0.21.3" + resolved "https://registry.yarnpkg.com/@rollup/plugin-buble/-/plugin-buble-0.21.3.tgz#1649a915b1d051a4f430d40e7734a7f67a69b33e" + integrity sha512-Iv8cCuFPnMdqV4pcyU+OrfjOfagPArRQ1PyQjx5KgHk3dARedI+8PNTLSMpJts0lQJr8yF2pAU4GxpxCBJ9HYw== + dependencies: + "@rollup/pluginutils" "^3.0.8" + "@types/buble" "^0.19.2" + buble "^0.20.0" + +"@rollup/plugin-commonjs@^11.1.0": + version "11.1.0" + resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-11.1.0.tgz#60636c7a722f54b41e419e1709df05c7234557ef" + integrity sha512-Ycr12N3ZPN96Fw2STurD21jMqzKwL9QuFhms3SD7KKRK7oaXUsBU9Zt0jL/rOPHiPYisI21/rXGO3jr9BnLHUA== + dependencies: + "@rollup/pluginutils" "^3.0.8" + commondir "^1.0.1" + estree-walker "^1.0.1" + glob "^7.1.2" + is-reference "^1.1.2" + magic-string "^0.25.2" + resolve "^1.11.0" + +"@rollup/pluginutils@^3.0.8": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" + integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== + dependencies: + "@types/estree" "0.0.39" + estree-walker "^1.0.1" + picomatch "^2.2.2" + +"@types/buble@^0.19.2": + version "0.19.2" + resolved "https://registry.yarnpkg.com/@types/buble/-/buble-0.19.2.tgz#a4289d20b175b3c206aaad80caabdabe3ecdfdd1" + integrity sha512-uUD8zIfXMKThmFkahTXDGI3CthFH1kMg2dOm3KLi4GlC5cbARA64bEcUMbbWdWdE73eoc/iBB9PiTMqH0dNS2Q== + dependencies: + magic-string "^0.25.0" + +"@types/estree@*": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.0.tgz#5fb2e536c1ae9bf35366eed879e827fa59ca41c2" + integrity sha512-WulqXMDUTYAXCjZnk6JtIHPigp55cVtDgDrO2gHRwhyJto21+1zbVCtOYB2L1F9w4qCQ0rOGWBnBe0FNTiEJIQ== + +"@types/estree@0.0.39": + version "0.0.39" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" + integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== + +"@types/json-schema@^7.0.8": + version "7.0.11" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" + integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== + +"@types/node@*": + version "18.7.2" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.7.2.tgz#22306626110c459aedd2cdf131c749ec781e3b34" + integrity sha512-ce7MIiaYWCFv6A83oEultwhBXb22fxwNOQf5DIxWA4WXvDQ7K+L0fbWl/YOfCzlR5B/uFkSnVBhPcOfOECcWvA== + +"@vue/compiler-sfc@2.7.8": + version "2.7.8" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-2.7.8.tgz#731aadd6beafdb9c72fd8614ce189ac6cee87612" + integrity sha512-2DK4YWKfgLnW9VDR9gnju1gcYRk3flKj8UNsms7fsRmFcg35slVTZEkqwBtX+wJBXaamFfn6NxSsZh3h12Ix/Q== + dependencies: + "@babel/parser" "^7.18.4" + postcss "^8.4.14" + source-map "^0.6.1" + +"@vue/component-compiler-utils@^3.0.0", "@vue/component-compiler-utils@^3.1.2": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz#f9f5fb53464b0c37b2c8d2f3fbfe44df60f61dc9" + integrity sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ== + dependencies: + consolidate "^0.15.1" + hash-sum "^1.0.2" + lru-cache "^4.1.2" + merge-source-map "^1.1.0" + postcss "^7.0.36" + postcss-selector-parser "^6.0.2" + source-map "~0.6.1" + vue-template-es2015-compiler "^1.9.0" + optionalDependencies: + prettier "^1.18.2 || ^2.0.0" + +"@vue/component-compiler@^4.2.3": + version "4.2.4" + resolved "https://registry.yarnpkg.com/@vue/component-compiler/-/component-compiler-4.2.4.tgz#db8c485c33b74c7d0e54c19a945f1a4cb65c9dc4" + integrity sha512-tFGw3h3+nxiqnyborwWQ+rUgKAwSFl0Sdg+BCZkWTyFfkEF5fqunTNoklEUDdtRQMmVqsajn1pOZdm0zh4Uicw== + dependencies: + "@vue/component-compiler-utils" "^3.0.0" + clean-css "^4.1.11" + hash-sum "^1.0.2" + postcss-modules-sync "^1.0.0" + source-map "0.6.*" + optionalDependencies: + less "^3.9.0" + pug "^3.0.1" + sass "^1.18.0" + stylus "^0.54.5" + +acorn-dynamic-import@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz#482210140582a36b83c3e342e1cfebcaa9240948" + integrity sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw== + +acorn-jsx@^5.2.0: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn@^6.4.1: + version "6.4.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== + +acorn@^7.1.0, acorn@^7.1.1: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + +ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +anymatch@~3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" + integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +asap@~2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== + +assert-never@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/assert-never/-/assert-never-1.2.1.tgz#11f0e363bf146205fb08193b5c7b90f4d1cf44fe" + integrity sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +babel-walk@3.0.0-canary-5: + version "3.0.0-canary-5" + resolved "https://registry.yarnpkg.com/babel-walk/-/babel-walk-3.0.0-canary-5.tgz#f66ecd7298357aee44955f235a6ef54219104b11" + integrity sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw== + dependencies: + "@babel/types" "^7.9.6" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +big.js@^3.1.3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" + integrity sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q== + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +bluebird@^3.1.1: + version "3.7.2" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +buble@^0.20.0: + version "0.20.0" + resolved "https://registry.yarnpkg.com/buble/-/buble-0.20.0.tgz#a143979a8d968b7f76b57f38f2e7ce7cfe938d1f" + integrity sha512-/1gnaMQE8xvd5qsNBl+iTuyjJ9XxeaVxAMF86dQ4EyxFJOZtsgOS8Ra+7WHgZTam5IFDtt4BguN0sH0tVTKrOw== + dependencies: + acorn "^6.4.1" + acorn-dynamic-import "^4.0.0" + acorn-jsx "^5.2.0" + chalk "^2.4.2" + magic-string "^0.25.7" + minimist "^1.2.5" + regexpu-core "4.5.4" + +call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +character-parser@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/character-parser/-/character-parser-2.2.0.tgz#c7ce28f36d4bcd9744e5ffc2c5fcde1c73261fc0" + integrity sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw== + dependencies: + is-regex "^1.0.3" + +"chokidar@>=3.0.0 <4.0.0": + version "3.5.3" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" + integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== + dependencies: + anymatch "~3.1.2" + braces "~3.0.2" + glob-parent "~5.1.2" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.6.0" + optionalDependencies: + fsevents "~2.3.2" + +clean-css@^4.1.11: + version "4.2.4" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178" + integrity sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A== + dependencies: + source-map "~0.6.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +consolidate@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" + integrity sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw== + dependencies: + bluebird "^3.1.1" + +constantinople@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/constantinople/-/constantinople-4.0.1.tgz#0def113fa0e4dc8de83331a5cf79c8b325213151" + integrity sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw== + dependencies: + "@babel/parser" "^7.6.0" + "@babel/types" "^7.6.1" + +copy-anything@^2.0.1: + version "2.0.6" + resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-2.0.6.tgz#092454ea9584a7b7ad5573062b2a87f5900fc480" + integrity sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw== + dependencies: + is-what "^3.14.1" + +css-parse@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-2.0.0.tgz#a468ee667c16d81ccf05c58c38d2a97c780dbfd4" + integrity sha512-UNIFik2RgSbiTwIW1IsFwXWn6vs+bYdq83LKTSOsx7NJR7WII9dxewkHLltfTLVppoUApHV0118a4RZRI9FLwA== + dependencies: + css "^2.0.0" + +css-selector-tokenizer@^0.7.0: + version "0.7.3" + resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz#735f26186e67c749aaf275783405cf0661fae8f1" + integrity sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg== + dependencies: + cssesc "^3.0.0" + fastparse "^1.1.2" + +css@^2.0.0: + version "2.2.4" + resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" + integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw== + dependencies: + inherits "^2.0.3" + source-map "^0.6.1" + source-map-resolve "^0.5.2" + urix "^0.1.0" + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +csstype@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.0.tgz#4ddcac3718d787cf9df0d1b7d15033925c8f29f2" + integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA== + +de-indent@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== + +debug@^4.1.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +debug@~3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== + +doctypes@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/doctypes/-/doctypes-1.1.0.tgz#ea80b106a87538774e8a3a4a5afe293de489e0a9" + integrity sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ== + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + integrity sha512-knHEZMgs8BB+MInokmNTg/OyPlAddghe1YBgNwJBc5zsJi/uyIcXoSDsL/W9ymOsBoBGdPIHXYJ9+qKFwRwDng== + +emojis-list@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== + +errno@^0.1.1: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== + dependencies: + prr "~1.0.1" + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +estree-walker@^0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" + integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w== + +estree-walker@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" + integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fastparse@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" + integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +generic-names@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-1.0.3.tgz#2d786a121aee508876796939e8e3bff836c20917" + integrity sha512-b6OHfQuKasIKM9b6YPkX+KUj/TLBTx3B/1aT1T5F12FEuEqyFMdr59OMS53aoaSw8eVtapdqieX6lbg5opaOhA== + dependencies: + loader-utils "^0.2.16" + +get-intrinsic@^1.0.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.2.tgz#336975123e05ad0b7ba41f152ee4aadbea6cf598" + integrity sha512-Jfm3OyCxHh9DJyc28qGk+JmfkpO41A4XkneDSujN9MDXrm4oDKdHvndhZ2dN94+ERNfkYJWDclW6k2L/ZGHjXA== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.3" + +glob-parent@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.1.2, glob@^7.1.6: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +graceful-fs@^4.1.2: + version "4.2.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" + integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== + dependencies: + ansi-regex "^2.0.0" + +has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + integrity sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hash-sum@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" + integrity sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA== + +he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +icss-replace-symbols@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" + integrity sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg== + +image-size@~0.5.0: + version "0.5.5" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + integrity sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ== + +immutable@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-4.1.0.tgz#f795787f0db780183307b9eb2091fcac1f6fafef" + integrity sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-core-module@^2.9.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" + integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== + dependencies: + has "^1.0.3" + +is-expression@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-expression/-/is-expression-4.0.0.tgz#c33155962abf21d0afd2552514d67d2ec16fd2ab" + integrity sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A== + dependencies: + acorn "^7.1.1" + object-assign "^4.1.1" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-promise@^2.0.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" + integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== + +is-reference@^1.1.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" + integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== + dependencies: + "@types/estree" "*" + +is-regex@^1.0.3: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-what@^3.14.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/is-what/-/is-what-3.14.1.tgz#e1222f46ddda85dead0fd1c9df131760e77755c1" + integrity sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA== + +js-base64@^2.1.9: + version "2.6.4" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.6.4.tgz#f4e686c5de1ea1f867dbcad3d46d969428df98c4" + integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ== + +js-stringify@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/js-stringify/-/js-stringify-1.0.2.tgz#1736fddfd9724f28a3682adc6230ae7e4e9679db" + integrity sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g== + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json5@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + integrity sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw== + +json5@^2.1.2: + version "2.2.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" + integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== + +jstransformer@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/jstransformer/-/jstransformer-1.0.0.tgz#ed8bf0921e2f3f1ed4d5c1a44f68709ed24722c3" + integrity sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A== + dependencies: + is-promise "^2.0.0" + promise "^7.0.1" + +klona@^2.0.4: + version "2.0.5" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" + integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== + +less@^3.9.0: + version "3.13.1" + resolved "https://registry.yarnpkg.com/less/-/less-3.13.1.tgz#0ebc91d2a0e9c0c6735b83d496b0ab0583077909" + integrity sha512-SwA1aQXGUvp+P5XdZslUOhhLnClSLIjWvJhmd+Vgib5BFIr9lMNlQwmwUNOjXThF/A0x+MCYYPeWEfeWiLRnTw== + dependencies: + copy-anything "^2.0.1" + tslib "^1.10.0" + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + make-dir "^2.1.0" + mime "^1.4.1" + native-request "^1.0.5" + source-map "~0.6.0" + +loader-utils@^0.2.16: + version "0.2.17" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" + integrity sha512-tiv66G0SmiOx+pLWMtGEkfSEejxvb6N6uRrQjfWJIT79W9GMpgKeCAmm9aVBKtd4WEgntciI8CsGqjpDoCWJug== + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + object-assign "^4.0.1" + +loader-utils@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" + integrity sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + +lru-cache@^4.1.2: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +magic-string@^0.25.0, magic-string@^0.25.2, magic-string@^0.25.7: + version "0.25.9" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" + integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ== + dependencies: + sourcemap-codec "^1.4.8" + +make-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== + dependencies: + pify "^4.0.1" + semver "^5.6.0" + +merge-source-map@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" + integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== + dependencies: + source-map "^0.6.1" + +mime@^1.4.1: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.5: + version "1.2.6" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" + integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== + +mkdirp@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +nanoid@^3.3.4: + version "3.3.4" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" + integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== + +native-request@^1.0.5: + version "1.1.0" + resolved "https://registry.yarnpkg.com/native-request/-/native-request-1.1.0.tgz#acdb30fe2eefa3e1bc8c54b3a6852e9c5c0d3cb0" + integrity sha512-uZ5rQaeRn15XmpgE0xoPL8YWqcX90VtCFglYwAgkvKM5e8fog+vePLAhHxuuv/gRkrQxIeh5U3q9sMNUrENqWw== + +neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +object-assign@^4.0.1, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +picocolors@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" + integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.2: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +postcss-modules-local-by-default@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" + integrity sha512-X4cquUPIaAd86raVrBwO8fwRfkIdbwFu7CTfEOjiZQHVQwlHRSkTgH5NLDmMm5+1hQO8u6dZ+TOOJDbay1hYpA== + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-scope@^1.0.2: + version "1.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" + integrity sha512-LTYwnA4C1He1BKZXIx1CYiHixdSe9LWYVKadq9lK5aCCMkoOkFyZ7aigt+srfjlRplJY3gIol6KUNefdMQJdlw== + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-sync@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-sync/-/postcss-modules-sync-1.0.0.tgz#619a719cf78dd16a4834135140b324cf77334be1" + integrity sha512-kIDk2NYmxHshqUbjtFf1WdBij08IsvRdgDT0nOGWhvwkr8/z1piLSzxVrPt56J4DU6ON986h2H+5xcBnFhT8UQ== + dependencies: + generic-names "^1.0.2" + icss-replace-symbols "^1.0.2" + postcss "^5.2.5" + postcss-modules-local-by-default "^1.1.1" + postcss-modules-scope "^1.0.2" + string-hash "^1.1.0" + +postcss-selector-parser@^6.0.2: + version "6.0.10" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d" + integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss@^5.2.5: + version "5.2.18" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5" + integrity sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg== + dependencies: + chalk "^1.1.3" + js-base64 "^2.1.9" + source-map "^0.5.6" + supports-color "^3.2.3" + +postcss@^6.0.1: + version "6.0.23" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" + integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== + dependencies: + chalk "^2.4.1" + source-map "^0.6.1" + supports-color "^5.4.0" + +postcss@^7.0.36: + version "7.0.39" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" + integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== + dependencies: + picocolors "^0.2.1" + source-map "^0.6.1" + +postcss@^8.4.14: + version "8.4.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.16.tgz#33a1d675fac39941f5f445db0de4db2b6e01d43c" + integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ== + dependencies: + nanoid "^3.3.4" + picocolors "^1.0.0" + source-map-js "^1.0.2" + +"prettier@^1.18.2 || ^2.0.0": + version "2.7.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" + integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== + +promise@^7.0.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== + dependencies: + asap "~2.0.3" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== + +pug-attrs@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pug-attrs/-/pug-attrs-3.0.0.tgz#b10451e0348165e31fad1cc23ebddd9dc7347c41" + integrity sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA== + dependencies: + constantinople "^4.0.1" + js-stringify "^1.0.2" + pug-runtime "^3.0.0" + +pug-code-gen@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/pug-code-gen/-/pug-code-gen-3.0.2.tgz#ad190f4943133bf186b60b80de483100e132e2ce" + integrity sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg== + dependencies: + constantinople "^4.0.1" + doctypes "^1.1.0" + js-stringify "^1.0.2" + pug-attrs "^3.0.0" + pug-error "^2.0.0" + pug-runtime "^3.0.0" + void-elements "^3.1.0" + with "^7.0.0" + +pug-error@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pug-error/-/pug-error-2.0.0.tgz#5c62173cb09c34de2a2ce04f17b8adfec74d8ca5" + integrity sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ== + +pug-filters@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pug-filters/-/pug-filters-4.0.0.tgz#d3e49af5ba8472e9b7a66d980e707ce9d2cc9b5e" + integrity sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A== + dependencies: + constantinople "^4.0.1" + jstransformer "1.0.0" + pug-error "^2.0.0" + pug-walk "^2.0.0" + resolve "^1.15.1" + +pug-lexer@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/pug-lexer/-/pug-lexer-5.0.1.tgz#ae44628c5bef9b190b665683b288ca9024b8b0d5" + integrity sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w== + dependencies: + character-parser "^2.2.0" + is-expression "^4.0.0" + pug-error "^2.0.0" + +pug-linker@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/pug-linker/-/pug-linker-4.0.0.tgz#12cbc0594fc5a3e06b9fc59e6f93c146962a7708" + integrity sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw== + dependencies: + pug-error "^2.0.0" + pug-walk "^2.0.0" + +pug-load@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pug-load/-/pug-load-3.0.0.tgz#9fd9cda52202b08adb11d25681fb9f34bd41b662" + integrity sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ== + dependencies: + object-assign "^4.1.1" + pug-walk "^2.0.0" + +pug-parser@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/pug-parser/-/pug-parser-6.0.0.tgz#a8fdc035863a95b2c1dc5ebf4ecf80b4e76a1260" + integrity sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw== + dependencies: + pug-error "^2.0.0" + token-stream "1.0.0" + +pug-runtime@^3.0.0, pug-runtime@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/pug-runtime/-/pug-runtime-3.0.1.tgz#f636976204723f35a8c5f6fad6acda2a191b83d7" + integrity sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg== + +pug-strip-comments@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz#f94b07fd6b495523330f490a7f554b4ff876303e" + integrity sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ== + dependencies: + pug-error "^2.0.0" + +pug-walk@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pug-walk/-/pug-walk-2.0.0.tgz#417aabc29232bb4499b5b5069a2b2d2a24d5f5fe" + integrity sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ== + +pug@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/pug/-/pug-3.0.2.tgz#f35c7107343454e43bc27ae0ff76c731b78ea535" + integrity sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw== + dependencies: + pug-code-gen "^3.0.2" + pug-filters "^4.0.0" + pug-lexer "^5.0.1" + pug-linker "^4.0.0" + pug-load "^3.0.0" + pug-parser "^6.0.0" + pug-runtime "^3.0.1" + pug-strip-comments "^2.0.0" + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +querystring@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" + integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== + +readdirp@~3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== + dependencies: + picomatch "^2.2.1" + +regenerate-unicode-properties@^8.0.2: + version "8.2.0" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" + integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== + dependencies: + regenerate "^1.4.0" + +regenerate@^1.4.0: + version "1.4.2" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== + +regexpu-core@4.5.4: + version "4.5.4" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.5.4.tgz#080d9d02289aa87fe1667a4f5136bc98a6aebaae" + integrity sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ== + dependencies: + regenerate "^1.4.0" + regenerate-unicode-properties "^8.0.2" + regjsgen "^0.5.0" + regjsparser "^0.6.0" + unicode-match-property-ecmascript "^1.0.4" + unicode-match-property-value-ecmascript "^1.1.0" + +regjsgen@^0.5.0: + version "0.5.2" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" + integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== + +regjsparser@^0.6.0: + version "0.6.9" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.9.tgz#b489eef7c9a2ce43727627011429cf833a7183e6" + integrity sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ== + dependencies: + jsesc "~0.5.0" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + +resolve@^1.11.0, resolve@^1.15.1: + version "1.22.1" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" + integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== + dependencies: + is-core-module "^2.9.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +rollup-plugin-vue@^5.0.1: + version "5.1.9" + resolved "https://registry.yarnpkg.com/rollup-plugin-vue/-/rollup-plugin-vue-5.1.9.tgz#8769cfdac5531c2d1970222b7887b883db37b866" + integrity sha512-DXzrBUD2j68Y6nls4MmuJsFL1SrQDpdgjxvhk/oy04LzJmXJoX1x31yLEBFkkmvpbon6Q885WJLvEMiMyT+3rA== + dependencies: + "@vue/component-compiler" "^4.2.3" + "@vue/component-compiler-utils" "^3.1.2" + debug "^4.1.1" + hash-sum "^1.0.2" + magic-string "^0.25.7" + querystring "^0.2.0" + rollup-pluginutils "^2.8.2" + source-map "0.7.3" + vue-runtime-helpers "^1.1.2" + +rollup-pluginutils@^2.8.2: + version "2.8.2" + resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" + integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== + dependencies: + estree-walker "^0.6.1" + +rollup@^1.17.0: + version "1.32.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.32.1.tgz#4480e52d9d9e2ae4b46ba0d9ddeaf3163940f9c4" + integrity sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A== + dependencies: + "@types/estree" "*" + "@types/node" "*" + acorn "^7.1.0" + +safer-buffer@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sass-loader@^10.2.0: + version "10.3.1" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.3.1.tgz#a45f0d1dd7ea90de7eb099239a18c83dea6e6341" + integrity sha512-y2aBdtYkbqorVavkC3fcJIUDGIegzDWPn3/LAFhsf3G+MzPKTJx37sROf5pXtUeggSVbNbmfj8TgRaSLMelXRA== + dependencies: + klona "^2.0.4" + loader-utils "^2.0.0" + neo-async "^2.6.2" + schema-utils "^3.0.0" + semver "^7.3.2" + +sass@^1.18.0, sass@^1.43.4: + version "1.54.4" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.54.4.tgz#803ff2fef5525f1dd01670c3915b4b68b6cba72d" + integrity sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA== + dependencies: + chokidar ">=3.0.0 <4.0.0" + immutable "^4.0.0" + source-map-js ">=0.6.2 <2.0.0" + +sax@~1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +schema-utils@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" + integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + +semver@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.3.2: + version "7.3.7" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" + integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== + dependencies: + lru-cache "^6.0.0" + +"source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== + +source-map-resolve@^0.5.2: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@0.6.*, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@0.7.3: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== + +sourcemap-codec@^1.4.8: + version "1.4.8" + resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" + integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== + +string-hash@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b" + integrity sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A== + +strip-ansi@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + +stylus@^0.54.5: + version "0.54.8" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.8.tgz#3da3e65966bc567a7b044bfe0eece653e099d147" + integrity sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg== + dependencies: + css-parse "~2.0.0" + debug "~3.1.0" + glob "^7.1.6" + mkdirp "~1.0.4" + safer-buffer "^2.1.2" + sax "~1.2.4" + semver "^6.3.0" + source-map "^0.7.3" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== + +supports-color@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" + integrity sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A== + dependencies: + has-flag "^1.0.0" + +supports-color@^5.3.0, supports-color@^5.4.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +token-stream@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/token-stream/-/token-stream-1.0.0.tgz#cc200eab2613f4166d27ff9afc7ca56d49df6eb4" + integrity sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg== + +tslib@^1.10.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +unicode-canonical-property-names-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" + integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== + +unicode-match-property-ecmascript@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" + integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== + dependencies: + unicode-canonical-property-names-ecmascript "^1.0.4" + unicode-property-aliases-ecmascript "^1.0.4" + +unicode-match-property-value-ecmascript@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" + integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== + +unicode-property-aliases-ecmascript@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" + integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + +util-deprecate@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +void-elements@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09" + integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w== + +vue-runtime-helpers@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vue-runtime-helpers/-/vue-runtime-helpers-1.1.2.tgz#446b7b820888ab0c5264d2c3a32468e72e4100f3" + integrity sha512-pZfGp+PW/IXEOyETE09xQHR1CKkR9HfHZdnMD/FVLUNI+HxYTa82evx5WrF6Kz4s82qtqHvMZ8MZpbk2zT2E1Q== + +vue-template-compiler@^2.6.10: + version "2.7.8" + resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.7.8.tgz#eadd54ed8fbff55b7deb07093a976c07f451a1dc" + integrity sha512-eQqdcUpJKJpBRPDdxCNsqUoT0edNvdt1jFjtVnVS/LPPmr0BU2jWzXlrf6BVMeODtdLewB3j8j3WjNiB+V+giw== + dependencies: + de-indent "^1.0.2" + he "^1.2.0" + +vue-template-es2015-compiler@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" + integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== + +vue@^2.6.10: + version "2.7.8" + resolved "https://registry.yarnpkg.com/vue/-/vue-2.7.8.tgz#34e06553137611d8cecc4b0cd78b7a59f80b1299" + integrity sha512-ncwlZx5qOcn754bCu5/tS/IWPhXHopfit79cx+uIlLMyt3vCMGcXai5yCG5y+I6cDmEj4ukRYyZail9FTQh7lQ== + dependencies: + "@vue/compiler-sfc" "2.7.8" + csstype "^3.1.0" + +with@^7.0.0: + version "7.0.2" + resolved "https://registry.yarnpkg.com/with/-/with-7.0.2.tgz#ccee3ad542d25538a7a7a80aad212b9828495bac" + integrity sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w== + dependencies: + "@babel/parser" "^7.9.6" + "@babel/types" "^7.9.6" + assert-never "^1.2.1" + babel-walk "3.0.0-canary-5" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==