nextcloud/dist/core-recommendedapps.js

3 lines
9.3 KiB
JavaScript
Raw Normal View History

/*! For license information please see core-recommendedapps.js.LICENSE.txt */
(()=>{"use strict";var t,e={5941:(t,e,n)=>{var a=n(77958),i=n(31352),o=n(20144),r=n(17499);const s=null===(l=(0,a.ts)())?(0,r.IY)().setApp("core").build():(0,r.IY)().setApp("core").setUid(l.uid).build();var l,p=n(93664),c=n(79753),d=n(43554),u=n(43452);function m(t){if(!Number.isInteger(t)&&t!==Number.POSITIVE_INFINITY||!(t>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");const e=new u.Z;let n=0;const a=async(t,a,i)=>{n++;const o=(async()=>t(...i))();a(o);try{await o}catch{}n--,e.size>0&&e.dequeue()()},i=function(i){for(var o=arguments.length,r=new Array(o>1?o-1:0),s=1;s<o;s++)r[s-1]=arguments[s];return new Promise((o=>{((i,o,r)=>{e.enqueue(a.bind(void 0,i,o,r)),(async()=>{await Promise.resolve(),n<t&&e.size>0&&e.dequeue()()})()})(i,o,r)}))};return Object.defineProperties(i,{activeCount:{get:()=>n},pendingCount:{get:()=>e.size},clearQueue:{value:()=>{e.clear()}}}),i}var g=n(74628);const A={calendar:{description:(0,i.Iu)("core","Schedule work & meetings, synced with all your devices."),icon:(0,c.imagePath)("core","places/calendar.svg")},contacts:{description:(0,i.Iu)("core","Keep your colleagues and friends in one place without leaking their private info."),icon:(0,c.imagePath)("core","places/contacts.svg")},mail:{description:(0,i.Iu)("core","Simple email app nicely integrated with Files, Contacts and Calendar."),icon:(0,c.imagePath)("core","actions/mail.svg")},spreed:{description:(0,i.Iu)("core","Chatting, video calls, screensharing, online meetings and web conferencing in your browser and with mobile apps."),icon:(0,c.imagePath)("core","apps/spreed.svg")},richdocuments:{name:"Nextcloud Office",description:(0,i.Iu)("core","Collaborative documents, spreadsheets and presentations, built on Collabora Online."),icon:(0,c.imagePath)("core","apps/richdocuments.svg")},notes:{description:(0,i.Iu)("core","Distraction free note taking app."),icon:(0,c.imagePath)("core","apps/notes.svg")},richdocumentscode:{hidden:!0}},h=Object.keys(A),f={name:"RecommendedApps",components:{NcButton:g.Z},data:()=>({showInstallButton:!1,installingApps:!1,loadingApps:!0,loadingAppsError:!1,apps:[],defaultPageUrl:(0,d.j)("core","defaultPageUrl")}),computed:{recommendedApps(){return this.apps.filter((t=>h.includes(t.id)))}},async mounted(){try{const{data:t}=await p.Z.get((0,c.generateUrl)("settings/apps/list"));s.info(`${t.apps.length} apps fetched`),this.apps=t.apps.map((t=>Object.assign(t,{loading:!1,installationError:!1}))),s.debug(`${this.recommendedApps.length} recommended apps found`,{apps:this.recommendedApps}),this.showInstallButton=!0}catch(t){s.error("could not fetch app list",{error:t}),this.loadingAppsError=!0}finally{this.loadingApps=!1}},methods:{installApps(){this.showInstallButton=!1,this.installingApps=!0;const t=m(1),e=this.recommendedApps.filter((t=>!t.active&&t.isCompatible&&t.canInstall)).map((e=>t((()=>(s.info(`installing ${e.id}`),e.loading=!0,p.Z.post((0,c.generateUrl)("settings/apps/enable"),{appIds:[e.id],groups:[]}).catch((t=>{s.error(`could not install ${e.id}`,{error:t}),e.installationError=!0})).then((()=>{s.info(`installed ${e.id}`),e.loading=!1})))))));s.debug(`installing ${e.length} recommended apps`),Promise.all(e).then((()=>{s.info("all recommended apps installed, redirecting …"),window.location=this.defaultPageUrl})).catch((t=>s.error("could not install recommended apps",{error:t})))},customIcon:t=>t in A&&A[t].icon?A[t].icon:(s.warn(`no app icon for recommended app ${t}`),(0,c.imagePath)("core","places/default-app-icon.svg")),customName:t=>t.id in A&&A[t.id].name||t.name,customDescription:t=>t in A?A[t].description:(s.warn(`no app description for recommended app ${t}`),""),isHidden:t=>t in A&&!!A[t].hidden}};var v=n(93379),b=n.n(v),C=n(7795),y=n.n(C),w=n(90569),_=n.n(w),x=n(3565),I=n.n(x),k=n(19216),P=n.n(k),O=n(44589),B=n.n(O),j=n(14400),E={};E.styleTagTransform=B(),E.setAttributes=I(),E.insert=_().bind(null,"head"),E.domAPI=y(),E.insertStyleElement=P(),b()(j.Z,E),j.Z&&j.Z.locals&&j.Z.locals;const D=(0,n(51900).Z)(f,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"
//# sourceMappingURL=core-recommendedapps.js.map?v=681c4dc904bc148191b7