pixelfed/public/js/stories.js

28 lines
40 KiB
JavaScript
Raw Normal View History

2024-07-10 06:11:42 +00:00
(self.webpackChunkpixelfed=self.webpackChunkpixelfed||[]).push([["/js/stories"],{"./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=script&lang=js":
/*!************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=script&lang=js ***!
\************************************************************************************************************************************************************************************************************/(t,e,s)=>{"use strict";function o(t){return function(t){if(Array.isArray(t))return i(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(!t)return;if("string"==typeof t)return i(t,e);var s=Object.prototype.toString.call(t).slice(8,-1);"Object"===s&&t.constructor&&(s=t.constructor.name);if("Map"===s||"Set"===s)return Array.from(t);if("Arguments"===s||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s))return i(t,e)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(t,e){(null==e||e>t.length)&&(e=t.length);for(var s=0,o=new Array(e);s<e;s++)o[s]=t[s];return o}s.r(e),s.d(e,{default:()=>r});const r={props:{pid:{type:String},selfProfile:{type:Object},redirectUrl:{type:String,default:"/"}},data:function(){return{loading:!0,profile:null,account:{local:!1},owner:!1,stories:[],username:"loading...",avatar:"/storage/avatars/default.jpg",storyIndex:0,progress:0,constInterval:383,progressInterval:void 0,composeText:null,paused:!1,muted:!0,reactionEmoji:["❤️","🔥","💯","😂","😎","👀"],activeReactionEmoji:!1,activeReply:!1,showProgress:!1,redirectOnEnd:"/",viewerSid:!1,viewerPage:1,loadingViewers:!1,viewersHasMore:!0,viewers:[],viewWarning:!1,showingPollResults:!1,loadingPollResults:!1,pollResults:[],pollTotalVotes:0}},watch:{composeText:function(t){0==t.length?this.paused&&this.pause():this.paused||this.pause(),event.currentTarget.focus()}},beforeMount:function(){this.redirectOnEnd=this.redirectUrl},mounted:function(){var t=this,e=new URLSearchParams(window.location.search);if(e.has("t"))switch(e.get("t")){case"1":this.redirectOnEnd="/";break;case"2":this.redirectOnEnd="/timeline/public";break;case"3":this.redirectOnEnd="/timeline/network";break;case"4":this.redirectOnEnd="/"+window.location.pathname.split("/").slice(-1).pop()}else this.viewWarning=!0;this.selfProfile&&this.selfProfile.hasOwnProperty("avatar")?this.profile=this.selfProfile:axios.get("/api/pixelfed/v1/accounts/verify_credentials").then((function(e){t.profile=e.data,t.fetchStories()}));var s=document.querySelector("body");s.style.width="100%",s.style.height="100vh !important",s.style.overflow="hidden",s.style.backgroundColor="#262626"},methods:{init:function(){var t=this;clearInterval(this.progressInterval),this.loading=!1,this.constInterval=Math.ceil(38.3*this.stories[this.storyIndex].duration),this.progressInterval=setInterval((function(){t.do()}),this.constInterval)},do:function(){this.loading=!1,100!=this.stories[this.storyIndex].progress?this.stories[this.storyIndex].progress=this.stories[this.storyIndex].progress+4:(clearInterval(this.progressInterval),this.next())},prev:function(){0!=this.storyIndex&&(this.pollResults=[],this.progress=0,this.gotoSlide(this.storyIndex-1))},next:function(){if(axios.post("/api/web/stories/v1/viewed",{id:this.stories[this.storyIndex].id}),this.stories[this.storyIndex].progress=100,this.storyIndex!=this.stories.length-1)this.pollResults=[],this.progress=0,this.muted=!0,this.storyIndex=this.storyIndex+1,this.init();else{if(this.composeText&&this.composeText.length)return;window.location.href=this.redirectOnEnd}},pause:function(){if(event&&event.currentTarget.blur(),this.paused){if(this.paused=!1,"video"==this.stories[this.storyIndex].type)document.getElementById("playr").play();this.init()}else{if(clearInterval(this.progressInterval),"video"==this.stories[this.storyIndex].type)document.getElementById("playr").pause();this.paused=!0}},toggleMute:function(){(event&&event.currentTarget.blur(),"video"==this.stories[this.storyIndex].type)&&(this.muted=!this.muted,document.getElementById("playr").muted=this.muted)},gotoSlide:function(t){this.paused=!1,clearInterval(this.progressInterval),this.progressI
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true ***!
\***********************************************************************************************************************************************************************************************************************************************************************************************************/(t,e,s)=>{"use strict";s.r(e),s.d(e,{render:()=>o,staticRenderFns:()=>i});var o=function(){var t=this,e=t._self._c;return e("div",{staticClass:"story-viewer-component container mt-0 mt-md-5 bg-black"},[e("button",{staticClass:"d-none d-md-block btn btn-link fixed-top",staticStyle:{left:"auto",right:"0"},attrs:{type:"button"},on:{click:t.backToFeed}},[e("i",{staticClass:"fal fa-times-circle fa-2x text-lighter"})]),t._v(" "),t.viewWarning?e("div",{staticClass:"row d-flex justify-content-center align-items-center"},[t.loading?t._e():e("div",{staticClass:"col-12 col-md-6 rounded-lg p-0"},["photo"==t.stories[t.storyIndex].type?e("div",{key:"msl:"+t.storyIndex,staticClass:"media-slot rounded-lg",style:{backgroundImage:"url("+t.stories[t.storyIndex].url+")"}}):t._e(),t._v(" "),e("div",{staticClass:"story-viewer-component-card card bg-transparent border-0 shadow-none d-flex justify-content-center",staticStyle:{"backdrop-filter":"blur(40px) brightness(0.3)","-webkit-backdrop-filter":"blur(10px)"}},[e("div",{staticClass:"card-body"},[e("div",{staticClass:"w-100 h-100 d-flex justify-content-center align-items-center"},[e("div",{staticClass:"text-center"},[e("img",{staticClass:"rounded-circle border mb-3 shadow",attrs:{src:t.profile.avatar,width:"120",height:"120"}}),t._v(" "),e("p",{staticClass:"lead text-lighter mb-1"},[t._v("View as "),e("span",{staticClass:"text-white"},[t._v(t._s(t.profile.username))])]),t._v(" "),e("p",{staticClass:"text-lighter font-weight-lighter px-md-5 py-3"},[e("span",{staticClass:"text-white font-weight-bold"},[t._v(t._s(t.account.acct))]),t._v(" will be able to see that you viewed their story.\n\t\t\t\t\t\t\t")]),t._v(" "),e("button",{staticClass:"btn btn-outline-lighter rounded-pill py-1 font-weight-bold",on:{click:t.confirmViewStory}},[t._v("View Story")]),t._v(" "),e("button",{staticClass:"btn btn-outline-lighter rounded-pill py-1 font-weight-bold",on:{click:t.cancelViewStory}},[t._v("Cancel")])])])])])])]):e("div",{staticClass:"row d-flex justify-content-center align-items-center"},[e("div",{staticClass:"d-none d-md-block col-md-1 cursor-pointer text-center",on:{click:t.prev}},[t.storyIndex>0?e("div",[e("i",{staticClass:"fas fa-chevron-circle-left text-muted fa-2x"})]):t._e()]),t._v(" "),t.loading?t._e():e("div",{staticClass:"col-12 col-md-6 rounded-lg"},[t.activeReactionEmoji?e("div",{staticClass:"w-100 h-100 d-flex justify-content-center align-items-center",staticStyle:{position:"absolute","z-index":"999"}},[t._m(0)]):t._e(),t._v(" "),t.activeReply?e("div",{staticClass:"w-100 h-100 d-flex justify-content-center align-items-center",staticStyle:{position:"absolute","z-index":"999"}},[t._m(1)]):t._e(),t._v(" "),e("transition",{attrs:{name:"fade"}},["photo"==t.stories[t.storyIndex].type?e("div",{key:"msl:"+t.storyIndex,staticClass:"media-slot rounded-lg",style:{background:"url("+t.stories[t.storyIndex].url+")"}}):"poll"==t.stories[t.storyIndex].type?e("div",{key:"msl:"+t.storyIndex,staticClass:"media-slot rounded-lg",style:{background:"linear-gradient(to right, #F27121, #E94057, #8A2387)"}}):"video"==t.stories[t.storyIndex].type?e("video",{key:"plyr"+t.stories[t.storyIndex].id,staticClass:"media-slot rounded-lg",staticStyle:{"object-fit":"contain"},attrs:{id:"playr",loop:"",autoplay:"","no-controls":""},domProps:{muted:t.muted}},[e("source",{attrs:{src:t.stories[t.storyIndex].url,type:"video/mp4"}})]):t._e()]),t._v(" "),e("div",{staticClass:"story-viewer-component-card card bg-transparent border-0 shadow-none d-flex justify-content-center"},[e("div",{staticClass:"card-body"},[e("div",{staticClass:"px-0 top-overlay"},[e("div",{staticClass:"pt-4 pt-md-3 px-4 d-flex"},[e("div",{staticClass:"d-none bg-muted",staticStyle:{width:"100%",height:"5px"}}),t._v(" "),t._l(t.stories,(function(s,o){return e("div",{ke
/*!****************************************!*\
!*** ./resources/assets/js/stories.js ***!
\****************************************/(t,e,s)=>{Vue.component("story-viewer",s(/*! ./components/StoryViewer.vue */"./resources/assets/js/components/StoryViewer.vue").default)},"./node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true":
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true ***!
\****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>r});var o=s(/*! ../../../../node_modules/laravel-mix/node_modules/css-loader/dist/runtime/api.js */"./node_modules/laravel-mix/node_modules/css-loader/dist/runtime/api.js"),i=s.n(o)()((function(t){return t[1]}));i.push([t.id,"#content[data-v-be0d9900] {\n width: 100%;\n height: 100vh !important;\n overflow: hidden;\n background-color: #262626;\n}\n.story-viewer-component-card[data-v-be0d9900] {\n height: 100vh;\n}\n@media (min-width: 768px) {\n.story-viewer-component-card[data-v-be0d9900] {\n height: 90vh;\n}\n}\n.story-viewer-component.bg-black[data-v-be0d9900] {\n background-color: #262626;\n}\n.story-viewer-component .option-green[data-v-be0d9900] {\n font-size: 20px;\n font-weight: 600;\n background: #11998e; /* fallback for old browsers */\n background: linear-gradient(180deg, #38ef7d, #11998e);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.story-viewer-component .option-red[data-v-be0d9900] {\n font-weight: 600;\n background: linear-gradient(to right, #F27121, #E94057, #8A2387);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.story-viewer-component .bg-black[data-v-be0d9900] {\n background-color: #262626;\n}\n.story-viewer-component .fade-enter-active[data-v-be0d9900], .story-viewer-component .fade-leave-active[data-v-be0d9900] {\n transition: opacity 0.5s;\n}\n.story-viewer-component .fade-enter[data-v-be0d9900], .story-viewer-component .fade-leave-to[data-v-be0d9900] {\n opacity: 0;\n}\n.story-viewer-component .progress[data-v-be0d9900] {\n background-color: #979a9a;\n}\n.story-viewer-component .media-slot[data-v-be0d9900] {\n border-radius: 0;\n width: 100%;\n height: 100%;\n position: absolute;\n left: 0;\n top: 0;\n background: #000;\n background-size: cover !important;\n z-index: 0;\n}\n.story-viewer-component .card-body .top-overlay[data-v-be0d9900] {\n height: 100px;\n margin-left: -35px;\n margin-right: -35px;\n margin-top: -20px;\n padding-bottom: 20px;\n border-radius: 5px;\n background: linear-gradient(180deg, rgba(38, 38, 38, 0.8) 0%, rgba(38, 38, 38, 0) 100%);\n}\n.story-viewer-component .card-footer[data-v-be0d9900] ::-moz-placeholder {\n color: #fff;\n opacity: 1;\n}\n.story-viewer-component .card-footer[data-v-be0d9900] ::placeholder {\n color: #fff;\n opacity: 1;\n}\n.story-viewer-component .card-footer .bottom-overlay[data-v-be0d9900] {\n margin-left: -35px;\n margin-right: -35px;\n margin-bottom: -20px;\n border-radius: 5px;\n background: linear-gradient(0deg, rgba(38, 38, 38, 0.8) 0%, rgba(38, 38, 38, 0) 100%);\n}\n.story-viewer-component .card-footer .bottom-overlay .form-group[data-v-be0d9900] {\n padding-top: 40px;\n padding-bottom: 20px;\n margin-bottom: 0;\n}",""]);const r=i},"./node_modules/style-loader/dist/cjs.js!./node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true":
/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/style-loader/dist/cjs.js!./node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true ***!
\********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>a});var o=s(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */"./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js"),i=s.n(o),r=s(/*! !!../../../../node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!../../../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true */"./node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true"),n={insert:"head",singleton:!1};i()(r.default,n);const a=r.default.locals||{}},"./resources/assets/js/components/StoryViewer.vue":
/*!********************************************************!*\
!*** ./resources/assets/js/components/StoryViewer.vue ***!
\********************************************************/(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>a});var o=s(/*! ./StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true */"./resources/assets/js/components/StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true"),i=s(/*! ./StoryViewer.vue?vue&type=script&lang=js */"./resources/assets/js/components/StoryViewer.vue?vue&type=script&lang=js"),r={};for(const t in i)"default"!==t&&(r[t]=()=>i[t]);s.d(e,r);s(/*! ./StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true */"./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true");var n=(0,s(/*! !../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */"./node_modules/vue-loader/lib/runtime/componentNormalizer.js").default)(i.default,o.render,o.staticRenderFns,!1,null,"be0d9900",null);n.options.__file="resources/assets/js/components/StoryViewer.vue";const a=n.exports},"./resources/assets/js/components/StoryViewer.vue?vue&type=script&lang=js":
/*!********************************************************************************!*\
!*** ./resources/assets/js/components/StoryViewer.vue?vue&type=script&lang=js ***!
\********************************************************************************/(t,e,s)=>{"use strict";s.r(e),s.d(e,{default:()=>r});var o=s(/*! -!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StoryViewer.vue?vue&type=script&lang=js */"./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=script&lang=js"),i={};for(const t in o)"default"!==t&&(i[t]=()=>o[t]);s.d(e,i);const r=o.default},"./resources/assets/js/components/StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true":
/*!**************************************************************************************************!*\
!*** ./resources/assets/js/components/StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true ***!
\**************************************************************************************************/(t,e,s)=>{"use strict";s.r(e);var o=s(/*! -!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true */"./node_modules/babel-loader/lib/index.js??clonedRuleSet-5.use[0]!./node_modules/vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[2]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=template&id=be0d9900&scoped=true"),i={};for(const t in o)"default"!==t&&(i[t]=()=>o[t]);s.d(e,i)},"./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true":
/*!*****************************************************************************************************************!*\
!*** ./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true ***!
\*****************************************************************************************************************/(t,e,s)=>{"use strict";s.r(e);var o=s(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!../../../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true */"./node_modules/style-loader/dist/cjs.js!./node_modules/laravel-mix/node_modules/css-loader/dist/cjs.js??clonedRuleSet-17.use[1]!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-17.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-17.use[3]!./node_modules/vue-loader/lib/index.js??vue-loader-options!./resources/assets/js/components/StoryViewer.vue?vue&type=style&index=0&id=be0d9900&lang=scss&scoped=true"),i={};for(const t in o)"default"!==t&&(i[t]=()=>o[t]);s.d(e,i)}},t=>{t.O(0,["/js/vendor"],(()=>{return e="./resources/assets/js/stories.js",t(t.s=e);var e}));t.O()}]);