platypush/platypush/backend/http/webapp/dist/static/js/chunk-09eaa919.4ce3bde5.js.map

1 line
5.7 KiB
Plaintext

{"version":3,"sources":["webpack:///./src/components/widgets/Calendar/Index.vue","webpack:///./src/components/widgets/Calendar/Index.vue?1aa0","webpack:///./src/components/widgets/Calendar/Index.vue?ce74"],"names":["class","loading","events","length","start","summary","formatTime","end","slice","maxEvents","event","key","id","name","components","Loading","mixins","Utils","props","type","Number","required","default","refreshSeconds","data","methods","refresh","this","request","map","Date","dateTime","date","mounted","setInterval","parseInt","toFixed","render","__scopeId"],"mappings":"gOACOA,MAAM,Y,SAGJA,MAAM,a,SAINA,MAAM,wB,GAGJA,MAAM,Q,SAMRA,MAAM,c,wGAhBb,eAuBM,MAvBN,EAuBM,CAtBW,EAAAC,S,iBAAf,eAA0B,YAES,EAAAC,OAAOC,OAIG,EAAAD,OAAOC,OAAM,G,iBAA1D,eAOM,MAPN,EAOM,CANJ,eAA6D,OAAxDH,MAAM,O,YAAO,eAAoC,EAAlB,WAAC,EAAAE,OAAM,GAAIE,S,wBAC/C,eAAsD,OAAjDJ,MAAM,U,YAAU,eAA0B,EAAZ,UAAIK,U,wBACvC,eAGM,MAHN,EAGM,eAFD,EAAAC,WAAW,EAAAJ,OAAM,GAAIE,OAAK,IAAW,MACxC,eAAG,EAAAE,WAAW,EAAAJ,OAAM,GAAIK,KAAG,U,wCAT/B,eAEM,MAFN,EAAkD,sBAapB,EAAAL,OAAOC,OAAM,G,iBAA3C,eAMM,MANN,EAMM,E,mBALJ,eAIM,2BAJ6B,EAAAD,OAAOM,MAAK,EAAI,EAAAC,YAAS,SAAlCC,G,wBAA1B,eAIM,OAJDV,MAAM,QAAqDW,IAAKD,EAAME,I,CACzE,eAA+D,OAA1DZ,MAAM,a,YAAa,eAAgC,EAAd,WAACU,EAAMN,S,wBACjD,eAAsE,OAAjEJ,MAAM,a,YAAa,eAAuC,EAArB,WAACU,EAAMN,OAAK,K,wBACtD,eAAwD,OAAnDJ,MAAM,gB,YAAgB,eAAsB,EAARK,U,+IAUlC,GACbQ,KAAM,WACNC,WAAY,CAACC,UAAA,MACbC,OAAQ,CAACC,EAAA,MACTC,MAAO,CAELT,UAAW,CACTU,KAAMC,OACNC,UAAU,EACVC,QAAS,IAIXC,eAAgB,CACdJ,KAAMC,OACNC,UAAU,EACVC,QAAS,MAIbE,KAAM,WACJ,MAAO,CACLtB,OAAQ,GACRD,SAAS,IAIbwB,QAAS,CACPC,QAAS,WAAF,8CAAE,qGACPC,KAAK1B,SAAU,EADR,kBAIgB0B,KAAKC,QAAQ,gCAJ7B,OAILD,KAAKzB,OAJA,OAI8D2B,KAAI,SAAAnB,GAMrE,OALIA,EAAMN,QACRM,EAAMN,MAAQ,IAAI0B,KAAKpB,EAAMN,MAAM2B,UAAYrB,EAAMN,MAAM4B,OACzDtB,EAAMH,MACRG,EAAMH,IAAM,IAAIuB,KAAKpB,EAAMH,IAAIwB,UAAYrB,EAAMH,IAAIyB,OAEhDtB,KAVJ,uBAaLiB,KAAK1B,SAAU,EAbV,uEAAF,qDAAE,IAkBXgC,QAAS,WACPN,KAAKD,UACLQ,YAAYP,KAAKD,QAASS,UAA8B,IAApBR,KAAKJ,gBAAqBa,QAAQ,O,UC1E1E,EAAOC,OAAS,EAChB,EAAOC,UAAY,kBAEJ,gB,kCCRf,W","file":"static/js/chunk-09eaa919.4ce3bde5.js","sourcesContent":["<template>\n <div class=\"calendar\">\n <Loading v-if=\"loading\" />\n\n <div class=\"no-events\" v-else-if=\"!events.length\">\n No events found\n </div>\n\n <div class=\"event upcoming-event\" v-else-if=\"events.length > 0\">\n <div class=\"date\" v-text=\"formatDate(events[0].start)\"></div>\n <div class=\"summary\" v-text=\"events[0].summary\"></div>\n <div class=\"time\">\n {{ formatTime(events[0].start, false) }} -\n {{ formatTime(events[0].end, false) }}\n </div>\n </div>\n\n <div class=\"event-list\" v-if=\"events.length > 1\">\n <div class=\"event\" v-for=\"event in events.slice(1, maxEvents)\" :key=\"event.id\">\n <div class=\"date col-2\" v-text=\"formatDate(event.start)\"></div>\n <div class=\"time col-2\" v-text=\"formatTime(event.start, false)\"></div>\n <div class=\"summary col-8\" v-text=\"event.summary\"></div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport Utils from \"@/Utils\";\nimport Loading from \"@/components/Loading\";\n\nexport default {\n name: \"Calendar\",\n components: {Loading},\n mixins: [Utils],\n props: {\n // Maximum number of events to be rendered.\n maxEvents: {\n type: Number,\n required: false,\n default: 10,\n },\n\n // Refresh interval in seconds.\n refreshSeconds: {\n type: Number,\n required: false,\n default: 600,\n },\n },\n\n data: function() {\n return {\n events: [],\n loading: false,\n }\n },\n\n methods: {\n refresh: async function() {\n this.loading = true\n\n try {\n this.events = (await this.request('calendar.get_upcoming_events')).map(event => {\n if (event.start)\n event.start = new Date(event.start.dateTime || event.start.date)\n if (event.end)\n event.end = new Date(event.end.dateTime || event.end.date)\n\n return event\n })\n } finally {\n this.loading = false\n }\n },\n },\n\n mounted: function() {\n this.refresh()\n setInterval(this.refresh, parseInt((this.refreshSeconds*1000).toFixed(0)))\n },\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.calendar {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n\n .no-events {\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 1.75em;\n }\n\n .event {\n font-size: 1.1em;\n }\n\n .event-list {\n margin-top: 2em;\n }\n\n .upcoming-event {\n text-align: center;\n margin-bottom: .15em;\n font-size: 1.2em;\n\n .date {\n font-size: 1.1em;\n }\n\n .summary {\n text-transform: uppercase;\n font-size: 1.3em;\n }\n }\n}\n</style>","import { render } from \"./Index.vue?vue&type=template&id=0b588edf&scoped=true\"\nimport script from \"./Index.vue?vue&type=script&lang=js\"\nexport * from \"./Index.vue?vue&type=script&lang=js\"\n\nimport \"./Index.vue?vue&type=style&index=0&id=0b588edf&lang=scss&scoped=true\"\nscript.render = render\nscript.__scopeId = \"data-v-0b588edf\"\n\nexport default script","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./Index.vue?vue&type=style&index=0&id=0b588edf&lang=scss&scoped=true\""],"sourceRoot":""}