server/dist/core-login.js

3 lines
106 KiB
JavaScript

/*! For license information please see core-login.js.LICENSE.txt */
(()=>{var e,o={49521:(e,o,s)=>{"use strict";var a=s(20144),r=s(74854),i=s(19755),l=s.n(i),c=s(79753);const d={},u=[];var p=s(64492),f=s(26932);const h={updatableNotification:null,getDefaultNotificationFunction:null,setDefault(t){this.getDefaultNotificationFunction=t},hide(t,e){p.default.isFunction(t)&&(e=t,t=void 0),t?(t.each((function(){l()(this)[0].toastify?l()(this)[0].toastify.hideToast():console.error("cannot hide toast because object is not set"),this===this.updatableNotification&&(this.updatableNotification=null)})),e&&e.call(),this.getDefaultNotificationFunction&&this.getDefaultNotificationFunction()):console.error("Missing argument $row in OC.Notification.hide() call, caller needs to be adjusted to only dismiss its own notification")},showHtml(t,e){(e=e||{}).isHTML=!0,e.timeout=e.timeout?e.timeout:f.Rl;const n=(0,f.PV)(t,e);return n.toastElement.toastify=n,l()(n.toastElement)},show(t,e){(e=e||{}).timeout=e.timeout?e.timeout:f.Rl;const n=(0,f.PV)(function(t){return t.toString().split("&").join("&amp;").split("<").join("&lt;").split(">").join("&gt;").split('"').join("&quot;").split("'").join("&#039;")}(t),e);return n.toastElement.toastify=n,l()(n.toastElement)},showUpdate(t){return this.updatableNotification&&this.updatableNotification.hideToast(),this.updatableNotification=(0,f.PV)(t,{timeout:f.Rl}),this.updatableNotification.toastElement.toastify=this.updatableNotification,l()(this.updatableNotification.toastElement)},showTemporary(t,e){(e=e||{}).timeout=e.timeout||f.TN;const n=(0,f.PV)(t,e);return n.toastElement.toastify=n,l()(n.toastElement)},isHidden:()=>!l()("#content").find(".toastify").length},m=p.default.throttle((()=>{h.showTemporary(t("core","Connection to server lost"))}),7e3,{trailing:!1});let g=!1;const v={enableDynamicSlideToggle(){g=!0},showAppSidebar:function(t){(t||l()("#app-sidebar")).removeClass("disappear").show(),l()("#app-content").trigger(new(l().Event)("appresized"))},hideAppSidebar:function(t){(t||l()("#app-sidebar")).hide().addClass("disappear"),l()("#app-content").trigger(new(l().Event)("appresized"))}};var w=s(64492);function y(t,e,n){"post"!==t&&"delete"!==t||!Et.PasswordConfirmation.requiresPasswordConfirmation()?(n=n||{},l().ajax({type:t.toUpperCase(),url:(0,c.generateOcsUrl)("apps/provisioning_api/api/v1/config/apps")+e,data:n.data||{},success:n.success,error:n.error})):Et.PasswordConfirmation.requirePasswordConfirmation(w.bind(y,this,t,e,n))}const b=window.oc_appconfig||{},_={getValue:function(t,e,n,o){!function(t,e,n,o){(o=o||{}).data={defaultValue:n},y("get","/"+t+"/"+e,o)}(t,e,n,{success:o})},setValue:function(t,e,n){!function(t,e,n,o){(o=o||{}).data={value:n},y("post","/"+t+"/"+e,o)}(t,e,n)},getApps:function(t){!function(t){y("get","",t)}({success:t})},getKeys:function(t,e){!function(t,e){y("get","/"+t,e)}(t,{success:e})},deleteKey:function(t,e){!function(t,e,n){y("delete","/"+t+"/"+e,void 0)}(t,e)}},P=void 0!==window._oc_appswebroots&&window._oc_appswebroots;var C=s(72316),k=s.n(C),x=s(87240);const T={create:"POST",update:"PROPPATCH",patch:"PROPPATCH",delete:"DELETE",read:"PROPFIND"};function A(t,e){if(p.default.isArray(t))return p.default.map(t,(function(t){return A(t,e)}));var n={href:t.href};return p.default.each(t.propStat,(function(t){if("HTTP/1.1 200 OK"===t.status)for(var o in t.properties){var s=o;o in e&&(s=e[o]),n[s]=t.properties[o]}})),n.id||(n.id=O(n.href)),n}function O(t){var e=t.indexOf("?");e>0&&(t=t.substr(0,e));var n,o=t.split("/");do{n=o[o.length-1],o.pop()}while(!n&&o.length>0);return n}function E(t){return t>=200&&t<=299}function L(t,e,n,o){return t.propPatch(e.url,function(t,e){var n,o={};for(n in t){var s=e[n],a=t[n];s||(console.warn('No matching DAV property for property "'+n),s=n),(p.default.isBoolean(a)||p.default.isNumber(a))&&(a=""+a),o[s]=a}return o}(n.changed,e.davProperties),o).then((function(t){E(t.status)?p.default.isFunction(e.success)&&e.success(n.toJSON()):p.default.isFunction(e.error)&&e.error(t)}))}const S=k().noConflict();Object.assign(S,{davCall:(t,e)=>{var n=new x.dav.Client({baseUrl:t.url,xmlNamespaces:p.default.extend({"DAV:":"d","http://owncloud.org/ns":"oc"},t.xmlNamespaces||{})});n.resolveUrl=function(){return t.url};var o=p.default.extend({"X-Requested-With":"XMLHttpRequest",requesttoken:OC.requestToken},t.headers);return"PROPFIND"===t.type?function(t,e,n,o){return t.propFind(e.url,p.default.values(e.davProperties)||[],e.depth,o).then((function(t){if(E(t.status)){if(p.default.isFunction(e.success)){var n=p.default.invert(e.davProperties),o=A(t.body,n);e.depth>0&&o.shift(),e.success(o)}}else p.default.isFunction(e.error)&&e.error(t)}))}(n,t,0,o):"PROPPATCH"===t.type?L(n,t,e,o):"MKCOL"===t.type?function(t,e,n,o){return t.request(e.type,e.url,o,null).then((function(s){E(s.status)?L(t,e,n,o):p.default.isFunction(e.error)&&e.error(s)}))}(n,t,e,o):function(t,e,n,o){return o["Content-Type"]="application/json",t.request(e.type,e.url,o,e.data).then((function(t){if(E(t.status)){if(p.default.isFunction(e.success)){if("PUT"===e.type||"POST"===e.type||"MKCOL"===e.type){var o=t.body||n.toJSON(),s=t.xhr.getResponseHeader("Content-Location");return"POST"===e.type&&s&&(o.id=O(s)),void e.success(o)}if(207===t.status){var a=p.default.invert(e.davProperties);e.success(A(t.body,a))}else e.success(t.body)}}else p.default.isFunction(e.error)&&e.error(t)}))}(n,t,e,o)},davSync:(t=>(e,n,o)=>{var s={type:T[e]||e},a=n instanceof t.Collection;if("update"===e&&(n.hasInnerCollection?s.type="MKCOL":(n.usePUT||n.collection&&n.collection.usePUT)&&(s.type="PUT")),o.url||(s.url=p.default.result(n,"url")||function(){throw new Error('A "url" property or function must be specified')}()),null!=o.data||!n||"create"!==e&&"update"!==e&&"patch"!==e||(s.data=JSON.stringify(o.attrs||n.toJSON(o))),"PROPFIND"!==s.type&&(s.processData=!1),"PROPFIND"===s.type||"PROPPATCH"===s.type){var r=n.davProperties;!r&&n.model&&(r=n.model.prototype.davProperties),r&&(p.default.isFunction(r)?s.davProperties=r.call(n):s.davProperties=r),s.davProperties=p.default.extend(s.davProperties||{},o.davProperties),p.default.isUndefined(o.depth)&&(o.depth=a?1:0)}var i=o.error;o.error=function(t,e,n){o.textStatus=e,o.errorThrown=n,i&&i.call(o.context,t,e,n)};var l=o.xhr=t.davCall(p.default.extend(s,o),n);return n.trigger("request",n,l,o),l})(S)});const j=S;var U=s(76632);const I=window._oc_config||{};var F=s(64492);const R=C.Model.extend({defaults:{fullName:"",lastMessage:"",actions:[],hasOneAction:!1,hasTwoActions:!1,hasManyActions:!1},initialize:function(){0===this.get("actions").length?this.set("hasOneAction",!0):1===this.get("actions").length?(this.set("hasTwoActions",!0),this.set("secondAction",this.get("actions")[0])):this.set("hasManyActions",!0)}}),$=C.Collection.extend({model:R}),N=C.View.extend({_collection:void 0,_subViews:[],initialize:function(t){this._collection=t.collection},render:function(){var t=this;return t.$el.html(""),t._subViews=[],t._collection.forEach((function(e){var n=new M({model:e});n.render(),t.$el.append(n.$el),n.on("toggle:actionmenu",t._onChildActionMenuToggle,t),t._subViews.push(n)})),t},_onChildActionMenuToggle:function(t){this._subViews.forEach((function(e){e.trigger("parent:toggle:actionmenu",t)}))}}),M=C.View.extend({className:"contact",_template:void 0,_model:void 0,_actionMenuShown:!1,events:{"click .icon-more":"_onToggleActionsMenu"},contactTemplate:s(10944),template:function(t){return this.contactTemplate(t)},initialize:function(t){this._model=t.model,this.on("parent:toggle:actionmenu",this._onOtherActionMenuOpened,this)},render:function(){return this.$el.html(this.template({contact:this._model.toJSON()})),this.delegateEvents(),this.$("div.avatar").imageplaceholder(this._model.get("fullName")),this.$(".top-action").tooltip({placement:"left"}),this.$(".second-action").tooltip({placement:"left"}),this},_onToggleActionsMenu:function(){this._actionMenuShown=!this._actionMenuShown,this._actionMenuShown?this.$(".menu").show():this.$(".menu").hide(),this.trigger("toggle:actionmenu",this.$el)},_onOtherActionMenuOpened:function(t){this.$el.is(t)||(this._actionMenuShown=!1,this.$(".menu").hide())}}),z=C.View.extend({_loadingTemplate:void 0,_errorTemplate:void 0,_contentTemplate:void 0,_contactsTemplate:void 0,_contacts:void 0,_searchTerm:"",events:{"input #contactsmenu-search":"_onSearch"},templates:{loading:s(95386),error:s(20421),menu:s(66115),list:s(34083)},_onSearch:F.debounce((function(t){var e=this.$("#contactsmenu-search").val();e!==this._searchTerm&&(this.trigger("search",this.$("#contactsmenu-search").val()),this._searchTerm=e)}),700),loadingTemplate:function(t){return this.templates.loading(t)},errorTemplate:function(e){return this.templates.error(F.extend({couldNotLoadText:t("core","Could not load your contacts")},e))},contentTemplate:function(e){return this.templates.menu(F.extend({searchContactsText:t("core","Search contacts …")},e))},contactsTemplate:function(e){return this.templates.list(F.extend({noContactsFoundText:t("core","No contacts found"),showAllContactsText:t("core","Show all contacts …"),contactsAppMgmtText:t("core","Install the Contacts app")},e))},initialize:function(t){this.options=t},showLoading:function(t){this.render(),this._contacts=void 0,this.$(".content").html(this.loadingTemplate({loadingText:t}))},showError:function(){this.render(),this._contacts=void 0,this.$(".content").html(this.errorTemplate())},showContacts:function(t,e){this._contacts=t.contacts,this.render({contacts:t.contacts});var n=new N({collection:t.contacts});n.render(),this.$(".content").html(this.contactsTemplate({contacts:t.contacts,searchTerm:e,contactsAppEnabled:t.contactsAppEnabled,contactsAppURL:Et.generateUrl("/apps/contacts"),canInstallApp:Et.isUserAdmin(),contactsAppMgmtURL:Et.generateUrl("/settings/apps/social/contacts")})),this.$("#contactsmenu-contacts").html(n.$el)},render:function(t){var e=this.$("#contactsmenu-search").val();return this.$el.html(this.contentTemplate(t)),this.$("#contactsmenu-search").val(e),this.$("#contactsmenu-search").focus(),this}}),D=function(t){this.initialize(t)};D.prototype={$el:void 0,_$trigger:void 0,_view:void 0,_contactsPromise:void 0,initialize:function(t){this.$el=t.el,this._$trigger=t.trigger,this._view=new z({el:this.$el}),this._view.on("search",(function(t){this._loadContacts(t)}),this),Et.registerMenu(this._$trigger,this.$el,function(){this._toggleVisibility(!0)}.bind(this),!0),this.$el.on("beforeHide",function(){this._toggleVisibility(!1)}.bind(this))},_toggleVisibility:function(t){return t?this._loadContacts():(this.$el.html(""),Promise.resolve())},_getContacts:function(t){var e=Et.generateUrl("/contactsmenu/contacts");return Promise.resolve(l().ajax(e,{method:"POST",data:{filter:t}}))},_loadContacts:function(e){var n=this;return n._contactsPromise||(n._contactsPromise=n._getContacts(e)),F.isUndefined(e)||""===e?n._view.showLoading(t("core","Loading your contacts …")):n._view.showLoading(t("core","Looking for {term} …",{term:e})),n._contactsPromise.then((function(t){t.contacts=new $(t.contacts),n._view.showContacts(t,e)}),(function(t){n._view.showError(),console.error("There was an error loading your contacts",t)})).then((function(){delete n._contactsPromise})).catch(console.error.bind(this))}};const B=D,q=document.getElementsByTagName("head")[0].getAttribute("data-user"),H=document.getElementsByTagName("head")[0].getAttribute("data-user-displayname"),Y=void 0!==q&&q,K={Search:class{constructor(){console.warn("OCA.Search is deprecated. Please use the unified search API instead")}}},G={YES_NO_BUTTONS:70,OK_BUTTONS:71,FILEPICKER_TYPE_CHOOSE:1,FILEPICKER_TYPE_MOVE:2,FILEPICKER_TYPE_COPY:3,FILEPICKER_TYPE_COPY_MOVE:4,FILEPICKER_TYPE_CUSTOM:5,dialogsCounter:0,alert:function(t,e,n,o){this.message(t,e,"alert",G.OK_BUTTON,n,o)},info:function(t,e,n,o){this.message(t,e,"info",G.OK_BUTTON,n,o)},confirm:function(t,e,n,o){return this.message(t,e,"notice",G.YES_NO_BUTTONS,n,o)},confirmDestructive:function(t,e,n,o,s){return this.message(t,e,"none",n,o,void 0===s||s)},confirmHtml:function(t,e,n,o){return this.message(t,e,"notice",G.YES_NO_BUTTONS,n,o,!0)},prompt:function(e,n,o,s,a,r){return l().when(this._getMessageTemplate()).then((function(i){var c="oc-dialog-"+G.dialogsCounter+"-content",d="#"+c,u=i.octemplate({dialog_name:c,title:n,message:e,type:"notice"}),f=l()("<input/>");f.attr("type",r?"password":"text").attr("id",c+"-input").attr("placeholder",a);var h=l()("<label/>").attr("for",c+"-input").text(a+": ");u.append(h),u.append(f),void 0===s&&(s=!1),l()("body").append(u),void 0!==o&&(o=p.default.once(o));var m=[{text:t("core","No"),click:function(){void 0!==o&&o(!1,f.val()),l()(d).ocdialog("close")}},{text:t("core","Yes"),click:function(){void 0!==o&&o(!0,f.val()),l()(d).ocdialog("close")},defaultButton:!0}];l()(d).ocdialog({closeOnEscape:!0,modal:s,buttons:m,close:function(){void 0!==o&&o(!1,f.val())}}),f.focus(),G.dialogsCounter++}))},filepicker:function(e,n,o,s,a,r,i,c){var d=this;if(this.filepicker.sortField="name",this.filepicker.sortOrder="asc",!this.filepicker.loading){void 0===r&&(r=this.FILEPICKER_TYPE_CHOOSE);var u=t("core","No files in here"),p=t("files","New folder");r!==this.FILEPICKER_TYPE_COPY&&r!==this.FILEPICKER_TYPE_MOVE&&r!==this.FILEPICKER_TYPE_COPY_MOVE||(u=t("core","No more subfolders in here")),this.filepicker.loading=!0,this.filepicker.filesClient=K.Sharing&&K.Sharing.PublicApp&&K.Sharing.PublicApp.fileList?K.Sharing.PublicApp.fileList.filesClient:Et.Files.getClient(),this.filelist=null,i=i||"",c=Object.assign({allowDirectoryChooser:!1},c),l().when(this._getFilePickerTemplate()).then((function(f){d.filepicker.loading=!1,d.$filePicker&&d.$filePicker.ocdialog("close"),null==s&&(s=[]),"string"==typeof s&&(s=[s]),d.$filePicker=f.octemplate({dialog_name:"oc-dialog-filepicker-content",title:e,emptytext:u,newtext:p,nameCol:t("core","Name"),sizeCol:t("core","Size"),modifiedCol:t("core","Modified")}).data("path",i).data("multiselect",o).data("mimetype",s).data("allowDirectoryChooser",c.allowDirectoryChooser),void 0===a&&(a=!1),void 0===o&&(o=!1),d.$filePicker.find("#picker-view-toggle").remove(),d.$filePicker.find("#picker-filestable").removeClass("view-grid"),l()("body").append(d.$filePicker),d._getGridSettings();var h=d.$filePicker.find(".actions.creatable .button-add");r!==d.FILEPICKER_TYPE_CHOOSE||c.allowDirectoryChooser||h.hide(),h.on("focus",(function(){d.$filePicker.ocdialog("setEnterCallback",(function(){event.stopImmediatePropagation(),event.preventDefault(),h.click()}))})),h.on("blur",(function(){d.$filePicker.ocdialog("unsetEnterCallback")})),Et.registerMenu(h,d.$filePicker.find(".menu"),(function(){g.focus(),d.$filePicker.ocdialog("setEnterCallback",(function(){event.stopImmediatePropagation(),event.preventDefault(),d.$filePicker.submit()}));var t=g.val(),e=t.lastIndexOf(".");-1===e&&(e=t.length),g.selectRange(0,e)}));var m=d.$filePicker.find(".filenameform"),g=m.find("input[type='text']");m.find("input[type='submit']").on("click",(function(t){t.stopImmediatePropagation(),t.preventDefault(),m.submit()}));m.on("submit",(function(e){if(e.stopPropagation(),e.preventDefault(),function(){var e=g.val();try{if(function(e){var n=e.trim();if("."===n||".."===n)throw t("files",'"{name}" is an invalid file name.',{name:e});if(0===n.length)throw t("files","File name cannot be empty.");if(-1!==n.indexOf("/"))throw t("files",'"/" is not allowed inside a file name.');if(n.match(Et.config.blacklist_files_regex))throw t("files",'"{name}" is not an allowed filetype',{name:e});return!0}(e)){if(d.filelist.find((function(t){return t.name===this}),e))throw t("files","{newName} already exists",{newName:e},void 0,{escape:!1});return!0}}catch(t){g.attr("title",t),g.tooltip({placement:"right",trigger:"manual",container:".newFolderMenu"}),g.tooltip("_fixTitle"),g.tooltip("show"),g.addClass("error")}return!1}()){var n=g.val();d.filepicker.filesClient.createDirectory(d.$filePicker.data("path")+"/"+n).always((function(t){d._fillFilePicker(d.$filePicker.data("path")+"/"+n)})),Et.hideMenus(),d.$filePicker.ocdialog("unsetEnterCallback"),d.$filePicker.click(),g.val(p)}})),g.keypress((function(t){13!==t.keyCode&&13!==t.which||(t.stopImmediatePropagation(),t.preventDefault(),m.submit())})),d.$filePicker.ready((function(){d.$fileListHeader=d.$filePicker.find(".filelist thead tr"),d.$filelist=d.$filePicker.find(".filelist tbody"),d.$filelistContainer=d.$filePicker.find(".filelist-container"),d.$dirTree=d.$filePicker.find(".dirtree"),d.$dirTree.on("click","div:not(:last-child)",d,(function(t){d._handleTreeListSelect(t,r)})),d.$filelist.on("click","tr",(function(t){d._handlePickerClick(t,l()(this),r)})),d.$fileListHeader.on("click","a",(function(t){var e=d.$filePicker.data("path");d.filepicker.sortField=l()(t.currentTarget).data("sort"),d.filepicker.sortOrder="asc"===d.filepicker.sortOrder?"desc":"asc",d._fillFilePicker(e)})),d._fillFilePicker(i)}));var v=function(t){if(void 0!==n){var e;if(!0===o)e=[],d.$filelist.find("tr.filepicker_element_selected").each((function(t,n){e.push(d.$filePicker.data("path")+"/"+l()(n).data("entryname"))}));else{e=d.$filePicker.data("path");var s=d.$filelist.find("tr.filepicker_element_selected").data("entryname");s&&(e+="/"+s)}n(e,t),d.$filePicker.ocdialog("close")}},w=[];r===G.FILEPICKER_TYPE_CHOOSE?w.push({text:t("core","Choose"),click:function(){v(G.FILEPICKER_TYPE_CHOOSE)},defaultButton:!0}):r===G.FILEPICKER_TYPE_CUSTOM?c.buttons.forEach((function(t){w.push({text:t.text,click:function(){v(t.type)},defaultButton:t.defaultButton})})):(r!==G.FILEPICKER_TYPE_COPY&&r!==G.FILEPICKER_TYPE_COPY_MOVE||w.push({text:t("core","Copy"),click:function(){v(G.FILEPICKER_TYPE_COPY)},defaultButton:!1}),r!==G.FILEPICKER_TYPE_MOVE&&r!==G.FILEPICKER_TYPE_COPY_MOVE||w.push({text:t("core","Move"),click:function(){v(G.FILEPICKER_TYPE_MOVE)},defaultButton:!0})),d.$filePicker.ocdialog({closeOnEscape:!0,width:600,height:500,modal:a,buttons:w,style:{buttons:"aside"},close:function(){try{l()(this).ocdialog("destroy").remove()}catch(t){}d.$filePicker=null}});var y=d.$filePicker.closest(".oc-dialog").find(".primary");-1!==d.$filePicker.data("mimetype").indexOf("httpd/unix-directory")||d.$filePicker.data("allowDirectoryChooser")?y.prop("disabled",!1):y.prop("disabled",!0)})).fail((function(e,n){d.filepicker.loading=!1,0!==e&&alert(t("core","Error loading file picker template: {error}",{error:n}))}))}},message:function(e,n,o,s,a,r,i){return l().when(this._getMessageTemplate()).then((function(c){var d="oc-dialog-"+G.dialogsCounter+"-content",u="#"+d,p=c.octemplate({dialog_name:d,title:n,message:e,type:o},i?{escapeFunction:""}:{});void 0===r&&(r=!1),l()("body").append(p);var f=[];switch(s){case G.YES_NO_BUTTONS:f=[{text:t("core","No"),click:function(){void 0!==a&&a(!1),l()(u).ocdialog("close")}},{text:t("core","Yes"),click:function(){void 0!==a&&a(!0),l()(u).ocdialog("close")},defaultButton:!0}];break;case G.OK_BUTTON:f[0]={text:t("core","OK"),click:function(){l()(u).ocdialog("close"),void 0!==a&&a()},defaultButton:!0};break;default:"object"==typeof s&&s.type===G.YES_NO_BUTTONS&&(f=[{text:s.cancel||t("core","No"),click:function(){void 0!==a&&a(!1),l()(u).ocdialog("close")}},{text:s.confirm||t("core","Yes"),click:function(){void 0!==a&&a(!0),l()(u).ocdialog("close")},defaultButton:!0,classes:s.confirmClasses}])}l()(u).ocdialog({closeOnEscape:!0,closeCallback:()=>{a&&a(!1)},modal:r,buttons:f}),G.dialogsCounter++})).fail((function(o,s){0===o?alert(n+": "+e):alert(t("core","Error loading message template: {error}",{error:s}))}))},_fileexistsshown:!1,fileexists:function(e,o,s,a){var r=this,i=new(l().Deferred),c=function(t,e,n,o,s){o=Math.round(o),s=Math.round(s);for(var a=t.getContext("2d").getImageData(0,0,e,n),r=t.getContext("2d").getImageData(0,0,o,s),i=a.data,l=r.data,c=e/o,d=n/s,u=Math.ceil(c/2),p=Math.ceil(d/2),f=0;f<s;f++)for(var h=0;h<o;h++){for(var m=4*(h+f*o),g=0,v=0,w=0,y=0,b=0,_=0,P=0,C=(f+.5)*d,k=Math.floor(f*d);k<(f+1)*d;k++)for(var x=Math.abs(C-(k+.5))/p,T=(h+.5)*c,A=x*x,O=Math.floor(h*c);O<(h+1)*c;O++){var E=Math.abs(T-(O+.5))/u,L=Math.sqrt(A+E*E);L>=-1&&L<=1&&(g=2*L*L*L-3*L*L+1)>0&&(P+=g*i[3+(E=4*(O+k*e))],w+=g,i[E+3]<255&&(g=g*i[E+3]/250),y+=g*i[E],b+=g*i[E+1],_+=g*i[E+2],v+=g)}l[m]=y/v,l[m+1]=b/v,l[m+2]=_/v,l[m+3]=P/w}t.getContext("2d").clearRect(0,0,Math.max(e,o),Math.max(n,s)),t.width=o,t.height=s,t.getContext("2d").putImageData(r,0,0)},d=function(n,o,s){var a=n.find(".template").clone().removeClass("template").addClass("conflict"),r=a.find(".original"),i=a.find(".replacement");a.data("data",e),a.find(".filename").text(o.name),r.find(".size").text(Et.Util.humanFileSize(o.size)),r.find(".mtime").text(Et.Util.formatDate(o.mtime)),s.size&&s.lastModified&&(i.find(".size").text(Et.Util.humanFileSize(s.size)),i.find(".mtime").text(Et.Util.formatDate(s.lastModified)));var d=o.directory+"/"+o.name,u={file:d,x:96,y:96,c:o.etag,forceIcon:0},p=Files.generatePreviewUrl(u);p=p.replace(/'/g,"%27"),r.find(".icon").css({"background-image":"url('"+p+"')"}),function(t){var e=new(l().Deferred),n=t.type&&t.type.split("/").shift();if(window.FileReader&&"image"===n){var o=new FileReader;o.onload=function(t){var n=new Blob([t.target.result]);window.URL=window.URL||window.webkitURL;var o=window.URL.createObjectURL(n),s=new Image;s.src=o,s.onload=function(){var t,n,o,a,r,i,l,d=(t=s,r=document.createElement("canvas"),i=t.width,l=t.height,i>l?(o=0,n=(i-l)/2):(o=(l-i)/2,n=0),a=Math.min(i,l),r.width=a,r.height=a,r.getContext("2d").drawImage(t,n,o,a,a,0,0,a,a),c(r,a,a,96,96),r.toDataURL("image/png",.7));e.resolve(d)}},o.readAsArrayBuffer(t)}else e.reject();return e}(s).then((function(t){i.find(".icon").css("background-image","url("+t+")")}),(function(){d=Et.MimeType.getIconUrl(s.type),i.find(".icon").css("background-image","url("+d+")")}));var f=n.find(".conflict").length;r.find("input:checkbox").attr("id","checkbox_original_"+f),i.find("input:checkbox").attr("id","checkbox_replacement_"+f),n.append(a),s.lastModified>o.mtime?i.find(".mtime").css("font-weight","bold"):s.lastModified<o.mtime&&r.find(".mtime").css("font-weight","bold"),s.size&&s.size>o.size?i.find(".size").css("font-weight","bold"):s.size&&s.size<o.size&&r.find(".size").css("font-weight","bold"),"readonly"===o.status&&(r.addClass("readonly").find('input[type="checkbox"]').prop("checked",!0).prop("disabled",!0),r.find(".message").text(t("core","read-only")))},u="oc-dialog-fileexists-content",p="#"+u;if(this._fileexistsshown){var f=l()(p+" .conflicts");d(f,o,s);var h=l()(p+" .conflict").length,m=n("core","{count} file conflict","{count} file conflicts",h,{count:h});l()(p).parent().children(".oc-dialog-title").text(m),l()(window).trigger("resize"),i.resolve()}else this._fileexistsshown=!0,l().when(this._getFileExistsTemplate()).then((function(n){var c=t("core","One file conflict"),f=n.octemplate({dialog_name:u,title:c,type:"fileexists",allnewfiles:t("core","New Files"),allexistingfiles:t("core","Already existing files"),why:t("core","Which files do you want to keep?"),what:t("core","If you select both versions, the copied file will have a number added to its name.")});if(l()("body").append(f),o&&s){var h=f.find(".conflicts");d(h,o,s)}var m=[{text:t("core","Cancel"),classes:"cancel",click:function(){void 0!==a.onCancel&&a.onCancel(e),l()(p).ocdialog("close")}},{text:t("core","Continue"),classes:"continue",click:function(){void 0!==a.onContinue&&a.onContinue(l()(p+" .conflict")),l()(p).ocdialog("close")}}];l()(p).ocdialog({width:500,closeOnEscape:!0,modal:!0,buttons:m,closeButton:null,close:function(){r._fileexistsshown=!1;try{l()(this).ocdialog("destroy").remove()}catch(t){}}}),l()(p).css("height","auto");var g=f.closest(".oc-dialog").find("button.continue");function v(){var t=f.find(".conflicts .checkbox:checked").length;g.prop("disabled",0===t)}g.prop("disabled",!0),l()(p).find(".allnewfiles").on("click",(function(){l()(p).find('.conflict .replacement input[type="checkbox"]').prop("checked",l()(this).prop("checked"))})),l()(p).find(".allexistingfiles").on("click",(function(){l()(p).find('.conflict .original:not(.readonly) input[type="checkbox"]').prop("checked",l()(this).prop("checked"))})),l()(p).find(".conflicts").on("click",".replacement,.original:not(.readonly)",(function(){var t=l()(this).find('input[type="checkbox"]');t.prop("checked",!t.prop("checked"))})),l()(p).find(".conflicts").on("click",'.replacement input[type="checkbox"],.original:not(.readonly) input[type="checkbox"]',(function(){var t=l()(this);t.prop("checked",!t.prop("checked"))})),l()(p).on("click",".replacement,.allnewfiles",(function(){var e=l()(p).find('.conflict .replacement input[type="checkbox"]:checked').length;e===l()(p+" .conflict").length?(l()(p).find(".allnewfiles").prop("checked",!0),l()(p).find(".allnewfiles + .count").text(t("core","(all selected)"))):e>0?(l()(p).find(".allnewfiles").prop("checked",!1),l()(p).find(".allnewfiles + .count").text(t("core","({count} selected)",{count:e}))):(l()(p).find(".allnewfiles").prop("checked",!1),l()(p).find(".allnewfiles + .count").text("")),v()})),l()(p).on("click",".original,.allexistingfiles",(function(){var e=l()(p).find('.conflict .original input[type="checkbox"]:checked').length;e===l()(p+" .conflict").length?(l()(p).find(".allexistingfiles").prop("checked",!0),l()(p).find(".allexistingfiles + .count").text(t("core","(all selected)"))):e>0?(l()(p).find(".allexistingfiles").prop("checked",!1),l()(p).find(".allexistingfiles + .count").text(t("core","({count} selected)",{count:e}))):(l()(p).find(".allexistingfiles").prop("checked",!1),l()(p).find(".allexistingfiles + .count").text("")),v()})),i.resolve()})).fail((function(){i.reject(),alert(t("core","Error loading file exists template"))}));return i.promise()},_getGridSettings:function(){var t=this;l().get(Et.generateUrl("/apps/files/api/v1/showgridview"),(function(e){t.$showGridView.get(0).checked=e.gridview,t.$showGridView.next("#picker-view-toggle").removeClass("icon-toggle-filelist icon-toggle-pictures").addClass(e.gridview?"icon-toggle-filelist":"icon-toggle-pictures"),l()(".list-container").toggleClass("view-grid",e.gridview)}))},_onGridviewChange:function(){var t=this.$showGridView.is(":checked");Et.currentUser&&l().post(Et.generateUrl("/apps/files/api/v1/showgridview"),{show:t}),this.$showGridView.next("#picker-view-toggle").removeClass("icon-toggle-filelist icon-toggle-pictures").addClass(t?"icon-toggle-filelist":"icon-toggle-pictures"),l()(".list-container").toggleClass("view-grid",t)},_getFilePickerTemplate:function(){var t=l().Deferred();if(this.$filePickerTemplate)t.resolve(this.$filePickerTemplate);else{var e=this;l().get(Et.filePath("core","templates","filepicker.html"),(function(n){e.$filePickerTemplate=l()(n),e.$listTmpl=e.$filePickerTemplate.find(".filelist tbody tr:first-child").detach(),t.resolve(e.$filePickerTemplate)})).fail((function(e,n,o){t.reject(e.status,o)}))}return t.promise()},_getMessageTemplate:function(){var t=l().Deferred();if(this.$messageTemplate)t.resolve(this.$messageTemplate);else{var e=this;l().get(Et.filePath("core","templates","message.html"),(function(n){e.$messageTemplate=l()(n),t.resolve(e.$messageTemplate)})).fail((function(e,n,o){t.reject(e.status,o)}))}return t.promise()},_getFileExistsTemplate:function(){var t=l().Deferred();if(this.$fileexistsTemplate)t.resolve(this.$fileexistsTemplate);else{var e=this;l().get(Et.filePath("files","templates","fileexists.html"),(function(n){e.$fileexistsTemplate=l()(n),t.resolve(e.$fileexistsTemplate)})).fail((function(){t.reject()}))}return t.promise()},_getFileList:function(t,e){return"string"==typeof e&&(e=[e]),l().getJSON(Et.filePath("files","ajax","list.php"),{dir:t,mimetypes:JSON.stringify(e)})},_fillFilePicker:function(e){var n=this;this.$filelist.empty(),this.$filePicker.find(".emptycontent").hide(),this.$filelistContainer.addClass("icon-loading"),this.$filePicker.data("path",e);var o=this.$filePicker.data("mimetype");"string"==typeof o&&(o=[o]),n.$fileListHeader.find(".sort-indicator").addClass("hidden").removeClass("icon-triangle-n").removeClass("icon-triangle-s"),n.$fileListHeader.find("[data-sort="+n.filepicker.sortField+"] .sort-indicator").removeClass("hidden"),"asc"===n.filepicker.sortOrder?n.$fileListHeader.find("[data-sort="+n.filepicker.sortField+"] .sort-indicator").addClass("icon-triangle-n"):n.$fileListHeader.find("[data-sort="+n.filepicker.sortField+"] .sort-indicator").addClass("icon-triangle-s"),n.filepicker.filesClient.getFolderContents(e).then((function(s,a){n.filelist=a,o&&o.length>0&&-1===o.indexOf("*")&&(a=a.filter((function(t){return"dir"===t.type||-1!==o.indexOf(t.mimetype)})));var r={name:function(t,e){return"dir"===t.type&&"dir"!==e.type?-1:"dir"!==t.type&&"dir"===e.type?1:Et.Util.naturalSortCompare(t.name,e.name)},size:function(t,e){return t.size-e.size},mtime:function(t,e){return t.mtime-e.mtime}},i=r[n.filepicker.sortField]||r.name;a=a.sort((function(t,e){var o=function(t){return t.tags&&t.tags.indexOf(Et.TAG_FAVORITE)>=0};return o(t)&&!o(e)?-1:!o(t)&&o(e)?1:"asc"===n.filepicker.sortOrder?i(t,e):-i(t,e)})),n._fillSlug(),0===a.length?(n.$filePicker.find(".emptycontent").show(),n.$fileListHeader.hide()):(n.$filePicker.find(".emptycontent").hide(),n.$fileListHeader.show()),n.$filelist.empty(),l().each(a,(function(o,s){var a,r;if(s.icon=Et.MimeType.getIconUrl(s.mimetype),void 0!==s.size&&s.size>=0?(a=Et.Util.humanFileSize(parseInt(s.size,10),!0),r=Math.round(160-Math.pow(s.size/1048576,2))):(a=t("files","Pending"),r=80),s.name.length>=10)var i=Math.min(Math.floor(s.name.length/2),10),c=s.name.substr(0,s.name.length-i),d=s.name.substr(s.name.length-i);else c=s.name,d="";var u=n.$listTmpl.octemplate({type:s.type,dir:e,filename:s.name,filename1:c,filename2:d,date:Et.Util.relativeModifiedDate(s.mtime),size:a,sizeColor:r,icon:s.icon});if("file"===s.type){var p={file:e+"/"+s.name,x:100,y:100},f=new Image,h=Et.generateUrl("/core/preview.png?")+l().param(p);f.onload=function(){f.width>5&&u.find("td.filename").attr("style","background-image:url("+h+")")},f.src=h}n.$filelist.append(u)})),n.$filelistContainer.removeClass("icon-loading")}))},_fillSlug:function(){var t=this.$dirTree.find(".actions.creatable").detach();this.$dirTree.empty();var e=this;e.$dirTree.append(t);var n=this.$filePicker.data("path"),o=l()('<div data-dir="{dir}"><a>{name}</a></div>').addClass("crumb");if(n){var s=n.split("/");l().each(s,(function(t,n){if(""===(n=s.pop()))return!1;e.$dirTree.prepend(o.octemplate({dir:s.join("/")+"/"+n,name:n}))}))}o.octemplate({dir:"",name:""},{escapeFunction:null}).prependTo(this.$dirTree)},_handleTreeListSelect:function(t,e){var n=t.data,o=l()(t.target).closest(".crumb").data("dir");n._fillFilePicker(o);var s=t.target.closest(".oc-dialog"),a=l()(".primary",s);this._changeButtonsText(e,o.split(/[/]+/).pop()),-1!==this.$filePicker.data("mimetype").indexOf("httpd/unix-directory")||this.$filePicker.data("allowDirectoryChooser")?a.prop("disabled",!1):a.prop("disabled",!0)},_handlePickerClick:function(t,e,n){var o=this.$filePicker.closest(".oc-dialog").find(".primary");"file"===e.data("type")?(!0===this.$filePicker.data("multiselect")&&t.ctrlKey||this.$filelist.find(".filepicker_element_selected").removeClass("filepicker_element_selected"),e.toggleClass("filepicker_element_selected"),o.prop("disabled",!1)):"dir"===e.data("type")&&(this._fillFilePicker(this.$filePicker.data("path")+"/"+e.data("entryname")),this._changeButtonsText(n,e.data("entryname")),-1!==this.$filePicker.data("mimetype").indexOf("httpd/unix-directory")||this.$filePicker.data("allowDirectoryChooser")?o.prop("disabled",!1):o.prop("disabled",!0))},_changeButtonsText:function(e,n){var o=""===n?t("core","Copy"):t("core","Copy to {folder}",{folder:n}),s=""===n?t("core","Move"):t("core","Move to {folder}",{folder:n}),a=l()(".oc-dialog-buttonrow button");switch(e){case this.FILEPICKER_TYPE_CHOOSE:case this.FILEPICKER_TYPE_CUSTOM:break;case this.FILEPICKER_TYPE_COPY:a.text(o);break;case this.FILEPICKER_TYPE_MOVE:a.text(s);break;case this.FILEPICKER_TYPE_COPY_MOVE:a.eq(0).text(o),a.eq(1).text(s)}}},V=G,W=((t,e)=>{let n=t.getElementsByTagName("head")[0].getAttribute("data-requesttoken");return{getToken:()=>n,setToken:t=>{n=t,e("csrf-token-update",{token:n})}}})(document,r.emit),Z=W.getToken,J=(W.setToken,function(t,e){var n,o,s="";if(this.typelessListeners=[],this.closed=!1,this.listeners={},e)for(n in e)s+=n+"="+encodeURIComponent(e[n])+"&";if(s+="requesttoken="+encodeURIComponent(Z()),this.useFallBack||"undefined"==typeof EventSource){var a="oc_eventsource_iframe_"+J.iframeCount;J.fallBackSources[J.iframeCount]=this,this.iframe=l()("<iframe/>"),this.iframe.attr("id",a),this.iframe.hide(),o="&",-1===t.indexOf("?")&&(o="?"),this.iframe.attr("src",t+o+"fallback=true&fallback_id="+J.iframeCount+"&"+s),l()("body").append(this.iframe),this.useFallBack=!0,J.iframeCount++}else o="&",-1===t.indexOf("?")&&(o="?"),this.source=new EventSource(t+o+s),this.source.onmessage=function(t){for(var e=0;e<this.typelessListeners.length;e++)this.typelessListeners[e](JSON.parse(t.data))}.bind(this);this.listen("__internal__",function(t){"close"===t&&this.close()}.bind(this))});J.fallBackSources=[],J.iframeCount=0,J.fallBackCallBack=function(t,e,n){J.fallBackSources[t].fallBackCallBack(e,n)},J.prototype={typelessListeners:[],iframe:null,listeners:{},useFallBack:!1,fallBackCallBack:function(t,e){var n;if(!this.closed)if(t){if(void 0!==this.listeners.done)for(n=0;n<this.listeners[t].length;n++)this.listeners[t][n](e)}else for(n=0;n<this.typelessListeners.length;n++)this.typelessListeners[n](e)},lastLength:0,listen:function(t,e){e&&e.call&&(t?this.useFallBack?(this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push(e)):this.source.addEventListener(t,(function(t){void 0!==t.data?e(JSON.parse(t.data)):e("")}),!1):this.typelessListeners.push(e))},close:function(){this.closed=!0,void 0!==this.source&&this.source.close()}};const Q=J;var X=s(42515);let tt=null,et=null;const nt=function(t){if(tt){const e=tt;tt.trigger(new(l().Event)("beforeHide")),tt.slideUp(50,(function(){e.trigger(new(l().Event)("afterHide")),t&&t.apply(this,arguments)}))}l()(".menutoggle").attr("aria-expanded",!1),l()(".openedMenu").removeClass("openedMenu"),tt=null,et=null},ot=!!window._oc_isadmin;var st=s(27856),at=s.n(st),rt=s(86834),it=s.n(rt),lt=s(46488),ct=s.n(lt),dt=s(95573),ut=s.n(dt);window._oc_l10n_registry_translations=window._oc_l10n_registry_translations||{},window._oc_l10n_registry_plural_functions=window._oc_l10n_registry_plural_functions||{};const pt=t=>void 0!==window._oc_l10n_registry_translations[t]&&void 0!==window._oc_l10n_registry_plural_functions[t],ft=t=>({translations:window._oc_l10n_registry_translations[t]||{},pluralFunction:window._oc_l10n_registry_plural_functions[t]}),ht={load(t,e){if(pt(t)||"en"===Et.getLocale()){const t=l().Deferred(),n=t.promise();return n.then(e),t.resolve(),n}const n=this,o=(0,c.generateFilePath)(t,"l10n",Et.getLocale()+".json");return l().get(o).then((function(e){e.translations&&n.register(t,e.translations,e.pluralForm)})).then(e)},register(t,e){var n,o,s;n=t,o=e,s=this._getPlural,pt(n)?((t,e,n)=>{window._oc_l10n_registry_translations[t]=Object.assign(window._oc_l10n_registry_translations[t],e),window._oc_l10n_registry_plural_functions[t]=n})(n,o,s):((t,e,n)=>{window._oc_l10n_registry_translations[t]=e,window._oc_l10n_registry_plural_functions[t]=n})(n,o,s)},_unregister:t=>{delete window._oc_l10n_registry_translations[t],delete window._oc_l10n_registry_plural_functions[t]},translate(t,e,n,o,s){const a=s||{};p.default.defaults(a,{escape:!0,sanitize:!0});const r=a.sanitize?at().sanitize:ct(),i=a.escape?ut():ct();let l=e;const c=ft(t).translations[e];return void 0!==c&&(l=c),r("object"==typeof n||void 0!==o?function(t,e,n){return t.replace(/%n/g,n).replace(/{([^{}]*)}/g,(function(t,n){const o=e[n];return r("string"==typeof o||"number"==typeof o?i(o):t)}))}(l,n,o):l)},translatePlural(t,e,n,o,s,a){const r="_"+e+"_::_"+n+"_",i=ft(t),c=i.translations[r];if(void 0!==c){const e=c;if(l().isArray(e)){const n=i.pluralFunction(o);return this.translate(t,e[n],s,o,a)}}return 1===o?this.translate(t,e,s,o,a):this.translate(t,n,s,o,a)},_getPlural(t){let e=Et.getLanguage();if("pt-BR"===e&&(e="xbr"),void 0===e||""===e)return 1===t?0:1;switch(e.length>3&&(e=e.substring(0,e.lastIndexOf("-"))),e){case"az":case"bo":case"dz":case"id":case"ja":case"jv":case"ka":case"km":case"kn":case"ko":case"ms":case"th":case"tr":case"vi":case"zh":default:return 0;case"af":case"bn":case"bg":case"ca":case"da":case"de":case"el":case"en":case"eo":case"es":case"et":case"eu":case"fa":case"fi":case"fo":case"fur":case"fy":case"gl":case"gu":case"ha":case"he":case"hu":case"is":case"it":case"ku":case"lb":case"ml":case"mn":case"mr":case"nah":case"nb":case"ne":case"nl":case"nn":case"no":case"oc":case"om":case"or":case"pa":case"pap":case"ps":case"pt":case"so":case"sq":case"sv":case"sw":case"ta":case"te":case"tk":case"ur":case"zu":return 1===t?0:1;case"am":case"bh":case"fil":case"fr":case"gun":case"hi":case"hy":case"ln":case"mg":case"nso":case"xbr":case"ti":case"wa":return 0===t||1===t?0:1;case"be":case"bs":case"hr":case"ru":case"sh":case"sr":case"uk":return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2;case"cs":case"sk":return 1===t?0:t>=2&&t<=4?1:2;case"ga":return 1===t?0:2===t?1:2;case"lt":return t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2;case"sl":return t%100==1?0:t%100==2?1:t%100==3||t%100==4?2:3;case"mk":return t%10==1?0:1;case"mt":return 1===t?0:0===t||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3;case"lv":return 0===t?0:t%10==1&&t%100!=11?1:2;case"pl":return 1===t?0:t%10>=2&&t%10<=4&&(t%100<12||t%100>14)?1:2;case"cy":return 1===t?0:2===t?1:8===t||11===t?2:3;case"ro":return 1===t?0:0===t||t%100>0&&t%100<20?1:2;case"ar":return 0===t?0:1===t?1:2===t?2:t%100>=3&&t%100<=10?3:t%100>=11&&t%100<=99?4:5}}},mt=ht;it().registerHelper("t",(function(t,e){return ht.translate(t,e)}));var gt=s(9944);const vt={startSaving(e){this.startAction(e,t("core","Saving …"))},startAction(t,e){l()(t).text(e).removeClass("success").removeClass("error").stop(!0,!0).show()},finishedSaving(t,e){this.finishedAction(t,e)},finishedAction(t,e){"success"===e.status?this.finishedSuccess(t,e.data.message):this.finishedError(t,e.data.message)},finishedSuccess(t,e){l()(t).text(e).addClass("success").removeClass("error").stop(!0,!0).delay(3e3).fadeOut(900).show()},finishedError(t,e){l()(t).text(e).addClass("error").removeClass("success").show()}};var wt=s(30381),yt=s.n(wt);const bt={callback:null,pageLoadTime:null,init(){l()(".password-confirm-required").on("click",p.default.bind(this.requirePasswordConfirmation,this)),this.pageLoadTime=yt().now()},requiresPasswordConfirmation(){const t=this.pageLoadTime-1e3*window.nc_pageLoad,e=yt().now()-(t+1e3*window.nc_lastLogin);return window.backendAllowsPasswordConfirmation&&e>18e5},requirePasswordConfirmation(e,n,o){n=void 0!==n?n:{};const s={title:t("core","Authentication required"),text:t("core","This action requires you to confirm your password"),confirm:t("core","Confirm"),label:t("core","Password"),error:""},a=p.default.extend(s,n),r=this;this.requiresPasswordConfirmation()&&Et.dialogs.prompt(a.text,a.title,(function(t,e){t&&""!==e?r._confirmPassword(e,a):p.default.isFunction(o)&&o()}),!0,a.label,!0).then((function(){const t=l()(".oc-dialog:visible");if(t.find(".ui-icon").remove(),t.addClass("password-confirmation"),""!==a.error){const e=l()("<p></p>").addClass("msg warning").text(a.error);t.find(".oc-dialog-content").append(e)}t.find(".oc-dialog-buttonrow").addClass("aside");const e=t.find("button");e.eq(0).hide(),e.eq(1).text(a.confirm)})),this.callback=e},_confirmPassword(e,n){const o=this;l().ajax({url:(0,c.generateUrl)("/login/confirm"),data:{password:e},type:"POST",success(t){window.nc_lastLogin=t.lastLogin,p.default.isFunction(o.callback)&&o.callback()},error(){n.error=t("core","Failed to authenticate, try again"),Et.PasswordConfirmation.requirePasswordConfirmation(o.callback,n)}})}},_t={_plugins:{},register(t,e){let n=this._plugins[t];n||(n=this._plugins[t]=[]),n.push(e)},getPlugins(t){return this._plugins[t]||[]},attach(t,e,n){const o=this.getPlugins(t);for(let t=0;t<o.length;t++)o[t].attach&&o[t].attach(e,n)},detach(t,e,n){const o=this.getPlugins(t);for(let t=0;t<o.length;t++)o[t].detach&&o[t].detach(e,n)}},Pt=window._theme||{},Ct={_handlers:[],_pushState(t,e,n){let o;if(o="string"==typeof t?t:Et.buildQueryString(t),window.history.pushState){if(e=e||location.pathname+"?"+o,navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&parseInt(navigator.userAgent.split("/").pop())<51){const t=document.querySelectorAll('[fill^="url(#"], [stroke^="url(#"], [filter^="url(#invert"]');for(let e,n=0,o=t.length;n<o;n++)e=t[n],e.style.fill=e.style.fill,e.style.stroke=e.style.stroke,e.removeAttribute("filter"),e.setAttribute("filter","url(#invert)")}n?window.history.replaceState(t,"",e):window.history.pushState(t,"",e)}else window.location.hash="?"+o,this._cancelPop=!0},pushState(t,e){this._pushState(t,e,!1)},replaceState(t,e){this._pushState(t,e,!0)},addOnPopStateHandler(t){this._handlers.push(t)},_parseHashQuery(){const t=window.location.hash,e=t.indexOf("?");return e>=0?t.substr(e+1):t.length?t.substr(1):""},_decodeQuery:t=>t.replace(/\+/g," "),parseUrlQuery(){const t=this._parseHashQuery();let e;return t&&(e=Et.parseQueryString(this._decodeQuery(t))),e=p.default.extend(e||{},Et.parseQueryString(this._decodeQuery(location.search))),e||{}},_onPopState(t){if(this._cancelPop)return void(this._cancelPop=!1);let e;if(this._handlers.length){e=t&&t.state,p.default.isString(e)?e=Et.parseQueryString(e):e||(e=this.parseUrlQuery()||{});for(let t=0;t<this._handlers.length;t++)this._handlers[t](e)}}};function kt(t){const e=[];let n,o=0,s=-1,a=0;for(;o<t.length;){n=t.charAt(o);const r=!a&&"."===n||n>="0"&&n<="9";r!==a&&(s++,e[s]="",a=r),e[s]+=n,o++}return e}const xt={History:Ct,humanFileSize:s(3378).s,computerFileSize(t){if("string"!=typeof t)return null;const e=t.toLowerCase().trim();let n=null;const o=e.match(/^[\s+]?([0-9]*)(\.([0-9]+))?( +)?([kmgtp]?b?)$/i);return null===o?null:(n=parseFloat(e),isFinite(n)?(o[5]&&(n*={b:1,k:1024,kb:1024,mb:1048576,m:1048576,gb:1073741824,g:1073741824,tb:1099511627776,t:1099511627776,pb:0x4000000000000,p:0x4000000000000}[o[5]]),n=Math.round(n),n):null)},formatDate:(t,e)=>(void 0===window.TESTING&&console.warn("OC.Util.formatDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment"),e=e||"LLL",yt()(t).format(e)),relativeModifiedDate(e){void 0===window.TESTING&&console.warn("OC.Util.relativeModifiedDate is deprecated and will be removed in Nextcloud 21. See @nextcloud/moment");const n=yt()().diff(yt()(e));return n>=0&&n<45e3?t("core","seconds ago"):yt()(e).fromNow()},getScrollBarWidth(){if(this._scrollBarWidth)return this._scrollBarWidth;const t=document.createElement("p");t.style.width="100%",t.style.height="200px";const e=document.createElement("div");e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.visibility="hidden",e.style.width="200px",e.style.height="150px",e.style.overflow="hidden",e.appendChild(t),document.body.appendChild(e);const n=t.offsetWidth;e.style.overflow="scroll";let o=t.offsetWidth;return n===o&&(o=e.clientWidth),document.body.removeChild(e),this._scrollBarWidth=n-o,this._scrollBarWidth},stripTime:t=>new Date(t.getFullYear(),t.getMonth(),t.getDate()),naturalSortCompare(t,e){let n;const o=kt(t),s=kt(e);for(n=0;o[n]&&s[n];n++)if(o[n]!==s[n]){const t=Number(o[n]),e=Number(s[n]);return t==o[n]&&e==s[n]?t-e:o[n].localeCompare(s[n],Et.getLanguage())}return o.length-s.length},waitFor(t,e){const n=function(){!0!==t()&&setTimeout(n,e)};n()},isCookieSetToValue(t,e){const n=document.cookie.split(";");for(let o=0;o<n.length;o++){const s=n[o].split("=");if(s[0].trim()===t&&s[1].trim()===e)return!0}return!1}},Tt=window._oc_debug;let At=window._oc_webroot;if(void 0===At){At=location.pathname;const t=At.indexOf("/index.php/");At=-1!==t?At.substr(0,t):At.substr(0,At.lastIndexOf("/"))}const Ot=At,Et={coreApps:["","admin","log","core/search","core","3rdparty"],menuSpeed:50,PERMISSION_ALL:31,PERMISSION_CREATE:4,PERMISSION_DELETE:8,PERMISSION_NONE:0,PERMISSION_READ:1,PERMISSION_SHARE:16,PERMISSION_UPDATE:2,TAG_FAVORITE:"_$!<Favorite>!$_",fileIsBlacklisted:t=>!!t.match(I.blacklist_files_regex),addScript:(t,e,n)=>{let o;console.warn("OC.addScript is deprecated, use OCP.Loader.loadScript instead");const s=(0,c.generateFilePath)(t,"js",e+".js");return d[s]?n&&n():(o=l().Deferred(),l().getScript(s,(()=>o.resolve())),d[s]=o),d[s]},addStyle:(t,e)=>{console.warn("OC.addStyle is deprecated, use OCP.Loader.loadStylesheet instead");const n=(0,c.generateFilePath)(t,"css",e+".css");-1===u.indexOf(n)&&(u.push(n),document.createStyleSheet?document.createStyleSheet(n):(e=l()('<link rel="stylesheet" type="text/css" href="'+n+'"/>'),l()("head").append(e)))},Apps:v,AppConfig:_,appConfig:b,appSettings:e=>{if(console.warn("OC.appSettings is deprecated and will be removed with Nextcloud 18"),void 0===e||void 0===e.appid)throw{name:"MissingParameter",message:"The parameter appid is missing"};var n={scriptName:"settings.php",cache:!0};l().extend(n,e);var o=l()("#appsettings");if(0===o.length)throw{name:"MissingDOMElement",message:'There has be be an element with id "appsettings" for the popup to show.'};var s=l()("#appsettings_popup");if(0===s.length&&(l()("body").prepend('<div class="popup hidden" id="appsettings_popup"></div>'),(s=l()("#appsettings_popup")).addClass(o.hasClass("topright")?"topright":"bottomleft")),s.is(":visible"))s.hide().remove();else{const e=o.hasClass("topright")?"up":"left";l().get((0,c.generateFilePath)(n.appid,"",n.scriptName),(function(o){s.html(o).ready((function(){if(s.prepend('<span class="arrow '+e+'"></span><h2>'+t("core","Settings")+'</h2><a class="close"></a>').show(),s.find(".close").bind("click",(function(){s.remove()})),void 0!==n.loadJS){var o;if(!0===n.loadJS)o="settings.js";else{if("string"!=typeof n.loadJS)throw{name:"InvalidParameter",message:'The "loadJS" parameter must be either boolean or a string.'};o=n.loadJS}n.cache&&l().ajaxSetup({cache:!0}),l().getScript((0,c.generateFilePath)(n.appid,"js",o)).fail((function(t,e,n){throw n}))}})).show()}),"html")}},appswebroots:P,Backbone:j,ContactsMenu:B,config:I,currentUser:Y,dialogs:V,EventSource:Q,getCurrentUser:()=>({uid:Y,displayName:H}),isUserAdmin:()=>ot,L10N:mt,_ajaxConnectionLostHandler:m,_processAjaxError:t=>{(0!==t.status||"abort"!==t.statusText&&"timeout"!==t.statusText&&!Et._reloadCalled)&&(p.default.contains([302,303,307,401],t.status)&&Et.currentUser?setTimeout((function(){if(!Et._userIsNavigatingAway&&!Et._reloadCalled){let t=0;const e=5,o=setInterval((function(){h.showUpdate(n("core","Problem loading page, reloading in %n second","Problem loading page, reloading in %n seconds",e-t)),t>=e&&(clearInterval(o),Et.reload()),t++}),1e3);Et._reloadCalled=!0}}),100):0===t.status&&setTimeout((function(){Et._userIsNavigatingAway||Et._reloadCalled||Et._ajaxConnectionLostHandler()}),100))},registerXHRForErrorProcessing:t=>{t.addEventListener&&(t.addEventListener("load",(()=>{4===t.readyState&&(t.status>=200&&t.status<300||304===t.status||l()(document).trigger(new(l().Event)("ajaxError"),t))})),t.addEventListener("error",(()=>{l()(document).trigger(new(l().Event)("ajaxError"),t)})))},getCapabilities:()=>(console.warn("OC.getCapabilities is deprecated and will be removed in Nextcloud 21. See @nextcloud/capabilities"),(0,X.getCapabilities)()),hideMenus:nt,registerMenu:function(t,e,n,o){e.addClass("menu");const s="A"===t.prop("tagName")||"BUTTON"===t.prop("tagName");t.on(s?"click.menu":"click.menu keyup.menu",(function(s){s.preventDefault(),s.key&&"Enter"!==s.key||(e.is(tt)?nt():(tt&&nt(),!0===o&&e.parent().addClass("openedMenu"),t.attr("aria-expanded",!0),e.slideToggle(50,n),tt=e,et=t))}))},showMenu:(t,e,n)=>{e.is(tt)||(nt(),tt=e,et=t,e.trigger(new(l().Event)("beforeShow")),e.show(),e.trigger(new(l().Event)("afterShow")),p.default.isFunction(n)&&n())},unregisterMenu:(t,e)=>{e.is(tt)&&nt(),t.off("click.menu").removeClass("menutoggle"),e.removeClass("menu")},basename:U.EZ,encodePath:U.Ec,dirname:U.XX,isSamePath:U.Mg,joinPaths:U.RQ,getHost:()=>window.location.host,getHostName:()=>window.location.hostname,getPort:()=>window.location.port,getProtocol:()=>window.location.protocol.split(":")[0],getCanonicalLocale:gt.getCanonicalLocale,getLocale:()=>{var t;return null!==(t=l()("html").data("locale"))&&void 0!==t?t:"en"},getLanguage:()=>l()("html").prop("lang"),addTranslations:mt.load,buildQueryString:t=>t?l().map(t,(function(t,e){let n=encodeURIComponent(e);return null!=t&&(n+="="+encodeURIComponent(t)),n})).join("&"):"",parseQueryString:t=>{let e,n;const o={};let s;if(!t)return null;e=t.indexOf("?"),e>=0&&(t=t.substr(e+1));const a=t.replace(/\+/g,"%20").split("&");for(let t=0;t<a.length;t++){const r=a[t];e=r.indexOf("="),n=e>=0?[r.substr(0,e),r.substr(e+1)]:[r],n.length&&(s=decodeURIComponent(n[0]),s&&(o[s]=n.length>1?decodeURIComponent(n[1]):null))}return o},msg:vt,Notification:h,PasswordConfirmation:bt,Plugins:_t,theme:Pt,Util:xt,debug:Tt,filePath:c.generateFilePath,generateUrl:c.generateUrl,get:(Lt=window,t=>{const e=t.split("."),n=e.pop();for(let t=0;t<e.length;t++)if(!(Lt=Lt[e[t]]))return!1;return Lt[n]}),set:(t=>(e,n)=>{const o=e.split("."),s=o.pop();for(let e=0;e<o.length;e++)t[o[e]]||(t[o[e]]={}),t=t[o[e]];return t[s]=n,n})(window),getRootPath:c.getRootUrl,imagePath:c.imagePath,redirect:t=>{window.location=t},reload:()=>{window.location.reload()},requestToken:Z(),linkTo:c.linkTo,linkToOCS:(t,e)=>(0,c.generateOcsUrl)(t,{},{ocsVersion:e||1})+"/",linkToRemote:c.generateRemoteUrl,linkToRemoteBase:t=>(0,c.getRootUrl)()+"/remote.php/"+t,webroot:Ot};var Lt;(0,r.subscribe)("csrf-token-update",(t=>{OC.requestToken=t.token,console.info("OC.requestToken changed",t.token)}));var St=s(16453),jt=s(17563),Ut=s(55586),It=s.n(Ut);const Ft={name:"LoginButton",props:{loading:{type:Boolean,required:!0},invertedColors:{type:Boolean,default:!1}}};var Rt=s(51900);const $t=(0,Rt.Z)(Ft,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{attrs:{id:"submit-wrapper"},on:{click:function(e){return t.$emit("click")}}},[n("input",{staticClass:"login primary",attrs:{id:"submit-form",type:"submit",title:""},domProps:{value:t.loading?t.t("core","Logging in …"):t.t("core","Log in")}}),t._v(" "),n("div",{staticClass:"submit-icon",class:{"icon-confirm-white":!t.loading,"icon-loading-small":t.loading&&t.invertedColors,"icon-loading-small-dark":t.loading&&!t.invertedColors}})])}),[],!1,null,"125b100b",null).exports,Nt={name:"LoginForm",components:{LoginButton:$t},props:{username:{type:String,default:""},redirectUrl:{type:[String,Boolean],default:!1},errors:{type:Array,default:()=>[]},messages:{type:Array,default:()=>[]},throttleDelay:{type:Number,default:0},invertedColors:{type:Boolean,default:!1},autoCompleteAllowed:{type:Boolean,default:!0},directLogin:{type:Boolean,default:!1}},data(){return{loading:!1,timezone:It().determine().name(),timezoneOffset:-(new Date).getTimezoneOffset()/60,user:this.username,password:"",passwordInputType:"password"}},computed:{apacheAuthFailed(){return-1!==this.errors.indexOf("apacheAuthFailed")},internalException(){return-1!==this.errors.indexOf("internalexception")},invalidPassword(){return-1!==this.errors.indexOf("invalidpassword")},userDisabled(){return-1!==this.errors.indexOf("userdisabled")},toggleIcon:()=>(0,c.imagePath)("core","actions/toggle.svg"),loadingIcon:()=>(0,c.imagePath)("core","loading-dark.gif"),loginActionUrl:()=>(0,c.generateUrl)("login")},mounted(){""===this.username?this.$refs.user.focus():this.$refs.password.focus()},methods:{togglePassword(){"password"===this.passwordInputType?this.passwordInputType="text":this.passwordInputType="password"},updateUsername(){this.$emit("update:username",this.user)},submit(){this.loading=!0,this.$emit("submit")}}},Mt=(0,Rt.Z)(Nt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{ref:"loginForm",attrs:{method:"post",name:"login",action:t.loginActionUrl},on:{submit:t.submit}},[n("fieldset",[t.apacheAuthFailed?n("div",{staticClass:"warning"},[t._v("\n\t\t\t"+t._s(t.t("core","Server side authentication failed!"))),n("br"),t._v(" "),n("small",[t._v(t._s(t.t("core","Please contact your administrator."))+"\n\t\t\t")])]):t._e(),t._v(" "),t._l(t.messages,(function(e,o){return n("div",{key:o,staticClass:"warning"},[t._v("\n\t\t\t"+t._s(e)),n("br")])})),t._v(" "),t.internalException?n("div",{staticClass:"warning"},[t._v("\n\t\t\t"+t._s(t.t("core","An internal error occurred."))),n("br"),t._v(" "),n("small",[t._v(t._s(t.t("core","Please try again or contact your administrator."))+"\n\t\t\t")])]):t._e(),t._v(" "),n("div",{staticClass:"hidden",attrs:{id:"message"}},[n("img",{staticClass:"float-spinner",attrs:{alt:"",src:t.loadingIcon}}),t._v(" "),n("span",{attrs:{id:"messageText"}}),t._v(" "),n("div",{staticStyle:{clear:"both"}})]),t._v(" "),n("p",{staticClass:"grouptop",class:{shake:t.invalidPassword}},[n("input",{directives:[{name:"model",rawName:"v-model",value:t.user,expression:"user"}],ref:"user",attrs:{id:"user",type:"text",name:"user",autocapitalize:"none",autocorrect:"off",autocomplete:t.autoCompleteAllowed?"on":"off",placeholder:t.t("core","Username or email"),"aria-label":t.t("core","Username or email"),required:""},domProps:{value:t.user},on:{change:t.updateUsername,input:function(e){e.target.composing||(t.user=e.target.value)}}}),t._v(" "),n("label",{staticClass:"infield",attrs:{for:"user"}},[t._v(t._s(t.t("core","Username or email")))])]),t._v(" "),n("p",{staticClass:"groupbottom",class:{shake:t.invalidPassword}},[n("input",{ref:"password",staticClass:"password-with-toggle",attrs:{id:"password",type:t.passwordInputType,name:"password",autocorrect:"off",autocapitalize:"none",autocomplete:t.autoCompleteAllowed?"current-password":"off",placeholder:t.t("core","Password"),"aria-label":t.t("core","Password"),required:""}}),t._v(" "),n("label",{staticClass:"infield",attrs:{for:"password"}},[t._v(t._s(t.t("Password")))]),t._v(" "),n("a",{staticClass:"toggle-password",attrs:{href:"#"},on:{click:function(e){return e.stopPropagation(),e.preventDefault(),t.togglePassword.apply(null,arguments)}}},[n("img",{attrs:{src:t.toggleIcon,alt:t.t("core","Toggle password visibility")}})])]),t._v(" "),n("LoginButton",{attrs:{loading:t.loading,"inverted-colors":t.invertedColors}}),t._v(" "),t.invalidPassword?n("p",{staticClass:"warning wrongPasswordMsg"},[t._v("\n\t\t\t"+t._s(t.t("core","Wrong username or password."))+"\n\t\t")]):t.userDisabled?n("p",{staticClass:"warning userDisabledMsg"},[t._v("\n\t\t\t"+t._s(t.t("core","User disabled"))+"\n\t\t")]):t._e(),t._v(" "),t.throttleDelay&&t.throttleDelay>5e3?n("p",{staticClass:"warning throttledMsg"},[t._v("\n\t\t\t"+t._s(t.t("core","We have detected multiple invalid login attempts from your IP. Therefore your next login is throttled up to 30 seconds."))+"\n\t\t")]):t._e(),t._v(" "),t.redirectUrl?n("input",{attrs:{type:"hidden",name:"redirect_url"},domProps:{value:t.redirectUrl}}):t._e(),t._v(" "),n("input",{attrs:{type:"hidden",name:"timezone"},domProps:{value:t.timezone}}),t._v(" "),n("input",{attrs:{type:"hidden",name:"timezone_offset"},domProps:{value:t.timezoneOffset}}),t._v(" "),n("input",{attrs:{type:"hidden",name:"requesttoken"},domProps:{value:t.OC.requestToken}}),t._v(" "),t.directLogin?n("input",{attrs:{type:"hidden",name:"direct",value:"1"}}):t._e()],2)])}),[],!1,null,"0b3a0522",null).exports;var zt=s(4820),Dt=s(13053),Bt=s(63024);class qt extends Error{}const Ht={name:"PasswordLessLoginForm",components:{LoginButton:$t,InformationIcon:Dt.Z,LockOpenIcon:Bt.Z},props:{username:{type:String,default:""},redirectUrl:{type:[String,Boolean],default:!1},invertedColors:{type:Boolean,default:!1},autoCompleteAllowed:{type:Boolean,default:!0},isHttps:{type:Boolean,default:!1},isLocalhost:{type:Boolean,default:!1},hasPublicKeyCredential:{type:Boolean,default:!1}},data(){return{user:this.username,loading:!1,validCredentials:!0}},methods:{authenticate(){console.debug("passwordless login initiated"),this.getAuthenticationData(this.user).then((t=>(console.debug(t),t))).then(this.sign).then(this.completeAuthentication).catch((t=>{t instanceof qt?this.validCredentials=!1:console.debug(t)}))},getAuthenticationData(t){const e=function(t){const e=(t=t.replace(/-/g,"+").replace(/_/g,"/")).length%4;if(e){if(1===e)throw new Error("InvalidLengthError: Input base64url string is the wrong length to determine padding");t+=new Array(5-e).join("=")}return window.atob(t)};return function(t){const e=(0,c.generateUrl)("/login/webauthn/start");return zt.default.post(e,{loginName:t}).then((t=>t.data))}(t).then((t=>{if(console.debug("Obtained PublicKeyCredentialRequestOptions"),console.debug(t),!Object.prototype.hasOwnProperty.call(t,"allowCredentials"))throw console.debug("No credentials found."),new qt;return t.challenge=Uint8Array.from(e(t.challenge),(t=>t.charCodeAt(0))),t.allowCredentials=t.allowCredentials.map((function(t){return{...t,id:Uint8Array.from(e(t.id),(t=>t.charCodeAt(0)))}})),console.debug("Converted PublicKeyCredentialRequestOptions"),console.debug(t),t})).catch((t=>{throw console.debug("Error while obtaining data"),t}))},sign(t){const e=function(t){return window.btoa(String.fromCharCode(...t))};return navigator.credentials.get({publicKey:t}).then((t=>{return console.debug(t),console.debug(new Uint8Array(t.rawId)),console.debug(e(new Uint8Array(t.rawId))),{id:t.id,type:t.type,rawId:e(new Uint8Array(t.rawId)),response:{authenticatorData:e(new Uint8Array(t.response.authenticatorData)),clientDataJSON:e(new Uint8Array(t.response.clientDataJSON)),signature:e(new Uint8Array(t.response.signature)),userHandle:t.response.userHandle?(n=new Uint8Array(t.response.userHandle),String.fromCharCode(...n)):null}};var n})).then((t=>(console.debug(t),t))).catch((t=>{console.debug("GOT AN ERROR!"),console.debug(t)}))},completeAuthentication(t){console.debug("TIME TO COMPLETE");const e=this.redirectUrl;return function(t){const e=(0,c.generateUrl)("/login/webauthn/finish");return zt.default.post(e,{data:t}).then((t=>t.data))}(JSON.stringify(t)).then((t=>{console.debug("Logged in redirecting"),window.location.href=e})).catch((t=>{console.debug("GOT AN ERROR WHILE SUBMITTING CHALLENGE!"),console.debug(t)}))},submit(){}}};var Yt=s(93379),Kt=s.n(Yt),Gt=s(27429);Kt()(Gt.Z,{insert:"head",singleton:!1}),Gt.Z.locals;const Vt=(0,Rt.Z)(Ht,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return(t.isHttps||t.isLocalhost)&&t.hasPublicKeyCredential?n("form",{ref:"loginForm",attrs:{method:"post",name:"login"},on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[n("fieldset",[n("p",{staticClass:"grouptop groupbottom"},[n("label",{staticClass:"infield",attrs:{for:"user"}},[t._v(t._s(t.t("core","Username or\temail")))]),t._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:t.user,expression:"user"}],ref:"user",attrs:{id:"user",type:"text",name:"user",autocomplete:t.autoCompleteAllowed?"on":"off",placeholder:t.t("core","Username or email"),"aria-label":t.t("core","Username or email"),required:""},domProps:{value:t.user},on:{change:function(e){return t.$emit("update:username",t.user)},input:function(e){e.target.composing||(t.user=e.target.value)}}})]),t._v(" "),t.validCredentials?t._e():n("div",{staticClass:"body-login-container update form__message-box"},[t._v("\n\t\t\t"+t._s(t.t("core","Your account is not setup for passwordless login."))+"\n\t\t")]),t._v(" "),t.validCredentials?n("LoginButton",{attrs:{loading:t.loading,"inverted-colors":t.invertedColors},on:{click:t.authenticate}}):t._e()],1)]):t.hasPublicKeyCredential?t.isHttps||t.isLocalhost?t._e():n("div",{staticClass:"body-login-container update"},[n("LockOpenIcon",{attrs:{size:"70"}}),t._v(" "),n("h2",[t._v(t._s(t.t("core","Your connection is not secure")))]),t._v(" "),n("p",{staticClass:"infogroup"},[t._v("\n\t\t"+t._s(t.t("core","Passwordless authentication is only available over a secure connection."))+"\n\t")])],1):n("div",{staticClass:"body-login-container update"},[n("InformationIcon",{attrs:{size:"70"}}),t._v(" "),n("h2",[t._v(t._s(t.t("core","Browser not supported")))]),t._v(" "),n("p",{staticClass:"infogroup"},[t._v("\n\t\t"+t._s(t.t("core","Passwordless authentication is not supported in your browser."))+"\n\t")])],1)}),[],!1,null,"4f29a6e2",null).exports,Wt={name:"ResetPassword",props:{username:{type:String,required:!0},resetPasswordLink:{type:String,required:!0},invertedColors:{type:Boolean,default:!1}},data(){return{error:!1,loading:!1,message:void 0,user:this.username}},watch:{username(t){this.user=t}},methods:{updateUsername(){this.$emit("update:username",this.user)},submit(){this.loading=!0,this.error=!1,this.message="";const t=(0,c.generateUrl)("/lostpassword/email"),e={user:this.user};return zt.default.post(t,e).then((t=>t.data)).then((t=>{if("success"!==t.status)throw new Error("got status ".concat(t.status));this.message="send-success"})).catch((t=>{console.error("could not send reset email request",t),this.error=!0,this.message="send-error"})).then((()=>{this.loading=!1}))}}};var Zt=s(44685);Kt()(Zt.Z,{insert:"head",singleton:!1}),Zt.Z.locals;const Jt=(0,Rt.Z)(Wt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[n("fieldset",[n("p",[n("input",{directives:[{name:"model",rawName:"v-model",value:t.user,expression:"user"}],attrs:{id:"user",type:"text",name:"user",autocapitalize:"off",placeholder:t.t("core","Username or email"),"aria-label":t.t("core","Username or email"),required:""},domProps:{value:t.user},on:{change:t.updateUsername,input:function(e){e.target.composing||(t.user=e.target.value)}}}),t._v(" "),n("label",{staticClass:"infield",attrs:{for:"user"}},[t._v(t._s(t.t("core","Username or email")))])]),t._v(" "),n("div",{attrs:{id:"reset-password-wrapper"}},[n("input",{staticClass:"login primary",attrs:{id:"reset-password-submit",type:"submit",title:""},domProps:{value:t.t("core","Reset password")}}),t._v(" "),n("div",{staticClass:"submit-icon",class:{"icon-confirm-white":!t.loading,"icon-loading-small":t.loading&&t.invertedColors,"icon-loading-small-dark":t.loading&&!t.invertedColors}})]),t._v(" "),"send-success"===t.message?n("p",{staticClass:"update"},[t._v("\n\t\t\t"+t._s(t.t("core","A password reset message has been sent to the email address of this account. If you do not receive it, check your spam/junk folders or ask your local administrator for help."))+"\n\t\t\t"),n("br"),t._v("\n\t\t\t"+t._s(t.t("core","If it is not there ask your local administrator."))+"\n\t\t")]):"send-error"===t.message?n("p",{staticClass:"update warning"},[t._v("\n\t\t\t"+t._s(t.t("core","Couldn't send reset email. Please contact your administrator."))+"\n\t\t")]):"reset-error"===t.message?n("p",{staticClass:"update warning"},[t._v("\n\t\t\t"+t._s(t.t("core","Password cannot be changed. Please contact your administrator."))+"\n\t\t")]):t.message?n("p",{staticClass:"update",class:{warning:t.error}}):t._e(),t._v(" "),n("a",{attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.$emit("abort")}}},[t._v("\n\t\t\t"+t._s(t.t("core","Back to login"))+"\n\t\t")])])])}),[],!1,null,"d9d670b8",null).exports,Qt={name:"UpdatePassword",props:{username:{type:String,required:!0},resetPasswordTarget:{type:String,required:!0},invertedColors:{type:Boolean,default:!1}},data(){return{error:!1,loading:!1,message:void 0,user:this.username,password:"",encrypted:!1,proceed:!1}},watch:{username(t){this.user=t}},methods:{async submit(){this.loading=!0,this.error=!1,this.message="";try{const{data:t}=await zt.default.post(this.resetPasswordTarget,{password:this.password,proceed:this.proceed});if(t&&"success"===t.status)this.message="send-success",this.$emit("update:username",this.user),this.$emit("done");else{if(!t||!t.encryption)throw t&&t.msg?new Error(t.msg):new Error;this.encrypted=!0}}catch(e){this.error=!0,this.message=e.message?e.message:t("core","Password cannot be changed. Please contact your administrator.")}finally{this.loading=!1}}}};var Xt=s(91123);Kt()(Xt.Z,{insert:"head",singleton:!1}),Xt.Z.locals;const te=(0,Rt.Z)(Qt,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{on:{submit:function(e){return e.preventDefault(),t.submit.apply(null,arguments)}}},[n("fieldset",[n("p",[n("label",{staticClass:"infield",attrs:{for:"password"}},[t._v(t._s(t.t("core","New password")))]),t._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:t.password,expression:"password"}],attrs:{id:"password",type:"password",name:"password",autocomplete:"new-password",autocapitalize:"none",autocorrect:"off",required:"",placeholder:t.t("core","New password")},domProps:{value:t.password},on:{input:function(e){e.target.composing||(t.password=e.target.value)}}})]),t._v(" "),t.encrypted?n("div",{staticClass:"update"},[n("p",[t._v("\n\t\t\t\t"+t._s(t.t("core","Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?"))+"\n\t\t\t")]),t._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:t.proceed,expression:"proceed"}],staticClass:"checkbox",attrs:{id:"encrypted-continue",type:"checkbox"},domProps:{checked:Array.isArray(t.proceed)?t._i(t.proceed,null)>-1:t.proceed},on:{change:function(e){var n=t.proceed,o=e.target,s=!!o.checked;if(Array.isArray(n)){var a=t._i(n,null);o.checked?a<0&&(t.proceed=n.concat([null])):a>-1&&(t.proceed=n.slice(0,a).concat(n.slice(a+1)))}else t.proceed=s}}}),t._v(" "),n("label",{attrs:{for:"encrypted-continue"}},[t._v("\n\t\t\t\t"+t._s(t.t("core","I know what I'm doing"))+"\n\t\t\t")])]):t._e(),t._v(" "),n("div",{attrs:{id:"submit-wrapper"}},[n("input",{staticClass:"login primary",attrs:{id:"submit",type:"submit",title:""},domProps:{value:t.loading?t.t("core","Resetting password"):t.t("core","Reset password")}}),t._v(" "),n("div",{staticClass:"submit-icon",class:{"icon-loading-small":t.loading&&t.invertedColors,"icon-loading-small-dark":t.loading&&!t.invertedColors}})]),t._v(" "),t.error&&t.message?n("p",{class:{warning:t.error}},[t._v("\n\t\t\t"+t._s(t.message)+"\n\t\t")]):t._e()])])}),[],!1,null,"9ae5fdb4",null).exports,ee=jt.parse(location.search);if("1"===ee.clear)try{window.localStorage.clear(),window.sessionStorage.clear(),console.debug("Browser storage cleared")}catch(t){console.error("Could not clear browser storage",t)}const ne={name:"Login",components:{LoginForm:Mt,PasswordLessLoginForm:Vt,ResetPassword:Jt,UpdatePassword:te},data(){return{loading:!1,user:this.username,passwordlessLogin:!1,resetPassword:!1,errors:(0,St.loadState)("core","loginErrors",[]),messages:(0,St.loadState)("core","loginMessages",[]),redirectUrl:(0,St.loadState)("core","loginRedirectUrl",!1),username:(0,St.loadState)("core","loginUsername",""),throttleDelay:(0,St.loadState)("core","loginThrottleDelay",0),invertedColors:OCA.Theming&&OCA.Theming.inverted,canResetPassword:(0,St.loadState)("core","loginCanResetPassword",!1),resetPasswordLink:(0,St.loadState)("core","loginResetPasswordLink",""),autoCompleteAllowed:(0,St.loadState)("core","loginAutocomplete",!0),resetPasswordTarget:(0,St.loadState)("core","resetPasswordTarget",""),resetPasswordUser:(0,St.loadState)("core","resetPasswordUser",""),directLogin:"1"===ee.direct,hasPasswordless:(0,St.loadState)("core","webauthn-available",!1),countAlternativeLogins:(0,St.loadState)("core","countAlternativeLogins",!1),isHttps:"https:"===window.location.protocol,isLocalhost:"localhost"===window.location.hostname,hasPublicKeyCredential:void 0!==window.PublicKeyCredential,hideLoginForm:(0,St.loadState)("core","hideLoginForm",!1)}},methods:{passwordResetFinished(){this.resetPasswordTarget="",this.directLogin=!0}}};var oe=s(35162);Kt()(oe.Z,{insert:"head",singleton:!1}),oe.Z.locals;const se=(0,Rt.Z)(ne,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return!t.hideLoginForm||t.directLogin?n("div",[n("transition",{attrs:{name:"fade",mode:"out-in"}},[t.passwordlessLogin||t.resetPassword||""!==t.resetPasswordTarget?!t.loading&&t.passwordlessLogin?n("div",{key:"reset",staticClass:"login-additional"},[n("PasswordLessLoginForm",{attrs:{username:t.user,"redirect-url":t.redirectUrl,"inverted-colors":t.invertedColors,"auto-complete-allowed":t.autoCompleteAllowed,"is-https":t.isHttps,"is-localhost":t.isLocalhost,"has-public-key-credential":t.hasPublicKeyCredential},on:{"update:username":function(e){t.user=e},submit:function(e){t.loading=!0}}}),t._v(" "),n("a",{attrs:{href:"#"},on:{click:function(e){e.preventDefault(),t.passwordlessLogin=!1}}},[t._v("\n\t\t\t\t"+t._s(t.t("core","Back"))+"\n\t\t\t")])],1):!t.loading&&t.canResetPassword?n("div",{key:"reset",staticClass:"login-additional"},[n("div",{staticClass:"lost-password-container"},[t.resetPassword?n("ResetPassword",{attrs:{username:t.user,"reset-password-link":t.resetPasswordLink,"inverted-colors":t.invertedColors},on:{"update:username":function(e){t.user=e},abort:function(e){t.resetPassword=!1}}}):t._e()],1)]):""!==t.resetPasswordTarget?n("div",[n("UpdatePassword",{attrs:{username:t.user,"reset-password-target":t.resetPasswordTarget,"inverted-colors":t.invertedColors},on:{"update:username":function(e){t.user=e},done:t.passwordResetFinished}})],1):t._e():n("div",{key:"login"},[n("LoginForm",{attrs:{username:t.user,"redirect-url":t.redirectUrl,"direct-login":t.directLogin,messages:t.messages,errors:t.errors,"throttle-delay":t.throttleDelay,"inverted-colors":t.invertedColors,"auto-complete-allowed":t.autoCompleteAllowed},on:{"update:username":function(e){t.user=e},submit:function(e){t.loading=!0}}}),t._v(" "),t.canResetPassword&&""!==t.resetPasswordLink?n("a",{attrs:{id:"lost-password",href:t.resetPasswordLink}},[t._v("\n\t\t\t\t"+t._s(t.t("core","Forgot password?"))+"\n\t\t\t")]):t.canResetPassword&&!t.resetPassword?n("a",{attrs:{id:"lost-password",href:t.resetPasswordLink},on:{click:function(e){e.preventDefault(),t.resetPassword=!0}}},[t._v("\n\t\t\t\t"+t._s(t.t("core","Forgot password?"))+"\n\t\t\t")]):t._e(),t._v(" "),n("br"),t._v(" "),t.hasPasswordless?[t.countAlternativeLogins?n("div",{staticClass:"alternative-logins"},[t.hasPasswordless?n("a",{staticClass:"button",class:{"single-alt-login-option":t.countAlternativeLogins},attrs:{href:"#"},on:{click:function(e){e.preventDefault(),t.passwordlessLogin=!0}}},[t._v("\n\t\t\t\t\t\t"+t._s(t.t("core","Log in with a device"))+"\n\t\t\t\t\t")]):t._e()]):n("a",{attrs:{href:"#"},on:{click:function(e){e.preventDefault(),t.passwordlessLogin=!0}}},[t._v("\n\t\t\t\t\t"+t._s(t.t("core","Log in with a device"))+"\n\t\t\t\t")])]:t._e()],2)])],1):n("div",[n("transition",{attrs:{name:"fade",mode:"out-in"}},[n("div",{staticClass:"warning"},[t._v("\n\t\t\t"+t._s(t.t("core","Login form is disabled."))),n("br"),t._v(" "),n("small",[t._v(t._s(t.t("core","Please contact your administrator."))+"\n\t\t\t")])])])],1)}),[],!1,null,null,null).exports,ae={data:()=>({OC:Et}),methods:{t:mt.translate.bind(mt),n:mt.translatePlural.bind(mt)}};a.default.mixin(ae),(new(a.default.extend(se))).$mount("#login")},27429:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});var o=n(94015),s=n.n(o),a=n(23645),r=n.n(a)()(s());r.push([t.id,".body-login-container.update[data-v-4f29a6e2]{margin:15px 0}.body-login-container.update.form__message-box[data-v-4f29a6e2]{width:240px;margin:5px}","",{version:3,sources:["webpack://./core/src/components/login/PasswordLessLoginForm.vue"],names:[],mappings:"AAmOA,8CACC,aAAA,CAEA,gEACC,WAAA,CACA,UAAA",sourcesContent:["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.body-login-container.update {\n\tmargin: 15px 0;\n\n\t&.form__message-box {\n\t\twidth: 240px;\n\t\tmargin: 5px;\n\t}\n}\n"],sourceRoot:""}]);const i=r},44685:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});var o=n(94015),s=n.n(o),a=n(23645),r=n.n(a)()(s());r.push([t.id,"\n.update[data-v-d9d670b8] {\n\twidth: auto;\n}\n","",{version:3,sources:["webpack://./core/src/components/login/ResetPassword.vue"],names:[],mappings:";AAmJA;CACA,WAAA;AACA",sourcesContent:["\x3c!--\n - @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<form @submit.prevent=\"submit\">\n\t\t<fieldset>\n\t\t\t<p>\n\t\t\t\t<input id=\"user\"\n\t\t\t\t\tv-model=\"user\"\n\t\t\t\t\ttype=\"text\"\n\t\t\t\t\tname=\"user\"\n\t\t\t\t\tautocapitalize=\"off\"\n\t\t\t\t\t:placeholder=\"t('core', 'Username or email')\"\n\t\t\t\t\t:aria-label=\"t('core', 'Username or email')\"\n\t\t\t\t\trequired\n\t\t\t\t\t@change=\"updateUsername\">\n\t\t\t\t\x3c!--<?php p($_['user_autofocus'] ? 'autofocus' : ''); ?>\n\t\t\t\tautocomplete=\"<?php p($_['login_form_autocomplete']); ?>\" autocapitalize=\"none\" autocorrect=\"off\"--\x3e\n\t\t\t\t<label for=\"user\" class=\"infield\">{{ t('core', 'Username or email') }}</label>\n\t\t\t</p>\n\t\t\t<div id=\"reset-password-wrapper\">\n\t\t\t\t<input id=\"reset-password-submit\"\n\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\tclass=\"login primary\"\n\t\t\t\t\ttitle=\"\"\n\t\t\t\t\t:value=\"t('core', 'Reset password')\">\n\t\t\t\t<div class=\"submit-icon\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'icon-confirm-white': !loading,\n\t\t\t\t\t\t'icon-loading-small': loading && invertedColors,\n\t\t\t\t\t\t'icon-loading-small-dark': loading && !invertedColors,\n\t\t\t\t\t}\" />\n\t\t\t</div>\n\t\t\t<p v-if=\"message === 'send-success'\"\n\t\t\t\tclass=\"update\">\n\t\t\t\t{{ t('core', 'A password reset message has been sent to the email address of this account. If you do not receive it, check your spam/junk folders or ask your local administrator for help.') }}\n\t\t\t\t<br>\n\t\t\t\t{{ t('core', 'If it is not there ask your local administrator.') }}\n\t\t\t</p>\n\t\t\t<p v-else-if=\"message === 'send-error'\"\n\t\t\t\tclass=\"update warning\">\n\t\t\t\t{{ t('core', 'Couldn\\'t send reset email. Please contact your administrator.') }}\n\t\t\t</p>\n\t\t\t<p v-else-if=\"message === 'reset-error'\"\n\t\t\t\tclass=\"update warning\">\n\t\t\t\t{{ t('core', 'Password cannot be changed. Please contact your administrator.') }}\n\t\t\t</p>\n\t\t\t<p v-else-if=\"message\"\n\t\t\t\tclass=\"update\"\n\t\t\t\t:class=\"{warning: error}\" />\n\n\t\t\t<a href=\"#\"\n\t\t\t\t@click.prevent=\"$emit('abort')\">\n\t\t\t\t{{ t('core', 'Back to login') }}\n\t\t\t</a>\n\t\t</fieldset>\n\t</form>\n</template>\n\n<script>\nimport axios from '@nextcloud/axios'\n\nimport { generateUrl } from '@nextcloud/router'\n\nexport default {\n\tname: 'ResetPassword',\n\tprops: {\n\t\tusername: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tresetPasswordLink: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tinvertedColors: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\terror: false,\n\t\t\tloading: false,\n\t\t\tmessage: undefined,\n\t\t\tuser: this.username,\n\t\t}\n\t},\n\twatch: {\n\t\tusername(value) {\n\t\t\tthis.user = value\n\t\t},\n\t},\n\tmethods: {\n\t\tupdateUsername() {\n\t\t\tthis.$emit('update:username', this.user)\n\t\t},\n\t\tsubmit() {\n\t\t\tthis.loading = true\n\t\t\tthis.error = false\n\t\t\tthis.message = ''\n\t\t\tconst url = generateUrl('/lostpassword/email')\n\n\t\t\tconst data = {\n\t\t\t\tuser: this.user,\n\t\t\t}\n\n\t\t\treturn axios.post(url, data)\n\t\t\t\t.then(resp => resp.data)\n\t\t\t\t.then(data => {\n\t\t\t\t\tif (data.status !== 'success') {\n\t\t\t\t\t\tthrow new Error(`got status ${data.status}`)\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.message = 'send-success'\n\t\t\t\t})\n\t\t\t\t.catch(e => {\n\t\t\t\t\tconsole.error('could not send reset email request', e)\n\n\t\t\t\t\tthis.error = true\n\t\t\t\t\tthis.message = 'send-error'\n\t\t\t\t})\n\t\t\t\t.then(() => { this.loading = false })\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n\t.update {\n\t\twidth: auto;\n\t}\n</style>\n"],sourceRoot:""}]);const i=r},91123:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});var o=n(94015),s=n.n(o),a=n(23645),r=n.n(a)()(s());r.push([t.id,"\nfieldset[data-v-9ae5fdb4] {\n\ttext-align: center;\n}\ninput[type=submit][data-v-9ae5fdb4] {\n\tmargin-top: 20px;\n}\n","",{version:3,sources:["webpack://./core/src/components/login/UpdatePassword.vue"],names:[],mappings:";AA4IA;CACA,kBAAA;AACA;AAEA;CACA,gBAAA;AACA",sourcesContent:['\x3c!--\n - @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n -\n - @author Julius Härtl <jus@bitgrid.net>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n --\x3e\n\n<template>\n\t<form @submit.prevent="submit">\n\t\t<fieldset>\n\t\t\t<p>\n\t\t\t\t<label for="password" class="infield">{{ t(\'core\', \'New password\') }}</label>\n\t\t\t\t<input id="password"\n\t\t\t\t\tv-model="password"\n\t\t\t\t\ttype="password"\n\t\t\t\t\tname="password"\n\t\t\t\t\tautocomplete="new-password"\n\t\t\t\t\tautocapitalize="none"\n\t\t\t\t\tautocorrect="off"\n\t\t\t\t\trequired\n\t\t\t\t\t:placeholder="t(\'core\', \'New password\')">\n\t\t\t</p>\n\n\t\t\t<div v-if="encrypted" class="update">\n\t\t\t\t<p>\n\t\t\t\t\t{{ t(\'core\', \'Your files are encrypted. There will be no way to get your data back after your password is reset. If you are not sure what to do, please contact your administrator before you continue. Do you really want to continue?\') }}\n\t\t\t\t</p>\n\t\t\t\t<input id="encrypted-continue"\n\t\t\t\t\tv-model="proceed"\n\t\t\t\t\ttype="checkbox"\n\t\t\t\t\tclass="checkbox">\n\t\t\t\t<label for="encrypted-continue">\n\t\t\t\t\t{{ t(\'core\', \'I know what I\\\'m doing\') }}\n\t\t\t\t</label>\n\t\t\t</div>\n\n\t\t\t<div id="submit-wrapper">\n\t\t\t\t<input id="submit"\n\t\t\t\t\ttype="submit"\n\t\t\t\t\tclass="login primary"\n\t\t\t\t\ttitle=""\n\t\t\t\t\t:value="!loading ? t(\'core\', \'Reset password\') : t(\'core\', \'Resetting password\')">\n\t\t\t\t<div class="submit-icon"\n\t\t\t\t\t:class="{\n\t\t\t\t\t\t\'icon-loading-small\': loading && invertedColors,\n\t\t\t\t\t\t\'icon-loading-small-dark\': loading && !invertedColors\n\t\t\t\t\t}" />\n\t\t\t</div>\n\n\t\t\t<p v-if="error && message" :class="{warning: error}">\n\t\t\t\t{{ message }}\n\t\t\t</p>\n\t\t</fieldset>\n\t</form>\n</template>\n\n<script>\nimport Axios from \'@nextcloud/axios\'\n\nexport default {\n\tname: \'UpdatePassword\',\n\tprops: {\n\t\tusername: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tresetPasswordTarget: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tinvertedColors: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t},\n\tdata() {\n\t\treturn {\n\t\t\terror: false,\n\t\t\tloading: false,\n\t\t\tmessage: undefined,\n\t\t\tuser: this.username,\n\t\t\tpassword: \'\',\n\t\t\tencrypted: false,\n\t\t\tproceed: false,\n\t\t}\n\t},\n\twatch: {\n\t\tusername(value) {\n\t\t\tthis.user = value\n\t\t},\n\t},\n\tmethods: {\n\t\tasync submit() {\n\t\t\tthis.loading = true\n\t\t\tthis.error = false\n\t\t\tthis.message = \'\'\n\n\t\t\ttry {\n\t\t\t\tconst { data } = await Axios.post(this.resetPasswordTarget, {\n\t\t\t\t\tpassword: this.password,\n\t\t\t\t\tproceed: this.proceed,\n\t\t\t\t})\n\t\t\t\tif (data && data.status === \'success\') {\n\t\t\t\t\tthis.message = \'send-success\'\n\t\t\t\t\tthis.$emit(\'update:username\', this.user)\n\t\t\t\t\tthis.$emit(\'done\')\n\t\t\t\t} else if (data && data.encryption) {\n\t\t\t\t\tthis.encrypted = true\n\t\t\t\t} else if (data && data.msg) {\n\t\t\t\t\tthrow new Error(data.msg)\n\t\t\t\t} else {\n\t\t\t\t\tthrow new Error()\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tthis.error = true\n\t\t\t\tthis.message = e.message ? e.message : t(\'core\', \'Password cannot be changed. Please contact your administrator.\')\n\t\t\t} finally {\n\t\t\t\tthis.loading = false\n\t\t\t}\n\t\t},\n\t},\n}\n<\/script>\n\n<style scoped>\n\tfieldset {\n\t\ttext-align: center;\n\t}\n\n\tinput[type=submit] {\n\t\tmargin-top: 20px;\n\t}\n</style>\n'],sourceRoot:""}]);const i=r},35162:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});var o=n(94015),s=n.n(o),a=n(23645),r=n.n(a)()(s());r.push([t.id,"\n.fade-enter-active, .fade-leave-active {\n\ttransition: opacity .3s;\n}\n.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\n\topacity: 0;\n}\n","",{version:3,sources:["webpack://./core/src/views/Login.vue"],names:[],mappings:";AAoLA;CACA,uBAAA;AACA;AACA;CACA,UAAA;AACA",sourcesContent:["\x3c!--\n - @copyright 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @author 2019 Christoph Wurst <christoph@winzerhof-wurst.at>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n --\x3e\n\n<template>\n\t<div v-if=\"!hideLoginForm || directLogin\">\n\t\t<transition name=\"fade\" mode=\"out-in\">\n\t\t\t<div v-if=\"!passwordlessLogin && !resetPassword && resetPasswordTarget === ''\"\n\t\t\t\tkey=\"login\">\n\t\t\t\t<LoginForm\n\t\t\t\t\t:username.sync=\"user\"\n\t\t\t\t\t:redirect-url=\"redirectUrl\"\n\t\t\t\t\t:direct-login=\"directLogin\"\n\t\t\t\t\t:messages=\"messages\"\n\t\t\t\t\t:errors=\"errors\"\n\t\t\t\t\t:throttle-delay=\"throttleDelay\"\n\t\t\t\t\t:inverted-colors=\"invertedColors\"\n\t\t\t\t\t:auto-complete-allowed=\"autoCompleteAllowed\"\n\t\t\t\t\t@submit=\"loading = true\" />\n\t\t\t\t<a v-if=\"canResetPassword && resetPasswordLink !== ''\"\n\t\t\t\t\tid=\"lost-password\"\n\t\t\t\t\t:href=\"resetPasswordLink\">\n\t\t\t\t\t{{ t('core', 'Forgot password?') }}\n\t\t\t\t</a>\n\t\t\t\t<a v-else-if=\"canResetPassword && !resetPassword\"\n\t\t\t\t\tid=\"lost-password\"\n\t\t\t\t\t:href=\"resetPasswordLink\"\n\t\t\t\t\t@click.prevent=\"resetPassword = true\">\n\t\t\t\t\t{{ t('core', 'Forgot password?') }}\n\t\t\t\t</a>\n\t\t\t\t<br>\n\t\t\t\t<template v-if=\"hasPasswordless\">\n\t\t\t\t\t<div v-if=\"countAlternativeLogins\"\n\t\t\t\t\t\tclass=\"alternative-logins\">\n\t\t\t\t\t\t<a v-if=\"hasPasswordless\"\n\t\t\t\t\t\t\tclass=\"button\"\n\t\t\t\t\t\t\t:class=\"{ 'single-alt-login-option': countAlternativeLogins }\"\n\t\t\t\t\t\t\thref=\"#\"\n\t\t\t\t\t\t\t@click.prevent=\"passwordlessLogin = true\">\n\t\t\t\t\t\t\t{{ t('core', 'Log in with a device') }}\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>\n\t\t\t\t\t<a v-else\n\t\t\t\t\t\thref=\"#\"\n\t\t\t\t\t\t@click.prevent=\"passwordlessLogin = true\">\n\t\t\t\t\t\t{{ t('core', 'Log in with a device') }}\n\t\t\t\t\t</a>\n\t\t\t\t</template>\n\t\t\t</div>\n\t\t\t<div v-else-if=\"!loading && passwordlessLogin\"\n\t\t\t\tkey=\"reset\"\n\t\t\t\tclass=\"login-additional\">\n\t\t\t\t<PasswordLessLoginForm\n\t\t\t\t\t:username.sync=\"user\"\n\t\t\t\t\t:redirect-url=\"redirectUrl\"\n\t\t\t\t\t:inverted-colors=\"invertedColors\"\n\t\t\t\t\t:auto-complete-allowed=\"autoCompleteAllowed\"\n\t\t\t\t\t:is-https=\"isHttps\"\n\t\t\t\t\t:is-localhost=\"isLocalhost\"\n\t\t\t\t\t:has-public-key-credential=\"hasPublicKeyCredential\"\n\t\t\t\t\t@submit=\"loading = true\" />\n\t\t\t\t<a href=\"#\" @click.prevent=\"passwordlessLogin = false\">\n\t\t\t\t\t{{ t('core', 'Back') }}\n\t\t\t\t</a>\n\t\t\t</div>\n\t\t\t<div v-else-if=\"!loading && canResetPassword\"\n\t\t\t\tkey=\"reset\"\n\t\t\t\tclass=\"login-additional\">\n\t\t\t\t<div class=\"lost-password-container\">\n\t\t\t\t\t<ResetPassword v-if=\"resetPassword\"\n\t\t\t\t\t\t:username.sync=\"user\"\n\t\t\t\t\t\t:reset-password-link=\"resetPasswordLink\"\n\t\t\t\t\t\t:inverted-colors=\"invertedColors\"\n\t\t\t\t\t\t@abort=\"resetPassword = false\" />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div v-else-if=\"resetPasswordTarget !== ''\">\n\t\t\t\t<UpdatePassword :username.sync=\"user\"\n\t\t\t\t\t:reset-password-target=\"resetPasswordTarget\"\n\t\t\t\t\t:inverted-colors=\"invertedColors\"\n\t\t\t\t\t@done=\"passwordResetFinished\" />\n\t\t\t</div>\n\t\t</transition>\n\t</div>\n\t<div v-else>\n\t\t<transition name=\"fade\" mode=\"out-in\">\n\t\t\t<div class=\"warning\">\n\t\t\t\t{{ t('core', 'Login form is disabled.') }}<br>\n\t\t\t\t<small>{{ t('core', 'Please contact your administrator.') }}\n\t\t\t\t</small>\n\t\t\t</div>\n\t\t</transition>\n\t</div>\n</template>\n\n<script>\nimport { loadState } from '@nextcloud/initial-state'\nimport queryString from 'query-string'\n\nimport LoginForm from '../components/login/LoginForm.vue'\nimport PasswordLessLoginForm from '../components/login/PasswordLessLoginForm.vue'\nimport ResetPassword from '../components/login/ResetPassword.vue'\nimport UpdatePassword from '../components/login/UpdatePassword.vue'\n\nconst query = queryString.parse(location.search)\nif (query.clear === '1') {\n\ttry {\n\t\twindow.localStorage.clear()\n\t\twindow.sessionStorage.clear()\n\t\tconsole.debug('Browser storage cleared')\n\t} catch (e) {\n\t\tconsole.error('Could not clear browser storage', e)\n\t}\n}\n\nexport default {\n\tname: 'Login',\n\n\tcomponents: {\n\t\tLoginForm,\n\t\tPasswordLessLoginForm,\n\t\tResetPassword,\n\t\tUpdatePassword,\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tloading: false,\n\t\t\tuser: this.username,\n\t\t\tpasswordlessLogin: false,\n\t\t\tresetPassword: false,\n\n\t\t\t// Initial data\n\t\t\terrors: loadState('core', 'loginErrors', []),\n\t\t\tmessages: loadState('core', 'loginMessages', []),\n\t\t\tredirectUrl: loadState('core', 'loginRedirectUrl', false),\n\t\t\tusername: loadState('core', 'loginUsername', ''),\n\t\t\tthrottleDelay: loadState('core', 'loginThrottleDelay', 0),\n\t\t\tinvertedColors: OCA.Theming && OCA.Theming.inverted,\n\t\t\tcanResetPassword: loadState('core', 'loginCanResetPassword', false),\n\t\t\tresetPasswordLink: loadState('core', 'loginResetPasswordLink', ''),\n\t\t\tautoCompleteAllowed: loadState('core', 'loginAutocomplete', true),\n\t\t\tresetPasswordTarget: loadState('core', 'resetPasswordTarget', ''),\n\t\t\tresetPasswordUser: loadState('core', 'resetPasswordUser', ''),\n\t\t\tdirectLogin: query.direct === '1',\n\t\t\thasPasswordless: loadState('core', 'webauthn-available', false),\n\t\t\tcountAlternativeLogins: loadState('core', 'countAlternativeLogins', false),\n\t\t\tisHttps: window.location.protocol === 'https:',\n\t\t\tisLocalhost: window.location.hostname === 'localhost',\n\t\t\thasPublicKeyCredential: typeof (window.PublicKeyCredential) !== 'undefined',\n\t\t\thideLoginForm: loadState('core', 'hideLoginForm', false),\n\t\t}\n\t},\n\tmethods: {\n\t\tpasswordResetFinished() {\n\t\t\tthis.resetPasswordTarget = ''\n\t\t\tthis.directLogin = true\n\t\t},\n\t},\n}\n<\/script>\n\n<style>\n\t.fade-enter-active, .fade-leave-active {\n\t\ttransition: opacity .3s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active below version 2.1.8 */ {\n\t\topacity: 0;\n\t}\n</style>\n"],sourceRoot:""}]);const i=r},10944:(t,e,n)=>{var o=n(40202);t.exports=(o.default||o).template({1:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(a=r(n,"if").call(null!=e?e:t.nullContext||{},null!=(a=null!=e?r(e,"contact"):e)?r(a,"profileUrl"):a,{name:"if",hash:{},fn:t.program(2,s,0),inverse:t.program(5,s,0),data:s,loc:{start:{line:2,column:1},end:{line:10,column:8}}}))?a:""},2:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(a=r(n,"if").call(null!=e?e:t.nullContext||{},null!=(a=null!=e?r(e,"contact"):e)?r(a,"profileTitle"):a,{name:"if",hash:{},fn:t.program(3,s,0),inverse:t.noop,data:s,loc:{start:{line:3,column:2},end:{line:7,column:9}}}))?a:""},3:function(t,e,n,o,s){var a,r=t.lambda,i=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t\t<a class="profile-link--avatar" href="'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"profileUrl"):a,e))+'">\n\t\t\t\t<img src="'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+'&size=32" class="avatar" srcset="'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+"&size=32 1x, "+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+"&size=64 2x, "+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+'&size=128 4x" alt="">\n\t\t\t</a>\n'},5:function(t,e,n,o,s){var a,r=t.lambda,i=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t<img src="'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+'&size=32" class="avatar" srcset="'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+"&size=32 1x, "+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+"&size=64 2x, "+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"avatar"):a,e))+'&size=128 4x" alt="">\n'},7:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(a=r(n,"if").call(null!=e?e:t.nullContext||{},null!=(a=null!=e?r(e,"contact"):e)?r(a,"profileUrl"):a,{name:"if",hash:{},fn:t.program(8,s,0),inverse:t.program(11,s,0),data:s,loc:{start:{line:12,column:1},end:{line:20,column:8}}}))?a:""},8:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(a=r(n,"if").call(null!=e?e:t.nullContext||{},null!=(a=null!=e?r(e,"contact"):e)?r(a,"profileTitle"):a,{name:"if",hash:{},fn:t.program(9,s,0),inverse:t.noop,data:s,loc:{start:{line:13,column:2},end:{line:17,column:9}}}))?a:""},9:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t\t<a class="profile-link--avatar" href="'+t.escapeExpression(t.lambda(null!=(a=null!=e?r(e,"contact"):e)?r(a,"profileUrl"):a,e))+'">\n\t\t\t\t<div class="avatar"></div>\n\t\t\t</a>\n'},11:function(t,e,n,o,s){return'\t\t<div class="avatar"></div>\n'},13:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(a=r(n,"if").call(null!=e?e:t.nullContext||{},null!=(a=null!=e?r(e,"contact"):e)?r(a,"profileTitle"):a,{name:"if",hash:{},fn:t.program(14,s,0),inverse:t.noop,data:s,loc:{start:{line:23,column:1},end:{line:29,column:8}}}))?a:""},14:function(t,e,n,o,s){var a,r=t.lambda,i=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t<a class="body profile-link--full-name" href="'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"profileUrl"):a,e))+'">\n\t\t\t<div class="full-name">'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"fullName"):a,e))+'</div>\n\t\t\t<div class="last-message">'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"lastMessage"):a,e))+'</div>\n\t\t\t<div class="email-address">'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"emailAddresses"):a,e))+"</div>\n\t\t</a>\n"},16:function(t,e,n,o,s){var a,r=t.lambda,i=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t<div class="body">\n\t\t<div class="full-name">'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"fullName"):a,e))+'</div>\n\t\t<div class="last-message">'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"lastMessage"):a,e))+'</div>\n\t\t<div class="email-address">'+i(r(null!=(a=null!=e?l(e,"contact"):e)?l(a,"emailAddresses"):a,e))+"</div>\n\t</div>\n"},18:function(t,e,n,o,s){var a,r=t.lambda,i=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<a class="top-action" href="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"topAction"):a)?l(a,"hyperlink"):a,e))+'" title="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"topAction"):a)?l(a,"title"):a,e))+'">\n\t<img src="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"topAction"):a)?l(a,"icon"):a,e))+'" alt="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"topAction"):a)?l(a,"title"):a,e))+'">\n</a>\n'},20:function(t,e,n,o,s){var a,r=t.lambda,i=t.escapeExpression,l=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<a class="second-action" href="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"secondAction"):a)?l(a,"hyperlink"):a,e))+'" title="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"secondAction"):a)?l(a,"title"):a,e))+'">\n\t<img src="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"secondAction"):a)?l(a,"icon"):a,e))+'" alt="'+i(r(null!=(a=null!=(a=null!=e?l(e,"contact"):e)?l(a,"secondAction"):a)?l(a,"title"):a,e))+'">\n</a>\n'},22:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t<span class="other-actions icon-more"></span>\n\t<div class="menu popovermenu">\n\t\t<ul>\n'+(null!=(a=r(n,"each").call(null!=e?e:t.nullContext||{},null!=(a=null!=e?r(e,"contact"):e)?r(a,"actions"):a,{name:"each",hash:{},fn:t.program(23,s,0),inverse:t.noop,data:s,loc:{start:{line:51,column:3},end:{line:58,column:12}}}))?a:"")+"\t\t</ul>\n\t</div>\n"},23:function(t,e,n,o,s){var a,r=null!=e?e:t.nullContext||{},i=t.hooks.helperMissing,l="function",c=t.escapeExpression,d=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'\t\t\t<li>\n\t\t\t\t<a href="'+c(typeof(a=null!=(a=d(n,"hyperlink")||(null!=e?d(e,"hyperlink"):e))?a:i)===l?a.call(r,{name:"hyperlink",hash:{},data:s,loc:{start:{line:53,column:13},end:{line:53,column:26}}}):a)+'">\n\t\t\t\t\t<img src="'+c(typeof(a=null!=(a=d(n,"icon")||(null!=e?d(e,"icon"):e))?a:i)===l?a.call(r,{name:"icon",hash:{},data:s,loc:{start:{line:54,column:15},end:{line:54,column:23}}}):a)+'" alt="">\n\t\t\t\t\t<span>'+c(typeof(a=null!=(a=d(n,"title")||(null!=e?d(e,"title"):e))?a:i)===l?a.call(r,{name:"title",hash:{},data:s,loc:{start:{line:55,column:11},end:{line:55,column:20}}}):a)+"</span>\n\t\t\t\t</a>\n\t\t\t</li>\n"},compiler:[8,">= 4.3.0"],main:function(t,e,n,o,s){var a,r=null!=e?e:t.nullContext||{},i=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return(null!=(a=i(n,"if").call(r,null!=(a=null!=e?i(e,"contact"):e)?i(a,"avatar"):a,{name:"if",hash:{},fn:t.program(1,s,0),inverse:t.program(7,s,0),data:s,loc:{start:{line:1,column:0},end:{line:21,column:7}}}))?a:"")+(null!=(a=i(n,"if").call(r,null!=(a=null!=e?i(e,"contact"):e)?i(a,"profileUrl"):a,{name:"if",hash:{},fn:t.program(13,s,0),inverse:t.program(16,s,0),data:s,loc:{start:{line:22,column:0},end:{line:36,column:7}}}))?a:"")+(null!=(a=i(n,"if").call(r,null!=(a=null!=e?i(e,"contact"):e)?i(a,"topAction"):a,{name:"if",hash:{},fn:t.program(18,s,0),inverse:t.noop,data:s,loc:{start:{line:37,column:0},end:{line:41,column:7}}}))?a:"")+(null!=(a=i(n,"if").call(r,null!=(a=null!=e?i(e,"contact"):e)?i(a,"hasTwoActions"):a,{name:"if",hash:{},fn:t.program(20,s,0),inverse:t.noop,data:s,loc:{start:{line:42,column:0},end:{line:46,column:7}}}))?a:"")+(null!=(a=i(n,"if").call(r,null!=(a=null!=e?i(e,"contact"):e)?i(a,"hasManyActions"):a,{name:"if",hash:{},fn:t.program(22,s,0),inverse:t.noop,data:s,loc:{start:{line:47,column:0},end:{line:61,column:7}}}))?a:"")},useData:!0})},20421:(t,e,n)=>{var o=n(40202);t.exports=(o.default||o).template({compiler:[8,">= 4.3.0"],main:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="emptycontent">\n\t<div class="icon-search"></div>\n\t<h2>'+t.escapeExpression("function"==typeof(a=null!=(a=r(n,"couldNotLoadText")||(null!=e?r(e,"couldNotLoadText"):e))?a:t.hooks.helperMissing)?a.call(null!=e?e:t.nullContext||{},{name:"couldNotLoadText",hash:{},data:s,loc:{start:{line:3,column:5},end:{line:3,column:25}}}):a)+"</h2>\n</div>\n"},useData:!0})},34083:(t,e,n)=>{var o=n(40202);t.exports=(o.default||o).template({1:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="emptycontent">\n\t<div class="icon-search"></div>\n\t<h2>'+t.escapeExpression("function"==typeof(a=null!=(a=r(n,"noContactsFoundText")||(null!=e?r(e,"noContactsFoundText"):e))?a:t.hooks.helperMissing)?a.call(null!=e?e:t.nullContext||{},{name:"noContactsFoundText",hash:{},data:s,loc:{start:{line:4,column:5},end:{line:4,column:28}}}):a)+"</h2>\n</div>\n"},3:function(t,e,n,o,s){var a,r=null!=e?e:t.nullContext||{},i=t.hooks.helperMissing,l="function",c=t.escapeExpression,d=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="footer"><a href="'+c(typeof(a=null!=(a=d(n,"contactsAppURL")||(null!=e?d(e,"contactsAppURL"):e))?a:i)===l?a.call(r,{name:"contactsAppURL",hash:{},data:s,loc:{start:{line:9,column:29},end:{line:9,column:47}}}):a)+'">'+c(typeof(a=null!=(a=d(n,"showAllContactsText")||(null!=e?d(e,"showAllContactsText"):e))?a:i)===l?a.call(r,{name:"showAllContactsText",hash:{},data:s,loc:{start:{line:9,column:49},end:{line:9,column:72}}}):a)+"</a></div>\n"},5:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return null!=(a=r(n,"if").call(null!=e?e:t.nullContext||{},null!=e?r(e,"canInstallApp"):e,{name:"if",hash:{},fn:t.program(6,s,0),inverse:t.noop,data:s,loc:{start:{line:10,column:0},end:{line:12,column:0}}}))?a:""},6:function(t,e,n,o,s){var a,r=null!=e?e:t.nullContext||{},i=t.hooks.helperMissing,l="function",c=t.escapeExpression,d=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="footer"><a href="'+c(typeof(a=null!=(a=d(n,"contactsAppMgmtURL")||(null!=e?d(e,"contactsAppMgmtURL"):e))?a:i)===l?a.call(r,{name:"contactsAppMgmtURL",hash:{},data:s,loc:{start:{line:11,column:29},end:{line:11,column:51}}}):a)+'">'+c(typeof(a=null!=(a=d(n,"contactsAppMgmtText")||(null!=e?d(e,"contactsAppMgmtText"):e))?a:i)===l?a.call(r,{name:"contactsAppMgmtText",hash:{},data:s,loc:{start:{line:11,column:53},end:{line:11,column:76}}}):a)+"</a></div>\n"},compiler:[8,">= 4.3.0"],main:function(t,e,n,o,s){var a,r=null!=e?e:t.nullContext||{},i=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return(null!=(a=i(n,"unless").call(r,null!=(a=null!=e?i(e,"contacts"):e)?i(a,"length"):a,{name:"unless",hash:{},fn:t.program(1,s,0),inverse:t.noop,data:s,loc:{start:{line:1,column:0},end:{line:6,column:11}}}))?a:"")+'<div id="contactsmenu-contacts"></div>\n'+(null!=(a=i(n,"if").call(r,null!=e?i(e,"contactsAppEnabled"):e,{name:"if",hash:{},fn:t.program(3,s,0),inverse:t.program(5,s,0),data:s,loc:{start:{line:8,column:0},end:{line:12,column:7}}}))?a:"")},useData:!0})},95386:(t,e,n)=>{var o=n(40202);t.exports=(o.default||o).template({compiler:[8,">= 4.3.0"],main:function(t,e,n,o,s){var a,r=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<div class="emptycontent">\n\t<div class="icon-loading"></div>\n\t<h2>'+t.escapeExpression("function"==typeof(a=null!=(a=r(n,"loadingText")||(null!=e?r(e,"loadingText"):e))?a:t.hooks.helperMissing)?a.call(null!=e?e:t.nullContext||{},{name:"loadingText",hash:{},data:s,loc:{start:{line:3,column:5},end:{line:3,column:20}}}):a)+"</h2>\n</div>\n"},useData:!0})},66115:(t,e,n)=>{var o=n(40202);t.exports=(o.default||o).template({compiler:[8,">= 4.3.0"],main:function(t,e,n,o,s){var a,r=null!=e?e:t.nullContext||{},i=t.hooks.helperMissing,l="function",c=t.escapeExpression,d=t.lookupProperty||function(t,e){if(Object.prototype.hasOwnProperty.call(t,e))return t[e]};return'<label class="hidden-visually" for="contactsmenu-search">'+c(typeof(a=null!=(a=d(n,"searchContactsText")||(null!=e?d(e,"searchContactsText"):e))?a:i)===l?a.call(r,{name:"searchContactsText",hash:{},data:s,loc:{start:{line:1,column:57},end:{line:1,column:79}}}):a)+'</label>\n<input id="contactsmenu-search" type="search" placeholder="'+c(typeof(a=null!=(a=d(n,"searchContactsText")||(null!=e?d(e,"searchContactsText"):e))?a:i)===l?a.call(r,{name:"searchContactsText",hash:{},data:s,loc:{start:{line:2,column:59},end:{line:2,column:81}}}):a)+'" value="'+c(typeof(a=null!=(a=d(n,"searchTerm")||(null!=e?d(e,"searchTerm"):e))?a:i)===l?a.call(r,{name:"searchTerm",hash:{},data:s,loc:{start:{line:2,column:90},end:{line:2,column:104}}}):a)+'">\n<div class="content">\n</div>\n'},useData:!0})},46700:(t,e,n)=>{var o={"./af":42786,"./af.js":42786,"./ar":30867,"./ar-dz":14130,"./ar-dz.js":14130,"./ar-kw":96135,"./ar-kw.js":96135,"./ar-ly":56440,"./ar-ly.js":56440,"./ar-ma":47702,"./ar-ma.js":47702,"./ar-sa":16040,"./ar-sa.js":16040,"./ar-tn":37100,"./ar-tn.js":37100,"./ar.js":30867,"./az":31083,"./az.js":31083,"./be":9808,"./be.js":9808,"./bg":68338,"./bg.js":68338,"./bm":67438,"./bm.js":67438,"./bn":8905,"./bn-bd":76225,"./bn-bd.js":76225,"./bn.js":8905,"./bo":11560,"./bo.js":11560,"./br":1278,"./br.js":1278,"./bs":80622,"./bs.js":80622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":50877,"./cv.js":50877,"./cy":47373,"./cy.js":47373,"./da":24780,"./da.js":24780,"./de":59740,"./de-at":60217,"./de-at.js":60217,"./de-ch":60894,"./de-ch.js":60894,"./de.js":59740,"./dv":5300,"./dv.js":5300,"./el":50837,"./el.js":50837,"./en-au":78348,"./en-au.js":78348,"./en-ca":77925,"./en-ca.js":77925,"./en-gb":22243,"./en-gb.js":22243,"./en-ie":46436,"./en-ie.js":46436,"./en-il":47207,"./en-il.js":47207,"./en-in":44175,"./en-in.js":44175,"./en-nz":76319,"./en-nz.js":76319,"./en-sg":31662,"./en-sg.js":31662,"./eo":92915,"./eo.js":92915,"./es":55655,"./es-do":55251,"./es-do.js":55251,"./es-mx":96112,"./es-mx.js":96112,"./es-us":71146,"./es-us.js":71146,"./es.js":55655,"./et":5603,"./et.js":5603,"./eu":77763,"./eu.js":77763,"./fa":76959,"./fa.js":76959,"./fi":11897,"./fi.js":11897,"./fil":42549,"./fil.js":42549,"./fo":94694,"./fo.js":94694,"./fr":94470,"./fr-ca":63049,"./fr-ca.js":63049,"./fr-ch":52330,"./fr-ch.js":52330,"./fr.js":94470,"./fy":5044,"./fy.js":5044,"./ga":29295,"./ga.js":29295,"./gd":2101,"./gd.js":2101,"./gl":38794,"./gl.js":38794,"./gom-deva":27884,"./gom-deva.js":27884,"./gom-latn":23168,"./gom-latn.js":23168,"./gu":95349,"./gu.js":95349,"./he":24206,"./he.js":24206,"./hi":30094,"./hi.js":30094,"./hr":30316,"./hr.js":30316,"./hu":22138,"./hu.js":22138,"./hy-am":11423,"./hy-am.js":11423,"./id":29218,"./id.js":29218,"./is":90135,"./is.js":90135,"./it":90626,"./it-ch":10150,"./it-ch.js":10150,"./it.js":90626,"./ja":39183,"./ja.js":39183,"./jv":24286,"./jv.js":24286,"./ka":12105,"./ka.js":12105,"./kk":47772,"./kk.js":47772,"./km":18758,"./km.js":18758,"./kn":79282,"./kn.js":79282,"./ko":33730,"./ko.js":33730,"./ku":1408,"./ku.js":1408,"./ky":33291,"./ky.js":33291,"./lb":36841,"./lb.js":36841,"./lo":55466,"./lo.js":55466,"./lt":57010,"./lt.js":57010,"./lv":37595,"./lv.js":37595,"./me":39861,"./me.js":39861,"./mi":35493,"./mi.js":35493,"./mk":95966,"./mk.js":95966,"./ml":87341,"./ml.js":87341,"./mn":5115,"./mn.js":5115,"./mr":10370,"./mr.js":10370,"./ms":9847,"./ms-my":41237,"./ms-my.js":41237,"./ms.js":9847,"./mt":72126,"./mt.js":72126,"./my":56165,"./my.js":56165,"./nb":64924,"./nb.js":64924,"./ne":16744,"./ne.js":16744,"./nl":93901,"./nl-be":59814,"./nl-be.js":59814,"./nl.js":93901,"./nn":83877,"./nn.js":83877,"./oc-lnc":92135,"./oc-lnc.js":92135,"./pa-in":15858,"./pa-in.js":15858,"./pl":64495,"./pl.js":64495,"./pt":89520,"./pt-br":57971,"./pt-br.js":57971,"./pt.js":89520,"./ro":96459,"./ro.js":96459,"./ru":21793,"./ru.js":21793,"./sd":40950,"./sd.js":40950,"./se":10490,"./se.js":10490,"./si":90124,"./si.js":90124,"./sk":64249,"./sk.js":64249,"./sl":14985,"./sl.js":14985,"./sq":51104,"./sq.js":51104,"./sr":49131,"./sr-cyrl":79915,"./sr-cyrl.js":79915,"./sr.js":49131,"./ss":85893,"./ss.js":85893,"./sv":98760,"./sv.js":98760,"./sw":91172,"./sw.js":91172,"./ta":27333,"./ta.js":27333,"./te":23110,"./te.js":23110,"./tet":52095,"./tet.js":52095,"./tg":27321,"./tg.js":27321,"./th":9041,"./th.js":9041,"./tk":19005,"./tk.js":19005,"./tl-ph":75768,"./tl-ph.js":75768,"./tlh":89444,"./tlh.js":89444,"./tr":72397,"./tr.js":72397,"./tzl":28254,"./tzl.js":28254,"./tzm":51106,"./tzm-latn":30699,"./tzm-latn.js":30699,"./tzm.js":51106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":67691,"./uk.js":67691,"./ur":13795,"./ur.js":13795,"./uz":6791,"./uz-latn":60588,"./uz-latn.js":60588,"./uz.js":6791,"./vi":65666,"./vi.js":65666,"./x-pseudo":14378,"./x-pseudo.js":14378,"./yo":75805,"./yo.js":75805,"./zh-cn":83839,"./zh-cn.js":83839,"./zh-hk":55726,"./zh-hk.js":55726,"./zh-mo":99807,"./zh-mo.js":99807,"./zh-tw":74152,"./zh-tw.js":74152};function s(t){var e=a(t);return n(e)}function a(t){if(!n.o(o,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return o[t]}s.keys=function(){return Object.keys(o)},s.resolve=a,t.exports=s,s.id=46700}},s={};function a(t){var e=s[t];if(void 0!==e)return e.exports;var n=s[t]={id:t,loaded:!1,exports:{}};return o[t].call(n.exports,n,n.exports,a),n.loaded=!0,n.exports}a.m=o,a.amdD=function(){throw new Error("define cannot be used indirect")},a.amdO={},e=[],a.O=(t,n,o,s)=>{if(!n){var r=1/0;for(d=0;d<e.length;d++){n=e[d][0],o=e[d][1],s=e[d][2];for(var i=!0,l=0;l<n.length;l++)(!1&s||r>=s)&&Object.keys(a.O).every((t=>a.O[t](n[l])))?n.splice(l--,1):(i=!1,s<r&&(r=s));if(i){e.splice(d--,1);var c=o();void 0!==c&&(t=c)}}return t}s=s||0;for(var d=e.length;d>0&&e[d-1][2]>s;d--)e[d]=e[d-1];e[d]=[n,o,s]},a.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return a.d(e,{a:e}),e},a.d=(t,e)=>{for(var n in e)a.o(e,n)&&!a.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),a.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),a.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.nmd=t=>(t.paths=[],t.children||(t.children=[]),t),a.j=577,(()=>{var t={577:0};a.O.j=e=>0===t[e];var e=(e,n)=>{var o,s,r=n[0],i=n[1],l=n[2],c=0;if(r.some((e=>0!==t[e]))){for(o in i)a.o(i,o)&&(a.m[o]=i[o]);if(l)var d=l(a)}for(e&&e(n);c<r.length;c++)s=r[c],a.o(t,s)&&t[s]&&t[s][0](),t[r[c]]=0;return a.O(d)},n=self.webpackChunknextcloud=self.webpackChunknextcloud||[];n.forEach(e.bind(null,0)),n.push=e.bind(null,n.push.bind(n))})();var r=a.O(void 0,[820],(()=>a(49521)));r=a.O(r)})();
//# sourceMappingURL=core-login.js.map?v=d8dd74132f7606b45548