From ae29608e46c1a923fcf87fc89444f7e5dab8b404 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6?= Date: Thu, 5 Oct 2023 11:23:55 +0200 Subject: [PATCH] fix(files_external): basic auth user storage trigger MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ --- apps/files_external/lib/Controller/ApiController.php | 1 + apps/files_external/src/actions/enterCredentialsAction.ts | 8 +++++--- dist/files_external-init.js | 4 ++-- dist/files_external-init.js.map | 2 +- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/apps/files_external/lib/Controller/ApiController.php b/apps/files_external/lib/Controller/ApiController.php index 5a62a19e3cb8f..163d403dc2c4f 100644 --- a/apps/files_external/lib/Controller/ApiController.php +++ b/apps/files_external/lib/Controller/ApiController.php @@ -126,6 +126,7 @@ public function getUserMounts(): DataResponse { /** * @NoAdminRequired + * @NoCSRFRequired * * Ask for credentials using a browser's native basic auth prompt * Then returns it if provided diff --git a/apps/files_external/src/actions/enterCredentialsAction.ts b/apps/files_external/src/actions/enterCredentialsAction.ts index eeb2f5f879322..162a359f48866 100644 --- a/apps/files_external/src/actions/enterCredentialsAction.ts +++ b/apps/files_external/src/actions/enterCredentialsAction.ts @@ -75,11 +75,13 @@ export const action = new FileAction({ async exec(node: Node) { // always resolve auth request, we'll process the data afterwards - const response = await axios.get(generateOcsUrl('/apps/files_external/api/v1/auth'), { - validateStatus: () => true, + // Using fetch as axios have integrated auth handling and X-Requested-With header + const response = await fetch(generateOcsUrl('/apps/files_external/api/v1/auth'), { + headers: new Headers({ Accept: 'application/json' }), + credentials: 'include', }) - const data = (response?.data || {}) as OCSAuthResponse + const data = (await response?.json() || {}) as OCSAuthResponse if (data.ocs.data.user && data.ocs.data.password) { const configResponse = await axios.put(generateUrl('apps/files_external/userglobalstorages/{id}', node.attributes), { backendOptions: data.ocs.data, diff --git a/dist/files_external-init.js b/dist/files_external-init.js index 2ade272c9942b..468f5c1ce8cd7 100644 --- a/dist/files_external-init.js +++ b/dist/files_external-init.js @@ -1,3 +1,3 @@ /*! For license information please see files_external-init.js.LICENSE.txt */ -!function(){var t,e,r,n={5220:function(t,e,r){"use strict";var n,i=r(43554),o=r(31352),a=r(5656),s=r(79753),u=r(64024),c=r(93664),l=r(20144);!function(t){t[t.SUCCESS=0]="SUCCESS",t[t.ERROR=1]="ERROR",t[t.INDETERMINATE=2]="INDETERMINATE",t[t.INCOMPLETE_CONF=3]="INCOMPLETE_CONF",t[t.UNAUTHORIZED=4]="UNAUTHORIZED",t[t.TIMEOUT=5]="TIMEOUT",t[t.NETWORK_ERROR=6]="NETWORK_ERROR"}(n||(n={}));var f=function(t){return!(!t.status||t.status===n.SUCCESS)&&(t.userProvided||"password::global::user"===t.authMechanism)},h=function(t){if(t.type===a.Tv.File)return!1;var e=t.attributes;return!(!e.scope||!e.backend||"personal"!==e.scope&&"system"!==e.scope)};function d(t){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(t)}function p(){p=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new T(i||[]);return n(a,"_invoke",{value:N(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function g(){}function v(){}var m={};u(m,o,(function(){return this}));var y=Object.getPrototypeOf,w=y&&y(y(L([])));w&&w!==e&&r.call(w,o)&&(m=w);var b=v.prototype=h.prototype=Object.create(m);function x(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function E(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==d(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function N(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=_(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function _(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,_(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function A(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(A,this),this.reset(!0)}function L(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),O(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;O(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:L(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function g(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}var v=new a.p$({id:"credentials-external-storage",displayName:function(){return(0,o.Iu)("files","Enter missing credentials")},iconSvgInline:function(){return''},enabled:function(t){var e;if(1!==t.length)return!1;var r=t[0];if(!h(r))return!1;var n=(null===(e=r.attributes)||void 0===e?void 0:e.config)||{};return!!f(n)},exec:function(t){return(e=p().mark((function e(){var r,i,a,f;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.Z.get((0,s.generateOcsUrl)("/apps/files_external/api/v1/auth"),{validateStatus:function(){return!0}});case 2:if(r=e.sent,!(i=(null==r?void 0:r.data)||{}).ocs.data.user||!i.ocs.data.password){e.next=14;break}return e.next=7,c.Z.put((0,s.generateUrl)("apps/files_external/userglobalstorages/{id}",t.attributes),{backendOptions:i.ocs.data});case 7:if(a=e.sent,(f=a.data).status===n.SUCCESS){e.next=12;break}return(0,u.x2)((0,o.Iu)("files_external","Unable to update this external storage config. {statusMessage}",{statusMessage:(null==f?void 0:f.statusMessage)||""})),e.abrupt("return",null);case 12:(0,u.s$)((0,o.Iu)("files_external","New configuration successfully saved")),l.default.set(t.attributes,"config",f);case 14:return e.abrupt("return",null);case 15:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function a(t){g(o,n,i,a,s,"next",t)}function s(t){g(o,n,i,a,s,"throw",t)}a(void 0)}))})();var e},order:-1e3,default:a.DT.DEFAULT,inline:function(){return!0}}),m=r(93379),y=r.n(m),w=r(7795),b=r.n(w),x=r(90569),E=r.n(x),N=r(3565),_=r.n(N),A=r(19216),O=r.n(A),T=r(44589),L=r.n(T),S=r(17150),I={};I.styleTagTransform=L(),I.setAttributes=_(),I.insert=E().bind(null,"head"),I.domAPI=b(),I.insertStyleElement=O(),y()(S.Z,I),S.Z&&S.Z.locals&&S.Z.locals;var P,C=r(77958);function j(t){return j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},j(t)}function k(){k=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new A(i||[]);return n(a,"_invoke",{value:x(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function d(){}function p(){}var g={};u(g,o,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(O([])));m&&m!==e&&r.call(m,o)&&(g=m);var y=p.prototype=h.prototype=Object.create(g);function w(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==j(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function x(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function O(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;_(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function D(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}function V(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function F(t){for(var e=1;e1&&void 0!==arguments[1]&&!arguments[1]?"userstorages":"userglobalstorages";return c.Z.get((0,s.generateUrl)("apps/files_external/".concat(e,"/").concat(t,"?testOnly=false")))};function B(t){return B="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},B(t)}function H(){H=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new A(i||[]);return n(a,"_invoke",{value:x(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function d(){}function p(){}var g={};u(g,o,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(O([])));m&&m!==e&&r.call(m,o)&&(g=m);var y=p.prototype=h.prototype=Object.create(g);function w(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==B(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function x(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function O(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;_(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function q(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}function Z(t){return function(){var e=this,r=arguments;return new Promise((function(n,i){var o=t.apply(e,r);function a(t){q(o,n,i,a,s,"next",t)}function s(t){q(o,n,i,a,s,"throw",t)}a(void 0)}))}}var Y,z=new a.p$({id:"check-external-storage",displayName:function(){return""},iconSvgInline:function(){return""},enabled:function(t){return t.every((function(t){return!0===h(t)}))},exec:(Y=Z(H().mark((function t(){return H().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",null);case 1:case"end":return t.stop()}}),t)}))),function(){return Y.apply(this,arguments)}),renderInline:function(t){return Z(H().mark((function e(){var r,i,a,s,c,h;return H().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=null,e.prev=1,e.next=4,U(t.attributes.id,"system"===t.attributes.scope);case 4:if(i=e.sent,r=i.data,l.default.set(t.attributes,"config",r),r.status===n.SUCCESS){e.next=9;break}throw new Error((null===(a=r)||void 0===a?void 0:a.statusMessage)||(0,o.Iu)("files_external","There was an error with this external storage."));case 9:return e.abrupt("return",null);case 12:if(e.prev=12,e.t0=e.catch(1),!e.t0.response||r){e.next=17;break}return(0,u.K2)((0,o.Iu)("files_external","We were unable to check the external storage {basename}",{basename:t.basename})),e.abrupt("return",null);case 17:return s=f(r),(c=document.createElement("span")).classList.add("files-list__row-status--".concat(s?"warning":"error")),(h=document.createElement("span")).className="files-list__row-status",s||(h.innerHTML='',h.title=e.t0.message),h.prepend(c),e.abrupt("return",h);case 25:case"end":return e.stop()}}),e,null,[[1,12]])})))()},order:10});function X(t){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},X(t)}function K(){K=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new A(i||[]);return n(a,"_invoke",{value:x(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function d(){}function p(){}var g={};u(g,o,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(O([])));m&&m!==e&&r.call(m,o)&&(g=m);var y=p.prototype=h.prototype=Object.create(g);function w(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==X(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function x(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function O(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;_(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function W(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}var J=new a.p$({id:"open-in-files-external-storage",displayName:function(t){var e;return((null==t||null===(e=t[0])||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e.config)||{status:n.INDETERMINATE}).status!==n.SUCCESS?(0,o.Iu)("files_external","Examine this faulty external storage configuration"):(0,o.Iu)("files","Open in files")},iconSvgInline:function(){return""},enabled:function(t,e){return"extstoragemounts"===e.id},exec:function(t){return(e=K().mark((function e(){var r;return K().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((null==(r=t.attributes.config)?void 0:r.status)===n.SUCCESS){e.next=4;break}return window.OC.dialogs.confirm((0,o.Iu)("files_external","There was an error with this external storage. Do you want to review this mount point config in the settings page?"),(0,o.Iu)("files_external","External mount error"),(function(e){if(!0===e){var r="personal"===t.attributes.scope?"user":"admin";window.location.href=(0,s.generateUrl)("/settings/".concat(r,"/externalstorages"))}})),e.abrupt("return",null);case 4:return window.OCP.Files.Router.goToRoute(null,{view:"files"},{dir:t.path}),e.abrupt("return",null);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function a(t){W(o,n,i,a,s,"next",t)}function s(t){W(o,n,i,a,s,"throw",t)}a(void 0)}))})();var e},order:-1e3,default:a.DT.HIDDEN}),Q=(0,i.j)("files_external","allowUserMounting",!1);(0,a.Ti)().register(new a.G7({id:"extstoragemounts",name:(0,o.Iu)("files_external","External storage"),caption:(0,o.Iu)("files_external","List of external storage."),emptyCaption:Q?(0,o.Iu)("files_external","There is no external storage configured. You can configure them in your Personal settings."):(0,o.Iu)("files_external","There is no external storage configured and you don't have the permission to configure them."),emptyTitle:(0,o.Iu)("files_external","No external storage"),icon:'',order:30,columns:[new a.sg({id:"storage-type",title:(0,o.Iu)("files_external","Storage type"),render:function(t){var e,r=(null===(e=t.attributes)||void 0===e?void 0:e.backend)||(0,o.Iu)("files_external","Unknown"),n=document.createElement("span");return n.textContent=r,n}}),new a.sg({id:"scope",title:(0,o.Iu)("files_external","Scope"),render:function(t){var e,r=document.createElement("span"),n=(0,o.Iu)("files_external","Personal");return"system"===(null===(e=t.attributes)||void 0===e?void 0:e.scope)&&(n=(0,o.Iu)("files_external","System")),r.textContent=n,r}})],getContents:G})),(0,a.p4)(v),(0,a.p4)(z),(0,a.p4)(J)},17150:function(t,e,r){"use strict";var n=r(87537),i=r.n(n),o=r(23645),a=r.n(o)()(i());a.push([t.id,".files-list__row-status{display:flex;width:44px;justify-content:center;align-items:center;height:100%}.files-list__row-status svg{width:24px;height:24px}.files-list__row-status svg path{fill:currentColor}.files-list__row-status--error,.files-list__row-status--warning{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1}.files-list__row-status--error{background:var(--color-error)}.files-list__row-status--warning{background:var(--color-warning)}","",{version:3,sources:["webpack://./apps/files_external/src/css/fileEntryStatus.scss"],names:[],mappings:"AAAA,wBACC,YAAA,CACA,UAAA,CACA,sBAAA,CACA,kBAAA,CACA,WAAA,CAEA,4BACC,UAAA,CACA,WAAA,CAEA,iCACC,iBAAA,CAIF,gEAEC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CAGD,+BACC,6BAAA,CAGD,iCACC,+BAAA",sourcesContent:[".files-list__row-status {\n\tdisplay: flex;\n\twidth: 44px;\n\tjustify-content: center;\n\talign-items: center;\n\theight: 100%;\n\n\tsvg {\n\t\twidth: 24px;\n\t\theight: 24px;\n\n\t\tpath {\n\t\t\tfill: currentColor;\n\t\t}\n\t}\n\n\t&--error,\n\t&--warning {\n\t\tposition: absolute;\n\t\tdisplay: block;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\topacity: .1;\n\t\tz-index: -1;\n\t}\n\n\t&--error {\n\t\tbackground: var(--color-error);\n\t}\n\n\t&--warning {\n\t\tbackground: var(--color-warning);\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},24654:function(){},52361:function(){},94616:function(){},5656:function(t,e,r){"use strict";r.d(e,{DT:function(){return v},G7:function(){return ie},RL:function(){return F},Ti:function(){return $},Tv:function(){return O},_o:function(){return j},gt:function(){return C},h7:function(){return _},p$:function(){return m},p4:function(){return y},pC:function(){return V},rp:function(){return D},sS:function(){return g},sg:function(){return M},tB:function(){return A},y3:function(){return w}});var n=r(77958),i=r(17499),o=r(31352),a=r(62520),s=r(65358),u=r(79753),c=r(14596),l=r(26721);const f=null===(h=(0,n.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(h.uid).build();var h;const d=["B","KB","MB","GB","TB","PB"],p=["B","KiB","MiB","GiB","TiB","PiB"];function g(t,e=!1,r=!0){"string"==typeof t&&(t=Number(t));let n=t>0?Math.floor(Math.log(t)/Math.log(r?1024:1e3)):0;n=Math.min((r?p.length:d.length)-1,n);const i=r?p[n]:d[n];let a=(t/Math.pow(r?1024:1e3,n)).toFixed(1);return!0===e&&0===n?("0.0"!==a?"< 1 ":"0 ")+(r?p[1]:d[1]):(a=n<2?parseFloat(a).toFixed(0):parseFloat(a).toLocaleString((0,o.aj)()),a+" "+i)}var v=(t=>(t.DEFAULT="default",t.HIDDEN="hidden",t))(v||{});class m{_action;constructor(t){this.validateAction(t),this._action=t}get id(){return this._action.id}get displayName(){return this._action.displayName}get title(){return this._action.title}get iconSvgInline(){return this._action.iconSvgInline}get enabled(){return this._action.enabled}get exec(){return this._action.exec}get execBatch(){return this._action.execBatch}get order(){return this._action.order}get default(){return this._action.default}get inline(){return this._action.inline}get renderInline(){return this._action.renderInline}validateAction(t){if(!t.id||"string"!=typeof t.id)throw new Error("Invalid id");if(!t.displayName||"function"!=typeof t.displayName)throw new Error("Invalid displayName function");if("title"in t&&"function"!=typeof t.title)throw new Error("Invalid title function");if(!t.iconSvgInline||"function"!=typeof t.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!t.exec||"function"!=typeof t.exec)throw new Error("Invalid exec function");if("enabled"in t&&"function"!=typeof t.enabled)throw new Error("Invalid enabled function");if("execBatch"in t&&"function"!=typeof t.execBatch)throw new Error("Invalid execBatch function");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order");if(t.default&&!Object.values(v).includes(t.default))throw new Error("Invalid default");if("inline"in t&&"function"!=typeof t.inline)throw new Error("Invalid inline function");if("renderInline"in t&&"function"!=typeof t.renderInline)throw new Error("Invalid renderInline function")}}const y=function(t){typeof window._nc_fileactions>"u"&&(window._nc_fileactions=[],f.debug("FileActions initialized")),window._nc_fileactions.find((e=>e.id===t.id))?f.error(`FileAction ${t.id} already registered`,{action:t}):window._nc_fileactions.push(t)};var w=(t=>(t[t.NONE=0]="NONE",t[t.CREATE=4]="CREATE",t[t.READ=1]="READ",t[t.UPDATE=2]="UPDATE",t[t.DELETE=8]="DELETE",t[t.SHARE=16]="SHARE",t[t.ALL=31]="ALL",t))(w||{});const b=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],x={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},E=function(){return typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...b]),window._nc_dav_properties.map((t=>`<${t} />`)).join(" ")},N=function(){return typeof window._nc_dav_namespaces>"u"&&(window._nc_dav_namespaces={...x}),Object.keys(window._nc_dav_namespaces).map((t=>`xmlns:${t}="${window._nc_dav_namespaces?.[t]}"`)).join(" ")},_=function(){return`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t`},A=function(t){return`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,n.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${t}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`};var O=(t=>(t.Folder="folder",t.File="file",t))(O||{});const T=function(t,e){return null!==t.match(e)},L=(t,e)=>{if(t.id&&"number"!=typeof t.id)throw new Error("Invalid id type of value");if(!t.source)throw new Error("Missing mandatory source");try{new URL(t.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!t.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(t.mtime&&!(t.mtime instanceof Date))throw new Error("Invalid mtime type");if(t.crtime&&!(t.crtime instanceof Date))throw new Error("Invalid crtime type");if(!t.mime||"string"!=typeof t.mime||!t.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in t&&"number"!=typeof t.size&&void 0!==t.size)throw new Error("Invalid size type");if("permissions"in t&&void 0!==t.permissions&&!("number"==typeof t.permissions&&t.permissions>=w.NONE&&t.permissions<=w.ALL))throw new Error("Invalid permissions");if(t.owner&&null!==t.owner&&"string"!=typeof t.owner)throw new Error("Invalid owner type");if(t.attributes&&"object"!=typeof t.attributes)throw new Error("Invalid attributes type");if(t.root&&"string"!=typeof t.root)throw new Error("Invalid root type");if(t.root&&!t.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(t.root&&!t.source.includes(t.root))throw new Error("Root must be part of the source");if(t.root&&T(t.source,e)){const r=t.source.match(e)[0];if(!t.source.includes((0,a.join)(r,t.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}if(t.status&&!Object.values(S).includes(t.status))throw new Error("Status must be a valid NodeStatus")};var S=(t=>(t.NEW="new",t.FAILED="failed",t.LOADING="loading",t.LOCKED="locked",t))(S||{});class I{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(t,e){L(t,e||this._knownDavService),this._data=t;const r={set:(t,e,r)=>(this.updateMtime(),Reflect.set(t,e,r)),deleteProperty:(t,e)=>(this.updateMtime(),Reflect.deleteProperty(t,e))};this._attributes=new Proxy(t.attributes||{},r),delete this._data.attributes,e&&(this._knownDavService=e)}get source(){return this._data.source.replace(/\/$/i,"")}get encodedSource(){const{origin:t}=new URL(this.source);return t+(0,s.Ec)(this.source.slice(t.length))}get basename(){return(0,a.basename)(this.source)}get extension(){return(0,a.extname)(this.source)}get dirname(){if(this.root){const t=this.source.indexOf(this.root);return(0,a.dirname)(this.source.slice(t+this.root.length)||"/")}const t=new URL(this.source);return(0,a.dirname)(t.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:w.NONE:w.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return T(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,a.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const t=this.source.indexOf(this.root);return this.source.slice(t+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}get status(){return this._data?.status}set status(t){this._data.status=t}move(t){L({...this._data,source:t},this._knownDavService),this._data.source=t,this.updateMtime()}rename(t){if(t.includes("/"))throw new Error("Invalid basename");this.move((0,a.dirname)(this.source)+"/"+t)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class P extends I{get type(){return O.File}}class C extends I{constructor(t){super({...t,mime:"httpd/unix-directory"})}get type(){return O.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const j=`/files/${(0,n.ts)()?.uid}`,k=(0,u.generateRemoteUrl)("dav"),D=function(t=k){const e=(0,c.eI)(t,{headers:{requesttoken:(0,n.IH)()||""}});return(0,c.lD)().patch("request",(t=>(t.headers?.method&&(t.method=t.headers.method,delete t.headers.method),(0,l.W)(t)))),e},V=async(t,e="/",r=j)=>(await t.getDirectoryContents(`${r}${e}`,{details:!0,data:`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`,headers:{method:"REPORT"},includeSelf:!0})).data.filter((t=>t.filename!==e)).map((t=>F(t,r))),F=function(t,e=j,r=k){const i=t.props,o=function(t=""){let e=w.NONE;return t&&((t.includes("C")||t.includes("K"))&&(e|=w.CREATE),t.includes("G")&&(e|=w.READ),(t.includes("W")||t.includes("N")||t.includes("V"))&&(e|=w.UPDATE),t.includes("D")&&(e|=w.DELETE),t.includes("R")&&(e|=w.SHARE)),e}(i?.permissions),a=(0,n.ts)()?.uid,s={id:i?.fileid||0,source:`${r}${t.filename}`,mtime:new Date(Date.parse(t.lastmod)),mime:t.mime,size:i?.size||Number.parseInt(i.getcontentlength||"0"),permissions:o,owner:a,root:e,attributes:{...t,...i,hasPreview:i?.["has-preview"]}};return delete s.attributes?.props,"file"===t.type?new P(s):new C(s)};class R{_views=[];_currentView=null;register(t){if(this._views.find((e=>e.id===t.id)))throw new Error(`View id ${t.id} is already registered`);this._views.push(t)}remove(t){const e=this._views.findIndex((e=>e.id===t));-1!==e&&this._views.splice(e,1)}get views(){return this._views}setActive(t){this._currentView=t}get active(){return this._currentView}}const $=function(){return typeof window._nc_navigation>"u"&&(window._nc_navigation=new R,f.debug("Navigation service initialized")),window._nc_navigation};class M{_column;constructor(t){G(t),this._column=t}get id(){return this._column.id}get title(){return this._column.title}get render(){return this._column.render}get sort(){return this._column.sort}get summary(){return this._column.summary}}const G=function(t){if(!t.id||"string"!=typeof t.id)throw new Error("A column id is required");if(!t.title||"string"!=typeof t.title)throw new Error("A column title is required");if(!t.render||"function"!=typeof t.render)throw new Error("A render function is required");if(t.sort&&"function"!=typeof t.sort)throw new Error("Column sortFunction must be a function");if(t.summary&&"function"!=typeof t.summary)throw new Error("Column summary must be a function");return!0};var U={},B={};!function(t){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",r="["+e+"]["+e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",n=new RegExp("^"+r+"$");t.isExist=function(t){return typeof t<"u"},t.isEmptyObject=function(t){return 0===Object.keys(t).length},t.merge=function(t,e,r){if(e){const n=Object.keys(e),i=n.length;for(let o=0;o"u")},t.getAllMatches=function(t,e){const r=[];let n=e.exec(t);for(;n;){const i=[];i.startIndex=e.lastIndex-n[0].length;const o=n.length;for(let t=0;t5&&"xml"===n)return et("InvalidXml","XML declaration allowed only at the start of the document.",it(t,e));if("?"==t[e]&&">"==t[e+1]){e++;break}continue}return e}function z(t,e){if(t.length>e+5&&"-"===t[e+1]&&"-"===t[e+2]){for(e+=3;e"===t[e+2]){e+=2;break}}else if(t.length>e+8&&"D"===t[e+1]&&"O"===t[e+2]&&"C"===t[e+3]&&"T"===t[e+4]&&"Y"===t[e+5]&&"P"===t[e+6]&&"E"===t[e+7]){let r=1;for(e+=8;e"===t[e]&&(r--,0===r))break}else if(t.length>e+9&&"["===t[e+1]&&"C"===t[e+2]&&"D"===t[e+3]&&"A"===t[e+4]&&"T"===t[e+5]&&"A"===t[e+6]&&"["===t[e+7])for(e+=8;e"===t[e+2]){e+=2;break}return e}U.validate=function(t,e){e=Object.assign({},q,e);const r=[];let n=!1,i=!1;"\ufeff"===t[0]&&(t=t.substr(1));for(let o=0;o"!==t[o]&&" "!==t[o]&&"\t"!==t[o]&&"\n"!==t[o]&&"\r"!==t[o];o++)u+=t[o];if(u=u.trim(),"/"===u[u.length-1]&&(u=u.substring(0,u.length-1),o--),!nt(u)){let e;return e=0===u.trim().length?"Invalid space after '<'.":"Tag '"+u+"' is an invalid name.",et("InvalidTag",e,it(t,o))}const c=W(t,o);if(!1===c)return et("InvalidAttr","Attributes for '"+u+"' have open quote.",it(t,o));let l=c.value;if(o=c.index,"/"===l[l.length-1]){const r=o-l.length;l=l.substring(0,l.length-1);const i=Q(l,e);if(!0!==i)return et(i.err.code,i.err.msg,it(t,r+i.err.line));n=!0}else if(s){if(!c.tagClosed)return et("InvalidTag","Closing tag '"+u+"' doesn't have proper closing.",it(t,o));if(l.trim().length>0)return et("InvalidTag","Closing tag '"+u+"' can't have attributes or invalid starting.",it(t,a));{const e=r.pop();if(u!==e.tagName){let r=it(t,e.tagStartPos);return et("InvalidTag","Expected closing tag '"+e.tagName+"' (opened in line "+r.line+", col "+r.col+") instead of closing tag '"+u+"'.",it(t,a))}0==r.length&&(i=!0)}}else{const s=Q(l,e);if(!0!==s)return et(s.err.code,s.err.msg,it(t,o-l.length+s.err.line));if(!0===i)return et("InvalidXml","Multiple possible root nodes found.",it(t,o));-1!==e.unpairedTags.indexOf(u)||r.push({tagName:u,tagStartPos:a}),n=!0}for(o++;o0)||et("InvalidXml","Invalid '"+JSON.stringify(r.map((t=>t.tagName)),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):et("InvalidXml","Start tag expected.",1)};const X='"',K="'";function W(t,e){let r="",n="",i=!1;for(;e"===t[e]&&""===n){i=!0;break}r+=t[e]}return""===n&&{value:r,index:e,tagClosed:i}}const J=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function Q(t,e){const r=H.getAllMatches(t,J),n={};for(let t=0;t!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,r){return t}};at.buildOptions=function(t){return Object.assign({},st,t)},at.defaultOptions=st;const ut=B;function ct(t,e){let r="";for(;e0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child})}},xt=function(t,e){const r={};if("O"!==t[e+3]||"C"!==t[e+4]||"T"!==t[e+5]||"Y"!==t[e+6]||"P"!==t[e+7]||"E"!==t[e+8])throw new Error("Invalid Tag instead of DOCTYPE");{e+=9;let n=1,i=!1,o=!1,a="";for(;e"===t[e]){if(o?"-"===t[e-1]&&"-"===t[e-2]&&(o=!1,n--):n--,0===n)break}else"["===t[e]?i=!0:a+=t[e];else{if(i&&ft(t,e))e+=7,[entityName,val,e]=ct(t,e+1),-1===val.indexOf("&")&&(r[gt(entityName)]={regx:RegExp(`&${entityName};`,"g"),val:val});else if(i&&ht(t,e))e+=8;else if(i&&dt(t,e))e+=8;else if(i&&pt(t,e))e+=9;else{if(!lt)throw new Error("Invalid DOCTYPE");o=!0}n++,a=""}if(0!==n)throw new Error("Unclosed DOCTYPE")}return{entities:r,i:e}},Et=function(t,e={}){if(e=Object.assign({},yt,e),!t||"string"!=typeof t)return t;let r=t.trim();if(void 0!==e.skipLike&&e.skipLike.test(r))return t;if(e.hex&&vt.test(r))return Number.parseInt(r,16);{const n=mt.exec(r);if(n){const i=n[1],o=n[2];let a=function(t){return t&&-1!==t.indexOf(".")&&("."===(t=t.replace(/0+$/,""))?t="0":"."===t[0]?t="0"+t:"."===t[t.length-1]&&(t=t.substr(0,t.length-1))),t}(n[3]);const s=n[4]||n[6];if(!e.leadingZeros&&o.length>0&&i&&"."!==r[2]||!e.leadingZeros&&o.length>0&&!i&&"."!==r[1])return t;{const n=Number(r),u=""+n;return-1!==u.search(/[eE]/)||s?e.eNotation?n:t:-1!==r.indexOf(".")?"0"===u&&""===a||u===a||i&&u==="-"+a?n:t:o?a===u||i+a===u?n:t:r===u||r===i+u?n:t}}return t}};function Nt(t){const e=Object.keys(t);for(let r=0;r0)){a||(t=this.replaceEntitiesValue(t));const n=this.options.tagValueProcessor(e,t,r,i,o);return null==n?t:typeof n!=typeof t||n!==t?n:this.options.trimValues||t.trim()===t?Vt(t,this.options.parseTagValue,this.options.numberParseOptions):t}}function At(t){if(this.options.removeNSPrefix){const e=t.split(":"),r="/"===t.charAt(0)?"/":"";if("xmlns"===e[0])return"";2===e.length&&(t=r+e[1])}return t}"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,wt.nameRegexp);const Ot=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Tt(t,e,r){if(!this.options.ignoreAttributes&&"string"==typeof t){const r=wt.getAllMatches(t,Ot),n=r.length,i={};for(let t=0;t",o,"Closing Tag is not closed.");let a=t.substring(o+2,e).trim();if(this.options.removeNSPrefix){const t=a.indexOf(":");-1!==t&&(a=a.substr(t+1))}this.options.transformTagName&&(a=this.options.transformTagName(a)),r&&(n=this.saveTextToParentTag(n,r,i));const s=i.substring(i.lastIndexOf(".")+1);if(a&&-1!==this.options.unpairedTags.indexOf(a))throw new Error(`Unpaired tag can not be used as closing tag: `);let u=0;s&&-1!==this.options.unpairedTags.indexOf(s)?(u=i.lastIndexOf(".",i.lastIndexOf(".")-1),this.tagsNodeStack.pop()):u=i.lastIndexOf("."),i=i.substring(0,u),r=this.tagsNodeStack.pop(),n="",o=e}else if("?"===t[o+1]){let e=kt(t,o,!1,"?>");if(!e)throw new Error("Pi Tag is not closed.");if(n=this.saveTextToParentTag(n,r,i),!(this.options.ignoreDeclaration&&"?xml"===e.tagName||this.options.ignorePiTags)){const t=new bt(e.tagName);t.add(this.options.textNodeName,""),e.tagName!==e.tagExp&&e.attrExpPresent&&(t[":@"]=this.buildAttributesMap(e.tagExp,i,e.tagName)),this.addChild(r,t,i)}o=e.closeIndex+1}else if("!--"===t.substr(o+1,3)){const e=jt(t,"--\x3e",o+4,"Comment is not closed.");if(this.options.commentPropName){const a=t.substring(o+4,e-2);n=this.saveTextToParentTag(n,r,i),r.add(this.options.commentPropName,[{[this.options.textNodeName]:a}])}o=e}else if("!D"===t.substr(o+1,2)){const e=xt(t,o);this.docTypeEntities=e.entities,o=e.i}else if("!["===t.substr(o+1,2)){const e=jt(t,"]]>",o,"CDATA is not closed.")-2,a=t.substring(o+9,e);if(n=this.saveTextToParentTag(n,r,i),this.options.cdataPropName)r.add(this.options.cdataPropName,[{[this.options.textNodeName]:a}]);else{let t=this.parseTextData(a,r.tagname,i,!0,!1,!0);null==t&&(t=""),r.add(this.options.textNodeName,t)}o=e+2}else{let a=kt(t,o,this.options.removeNSPrefix),s=a.tagName;const u=a.rawTagName;let c=a.tagExp,l=a.attrExpPresent,f=a.closeIndex;this.options.transformTagName&&(s=this.options.transformTagName(s)),r&&n&&"!xml"!==r.tagname&&(n=this.saveTextToParentTag(n,r,i,!1));const h=r;if(h&&-1!==this.options.unpairedTags.indexOf(h.tagname)&&(r=this.tagsNodeStack.pop(),i=i.substring(0,i.lastIndexOf("."))),s!==e.tagname&&(i+=i?"."+s:s),this.isItStopNode(this.options.stopNodes,i,s)){let e="";if(c.length>0&&c.lastIndexOf("/")===c.length-1)o=a.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(s))o=a.closeIndex;else{const r=this.readStopNodeData(t,u,f+1);if(!r)throw new Error(`Unexpected end of ${u}`);o=r.i,e=r.tagContent}const n=new bt(s);s!==c&&l&&(n[":@"]=this.buildAttributesMap(c,i,s)),e&&(e=this.parseTextData(e,s,i,!0,l,!0,!0)),i=i.substr(0,i.lastIndexOf(".")),n.add(this.options.textNodeName,e),this.addChild(r,n,i)}else{if(c.length>0&&c.lastIndexOf("/")===c.length-1){"/"===s[s.length-1]?(s=s.substr(0,s.length-1),i=i.substr(0,i.length-1),c=s):c=c.substr(0,c.length-1),this.options.transformTagName&&(s=this.options.transformTagName(s));const t=new bt(s);s!==c&&l&&(t[":@"]=this.buildAttributesMap(c,i,s)),this.addChild(r,t,i),i=i.substr(0,i.lastIndexOf("."))}else{const t=new bt(s);this.tagsNodeStack.push(r),s!==c&&l&&(t[":@"]=this.buildAttributesMap(c,i,s)),this.addChild(r,t,i),r=t}n="",o=f}}else n+=t[o];return e.child};function St(t,e,r){const n=this.options.updateTag(e.tagname,r,e[":@"]);!1===n||("string"==typeof n&&(e.tagname=n),t.addChild(e))}const It=function(t){if(this.options.processEntities){for(let e in this.docTypeEntities){const r=this.docTypeEntities[e];t=t.replace(r.regx,r.val)}for(let e in this.lastEntities){const r=this.lastEntities[e];t=t.replace(r.regex,r.val)}if(this.options.htmlEntities)for(let e in this.htmlEntities){const r=this.htmlEntities[e];t=t.replace(r.regex,r.val)}t=t.replace(this.ampEntity.regex,this.ampEntity.val)}return t};function Pt(t,e,r,n){return t&&(void 0===n&&(n=0===Object.keys(e.child).length),void 0!==(t=this.parseTextData(t,e.tagname,r,!1,!!e[":@"]&&0!==Object.keys(e[":@"]).length,n))&&""!==t&&e.add(this.options.textNodeName,t),t=""),t}function Ct(t,e,r){const n="*."+r;for(const r in t){const i=t[r];if(n===i||e===i)return!0}return!1}function jt(t,e,r,n){const i=t.indexOf(e,r);if(-1===i)throw new Error(n);return i+e.length-1}function kt(t,e,r,n=">"){const i=function(t,e,r=">"){let n,i="";for(let o=e;o",r,`${e} is not closed`);if(t.substring(r+2,o).trim()===e&&(i--,0===i))return{tagContent:t.substring(n,r),i:o};r=o}else if("?"===t[r+1])r=jt(t,"?>",r+1,"StopNode is not closed.");else if("!--"===t.substr(r+1,3))r=jt(t,"--\x3e",r+3,"StopNode is not closed.");else if("!["===t.substr(r+1,2))r=jt(t,"]]>",r,"StopNode is not closed.")-2;else{const n=kt(t,r,">");n&&((n&&n.tagName)===e&&"/"!==n.tagExp[n.tagExp.length-1]&&i++,r=n.closeIndex)}}function Vt(t,e,r){if(e&&"string"==typeof t){const e=t.trim();return"true"===e||"false"!==e&&Et(t,r)}return wt.isExist(t)?t:""}var Ft={};function Rt(t,e,r){let n;const i={};for(let o=0;o0&&(i[e.textNodeName]=n):void 0!==n&&(i[e.textNodeName]=n),i}function $t(t){const e=Object.keys(t);for(let t=0;t"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"}},this.addExternalEntities=Nt,this.parseXml=Lt,this.parseTextData=_t,this.resolveNameSpace=At,this.buildAttributesMap=Tt,this.isItStopNode=Ct,this.replaceEntitiesValue=It,this.readStopNodeData=Dt,this.saveTextToParentTag=Pt,this.addChild=St}},{prettify:Ht}=Ft,qt=U;function Zt(t,e,r,n){let i="",o=!1;for(let a=0;a`,o=!1;continue}if(u===e.commentPropName){i+=n+`\x3c!--${s[u][0][e.textNodeName]}--\x3e`,o=!0;continue}if("?"===u[0]){const t=zt(s[":@"],e),r="?xml"===u?"":n;let a=s[u][0][e.textNodeName];a=0!==a.length?" "+a:"",i+=r+`<${u}${a}${t}?>`,o=!0;continue}let l=n;""!==l&&(l+=e.indentBy);const f=n+`<${u}${zt(s[":@"],e)}`,h=Zt(s[u],e,c,l);-1!==e.unpairedTags.indexOf(u)?e.suppressUnpairedNode?i+=f+">":i+=f+"/>":h&&0!==h.length||!e.suppressEmptyNode?h&&h.endsWith(">")?i+=f+`>${h}${n}`:(i+=f+">",h&&""!==n&&(h.includes("/>")||h.includes("`):i+=f+"/>",o=!0}return i}function Yt(t){const e=Object.keys(t);for(let r=0;r0&&e.processEntities)for(let r=0;r0&&(r="\n"),Zt(t,e,"",r)},Jt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function Qt(t){this.options=Object.assign({},Jt,t),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=re),this.processTextOrObjNode=te,this.options.format?(this.indentate=ee,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function te(t,e,r){const n=this.j2x(t,r+1);return void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,n.attrStr,r):this.buildObjectNode(n.val,e,n.attrStr,r)}function ee(t){return this.options.indentBy.repeat(t)}function re(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}Qt.prototype.build=function(t){return this.options.preserveOrder?Wt(t,this.options):(Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t}),this.j2x(t,0).val)},Qt.prototype.j2x=function(t,e){let r="",n="";for(let i in t)if(t.hasOwnProperty(i))if(typeof t[i]>"u")this.isAttribute(i)&&(n+="");else if(null===t[i])this.isAttribute(i)?n+="":"?"===i[0]?n+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+i+"/"+this.tagEndChar;else if(t[i]instanceof Date)n+=this.buildTextValNode(t[i],i,"",e);else if("object"!=typeof t[i]){const o=this.isAttribute(i);if(o)r+=this.buildAttrPairStr(o,""+t[i]);else if(i===this.options.textNodeName){let e=this.options.tagValueProcessor(i,""+t[i]);n+=this.replaceEntitiesValue(e)}else n+=this.buildTextValNode(t[i],i,"",e)}else if(Array.isArray(t[i])){const r=t[i].length;let o="";for(let a=0;a"u"||(null===r?"?"===i[0]?n+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+i+"/"+this.tagEndChar:"object"==typeof r?this.options.oneListGroup?o+=this.j2x(r,e+1).val:o+=this.processTextOrObjNode(r,i,e):o+=this.buildTextValNode(r,i,"",e))}this.options.oneListGroup&&(o=this.buildObjectNode(o,i,"",e)),n+=o}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const e=Object.keys(t[i]),n=e.length;for(let o=0;o"+t+i}},Qt.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(n)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(n)+"<"+e+r+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(e,t);return i=this.replaceEntitiesValue(i),""===i?this.indentate(n)+"<"+e+r+this.closeTag(e)+this.tagEndChar:this.indentate(n)+"<"+e+r+">"+i+"0&&this.options.processEntities)for(let e=0;e0&&(!t.caption||"string"!=typeof t.caption))throw new Error("View caption is required for top-level views and must be a string");if(!t.getContents||"function"!=typeof t.getContents)throw new Error("View getContents is required and must be a function");if(!t.icon||"string"!=typeof t.icon||!function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length||!0!==ne.XMLValidator.validate(t))return!1;let e;const r=new ne.XMLParser;try{e=r.parse(t)}catch{return!1}return!(!e||!("svg"in e))}(t.icon))throw new Error("View icon is required and must be a valid svg string");if(!("order"in t)||"number"!=typeof t.order)throw new Error("View order is required and must be a number");if(t.columns&&t.columns.forEach((t=>{if(!(t instanceof M))throw new Error("View columns must be an array of Column. Invalid column found")})),t.emptyView&&"function"!=typeof t.emptyView)throw new Error("View emptyView must be a function");if(t.parent&&"string"!=typeof t.parent)throw new Error("View parent must be a string");if("sticky"in t&&"boolean"!=typeof t.sticky)throw new Error("View sticky must be a boolean");if("expanded"in t&&"boolean"!=typeof t.expanded)throw new Error("View expanded must be a boolean");if(t.defaultSortKey&&"string"!=typeof t.defaultSortKey)throw new Error("View defaultSortKey must be a string");return!0}}},i={};function o(t){var e=i[t];if(void 0!==e)return e.exports;var r=i[t]={id:t,loaded:!1,exports:{}};return n[t].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=n,t=[],o.O=function(e,r,n,i){if(!r){var a=1/0;for(l=0;l=i)&&Object.keys(o.O).every((function(t){return o.O[t](r[u])}))?r.splice(u--,1):(s=!1,i0&&t[l-1][2]>i;l--)t[l]=t[l-1];t[l]=[r,n,i]},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var r in e)o.o(e,r)&&!o.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},o.f={},o.e=function(t){return Promise.all(Object.keys(o.f).reduce((function(e,r){return o.f[r](t,e),e}),[]))},o.u=function(t){return t+"-"+t+".js?v=9712b63e6d8aa316e55f"},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e={},r="nextcloud:",o.l=function(t,n,i,a){if(e[t])e[t].push(n);else{var s,u;if(void 0!==i)for(var c=document.getElementsByTagName("script"),l=0;l-1&&!t;)t=r[n--].src}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=t}(),function(){o.b=document.baseURI||self.location.href;var t={8213:0};o.f.j=function(e,r){var n=o.o(t,e)?t[e]:void 0;if(0!==n)if(n)r.push(n[2]);else{var i=new Promise((function(r,i){n=t[e]=[r,i]}));r.push(n[2]=i);var a=o.p+o.u(e),s=new Error;o.l(a,(function(r){if(o.o(t,e)&&(0!==(n=t[e])&&(t[e]=void 0),n)){var i=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+e+" failed.\n("+i+": "+a+")",s.name="ChunkLoadError",s.type=i,s.request=a,n[1](s)}}),"chunk-"+e,e)}},o.O.j=function(e){return 0===t[e]};var e=function(e,r){var n,i,a=r[0],s=r[1],u=r[2],c=0;if(a.some((function(e){return 0!==t[e]}))){for(n in s)o.o(s,n)&&(o.m[n]=s[n]);if(u)var l=u(o)}for(e&&e(r);c=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),O(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;O(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:L(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function g(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}var v=new a.p$({id:"credentials-external-storage",displayName:function(){return(0,o.Iu)("files","Enter missing credentials")},iconSvgInline:function(){return''},enabled:function(t){var e;if(1!==t.length)return!1;var r=t[0];if(!h(r))return!1;var n=(null===(e=r.attributes)||void 0===e?void 0:e.config)||{};return!!f(n)},exec:function(t){return(e=p().mark((function e(){var r,i,a,f;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fetch((0,s.generateOcsUrl)("/apps/files_external/api/v1/auth"),{headers:new Headers({Accept:"application/json"}),credentials:"include"});case 2:return r=e.sent,e.next=5,null==r?void 0:r.json();case 5:if(e.t0=e.sent,e.t0){e.next=8;break}e.t0={};case 8:if(!(i=e.t0).ocs.data.user||!i.ocs.data.password){e.next=19;break}return e.next=12,c.Z.put((0,s.generateUrl)("apps/files_external/userglobalstorages/{id}",t.attributes),{backendOptions:i.ocs.data});case 12:if(a=e.sent,(f=a.data).status===n.SUCCESS){e.next=17;break}return(0,u.x2)((0,o.Iu)("files_external","Unable to update this external storage config. {statusMessage}",{statusMessage:(null==f?void 0:f.statusMessage)||""})),e.abrupt("return",null);case 17:(0,u.s$)((0,o.Iu)("files_external","New configuration successfully saved")),l.default.set(t.attributes,"config",f);case 19:return e.abrupt("return",null);case 20:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function a(t){g(o,n,i,a,s,"next",t)}function s(t){g(o,n,i,a,s,"throw",t)}a(void 0)}))})();var e},order:-1e3,default:a.DT.DEFAULT,inline:function(){return!0}}),m=r(93379),y=r.n(m),w=r(7795),b=r.n(w),x=r(90569),E=r.n(x),N=r(3565),_=r.n(N),A=r(19216),O=r.n(A),T=r(44589),L=r.n(T),S=r(17150),I={};I.styleTagTransform=L(),I.setAttributes=_(),I.insert=E().bind(null,"head"),I.domAPI=b(),I.insertStyleElement=O(),y()(S.Z,I),S.Z&&S.Z.locals&&S.Z.locals;var P,C=r(77958);function j(t){return j="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},j(t)}function k(){k=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new A(i||[]);return n(a,"_invoke",{value:x(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function d(){}function p(){}var g={};u(g,o,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(O([])));m&&m!==e&&r.call(m,o)&&(g=m);var y=p.prototype=h.prototype=Object.create(g);function w(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==j(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function x(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function O(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;_(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function D(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}function V(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function F(t){for(var e=1;e1&&void 0!==arguments[1]&&!arguments[1]?"userstorages":"userglobalstorages";return c.Z.get((0,s.generateUrl)("apps/files_external/".concat(e,"/").concat(t,"?testOnly=false")))};function B(t){return B="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},B(t)}function H(){H=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new A(i||[]);return n(a,"_invoke",{value:x(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function d(){}function p(){}var g={};u(g,o,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(O([])));m&&m!==e&&r.call(m,o)&&(g=m);var y=p.prototype=h.prototype=Object.create(g);function w(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==B(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function x(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function O(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;_(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function q(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}function Y(t){return function(){var e=this,r=arguments;return new Promise((function(n,i){var o=t.apply(e,r);function a(t){q(o,n,i,a,s,"next",t)}function s(t){q(o,n,i,a,s,"throw",t)}a(void 0)}))}}var Z,z=new a.p$({id:"check-external-storage",displayName:function(){return""},iconSvgInline:function(){return""},enabled:function(t){return t.every((function(t){return!0===h(t)}))},exec:(Z=Y(H().mark((function t(){return H().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",null);case 1:case"end":return t.stop()}}),t)}))),function(){return Z.apply(this,arguments)}),renderInline:function(t){return Y(H().mark((function e(){var r,i,a,s,c,h;return H().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=null,e.prev=1,e.next=4,U(t.attributes.id,"system"===t.attributes.scope);case 4:if(i=e.sent,r=i.data,l.default.set(t.attributes,"config",r),r.status===n.SUCCESS){e.next=9;break}throw new Error((null===(a=r)||void 0===a?void 0:a.statusMessage)||(0,o.Iu)("files_external","There was an error with this external storage."));case 9:return e.abrupt("return",null);case 12:if(e.prev=12,e.t0=e.catch(1),!e.t0.response||r){e.next=17;break}return(0,u.K2)((0,o.Iu)("files_external","We were unable to check the external storage {basename}",{basename:t.basename})),e.abrupt("return",null);case 17:return s=f(r),(c=document.createElement("span")).classList.add("files-list__row-status--".concat(s?"warning":"error")),(h=document.createElement("span")).className="files-list__row-status",s||(h.innerHTML='',h.title=e.t0.message),h.prepend(c),e.abrupt("return",h);case 25:case"end":return e.stop()}}),e,null,[[1,12]])})))()},order:10});function X(t){return X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},X(t)}function K(){K=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function c(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),s=new A(i||[]);return n(a,"_invoke",{value:x(t,r,s)}),a}function l(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var f={};function h(){}function d(){}function p(){}var g={};u(g,o,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(O([])));m&&m!==e&&r.call(m,o)&&(g=m);var y=p.prototype=h.prototype=Object.create(g);function w(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,s){var u=l(t[n],t,o);if("throw"!==u.type){var c=u.arg,f=c.value;return f&&"object"==X(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){i("next",t,a,s)}),(function(t){i("throw",t,a,s)})):e.resolve(f).then((function(t){c.value=t,a(c)}),(function(t){return i("throw",t,a,s)}))}s(u.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function x(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===f)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=l(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function E(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,f;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function N(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function A(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(N,this),this.reset(!0)}function O(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var s=r.call(o,"catchLoc"),u=r.call(o,"finallyLoc");if(s&&u){if(this.prev=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;_(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:O(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function W(t,e,r,n,i,o,a){try{var s=t[o](a),u=s.value}catch(t){return void r(t)}s.done?e(u):Promise.resolve(u).then(n,i)}var J=new a.p$({id:"open-in-files-external-storage",displayName:function(t){var e;return((null==t||null===(e=t[0])||void 0===e||null===(e=e.attributes)||void 0===e?void 0:e.config)||{status:n.INDETERMINATE}).status!==n.SUCCESS?(0,o.Iu)("files_external","Examine this faulty external storage configuration"):(0,o.Iu)("files","Open in files")},iconSvgInline:function(){return""},enabled:function(t,e){return"extstoragemounts"===e.id},exec:function(t){return(e=K().mark((function e(){var r;return K().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((null==(r=t.attributes.config)?void 0:r.status)===n.SUCCESS){e.next=4;break}return window.OC.dialogs.confirm((0,o.Iu)("files_external","There was an error with this external storage. Do you want to review this mount point config in the settings page?"),(0,o.Iu)("files_external","External mount error"),(function(e){if(!0===e){var r="personal"===t.attributes.scope?"user":"admin";window.location.href=(0,s.generateUrl)("/settings/".concat(r,"/externalstorages"))}})),e.abrupt("return",null);case 4:return window.OCP.Files.Router.goToRoute(null,{view:"files"},{dir:t.path}),e.abrupt("return",null);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function a(t){W(o,n,i,a,s,"next",t)}function s(t){W(o,n,i,a,s,"throw",t)}a(void 0)}))})();var e},order:-1e3,default:a.DT.HIDDEN}),Q=(0,i.j)("files_external","allowUserMounting",!1);(0,a.Ti)().register(new a.G7({id:"extstoragemounts",name:(0,o.Iu)("files_external","External storage"),caption:(0,o.Iu)("files_external","List of external storage."),emptyCaption:Q?(0,o.Iu)("files_external","There is no external storage configured. You can configure them in your Personal settings."):(0,o.Iu)("files_external","There is no external storage configured and you don't have the permission to configure them."),emptyTitle:(0,o.Iu)("files_external","No external storage"),icon:'',order:30,columns:[new a.sg({id:"storage-type",title:(0,o.Iu)("files_external","Storage type"),render:function(t){var e,r=(null===(e=t.attributes)||void 0===e?void 0:e.backend)||(0,o.Iu)("files_external","Unknown"),n=document.createElement("span");return n.textContent=r,n}}),new a.sg({id:"scope",title:(0,o.Iu)("files_external","Scope"),render:function(t){var e,r=document.createElement("span"),n=(0,o.Iu)("files_external","Personal");return"system"===(null===(e=t.attributes)||void 0===e?void 0:e.scope)&&(n=(0,o.Iu)("files_external","System")),r.textContent=n,r}})],getContents:G})),(0,a.p4)(v),(0,a.p4)(z),(0,a.p4)(J)},17150:function(t,e,r){"use strict";var n=r(87537),i=r.n(n),o=r(23645),a=r.n(o)()(i());a.push([t.id,".files-list__row-status{display:flex;width:44px;justify-content:center;align-items:center;height:100%}.files-list__row-status svg{width:24px;height:24px}.files-list__row-status svg path{fill:currentColor}.files-list__row-status--error,.files-list__row-status--warning{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1}.files-list__row-status--error{background:var(--color-error)}.files-list__row-status--warning{background:var(--color-warning)}","",{version:3,sources:["webpack://./apps/files_external/src/css/fileEntryStatus.scss"],names:[],mappings:"AAAA,wBACC,YAAA,CACA,UAAA,CACA,sBAAA,CACA,kBAAA,CACA,WAAA,CAEA,4BACC,UAAA,CACA,WAAA,CAEA,iCACC,iBAAA,CAIF,gEAEC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CAGD,+BACC,6BAAA,CAGD,iCACC,+BAAA",sourcesContent:[".files-list__row-status {\n\tdisplay: flex;\n\twidth: 44px;\n\tjustify-content: center;\n\talign-items: center;\n\theight: 100%;\n\n\tsvg {\n\t\twidth: 24px;\n\t\theight: 24px;\n\n\t\tpath {\n\t\t\tfill: currentColor;\n\t\t}\n\t}\n\n\t&--error,\n\t&--warning {\n\t\tposition: absolute;\n\t\tdisplay: block;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\topacity: .1;\n\t\tz-index: -1;\n\t}\n\n\t&--error {\n\t\tbackground: var(--color-error);\n\t}\n\n\t&--warning {\n\t\tbackground: var(--color-warning);\n\t}\n}\n"],sourceRoot:""}]),e.Z=a},24654:function(){},52361:function(){},94616:function(){},5656:function(t,e,r){"use strict";r.d(e,{DT:function(){return v},G7:function(){return ie},RL:function(){return F},Ti:function(){return $},Tv:function(){return O},_o:function(){return j},gt:function(){return C},h7:function(){return _},p$:function(){return m},p4:function(){return y},pC:function(){return V},rp:function(){return D},sS:function(){return g},sg:function(){return M},tB:function(){return A},y3:function(){return w}});var n=r(77958),i=r(17499),o=r(31352),a=r(62520),s=r(65358),u=r(79753),c=r(14596),l=r(26721);const f=null===(h=(0,n.ts)())?(0,i.IY)().setApp("files").build():(0,i.IY)().setApp("files").setUid(h.uid).build();var h;const d=["B","KB","MB","GB","TB","PB"],p=["B","KiB","MiB","GiB","TiB","PiB"];function g(t,e=!1,r=!0){"string"==typeof t&&(t=Number(t));let n=t>0?Math.floor(Math.log(t)/Math.log(r?1024:1e3)):0;n=Math.min((r?p.length:d.length)-1,n);const i=r?p[n]:d[n];let a=(t/Math.pow(r?1024:1e3,n)).toFixed(1);return!0===e&&0===n?("0.0"!==a?"< 1 ":"0 ")+(r?p[1]:d[1]):(a=n<2?parseFloat(a).toFixed(0):parseFloat(a).toLocaleString((0,o.aj)()),a+" "+i)}var v=(t=>(t.DEFAULT="default",t.HIDDEN="hidden",t))(v||{});class m{_action;constructor(t){this.validateAction(t),this._action=t}get id(){return this._action.id}get displayName(){return this._action.displayName}get title(){return this._action.title}get iconSvgInline(){return this._action.iconSvgInline}get enabled(){return this._action.enabled}get exec(){return this._action.exec}get execBatch(){return this._action.execBatch}get order(){return this._action.order}get default(){return this._action.default}get inline(){return this._action.inline}get renderInline(){return this._action.renderInline}validateAction(t){if(!t.id||"string"!=typeof t.id)throw new Error("Invalid id");if(!t.displayName||"function"!=typeof t.displayName)throw new Error("Invalid displayName function");if("title"in t&&"function"!=typeof t.title)throw new Error("Invalid title function");if(!t.iconSvgInline||"function"!=typeof t.iconSvgInline)throw new Error("Invalid iconSvgInline function");if(!t.exec||"function"!=typeof t.exec)throw new Error("Invalid exec function");if("enabled"in t&&"function"!=typeof t.enabled)throw new Error("Invalid enabled function");if("execBatch"in t&&"function"!=typeof t.execBatch)throw new Error("Invalid execBatch function");if("order"in t&&"number"!=typeof t.order)throw new Error("Invalid order");if(t.default&&!Object.values(v).includes(t.default))throw new Error("Invalid default");if("inline"in t&&"function"!=typeof t.inline)throw new Error("Invalid inline function");if("renderInline"in t&&"function"!=typeof t.renderInline)throw new Error("Invalid renderInline function")}}const y=function(t){typeof window._nc_fileactions>"u"&&(window._nc_fileactions=[],f.debug("FileActions initialized")),window._nc_fileactions.find((e=>e.id===t.id))?f.error(`FileAction ${t.id} already registered`,{action:t}):window._nc_fileactions.push(t)};var w=(t=>(t[t.NONE=0]="NONE",t[t.CREATE=4]="CREATE",t[t.READ=1]="READ",t[t.UPDATE=2]="UPDATE",t[t.DELETE=8]="DELETE",t[t.SHARE=16]="SHARE",t[t.ALL=31]="ALL",t))(w||{});const b=["d:getcontentlength","d:getcontenttype","d:getetag","d:getlastmodified","d:quota-available-bytes","d:resourcetype","nc:has-preview","nc:is-encrypted","nc:mount-type","nc:share-attributes","oc:comments-unread","oc:favorite","oc:fileid","oc:owner-display-name","oc:owner-id","oc:permissions","oc:share-types","oc:size","ocs:share-permissions"],x={d:"DAV:",nc:"http://nextcloud.org/ns",oc:"http://owncloud.org/ns",ocs:"http://open-collaboration-services.org/ns"},E=function(){return typeof window._nc_dav_properties>"u"&&(window._nc_dav_properties=[...b]),window._nc_dav_properties.map((t=>`<${t} />`)).join(" ")},N=function(){return typeof window._nc_dav_namespaces>"u"&&(window._nc_dav_namespaces={...x}),Object.keys(window._nc_dav_namespaces).map((t=>`xmlns:${t}="${window._nc_dav_namespaces?.[t]}"`)).join(" ")},_=function(){return`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t`},A=function(t){return`\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${(0,n.ts)()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${t}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`};var O=(t=>(t.Folder="folder",t.File="file",t))(O||{});const T=function(t,e){return null!==t.match(e)},L=(t,e)=>{if(t.id&&"number"!=typeof t.id)throw new Error("Invalid id type of value");if(!t.source)throw new Error("Missing mandatory source");try{new URL(t.source)}catch{throw new Error("Invalid source format, source must be a valid URL")}if(!t.source.startsWith("http"))throw new Error("Invalid source format, only http(s) is supported");if(t.mtime&&!(t.mtime instanceof Date))throw new Error("Invalid mtime type");if(t.crtime&&!(t.crtime instanceof Date))throw new Error("Invalid crtime type");if(!t.mime||"string"!=typeof t.mime||!t.mime.match(/^[-\w.]+\/[-+\w.]+$/gi))throw new Error("Missing or invalid mandatory mime");if("size"in t&&"number"!=typeof t.size&&void 0!==t.size)throw new Error("Invalid size type");if("permissions"in t&&void 0!==t.permissions&&!("number"==typeof t.permissions&&t.permissions>=w.NONE&&t.permissions<=w.ALL))throw new Error("Invalid permissions");if(t.owner&&null!==t.owner&&"string"!=typeof t.owner)throw new Error("Invalid owner type");if(t.attributes&&"object"!=typeof t.attributes)throw new Error("Invalid attributes type");if(t.root&&"string"!=typeof t.root)throw new Error("Invalid root type");if(t.root&&!t.root.startsWith("/"))throw new Error("Root must start with a leading slash");if(t.root&&!t.source.includes(t.root))throw new Error("Root must be part of the source");if(t.root&&T(t.source,e)){const r=t.source.match(e)[0];if(!t.source.includes((0,a.join)(r,t.root)))throw new Error("The root must be relative to the service. e.g /files/emma")}if(t.status&&!Object.values(S).includes(t.status))throw new Error("Status must be a valid NodeStatus")};var S=(t=>(t.NEW="new",t.FAILED="failed",t.LOADING="loading",t.LOCKED="locked",t))(S||{});class I{_data;_attributes;_knownDavService=/(remote|public)\.php\/(web)?dav/i;constructor(t,e){L(t,e||this._knownDavService),this._data=t;const r={set:(t,e,r)=>(this.updateMtime(),Reflect.set(t,e,r)),deleteProperty:(t,e)=>(this.updateMtime(),Reflect.deleteProperty(t,e))};this._attributes=new Proxy(t.attributes||{},r),delete this._data.attributes,e&&(this._knownDavService=e)}get source(){return this._data.source.replace(/\/$/i,"")}get encodedSource(){const{origin:t}=new URL(this.source);return t+(0,s.Ec)(this.source.slice(t.length))}get basename(){return(0,a.basename)(this.source)}get extension(){return(0,a.extname)(this.source)}get dirname(){if(this.root){const t=this.source.indexOf(this.root);return(0,a.dirname)(this.source.slice(t+this.root.length)||"/")}const t=new URL(this.source);return(0,a.dirname)(t.pathname)}get mime(){return this._data.mime}get mtime(){return this._data.mtime}get crtime(){return this._data.crtime}get size(){return this._data.size}get attributes(){return this._attributes}get permissions(){return null!==this.owner||this.isDavRessource?void 0!==this._data.permissions?this._data.permissions:w.NONE:w.READ}get owner(){return this.isDavRessource?this._data.owner:null}get isDavRessource(){return T(this.source,this._knownDavService)}get root(){return this._data.root?this._data.root.replace(/^(.+)\/$/,"$1"):this.isDavRessource&&(0,a.dirname)(this.source).split(this._knownDavService).pop()||null}get path(){if(this.root){const t=this.source.indexOf(this.root);return this.source.slice(t+this.root.length)||"/"}return(this.dirname+"/"+this.basename).replace(/\/\//g,"/")}get fileid(){return this._data?.id||this.attributes?.fileid}get status(){return this._data?.status}set status(t){this._data.status=t}move(t){L({...this._data,source:t},this._knownDavService),this._data.source=t,this.updateMtime()}rename(t){if(t.includes("/"))throw new Error("Invalid basename");this.move((0,a.dirname)(this.source)+"/"+t)}updateMtime(){this._data.mtime&&(this._data.mtime=new Date)}}class P extends I{get type(){return O.File}}class C extends I{constructor(t){super({...t,mime:"httpd/unix-directory"})}get type(){return O.Folder}get extension(){return null}get mime(){return"httpd/unix-directory"}}const j=`/files/${(0,n.ts)()?.uid}`,k=(0,u.generateRemoteUrl)("dav"),D=function(t=k){const e=(0,c.eI)(t,{headers:{requesttoken:(0,n.IH)()||""}});return(0,c.lD)().patch("request",(t=>(t.headers?.method&&(t.method=t.headers.method,delete t.headers.method),(0,l.W)(t)))),e},V=async(t,e="/",r=j)=>(await t.getDirectoryContents(`${r}${e}`,{details:!0,data:`\n\t\t\n\t\t\t\n\t\t\t\t${E()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`,headers:{method:"REPORT"},includeSelf:!0})).data.filter((t=>t.filename!==e)).map((t=>F(t,r))),F=function(t,e=j,r=k){const i=t.props,o=function(t=""){let e=w.NONE;return t&&((t.includes("C")||t.includes("K"))&&(e|=w.CREATE),t.includes("G")&&(e|=w.READ),(t.includes("W")||t.includes("N")||t.includes("V"))&&(e|=w.UPDATE),t.includes("D")&&(e|=w.DELETE),t.includes("R")&&(e|=w.SHARE)),e}(i?.permissions),a=(0,n.ts)()?.uid,s={id:i?.fileid||0,source:`${r}${t.filename}`,mtime:new Date(Date.parse(t.lastmod)),mime:t.mime,size:i?.size||Number.parseInt(i.getcontentlength||"0"),permissions:o,owner:a,root:e,attributes:{...t,...i,hasPreview:i?.["has-preview"]}};return delete s.attributes?.props,"file"===t.type?new P(s):new C(s)};class R{_views=[];_currentView=null;register(t){if(this._views.find((e=>e.id===t.id)))throw new Error(`View id ${t.id} is already registered`);this._views.push(t)}remove(t){const e=this._views.findIndex((e=>e.id===t));-1!==e&&this._views.splice(e,1)}get views(){return this._views}setActive(t){this._currentView=t}get active(){return this._currentView}}const $=function(){return typeof window._nc_navigation>"u"&&(window._nc_navigation=new R,f.debug("Navigation service initialized")),window._nc_navigation};class M{_column;constructor(t){G(t),this._column=t}get id(){return this._column.id}get title(){return this._column.title}get render(){return this._column.render}get sort(){return this._column.sort}get summary(){return this._column.summary}}const G=function(t){if(!t.id||"string"!=typeof t.id)throw new Error("A column id is required");if(!t.title||"string"!=typeof t.title)throw new Error("A column title is required");if(!t.render||"function"!=typeof t.render)throw new Error("A render function is required");if(t.sort&&"function"!=typeof t.sort)throw new Error("Column sortFunction must be a function");if(t.summary&&"function"!=typeof t.summary)throw new Error("Column summary must be a function");return!0};var U={},B={};!function(t){const e=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",r="["+e+"]["+e+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",n=new RegExp("^"+r+"$");t.isExist=function(t){return typeof t<"u"},t.isEmptyObject=function(t){return 0===Object.keys(t).length},t.merge=function(t,e,r){if(e){const n=Object.keys(e),i=n.length;for(let o=0;o"u")},t.getAllMatches=function(t,e){const r=[];let n=e.exec(t);for(;n;){const i=[];i.startIndex=e.lastIndex-n[0].length;const o=n.length;for(let t=0;t5&&"xml"===n)return et("InvalidXml","XML declaration allowed only at the start of the document.",it(t,e));if("?"==t[e]&&">"==t[e+1]){e++;break}continue}return e}function z(t,e){if(t.length>e+5&&"-"===t[e+1]&&"-"===t[e+2]){for(e+=3;e"===t[e+2]){e+=2;break}}else if(t.length>e+8&&"D"===t[e+1]&&"O"===t[e+2]&&"C"===t[e+3]&&"T"===t[e+4]&&"Y"===t[e+5]&&"P"===t[e+6]&&"E"===t[e+7]){let r=1;for(e+=8;e"===t[e]&&(r--,0===r))break}else if(t.length>e+9&&"["===t[e+1]&&"C"===t[e+2]&&"D"===t[e+3]&&"A"===t[e+4]&&"T"===t[e+5]&&"A"===t[e+6]&&"["===t[e+7])for(e+=8;e"===t[e+2]){e+=2;break}return e}U.validate=function(t,e){e=Object.assign({},q,e);const r=[];let n=!1,i=!1;"\ufeff"===t[0]&&(t=t.substr(1));for(let o=0;o"!==t[o]&&" "!==t[o]&&"\t"!==t[o]&&"\n"!==t[o]&&"\r"!==t[o];o++)u+=t[o];if(u=u.trim(),"/"===u[u.length-1]&&(u=u.substring(0,u.length-1),o--),!nt(u)){let e;return e=0===u.trim().length?"Invalid space after '<'.":"Tag '"+u+"' is an invalid name.",et("InvalidTag",e,it(t,o))}const c=W(t,o);if(!1===c)return et("InvalidAttr","Attributes for '"+u+"' have open quote.",it(t,o));let l=c.value;if(o=c.index,"/"===l[l.length-1]){const r=o-l.length;l=l.substring(0,l.length-1);const i=Q(l,e);if(!0!==i)return et(i.err.code,i.err.msg,it(t,r+i.err.line));n=!0}else if(s){if(!c.tagClosed)return et("InvalidTag","Closing tag '"+u+"' doesn't have proper closing.",it(t,o));if(l.trim().length>0)return et("InvalidTag","Closing tag '"+u+"' can't have attributes or invalid starting.",it(t,a));{const e=r.pop();if(u!==e.tagName){let r=it(t,e.tagStartPos);return et("InvalidTag","Expected closing tag '"+e.tagName+"' (opened in line "+r.line+", col "+r.col+") instead of closing tag '"+u+"'.",it(t,a))}0==r.length&&(i=!0)}}else{const s=Q(l,e);if(!0!==s)return et(s.err.code,s.err.msg,it(t,o-l.length+s.err.line));if(!0===i)return et("InvalidXml","Multiple possible root nodes found.",it(t,o));-1!==e.unpairedTags.indexOf(u)||r.push({tagName:u,tagStartPos:a}),n=!0}for(o++;o0)||et("InvalidXml","Invalid '"+JSON.stringify(r.map((t=>t.tagName)),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):et("InvalidXml","Start tag expected.",1)};const X='"',K="'";function W(t,e){let r="",n="",i=!1;for(;e"===t[e]&&""===n){i=!0;break}r+=t[e]}return""===n&&{value:r,index:e,tagClosed:i}}const J=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function Q(t,e){const r=H.getAllMatches(t,J),n={};for(let t=0;t!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,r){return t}};at.buildOptions=function(t){return Object.assign({},st,t)},at.defaultOptions=st;const ut=B;function ct(t,e){let r="";for(;e0?this.child.push({[t.tagname]:t.child,":@":t[":@"]}):this.child.push({[t.tagname]:t.child})}},xt=function(t,e){const r={};if("O"!==t[e+3]||"C"!==t[e+4]||"T"!==t[e+5]||"Y"!==t[e+6]||"P"!==t[e+7]||"E"!==t[e+8])throw new Error("Invalid Tag instead of DOCTYPE");{e+=9;let n=1,i=!1,o=!1,a="";for(;e"===t[e]){if(o?"-"===t[e-1]&&"-"===t[e-2]&&(o=!1,n--):n--,0===n)break}else"["===t[e]?i=!0:a+=t[e];else{if(i&&ft(t,e))e+=7,[entityName,val,e]=ct(t,e+1),-1===val.indexOf("&")&&(r[gt(entityName)]={regx:RegExp(`&${entityName};`,"g"),val:val});else if(i&&ht(t,e))e+=8;else if(i&&dt(t,e))e+=8;else if(i&&pt(t,e))e+=9;else{if(!lt)throw new Error("Invalid DOCTYPE");o=!0}n++,a=""}if(0!==n)throw new Error("Unclosed DOCTYPE")}return{entities:r,i:e}},Et=function(t,e={}){if(e=Object.assign({},yt,e),!t||"string"!=typeof t)return t;let r=t.trim();if(void 0!==e.skipLike&&e.skipLike.test(r))return t;if(e.hex&&vt.test(r))return Number.parseInt(r,16);{const n=mt.exec(r);if(n){const i=n[1],o=n[2];let a=function(t){return t&&-1!==t.indexOf(".")&&("."===(t=t.replace(/0+$/,""))?t="0":"."===t[0]?t="0"+t:"."===t[t.length-1]&&(t=t.substr(0,t.length-1))),t}(n[3]);const s=n[4]||n[6];if(!e.leadingZeros&&o.length>0&&i&&"."!==r[2]||!e.leadingZeros&&o.length>0&&!i&&"."!==r[1])return t;{const n=Number(r),u=""+n;return-1!==u.search(/[eE]/)||s?e.eNotation?n:t:-1!==r.indexOf(".")?"0"===u&&""===a||u===a||i&&u==="-"+a?n:t:o?a===u||i+a===u?n:t:r===u||r===i+u?n:t}}return t}};function Nt(t){const e=Object.keys(t);for(let r=0;r0)){a||(t=this.replaceEntitiesValue(t));const n=this.options.tagValueProcessor(e,t,r,i,o);return null==n?t:typeof n!=typeof t||n!==t?n:this.options.trimValues||t.trim()===t?Vt(t,this.options.parseTagValue,this.options.numberParseOptions):t}}function At(t){if(this.options.removeNSPrefix){const e=t.split(":"),r="/"===t.charAt(0)?"/":"";if("xmlns"===e[0])return"";2===e.length&&(t=r+e[1])}return t}"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,wt.nameRegexp);const Ot=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])([\\s\\S]*?)\\3)?","gm");function Tt(t,e,r){if(!this.options.ignoreAttributes&&"string"==typeof t){const r=wt.getAllMatches(t,Ot),n=r.length,i={};for(let t=0;t",o,"Closing Tag is not closed.");let a=t.substring(o+2,e).trim();if(this.options.removeNSPrefix){const t=a.indexOf(":");-1!==t&&(a=a.substr(t+1))}this.options.transformTagName&&(a=this.options.transformTagName(a)),r&&(n=this.saveTextToParentTag(n,r,i));const s=i.substring(i.lastIndexOf(".")+1);if(a&&-1!==this.options.unpairedTags.indexOf(a))throw new Error(`Unpaired tag can not be used as closing tag: `);let u=0;s&&-1!==this.options.unpairedTags.indexOf(s)?(u=i.lastIndexOf(".",i.lastIndexOf(".")-1),this.tagsNodeStack.pop()):u=i.lastIndexOf("."),i=i.substring(0,u),r=this.tagsNodeStack.pop(),n="",o=e}else if("?"===t[o+1]){let e=kt(t,o,!1,"?>");if(!e)throw new Error("Pi Tag is not closed.");if(n=this.saveTextToParentTag(n,r,i),!(this.options.ignoreDeclaration&&"?xml"===e.tagName||this.options.ignorePiTags)){const t=new bt(e.tagName);t.add(this.options.textNodeName,""),e.tagName!==e.tagExp&&e.attrExpPresent&&(t[":@"]=this.buildAttributesMap(e.tagExp,i,e.tagName)),this.addChild(r,t,i)}o=e.closeIndex+1}else if("!--"===t.substr(o+1,3)){const e=jt(t,"--\x3e",o+4,"Comment is not closed.");if(this.options.commentPropName){const a=t.substring(o+4,e-2);n=this.saveTextToParentTag(n,r,i),r.add(this.options.commentPropName,[{[this.options.textNodeName]:a}])}o=e}else if("!D"===t.substr(o+1,2)){const e=xt(t,o);this.docTypeEntities=e.entities,o=e.i}else if("!["===t.substr(o+1,2)){const e=jt(t,"]]>",o,"CDATA is not closed.")-2,a=t.substring(o+9,e);if(n=this.saveTextToParentTag(n,r,i),this.options.cdataPropName)r.add(this.options.cdataPropName,[{[this.options.textNodeName]:a}]);else{let t=this.parseTextData(a,r.tagname,i,!0,!1,!0);null==t&&(t=""),r.add(this.options.textNodeName,t)}o=e+2}else{let a=kt(t,o,this.options.removeNSPrefix),s=a.tagName;const u=a.rawTagName;let c=a.tagExp,l=a.attrExpPresent,f=a.closeIndex;this.options.transformTagName&&(s=this.options.transformTagName(s)),r&&n&&"!xml"!==r.tagname&&(n=this.saveTextToParentTag(n,r,i,!1));const h=r;if(h&&-1!==this.options.unpairedTags.indexOf(h.tagname)&&(r=this.tagsNodeStack.pop(),i=i.substring(0,i.lastIndexOf("."))),s!==e.tagname&&(i+=i?"."+s:s),this.isItStopNode(this.options.stopNodes,i,s)){let e="";if(c.length>0&&c.lastIndexOf("/")===c.length-1)o=a.closeIndex;else if(-1!==this.options.unpairedTags.indexOf(s))o=a.closeIndex;else{const r=this.readStopNodeData(t,u,f+1);if(!r)throw new Error(`Unexpected end of ${u}`);o=r.i,e=r.tagContent}const n=new bt(s);s!==c&&l&&(n[":@"]=this.buildAttributesMap(c,i,s)),e&&(e=this.parseTextData(e,s,i,!0,l,!0,!0)),i=i.substr(0,i.lastIndexOf(".")),n.add(this.options.textNodeName,e),this.addChild(r,n,i)}else{if(c.length>0&&c.lastIndexOf("/")===c.length-1){"/"===s[s.length-1]?(s=s.substr(0,s.length-1),i=i.substr(0,i.length-1),c=s):c=c.substr(0,c.length-1),this.options.transformTagName&&(s=this.options.transformTagName(s));const t=new bt(s);s!==c&&l&&(t[":@"]=this.buildAttributesMap(c,i,s)),this.addChild(r,t,i),i=i.substr(0,i.lastIndexOf("."))}else{const t=new bt(s);this.tagsNodeStack.push(r),s!==c&&l&&(t[":@"]=this.buildAttributesMap(c,i,s)),this.addChild(r,t,i),r=t}n="",o=f}}else n+=t[o];return e.child};function St(t,e,r){const n=this.options.updateTag(e.tagname,r,e[":@"]);!1===n||("string"==typeof n&&(e.tagname=n),t.addChild(e))}const It=function(t){if(this.options.processEntities){for(let e in this.docTypeEntities){const r=this.docTypeEntities[e];t=t.replace(r.regx,r.val)}for(let e in this.lastEntities){const r=this.lastEntities[e];t=t.replace(r.regex,r.val)}if(this.options.htmlEntities)for(let e in this.htmlEntities){const r=this.htmlEntities[e];t=t.replace(r.regex,r.val)}t=t.replace(this.ampEntity.regex,this.ampEntity.val)}return t};function Pt(t,e,r,n){return t&&(void 0===n&&(n=0===Object.keys(e.child).length),void 0!==(t=this.parseTextData(t,e.tagname,r,!1,!!e[":@"]&&0!==Object.keys(e[":@"]).length,n))&&""!==t&&e.add(this.options.textNodeName,t),t=""),t}function Ct(t,e,r){const n="*."+r;for(const r in t){const i=t[r];if(n===i||e===i)return!0}return!1}function jt(t,e,r,n){const i=t.indexOf(e,r);if(-1===i)throw new Error(n);return i+e.length-1}function kt(t,e,r,n=">"){const i=function(t,e,r=">"){let n,i="";for(let o=e;o",r,`${e} is not closed`);if(t.substring(r+2,o).trim()===e&&(i--,0===i))return{tagContent:t.substring(n,r),i:o};r=o}else if("?"===t[r+1])r=jt(t,"?>",r+1,"StopNode is not closed.");else if("!--"===t.substr(r+1,3))r=jt(t,"--\x3e",r+3,"StopNode is not closed.");else if("!["===t.substr(r+1,2))r=jt(t,"]]>",r,"StopNode is not closed.")-2;else{const n=kt(t,r,">");n&&((n&&n.tagName)===e&&"/"!==n.tagExp[n.tagExp.length-1]&&i++,r=n.closeIndex)}}function Vt(t,e,r){if(e&&"string"==typeof t){const e=t.trim();return"true"===e||"false"!==e&&Et(t,r)}return wt.isExist(t)?t:""}var Ft={};function Rt(t,e,r){let n;const i={};for(let o=0;o0&&(i[e.textNodeName]=n):void 0!==n&&(i[e.textNodeName]=n),i}function $t(t){const e=Object.keys(t);for(let t=0;t"},lt:{regex:/&(lt|#60|#x3C);/g,val:"<"},quot:{regex:/&(quot|#34|#x22);/g,val:'"'}},this.ampEntity={regex:/&(amp|#38|#x26);/g,val:"&"},this.htmlEntities={space:{regex:/&(nbsp|#160);/g,val:" "},cent:{regex:/&(cent|#162);/g,val:"¢"},pound:{regex:/&(pound|#163);/g,val:"£"},yen:{regex:/&(yen|#165);/g,val:"¥"},euro:{regex:/&(euro|#8364);/g,val:"€"},copyright:{regex:/&(copy|#169);/g,val:"©"},reg:{regex:/&(reg|#174);/g,val:"®"},inr:{regex:/&(inr|#8377);/g,val:"₹"}},this.addExternalEntities=Nt,this.parseXml=Lt,this.parseTextData=_t,this.resolveNameSpace=At,this.buildAttributesMap=Tt,this.isItStopNode=Ct,this.replaceEntitiesValue=It,this.readStopNodeData=Dt,this.saveTextToParentTag=Pt,this.addChild=St}},{prettify:Ht}=Ft,qt=U;function Yt(t,e,r,n){let i="",o=!1;for(let a=0;a`,o=!1;continue}if(u===e.commentPropName){i+=n+`\x3c!--${s[u][0][e.textNodeName]}--\x3e`,o=!0;continue}if("?"===u[0]){const t=zt(s[":@"],e),r="?xml"===u?"":n;let a=s[u][0][e.textNodeName];a=0!==a.length?" "+a:"",i+=r+`<${u}${a}${t}?>`,o=!0;continue}let l=n;""!==l&&(l+=e.indentBy);const f=n+`<${u}${zt(s[":@"],e)}`,h=Yt(s[u],e,c,l);-1!==e.unpairedTags.indexOf(u)?e.suppressUnpairedNode?i+=f+">":i+=f+"/>":h&&0!==h.length||!e.suppressEmptyNode?h&&h.endsWith(">")?i+=f+`>${h}${n}`:(i+=f+">",h&&""!==n&&(h.includes("/>")||h.includes("`):i+=f+"/>",o=!0}return i}function Zt(t){const e=Object.keys(t);for(let r=0;r0&&e.processEntities)for(let r=0;r0&&(r="\n"),Yt(t,e,"",r)},Jt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1};function Qt(t){this.options=Object.assign({},Jt,t),this.options.ignoreAttributes||this.options.attributesGroupName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=re),this.processTextOrObjNode=te,this.options.format?(this.indentate=ee,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function te(t,e,r){const n=this.j2x(t,r+1);return void 0!==t[this.options.textNodeName]&&1===Object.keys(t).length?this.buildTextValNode(t[this.options.textNodeName],e,n.attrStr,r):this.buildObjectNode(n.val,e,n.attrStr,r)}function ee(t){return this.options.indentBy.repeat(t)}function re(t){return!(!t.startsWith(this.options.attributeNamePrefix)||t===this.options.textNodeName)&&t.substr(this.attrPrefixLen)}Qt.prototype.build=function(t){return this.options.preserveOrder?Wt(t,this.options):(Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t}),this.j2x(t,0).val)},Qt.prototype.j2x=function(t,e){let r="",n="";for(let i in t)if(t.hasOwnProperty(i))if(typeof t[i]>"u")this.isAttribute(i)&&(n+="");else if(null===t[i])this.isAttribute(i)?n+="":"?"===i[0]?n+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+i+"/"+this.tagEndChar;else if(t[i]instanceof Date)n+=this.buildTextValNode(t[i],i,"",e);else if("object"!=typeof t[i]){const o=this.isAttribute(i);if(o)r+=this.buildAttrPairStr(o,""+t[i]);else if(i===this.options.textNodeName){let e=this.options.tagValueProcessor(i,""+t[i]);n+=this.replaceEntitiesValue(e)}else n+=this.buildTextValNode(t[i],i,"",e)}else if(Array.isArray(t[i])){const r=t[i].length;let o="";for(let a=0;a"u"||(null===r?"?"===i[0]?n+=this.indentate(e)+"<"+i+"?"+this.tagEndChar:n+=this.indentate(e)+"<"+i+"/"+this.tagEndChar:"object"==typeof r?this.options.oneListGroup?o+=this.j2x(r,e+1).val:o+=this.processTextOrObjNode(r,i,e):o+=this.buildTextValNode(r,i,"",e))}this.options.oneListGroup&&(o=this.buildObjectNode(o,i,"",e)),n+=o}else if(this.options.attributesGroupName&&i===this.options.attributesGroupName){const e=Object.keys(t[i]),n=e.length;for(let o=0;o"+t+i}},Qt.prototype.closeTag=function(t){let e="";return-1!==this.options.unpairedTags.indexOf(t)?this.options.suppressUnpairedNode||(e="/"):e=this.options.suppressEmptyNode?"/":`>`+this.newLine;if(!1!==this.options.commentPropName&&e===this.options.commentPropName)return this.indentate(n)+`\x3c!--${t}--\x3e`+this.newLine;if("?"===e[0])return this.indentate(n)+"<"+e+r+"?"+this.tagEndChar;{let i=this.options.tagValueProcessor(e,t);return i=this.replaceEntitiesValue(i),""===i?this.indentate(n)+"<"+e+r+this.closeTag(e)+this.tagEndChar:this.indentate(n)+"<"+e+r+">"+i+"0&&this.options.processEntities)for(let e=0;e0&&(!t.caption||"string"!=typeof t.caption))throw new Error("View caption is required for top-level views and must be a string");if(!t.getContents||"function"!=typeof t.getContents)throw new Error("View getContents is required and must be a function");if(!t.icon||"string"!=typeof t.icon||!function(t){if("string"!=typeof t)throw new TypeError(`Expected a \`string\`, got \`${typeof t}\``);if(0===(t=t.trim()).length||!0!==ne.XMLValidator.validate(t))return!1;let e;const r=new ne.XMLParser;try{e=r.parse(t)}catch{return!1}return!(!e||!("svg"in e))}(t.icon))throw new Error("View icon is required and must be a valid svg string");if(!("order"in t)||"number"!=typeof t.order)throw new Error("View order is required and must be a number");if(t.columns&&t.columns.forEach((t=>{if(!(t instanceof M))throw new Error("View columns must be an array of Column. Invalid column found")})),t.emptyView&&"function"!=typeof t.emptyView)throw new Error("View emptyView must be a function");if(t.parent&&"string"!=typeof t.parent)throw new Error("View parent must be a string");if("sticky"in t&&"boolean"!=typeof t.sticky)throw new Error("View sticky must be a boolean");if("expanded"in t&&"boolean"!=typeof t.expanded)throw new Error("View expanded must be a boolean");if(t.defaultSortKey&&"string"!=typeof t.defaultSortKey)throw new Error("View defaultSortKey must be a string");return!0}}},i={};function o(t){var e=i[t];if(void 0!==e)return e.exports;var r=i[t]={id:t,loaded:!1,exports:{}};return n[t].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=n,t=[],o.O=function(e,r,n,i){if(!r){var a=1/0;for(l=0;l=i)&&Object.keys(o.O).every((function(t){return o.O[t](r[u])}))?r.splice(u--,1):(s=!1,i0&&t[l-1][2]>i;l--)t[l]=t[l-1];t[l]=[r,n,i]},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,{a:e}),e},o.d=function(t,e){for(var r in e)o.o(e,r)&&!o.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:e[r]})},o.f={},o.e=function(t){return Promise.all(Object.keys(o.f).reduce((function(e,r){return o.f[r](t,e),e}),[]))},o.u=function(t){return t+"-"+t+".js?v=9712b63e6d8aa316e55f"},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e={},r="nextcloud:",o.l=function(t,n,i,a){if(e[t])e[t].push(n);else{var s,u;if(void 0!==i)for(var c=document.getElementsByTagName("script"),l=0;l-1&&!t;)t=r[n--].src}if(!t)throw new Error("Automatic publicPath is not supported in this browser");t=t.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),o.p=t}(),function(){o.b=document.baseURI||self.location.href;var t={8213:0};o.f.j=function(e,r){var n=o.o(t,e)?t[e]:void 0;if(0!==n)if(n)r.push(n[2]);else{var i=new Promise((function(r,i){n=t[e]=[r,i]}));r.push(n[2]=i);var a=o.p+o.u(e),s=new Error;o.l(a,(function(r){if(o.o(t,e)&&(0!==(n=t[e])&&(t[e]=void 0),n)){var i=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+e+" failed.\n("+i+": "+a+")",s.name="ChunkLoadError",s.type=i,s.request=a,n[1](s)}}),"chunk-"+e,e)}},o.O.j=function(e){return 0===t[e]};var e=function(e,r){var n,i,a=r[0],s=r[1],u=r[2],c=0;if(a.some((function(e){return 0!==t[e]}))){for(n in s)o.o(s,n)&&(o.m[n]=s[n]);if(u)var l=u(o)}for(e&&e(r);c 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// @see https://github.com/nextcloud/server/blob/ac2bc2384efe3c15ff987b87a7432bc60d545c67/lib/public/Files/StorageNotAvailableException.php#L41\nexport var STORAGE_STATUS;\n(function (STORAGE_STATUS) {\n STORAGE_STATUS[STORAGE_STATUS[\"SUCCESS\"] = 0] = \"SUCCESS\";\n STORAGE_STATUS[STORAGE_STATUS[\"ERROR\"] = 1] = \"ERROR\";\n STORAGE_STATUS[STORAGE_STATUS[\"INDETERMINATE\"] = 2] = \"INDETERMINATE\";\n STORAGE_STATUS[STORAGE_STATUS[\"INCOMPLETE_CONF\"] = 3] = \"INCOMPLETE_CONF\";\n STORAGE_STATUS[STORAGE_STATUS[\"UNAUTHORIZED\"] = 4] = \"UNAUTHORIZED\";\n STORAGE_STATUS[STORAGE_STATUS[\"TIMEOUT\"] = 5] = \"TIMEOUT\";\n STORAGE_STATUS[STORAGE_STATUS[\"NETWORK_ERROR\"] = 6] = \"NETWORK_ERROR\";\n})(STORAGE_STATUS || (STORAGE_STATUS = {}));\nexport const isMissingAuthConfig = function (config) {\n // If we don't know the status, assume it is ok\n if (!config.status || config.status === STORAGE_STATUS.SUCCESS) {\n return false;\n }\n return config.userProvided || config.authMechanism === 'password::global::user';\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\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 .\n *\n */\nimport { FileType, Node } from '@nextcloud/files';\nexport const isNodeExternalStorage = function (node) {\n // Not a folder, not a storage\n if (node.type === FileType.File) {\n return false;\n }\n // No backend or scope, not a storage\n const attributes = node.attributes;\n if (!attributes.scope || !attributes.backend) {\n return false;\n }\n // Specific markers that we're sure are ext storage only\n return attributes.scope === 'personal' || attributes.scope === 'system';\n};\n","import { generateOcsUrl, generateUrl } from '@nextcloud/router';\nimport { showError, showSuccess } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport LoginSvg from '@mdi/svg/svg/login.svg?raw';\nimport Vue from 'vue';\nimport { FileAction, DefaultType } from '@nextcloud/files';\nimport { STORAGE_STATUS, isMissingAuthConfig } from '../utils/credentialsUtils';\nimport { isNodeExternalStorage } from '../utils/externalStorageUtils';\nexport const action = new FileAction({\n id: 'credentials-external-storage',\n displayName: () => t('files', 'Enter missing credentials'),\n iconSvgInline: () => LoginSvg,\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!isNodeExternalStorage(node)) {\n return false;\n }\n const config = (node.attributes?.config || {});\n if (isMissingAuthConfig(config)) {\n return true;\n }\n return false;\n },\n async exec(node) {\n // always resolve auth request, we'll process the data afterwards\n const response = await axios.get(generateOcsUrl('/apps/files_external/api/v1/auth'), {\n validateStatus: () => true,\n });\n const data = (response?.data || {});\n if (data.ocs.data.user && data.ocs.data.password) {\n const configResponse = await axios.put(generateUrl('apps/files_external/userglobalstorages/{id}', node.attributes), {\n backendOptions: data.ocs.data,\n });\n const config = configResponse.data;\n if (config.status !== STORAGE_STATUS.SUCCESS) {\n showError(t('files_external', 'Unable to update this external storage config. {statusMessage}', {\n statusMessage: config?.statusMessage || '',\n }));\n return null;\n }\n // Success update config attribute\n showSuccess(t('files_external', 'New configuration successfully saved'));\n Vue.set(node.attributes, 'config', config);\n }\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.DEFAULT,\n inline: () => true,\n});\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./fileEntryStatus.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./fileEntryStatus.scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { Folder, Permission } from '@nextcloud/files';\nimport { generateOcsUrl, generateRemoteUrl, generateUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport { STORAGE_STATUS } from '../utils/credentialsUtils';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nconst entryToFolder = (ocsEntry) => {\n const path = (ocsEntry.path + '/' + ocsEntry.name).replace(/^\\//gm, '');\n return new Folder({\n id: ocsEntry.id,\n source: generateRemoteUrl('dav' + rootPath + '/' + path),\n root: rootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: ocsEntry.config.status !== STORAGE_STATUS.SUCCESS\n ? Permission.NONE\n : ocsEntry?.permissions || Permission.READ,\n attributes: {\n displayName: path,\n ...ocsEntry,\n },\n });\n};\nexport const getContents = async () => {\n const response = await axios.get(generateOcsUrl('apps/files_external/api/v1/mounts'));\n const contents = response.data.ocs.data.map(entryToFolder);\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n root: rootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n contents,\n };\n};\nexport const getStatus = function (id, global = true) {\n const type = global ? 'userglobalstorages' : 'userstorages';\n return axios.get(generateUrl(`apps/files_external/${type}/${id}?testOnly=false`));\n};\n","import { showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport AlertSvg from '@mdi/svg/svg/alert-circle.svg?raw';\nimport Vue from 'vue';\nimport '../css/fileEntryStatus.scss';\nimport { getStatus } from '../services/externalStorage';\nimport { isMissingAuthConfig, STORAGE_STATUS } from '../utils/credentialsUtils';\nimport { isNodeExternalStorage } from '../utils/externalStorageUtils';\nimport { FileAction } from '@nextcloud/files';\nexport const action = new FileAction({\n id: 'check-external-storage',\n displayName: () => '',\n iconSvgInline: () => '',\n enabled: (nodes) => {\n return nodes.every(node => isNodeExternalStorage(node) === true);\n },\n exec: async () => null,\n /**\n * Use this function to check the storage availability\n * We then update the node attributes directly.\n */\n async renderInline(node) {\n let config = null;\n try {\n const response = await getStatus(node.attributes.id, node.attributes.scope === 'system');\n config = response.data;\n Vue.set(node.attributes, 'config', config);\n if (config.status !== STORAGE_STATUS.SUCCESS) {\n throw new Error(config?.statusMessage || t('files_external', 'There was an error with this external storage.'));\n }\n return null;\n }\n catch (error) {\n // If axios failed or if something else prevented\n // us from getting the config\n if (error.response && !config) {\n showWarning(t('files_external', 'We were unable to check the external storage {basename}', {\n basename: node.basename,\n }));\n return null;\n }\n // Checking if we really have an error\n const isWarning = isMissingAuthConfig(config);\n const overlay = document.createElement('span');\n overlay.classList.add(`files-list__row-status--${isWarning ? 'warning' : 'error'}`);\n const span = document.createElement('span');\n span.className = 'files-list__row-status';\n // Only show an icon for errors, warning like missing credentials\n // have a dedicated inline action button\n if (!isWarning) {\n span.innerHTML = AlertSvg;\n span.title = error.message;\n }\n span.prepend(overlay);\n return span;\n }\n },\n order: 10,\n});\n","import { generateUrl } from '@nextcloud/router';\nimport { translate as t } from '@nextcloud/l10n';\nimport { FileAction, DefaultType } from '@nextcloud/files';\nimport { STORAGE_STATUS } from '../utils/credentialsUtils';\nexport const action = new FileAction({\n id: 'open-in-files-external-storage',\n displayName: (nodes) => {\n const config = nodes?.[0]?.attributes?.config || { status: STORAGE_STATUS.INDETERMINATE };\n if (config.status !== STORAGE_STATUS.SUCCESS) {\n return t('files_external', 'Examine this faulty external storage configuration');\n }\n return t('files', 'Open in files');\n },\n iconSvgInline: () => '',\n enabled: (nodes, view) => view.id === 'extstoragemounts',\n async exec(node) {\n const config = node.attributes.config;\n if (config?.status !== STORAGE_STATUS.SUCCESS) {\n window.OC.dialogs.confirm(t('files_external', 'There was an error with this external storage. Do you want to review this mount point config in the settings page?'), t('files_external', 'External mount error'), (redirect) => {\n if (redirect === true) {\n const scope = node.attributes.scope === 'personal' ? 'user' : 'admin';\n window.location.href = generateUrl(`/settings/${scope}/externalstorages`);\n }\n });\n return null;\n }\n // Do not use fileid as we don't have that information\n // from the external storage api\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files' }, { dir: node.path });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\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 .\n *\n */\nimport { loadState } from '@nextcloud/initial-state';\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation, Column, registerFileAction } from '@nextcloud/files';\nimport FolderNetworkSvg from '@mdi/svg/svg/folder-network.svg?raw';\nimport { action as enterCredentialsAction } from './actions/enterCredentialsAction';\nimport { action as inlineStorageCheckAction } from './actions/inlineStorageCheckAction';\nimport { action as openInFilesAction } from './actions/openInFilesAction';\nimport { getContents } from './services/externalStorage';\nconst allowUserMounting = loadState('files_external', 'allowUserMounting', false);\n// Register view\nconst Navigation = getNavigation();\nNavigation.register(new View({\n id: 'extstoragemounts',\n name: t('files_external', 'External storage'),\n caption: t('files_external', 'List of external storage.'),\n emptyCaption: allowUserMounting\n ? t('files_external', 'There is no external storage configured. You can configure them in your Personal settings.')\n : t('files_external', 'There is no external storage configured and you don\\'t have the permission to configure them.'),\n emptyTitle: t('files_external', 'No external storage'),\n icon: FolderNetworkSvg,\n order: 30,\n columns: [\n new Column({\n id: 'storage-type',\n title: t('files_external', 'Storage type'),\n render(node) {\n const backend = node.attributes?.backend || t('files_external', 'Unknown');\n const span = document.createElement('span');\n span.textContent = backend;\n return span;\n },\n }),\n new Column({\n id: 'scope',\n title: t('files_external', 'Scope'),\n render(node) {\n const span = document.createElement('span');\n let scope = t('files_external', 'Personal');\n if (node.attributes?.scope === 'system') {\n scope = t('files_external', 'System');\n }\n span.textContent = scope;\n return span;\n },\n }),\n ],\n getContents,\n}));\n// Register actions\nregisterFileAction(enterCredentialsAction);\nregisterFileAction(inlineStorageCheckAction);\nregisterFileAction(openInFilesAction);\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list__row-status{display:flex;width:44px;justify-content:center;align-items:center;height:100%}.files-list__row-status svg{width:24px;height:24px}.files-list__row-status svg path{fill:currentColor}.files-list__row-status--error,.files-list__row-status--warning{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1}.files-list__row-status--error{background:var(--color-error)}.files-list__row-status--warning{background:var(--color-warning)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_external/src/css/fileEntryStatus.scss\"],\"names\":[],\"mappings\":\"AAAA,wBACC,YAAA,CACA,UAAA,CACA,sBAAA,CACA,kBAAA,CACA,WAAA,CAEA,4BACC,UAAA,CACA,WAAA,CAEA,iCACC,iBAAA,CAIF,gEAEC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CAGD,+BACC,6BAAA,CAGD,iCACC,+BAAA\",\"sourcesContent\":[\".files-list__row-status {\\n\\tdisplay: flex;\\n\\twidth: 44px;\\n\\tjustify-content: center;\\n\\talign-items: center;\\n\\theight: 100%;\\n\\n\\tsvg {\\n\\t\\twidth: 24px;\\n\\t\\theight: 24px;\\n\\n\\t\\tpath {\\n\\t\\t\\tfill: currentColor;\\n\\t\\t}\\n\\t}\\n\\n\\t&--error,\\n\\t&--warning {\\n\\t\\tposition: absolute;\\n\\t\\tdisplay: block;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\tright: 0;\\n\\t\\tbottom: 0;\\n\\t\\topacity: .1;\\n\\t\\tz-index: -1;\\n\\t}\\n\\n\\t&--error {\\n\\t\\tbackground: var(--color-error);\\n\\t}\\n\\n\\t&--warning {\\n\\t\\tbackground: var(--color-warning);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import { getCurrentUser as T, getRequestToken as at } from \"@nextcloud/auth\";\nimport { getLoggerBuilder as M } from \"@nextcloud/logger\";\nimport { getCanonicalLocale as lt } from \"@nextcloud/l10n\";\nimport { join as dt, basename as ut, extname as ct, dirname as A } from \"path\";\nimport { encodePath as ht } from \"@nextcloud/paths\";\nimport { generateRemoteUrl as pt } from \"@nextcloud/router\";\nimport { createClient as ft, getPatcher as gt } from \"webdav\";\nimport { request as mt } from \"webdav/dist/node/request.js\";\nconst wt = (t) => t === null ? M().setApp(\"files\").build() : M().setApp(\"files\").setUid(t.uid).build(), m = wt(T());\nclass vt {\n _entries = [];\n registerEntry(e) {\n this.validateEntry(e), this._entries.push(e);\n }\n unregisterEntry(e) {\n const i = typeof e == \"string\" ? this.getEntryIndex(e) : this.getEntryIndex(e.id);\n if (i === -1) {\n m.warn(\"Entry not found, nothing removed\", { entry: e, entries: this.getEntries() });\n return;\n }\n this._entries.splice(i, 1);\n }\n getEntries(e) {\n return e ? this._entries.filter((i) => typeof i.if == \"function\" ? i.if(e) : !0) : this._entries;\n }\n getEntryIndex(e) {\n return this._entries.findIndex((i) => i.id === e);\n }\n validateEntry(e) {\n if (!e.id || !e.displayName || !(e.iconSvgInline || e.iconClass || e.handler))\n throw new Error(\"Invalid entry\");\n if (typeof e.id != \"string\" || typeof e.displayName != \"string\")\n throw new Error(\"Invalid id or displayName property\");\n if (e.iconClass && typeof e.iconClass != \"string\" || e.iconSvgInline && typeof e.iconSvgInline != \"string\")\n throw new Error(\"Invalid icon provided\");\n if (e.if !== void 0 && typeof e.if != \"function\")\n throw new Error(\"Invalid if property\");\n if (e.templateName && typeof e.templateName != \"string\")\n throw new Error(\"Invalid templateName property\");\n if (e.handler && typeof e.handler != \"function\")\n throw new Error(\"Invalid handler property\");\n if (!e.templateName && !e.handler)\n throw new Error(\"At least a templateName or a handler must be provided\");\n if (this.getEntryIndex(e.id) !== -1)\n throw new Error(\"Duplicate entry\");\n }\n}\nconst F = function() {\n return typeof window._nc_newfilemenu > \"u\" && (window._nc_newfilemenu = new vt(), m.debug(\"NewFileMenu initialized\")), window._nc_newfilemenu;\n}, P = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"], O = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction Ze(t, e = !1, i = !0) {\n typeof t == \"string\" && (t = Number(t));\n let r = t > 0 ? Math.floor(Math.log(t) / Math.log(i ? 1024 : 1e3)) : 0;\n r = Math.min((i ? O.length : P.length) - 1, r);\n const n = i ? O[r] : P[r];\n let s = (t / Math.pow(i ? 1024 : 1e3, r)).toFixed(1);\n return e === !0 && r === 0 ? (s !== \"0.0\" ? \"< 1 \" : \"0 \") + (i ? O[1] : P[1]) : (r < 2 ? s = parseFloat(s).toFixed(0) : s = parseFloat(s).toLocaleString(lt()), s + \" \" + n);\n}\nfunction Je(t, e = !1) {\n try {\n t = `${t}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n } catch {\n return null;\n }\n const i = t.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n if (i === null || i[1] === \".\" || i[1] === \"\")\n return null;\n const r = { \"\": 0, k: 1, m: 2, g: 3, t: 4, p: 5, e: 6 }, n = `${i[1]}`, s = i[4] === \"i\" || e ? 1024 : 1e3;\n return Math.round(Number.parseFloat(n) * s ** r[i[3]]);\n}\nvar K = ((t) => (t.DEFAULT = \"default\", t.HIDDEN = \"hidden\", t))(K || {});\nclass Qe {\n _action;\n constructor(e) {\n this.validateAction(e), this._action = e;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\n }\n get title() {\n return this._action.title;\n }\n get iconSvgInline() {\n return this._action.iconSvgInline;\n }\n get enabled() {\n return this._action.enabled;\n }\n get exec() {\n return this._action.exec;\n }\n get execBatch() {\n return this._action.execBatch;\n }\n get order() {\n return this._action.order;\n }\n get default() {\n return this._action.default;\n }\n get inline() {\n return this._action.inline;\n }\n get renderInline() {\n return this._action.renderInline;\n }\n validateAction(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"Invalid id\");\n if (!e.displayName || typeof e.displayName != \"function\")\n throw new Error(\"Invalid displayName function\");\n if (\"title\" in e && typeof e.title != \"function\")\n throw new Error(\"Invalid title function\");\n if (!e.iconSvgInline || typeof e.iconSvgInline != \"function\")\n throw new Error(\"Invalid iconSvgInline function\");\n if (!e.exec || typeof e.exec != \"function\")\n throw new Error(\"Invalid exec function\");\n if (\"enabled\" in e && typeof e.enabled != \"function\")\n throw new Error(\"Invalid enabled function\");\n if (\"execBatch\" in e && typeof e.execBatch != \"function\")\n throw new Error(\"Invalid execBatch function\");\n if (\"order\" in e && typeof e.order != \"number\")\n throw new Error(\"Invalid order\");\n if (e.default && !Object.values(K).includes(e.default))\n throw new Error(\"Invalid default\");\n if (\"inline\" in e && typeof e.inline != \"function\")\n throw new Error(\"Invalid inline function\");\n if (\"renderInline\" in e && typeof e.renderInline != \"function\")\n throw new Error(\"Invalid renderInline function\");\n }\n}\nconst ti = function(t) {\n if (typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions.find((e) => e.id === t.id)) {\n m.error(`FileAction ${t.id} already registered`, { action: t });\n return;\n }\n window._nc_fileactions.push(t);\n}, ei = function() {\n return typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions;\n};\nclass ii {\n _header;\n constructor(e) {\n this.validateHeader(e), this._header = e;\n }\n get id() {\n return this._header.id;\n }\n get order() {\n return this._header.order;\n }\n get enabled() {\n return this._header.enabled;\n }\n get render() {\n return this._header.render;\n }\n get updated() {\n return this._header.updated;\n }\n validateHeader(e) {\n if (!e.id || !e.render || !e.updated)\n throw new Error(\"Invalid header: id, render and updated are required\");\n if (typeof e.id != \"string\")\n throw new Error(\"Invalid id property\");\n if (e.enabled !== void 0 && typeof e.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (e.render && typeof e.render != \"function\")\n throw new Error(\"Invalid render property\");\n if (e.updated && typeof e.updated != \"function\")\n throw new Error(\"Invalid updated property\");\n }\n}\nconst ni = function(t) {\n if (typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader.find((e) => e.id === t.id)) {\n m.error(`Header ${t.id} already registered`, { header: t });\n return;\n }\n window._nc_filelistheader.push(t);\n}, ri = function() {\n return typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader;\n};\nvar v = ((t) => (t[t.NONE = 0] = \"NONE\", t[t.CREATE = 4] = \"CREATE\", t[t.READ = 1] = \"READ\", t[t.UPDATE = 2] = \"UPDATE\", t[t.DELETE = 8] = \"DELETE\", t[t.SHARE = 16] = \"SHARE\", t[t.ALL = 31] = \"ALL\", t))(v || {});\nconst W = [\"d:getcontentlength\", \"d:getcontenttype\", \"d:getetag\", \"d:getlastmodified\", \"d:quota-available-bytes\", \"d:resourcetype\", \"nc:has-preview\", \"nc:is-encrypted\", \"nc:mount-type\", \"nc:share-attributes\", \"oc:comments-unread\", \"oc:favorite\", \"oc:fileid\", \"oc:owner-display-name\", \"oc:owner-id\", \"oc:permissions\", \"oc:share-types\", \"oc:size\", \"ocs:share-permissions\"], Y = { d: \"DAV:\", nc: \"http://nextcloud.org/ns\", oc: \"http://owncloud.org/ns\", ocs: \"http://open-collaboration-services.org/ns\" }, si = function(t, e = { nc: \"http://nextcloud.org/ns\" }) {\n typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...W], window._nc_dav_namespaces = { ...Y });\n const i = { ...window._nc_dav_namespaces, ...e };\n if (window._nc_dav_properties.find((n) => n === t))\n return m.error(`${t} already registered`, { prop: t }), !1;\n if (t.startsWith(\"<\") || t.split(\":\").length !== 2)\n return m.error(`${t} is not valid. See example: 'oc:fileid'`, { prop: t }), !1;\n const r = t.split(\":\")[0];\n return i[r] ? (window._nc_dav_properties.push(t), window._nc_dav_namespaces = i, !0) : (m.error(`${t} namespace unknown`, { prop: t, namespaces: i }), !1);\n}, $ = function() {\n return typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...W]), window._nc_dav_properties.map((t) => `<${t} />`).join(\" \");\n}, V = function() {\n return typeof window._nc_dav_namespaces > \"u\" && (window._nc_dav_namespaces = { ...Y }), Object.keys(window._nc_dav_namespaces).map((t) => `xmlns:${t}=\"${window._nc_dav_namespaces?.[t]}\"`).join(\" \");\n}, oi = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${$()}\n\t\t\t\n\t\t`;\n}, yt = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${$()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}, ai = function(t) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${$()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${T()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${t}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n}, xt = function(t = \"\") {\n let e = v.NONE;\n return t && ((t.includes(\"C\") || t.includes(\"K\")) && (e |= v.CREATE), t.includes(\"G\") && (e |= v.READ), (t.includes(\"W\") || t.includes(\"N\") || t.includes(\"V\")) && (e |= v.UPDATE), t.includes(\"D\") && (e |= v.DELETE), t.includes(\"R\") && (e |= v.SHARE)), e;\n};\nvar k = ((t) => (t.Folder = \"folder\", t.File = \"file\", t))(k || {});\nconst Z = function(t, e) {\n return t.match(e) !== null;\n}, B = (t, e) => {\n if (t.id && typeof t.id != \"number\")\n throw new Error(\"Invalid id type of value\");\n if (!t.source)\n throw new Error(\"Missing mandatory source\");\n try {\n new URL(t.source);\n } catch {\n throw new Error(\"Invalid source format, source must be a valid URL\");\n }\n if (!t.source.startsWith(\"http\"))\n throw new Error(\"Invalid source format, only http(s) is supported\");\n if (t.mtime && !(t.mtime instanceof Date))\n throw new Error(\"Invalid mtime type\");\n if (t.crtime && !(t.crtime instanceof Date))\n throw new Error(\"Invalid crtime type\");\n if (!t.mime || typeof t.mime != \"string\" || !t.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi))\n throw new Error(\"Missing or invalid mandatory mime\");\n if (\"size\" in t && typeof t.size != \"number\" && t.size !== void 0)\n throw new Error(\"Invalid size type\");\n if (\"permissions\" in t && t.permissions !== void 0 && !(typeof t.permissions == \"number\" && t.permissions >= v.NONE && t.permissions <= v.ALL))\n throw new Error(\"Invalid permissions\");\n if (t.owner && t.owner !== null && typeof t.owner != \"string\")\n throw new Error(\"Invalid owner type\");\n if (t.attributes && typeof t.attributes != \"object\")\n throw new Error(\"Invalid attributes type\");\n if (t.root && typeof t.root != \"string\")\n throw new Error(\"Invalid root type\");\n if (t.root && !t.root.startsWith(\"/\"))\n throw new Error(\"Root must start with a leading slash\");\n if (t.root && !t.source.includes(t.root))\n throw new Error(\"Root must be part of the source\");\n if (t.root && Z(t.source, e)) {\n const i = t.source.match(e)[0];\n if (!t.source.includes(dt(i, t.root)))\n throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n }\n if (t.status && !Object.values(J).includes(t.status))\n throw new Error(\"Status must be a valid NodeStatus\");\n};\nvar J = ((t) => (t.NEW = \"new\", t.FAILED = \"failed\", t.LOADING = \"loading\", t.LOCKED = \"locked\", t))(J || {});\nclass Q {\n _data;\n _attributes;\n _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n constructor(e, i) {\n B(e, i || this._knownDavService), this._data = e;\n const r = { set: (n, s, a) => (this.updateMtime(), Reflect.set(n, s, a)), deleteProperty: (n, s) => (this.updateMtime(), Reflect.deleteProperty(n, s)) };\n this._attributes = new Proxy(e.attributes || {}, r), delete this._data.attributes, i && (this._knownDavService = i);\n }\n get source() {\n return this._data.source.replace(/\\/$/i, \"\");\n }\n get encodedSource() {\n const { origin: e } = new URL(this.source);\n return e + ht(this.source.slice(e.length));\n }\n get basename() {\n return ut(this.source);\n }\n get extension() {\n return ct(this.source);\n }\n get dirname() {\n if (this.root) {\n const i = this.source.indexOf(this.root);\n return A(this.source.slice(i + this.root.length) || \"/\");\n }\n const e = new URL(this.source);\n return A(e.pathname);\n }\n get mime() {\n return this._data.mime;\n }\n get mtime() {\n return this._data.mtime;\n }\n get crtime() {\n return this._data.crtime;\n }\n get size() {\n return this._data.size;\n }\n get attributes() {\n return this._attributes;\n }\n get permissions() {\n return this.owner === null && !this.isDavRessource ? v.READ : this._data.permissions !== void 0 ? this._data.permissions : v.NONE;\n }\n get owner() {\n return this.isDavRessource ? this._data.owner : null;\n }\n get isDavRessource() {\n return Z(this.source, this._knownDavService);\n }\n get root() {\n return this._data.root ? this._data.root.replace(/^(.+)\\/$/, \"$1\") : this.isDavRessource && A(this.source).split(this._knownDavService).pop() || null;\n }\n get path() {\n if (this.root) {\n const e = this.source.indexOf(this.root);\n return this.source.slice(e + this.root.length) || \"/\";\n }\n return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n }\n get fileid() {\n return this._data?.id || this.attributes?.fileid;\n }\n get status() {\n return this._data?.status;\n }\n set status(e) {\n this._data.status = e;\n }\n move(e) {\n B({ ...this._data, source: e }, this._knownDavService), this._data.source = e, this.updateMtime();\n }\n rename(e) {\n if (e.includes(\"/\"))\n throw new Error(\"Invalid basename\");\n this.move(A(this.source) + \"/\" + e);\n }\n updateMtime() {\n this._data.mtime && (this._data.mtime = /* @__PURE__ */ new Date());\n }\n}\nclass bt extends Q {\n get type() {\n return k.File;\n }\n}\nclass Et extends Q {\n constructor(e) {\n super({ ...e, mime: \"httpd/unix-directory\" });\n }\n get type() {\n return k.Folder;\n }\n get extension() {\n return null;\n }\n get mime() {\n return \"httpd/unix-directory\";\n }\n}\nconst tt = `/files/${T()?.uid}`, et = pt(\"dav\"), li = function(t = et) {\n const e = ft(t, { headers: { requesttoken: at() || \"\" } });\n return gt().patch(\"request\", (i) => (i.headers?.method && (i.method = i.headers.method, delete i.headers.method), mt(i))), e;\n}, di = async (t, e = \"/\", i = tt) => (await t.getDirectoryContents(`${i}${e}`, { details: !0, data: yt(), headers: { method: \"REPORT\" }, includeSelf: !0 })).data.filter((r) => r.filename !== e).map((r) => Nt(r, i)), Nt = function(t, e = tt, i = et) {\n const r = t.props, n = xt(r?.permissions), s = T()?.uid, a = { id: r?.fileid || 0, source: `${i}${t.filename}`, mtime: new Date(Date.parse(t.lastmod)), mime: t.mime, size: r?.size || Number.parseInt(r.getcontentlength || \"0\"), permissions: n, owner: s, root: e, attributes: { ...t, ...r, hasPreview: r?.[\"has-preview\"] } };\n return delete a.attributes?.props, t.type === \"file\" ? new bt(a) : new Et(a);\n};\nclass _t {\n _views = [];\n _currentView = null;\n register(e) {\n if (this._views.find((i) => i.id === e.id))\n throw new Error(`View id ${e.id} is already registered`);\n this._views.push(e);\n }\n remove(e) {\n const i = this._views.findIndex((r) => r.id === e);\n i !== -1 && this._views.splice(i, 1);\n }\n get views() {\n return this._views;\n }\n setActive(e) {\n this._currentView = e;\n }\n get active() {\n return this._currentView;\n }\n}\nconst ui = function() {\n return typeof window._nc_navigation > \"u\" && (window._nc_navigation = new _t(), m.debug(\"Navigation service initialized\")), window._nc_navigation;\n};\nclass At {\n _column;\n constructor(e) {\n Tt(e), this._column = e;\n }\n get id() {\n return this._column.id;\n }\n get title() {\n return this._column.title;\n }\n get render() {\n return this._column.render;\n }\n get sort() {\n return this._column.sort;\n }\n get summary() {\n return this._column.summary;\n }\n}\nconst Tt = function(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"A column id is required\");\n if (!t.title || typeof t.title != \"string\")\n throw new Error(\"A column title is required\");\n if (!t.render || typeof t.render != \"function\")\n throw new Error(\"A render function is required\");\n if (t.sort && typeof t.sort != \"function\")\n throw new Error(\"Column sortFunction must be a function\");\n if (t.summary && typeof t.summary != \"function\")\n throw new Error(\"Column summary must be a function\");\n return !0;\n};\nvar L = {}, I = {};\n(function(t) {\n const e = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\", i = e + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\", r = \"[\" + e + \"][\" + i + \"]*\", n = new RegExp(\"^\" + r + \"$\"), s = function(o, l) {\n const d = [];\n let u = l.exec(o);\n for (; u; ) {\n const c = [];\n c.startIndex = l.lastIndex - u[0].length;\n const p = u.length;\n for (let h = 0; h < p; h++)\n c.push(u[h]);\n d.push(c), u = l.exec(o);\n }\n return d;\n }, a = function(o) {\n const l = n.exec(o);\n return !(l === null || typeof l > \"u\");\n };\n t.isExist = function(o) {\n return typeof o < \"u\";\n }, t.isEmptyObject = function(o) {\n return Object.keys(o).length === 0;\n }, t.merge = function(o, l, d) {\n if (l) {\n const u = Object.keys(l), c = u.length;\n for (let p = 0; p < c; p++)\n d === \"strict\" ? o[u[p]] = [l[u[p]]] : o[u[p]] = l[u[p]];\n }\n }, t.getValue = function(o) {\n return t.isExist(o) ? o : \"\";\n }, t.isName = a, t.getAllMatches = s, t.nameRegexp = r;\n})(I);\nconst R = I, It = { allowBooleanAttributes: !1, unpairedTags: [] };\nL.validate = function(t, e) {\n e = Object.assign({}, It, e);\n const i = [];\n let r = !1, n = !1;\n t[0] === \"\\uFEFF\" && (t = t.substr(1));\n for (let s = 0; s < t.length; s++)\n if (t[s] === \"<\" && t[s + 1] === \"?\") {\n if (s += 2, s = U(t, s), s.err)\n return s;\n } else if (t[s] === \"<\") {\n let a = s;\n if (s++, t[s] === \"!\") {\n s = z(t, s);\n continue;\n } else {\n let o = !1;\n t[s] === \"/\" && (o = !0, s++);\n let l = \"\";\n for (; s < t.length && t[s] !== \">\" && t[s] !== \" \" && t[s] !== \"\t\" && t[s] !== `\n` && t[s] !== \"\\r\"; s++)\n l += t[s];\n if (l = l.trim(), l[l.length - 1] === \"/\" && (l = l.substring(0, l.length - 1), s--), !Vt(l)) {\n let c;\n return l.trim().length === 0 ? c = \"Invalid space after '<'.\" : c = \"Tag '\" + l + \"' is an invalid name.\", f(\"InvalidTag\", c, g(t, s));\n }\n const d = Ct(t, s);\n if (d === !1)\n return f(\"InvalidAttr\", \"Attributes for '\" + l + \"' have open quote.\", g(t, s));\n let u = d.value;\n if (s = d.index, u[u.length - 1] === \"/\") {\n const c = s - u.length;\n u = u.substring(0, u.length - 1);\n const p = G(u, e);\n if (p === !0)\n r = !0;\n else\n return f(p.err.code, p.err.msg, g(t, c + p.err.line));\n } else if (o)\n if (d.tagClosed) {\n if (u.trim().length > 0)\n return f(\"InvalidTag\", \"Closing tag '\" + l + \"' can't have attributes or invalid starting.\", g(t, a));\n {\n const c = i.pop();\n if (l !== c.tagName) {\n let p = g(t, c.tagStartPos);\n return f(\"InvalidTag\", \"Expected closing tag '\" + c.tagName + \"' (opened in line \" + p.line + \", col \" + p.col + \") instead of closing tag '\" + l + \"'.\", g(t, a));\n }\n i.length == 0 && (n = !0);\n }\n } else\n return f(\"InvalidTag\", \"Closing tag '\" + l + \"' doesn't have proper closing.\", g(t, s));\n else {\n const c = G(u, e);\n if (c !== !0)\n return f(c.err.code, c.err.msg, g(t, s - u.length + c.err.line));\n if (n === !0)\n return f(\"InvalidXml\", \"Multiple possible root nodes found.\", g(t, s));\n e.unpairedTags.indexOf(l) !== -1 || i.push({ tagName: l, tagStartPos: a }), r = !0;\n }\n for (s++; s < t.length; s++)\n if (t[s] === \"<\")\n if (t[s + 1] === \"!\") {\n s++, s = z(t, s);\n continue;\n } else if (t[s + 1] === \"?\") {\n if (s = U(t, ++s), s.err)\n return s;\n } else\n break;\n else if (t[s] === \"&\") {\n const c = Ft(t, s);\n if (c == -1)\n return f(\"InvalidChar\", \"char '&' is not expected.\", g(t, s));\n s = c;\n } else if (n === !0 && !q(t[s]))\n return f(\"InvalidXml\", \"Extra text at the end\", g(t, s));\n t[s] === \"<\" && s--;\n }\n } else {\n if (q(t[s]))\n continue;\n return f(\"InvalidChar\", \"char '\" + t[s] + \"' is not expected.\", g(t, s));\n }\n if (r) {\n if (i.length == 1)\n return f(\"InvalidTag\", \"Unclosed tag '\" + i[0].tagName + \"'.\", g(t, i[0].tagStartPos));\n if (i.length > 0)\n return f(\"InvalidXml\", \"Invalid '\" + JSON.stringify(i.map((s) => s.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n } else\n return f(\"InvalidXml\", \"Start tag expected.\", 1);\n return !0;\n};\nfunction q(t) {\n return t === \" \" || t === \"\t\" || t === `\n` || t === \"\\r\";\n}\nfunction U(t, e) {\n const i = e;\n for (; e < t.length; e++)\n if (t[e] == \"?\" || t[e] == \" \") {\n const r = t.substr(i, e - i);\n if (e > 5 && r === \"xml\")\n return f(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", g(t, e));\n if (t[e] == \"?\" && t[e + 1] == \">\") {\n e++;\n break;\n } else\n continue;\n }\n return e;\n}\nfunction z(t, e) {\n if (t.length > e + 5 && t[e + 1] === \"-\" && t[e + 2] === \"-\") {\n for (e += 3; e < t.length; e++)\n if (t[e] === \"-\" && t[e + 1] === \"-\" && t[e + 2] === \">\") {\n e += 2;\n break;\n }\n } else if (t.length > e + 8 && t[e + 1] === \"D\" && t[e + 2] === \"O\" && t[e + 3] === \"C\" && t[e + 4] === \"T\" && t[e + 5] === \"Y\" && t[e + 6] === \"P\" && t[e + 7] === \"E\") {\n let i = 1;\n for (e += 8; e < t.length; e++)\n if (t[e] === \"<\")\n i++;\n else if (t[e] === \">\" && (i--, i === 0))\n break;\n } else if (t.length > e + 9 && t[e + 1] === \"[\" && t[e + 2] === \"C\" && t[e + 3] === \"D\" && t[e + 4] === \"A\" && t[e + 5] === \"T\" && t[e + 6] === \"A\" && t[e + 7] === \"[\") {\n for (e += 8; e < t.length; e++)\n if (t[e] === \"]\" && t[e + 1] === \"]\" && t[e + 2] === \">\") {\n e += 2;\n break;\n }\n }\n return e;\n}\nconst Pt = '\"', Ot = \"'\";\nfunction Ct(t, e) {\n let i = \"\", r = \"\", n = !1;\n for (; e < t.length; e++) {\n if (t[e] === Pt || t[e] === Ot)\n r === \"\" ? r = t[e] : r !== t[e] || (r = \"\");\n else if (t[e] === \">\" && r === \"\") {\n n = !0;\n break;\n }\n i += t[e];\n }\n return r !== \"\" ? !1 : { value: i, index: e, tagClosed: n };\n}\nconst Dt = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction G(t, e) {\n const i = R.getAllMatches(t, Dt), r = {};\n for (let n = 0; n < i.length; n++) {\n if (i[n][1].length === 0)\n return f(\"InvalidAttr\", \"Attribute '\" + i[n][2] + \"' has no space in starting.\", E(i[n]));\n if (i[n][3] !== void 0 && i[n][4] === void 0)\n return f(\"InvalidAttr\", \"Attribute '\" + i[n][2] + \"' is without value.\", E(i[n]));\n if (i[n][3] === void 0 && !e.allowBooleanAttributes)\n return f(\"InvalidAttr\", \"boolean attribute '\" + i[n][2] + \"' is not allowed.\", E(i[n]));\n const s = i[n][2];\n if (!$t(s))\n return f(\"InvalidAttr\", \"Attribute '\" + s + \"' is an invalid name.\", E(i[n]));\n if (!r.hasOwnProperty(s))\n r[s] = 1;\n else\n return f(\"InvalidAttr\", \"Attribute '\" + s + \"' is repeated.\", E(i[n]));\n }\n return !0;\n}\nfunction St(t, e) {\n let i = /\\d/;\n for (t[e] === \"x\" && (e++, i = /[\\da-fA-F]/); e < t.length; e++) {\n if (t[e] === \";\")\n return e;\n if (!t[e].match(i))\n break;\n }\n return -1;\n}\nfunction Ft(t, e) {\n if (e++, t[e] === \";\")\n return -1;\n if (t[e] === \"#\")\n return e++, St(t, e);\n let i = 0;\n for (; e < t.length; e++, i++)\n if (!(t[e].match(/\\w/) && i < 20)) {\n if (t[e] === \";\")\n break;\n return -1;\n }\n return e;\n}\nfunction f(t, e, i) {\n return { err: { code: t, msg: e, line: i.line || i, col: i.col } };\n}\nfunction $t(t) {\n return R.isName(t);\n}\nfunction Vt(t) {\n return R.isName(t);\n}\nfunction g(t, e) {\n const i = t.substring(0, e).split(/\\r?\\n/);\n return { line: i.length, col: i[i.length - 1].length + 1 };\n}\nfunction E(t) {\n return t.startIndex + t[1].length;\n}\nvar C = {};\nconst it = { preserveOrder: !1, attributeNamePrefix: \"@_\", attributesGroupName: !1, textNodeName: \"#text\", ignoreAttributes: !0, removeNSPrefix: !1, allowBooleanAttributes: !1, parseTagValue: !0, parseAttributeValue: !1, trimValues: !0, cdataPropName: !1, numberParseOptions: { hex: !0, leadingZeros: !0, eNotation: !0 }, tagValueProcessor: function(t, e) {\n return e;\n}, attributeValueProcessor: function(t, e) {\n return e;\n}, stopNodes: [], alwaysCreateTextNode: !1, isArray: () => !1, commentPropName: !1, unpairedTags: [], processEntities: !0, htmlEntities: !1, ignoreDeclaration: !1, ignorePiTags: !1, transformTagName: !1, transformAttributeName: !1, updateTag: function(t, e, i) {\n return t;\n} }, kt = function(t) {\n return Object.assign({}, it, t);\n};\nC.buildOptions = kt, C.defaultOptions = it;\nclass Lt {\n constructor(e) {\n this.tagname = e, this.child = [], this[\":@\"] = {};\n }\n add(e, i) {\n e === \"__proto__\" && (e = \"#__proto__\"), this.child.push({ [e]: i });\n }\n addChild(e) {\n e.tagname === \"__proto__\" && (e.tagname = \"#__proto__\"), e[\":@\"] && Object.keys(e[\":@\"]).length > 0 ? this.child.push({ [e.tagname]: e.child, \":@\": e[\":@\"] }) : this.child.push({ [e.tagname]: e.child });\n }\n}\nvar Rt = Lt;\nconst jt = I;\nfunction Mt(t, e) {\n const i = {};\n if (t[e + 3] === \"O\" && t[e + 4] === \"C\" && t[e + 5] === \"T\" && t[e + 6] === \"Y\" && t[e + 7] === \"P\" && t[e + 8] === \"E\") {\n e = e + 9;\n let r = 1, n = !1, s = !1, a = \"\";\n for (; e < t.length; e++)\n if (t[e] === \"<\" && !s) {\n if (n && Ut(t, e))\n e += 7, [entityName, val, e] = Bt(t, e + 1), val.indexOf(\"&\") === -1 && (i[Ht(entityName)] = { regx: RegExp(`&${entityName};`, \"g\"), val });\n else if (n && zt(t, e))\n e += 8;\n else if (n && Gt(t, e))\n e += 8;\n else if (n && Xt(t, e))\n e += 9;\n else if (qt)\n s = !0;\n else\n throw new Error(\"Invalid DOCTYPE\");\n r++, a = \"\";\n } else if (t[e] === \">\") {\n if (s ? t[e - 1] === \"-\" && t[e - 2] === \"-\" && (s = !1, r--) : r--, r === 0)\n break;\n } else\n t[e] === \"[\" ? n = !0 : a += t[e];\n if (r !== 0)\n throw new Error(\"Unclosed DOCTYPE\");\n } else\n throw new Error(\"Invalid Tag instead of DOCTYPE\");\n return { entities: i, i: e };\n}\nfunction Bt(t, e) {\n let i = \"\";\n for (; e < t.length && t[e] !== \"'\" && t[e] !== '\"'; e++)\n i += t[e];\n if (i = i.trim(), i.indexOf(\" \") !== -1)\n throw new Error(\"External entites are not supported\");\n const r = t[e++];\n let n = \"\";\n for (; e < t.length && t[e] !== r; e++)\n n += t[e];\n return [i, n, e];\n}\nfunction qt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"-\" && t[e + 3] === \"-\";\n}\nfunction Ut(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"E\" && t[e + 3] === \"N\" && t[e + 4] === \"T\" && t[e + 5] === \"I\" && t[e + 6] === \"T\" && t[e + 7] === \"Y\";\n}\nfunction zt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"E\" && t[e + 3] === \"L\" && t[e + 4] === \"E\" && t[e + 5] === \"M\" && t[e + 6] === \"E\" && t[e + 7] === \"N\" && t[e + 8] === \"T\";\n}\nfunction Gt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"A\" && t[e + 3] === \"T\" && t[e + 4] === \"T\" && t[e + 5] === \"L\" && t[e + 6] === \"I\" && t[e + 7] === \"S\" && t[e + 8] === \"T\";\n}\nfunction Xt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"N\" && t[e + 3] === \"O\" && t[e + 4] === \"T\" && t[e + 5] === \"A\" && t[e + 6] === \"T\" && t[e + 7] === \"I\" && t[e + 8] === \"O\" && t[e + 9] === \"N\";\n}\nfunction Ht(t) {\n if (jt.isName(t))\n return t;\n throw new Error(`Invalid entity name ${t}`);\n}\nvar Kt = Mt;\nconst Wt = /^[-+]?0x[a-fA-F0-9]+$/, Yt = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n!Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt), !Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);\nconst Zt = { hex: !0, leadingZeros: !0, decimalPoint: \".\", eNotation: !0 };\nfunction Jt(t, e = {}) {\n if (e = Object.assign({}, Zt, e), !t || typeof t != \"string\")\n return t;\n let i = t.trim();\n if (e.skipLike !== void 0 && e.skipLike.test(i))\n return t;\n if (e.hex && Wt.test(i))\n return Number.parseInt(i, 16);\n {\n const r = Yt.exec(i);\n if (r) {\n const n = r[1], s = r[2];\n let a = Qt(r[3]);\n const o = r[4] || r[6];\n if (!e.leadingZeros && s.length > 0 && n && i[2] !== \".\" || !e.leadingZeros && s.length > 0 && !n && i[1] !== \".\")\n return t;\n {\n const l = Number(i), d = \"\" + l;\n return d.search(/[eE]/) !== -1 || o ? e.eNotation ? l : t : i.indexOf(\".\") !== -1 ? d === \"0\" && a === \"\" || d === a || n && d === \"-\" + a ? l : t : s ? a === d || n + a === d ? l : t : i === d || i === n + d ? l : t;\n }\n } else\n return t;\n }\n}\nfunction Qt(t) {\n return t && t.indexOf(\".\") !== -1 && (t = t.replace(/0+$/, \"\"), t === \".\" ? t = \"0\" : t[0] === \".\" ? t = \"0\" + t : t[t.length - 1] === \".\" && (t = t.substr(0, t.length - 1))), t;\n}\nvar te = Jt;\nconst j = I, N = Rt, ee = Kt, ie = te;\n\"<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)\".replace(/NAME/g, j.nameRegexp);\nlet ne = class {\n constructor(t) {\n this.options = t, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = { apos: { regex: /&(apos|#39|#x27);/g, val: \"'\" }, gt: { regex: /&(gt|#62|#x3E);/g, val: \">\" }, lt: { regex: /&(lt|#60|#x3C);/g, val: \"<\" }, quot: { regex: /&(quot|#34|#x22);/g, val: '\"' } }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" }, this.htmlEntities = { space: { regex: /&(nbsp|#160);/g, val: \" \" }, cent: { regex: /&(cent|#162);/g, val: \"¢\" }, pound: { regex: /&(pound|#163);/g, val: \"£\" }, yen: { regex: /&(yen|#165);/g, val: \"¥\" }, euro: { regex: /&(euro|#8364);/g, val: \"€\" }, copyright: { regex: /&(copy|#169);/g, val: \"©\" }, reg: { regex: /&(reg|#174);/g, val: \"®\" }, inr: { regex: /&(inr|#8377);/g, val: \"₹\" } }, this.addExternalEntities = re, this.parseXml = de, this.parseTextData = se, this.resolveNameSpace = oe, this.buildAttributesMap = le, this.isItStopNode = pe, this.replaceEntitiesValue = ce, this.readStopNodeData = ge, this.saveTextToParentTag = he, this.addChild = ue;\n }\n};\nfunction re(t) {\n const e = Object.keys(t);\n for (let i = 0; i < e.length; i++) {\n const r = e[i];\n this.lastEntities[r] = { regex: new RegExp(\"&\" + r + \";\", \"g\"), val: t[r] };\n }\n}\nfunction se(t, e, i, r, n, s, a) {\n if (t !== void 0 && (this.options.trimValues && !r && (t = t.trim()), t.length > 0)) {\n a || (t = this.replaceEntitiesValue(t));\n const o = this.options.tagValueProcessor(e, t, i, n, s);\n return o == null ? t : typeof o != typeof t || o !== t ? o : this.options.trimValues ? S(t, this.options.parseTagValue, this.options.numberParseOptions) : t.trim() === t ? S(t, this.options.parseTagValue, this.options.numberParseOptions) : t;\n }\n}\nfunction oe(t) {\n if (this.options.removeNSPrefix) {\n const e = t.split(\":\"), i = t.charAt(0) === \"/\" ? \"/\" : \"\";\n if (e[0] === \"xmlns\")\n return \"\";\n e.length === 2 && (t = i + e[1]);\n }\n return t;\n}\nconst ae = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction le(t, e, i) {\n if (!this.options.ignoreAttributes && typeof t == \"string\") {\n const r = j.getAllMatches(t, ae), n = r.length, s = {};\n for (let a = 0; a < n; a++) {\n const o = this.resolveNameSpace(r[a][1]);\n let l = r[a][4], d = this.options.attributeNamePrefix + o;\n if (o.length)\n if (this.options.transformAttributeName && (d = this.options.transformAttributeName(d)), d === \"__proto__\" && (d = \"#__proto__\"), l !== void 0) {\n this.options.trimValues && (l = l.trim()), l = this.replaceEntitiesValue(l);\n const u = this.options.attributeValueProcessor(o, l, e);\n u == null ? s[d] = l : typeof u != typeof l || u !== l ? s[d] = u : s[d] = S(l, this.options.parseAttributeValue, this.options.numberParseOptions);\n } else\n this.options.allowBooleanAttributes && (s[d] = !0);\n }\n if (!Object.keys(s).length)\n return;\n if (this.options.attributesGroupName) {\n const a = {};\n return a[this.options.attributesGroupName] = s, a;\n }\n return s;\n }\n}\nconst de = function(t) {\n t = t.replace(/\\r\\n?/g, `\n`);\n const e = new N(\"!xml\");\n let i = e, r = \"\", n = \"\";\n for (let s = 0; s < t.length; s++)\n if (t[s] === \"<\")\n if (t[s + 1] === \"/\") {\n const a = x(t, \">\", s, \"Closing Tag is not closed.\");\n let o = t.substring(s + 2, a).trim();\n if (this.options.removeNSPrefix) {\n const u = o.indexOf(\":\");\n u !== -1 && (o = o.substr(u + 1));\n }\n this.options.transformTagName && (o = this.options.transformTagName(o)), i && (r = this.saveTextToParentTag(r, i, n));\n const l = n.substring(n.lastIndexOf(\".\") + 1);\n if (o && this.options.unpairedTags.indexOf(o) !== -1)\n throw new Error(`Unpaired tag can not be used as closing tag: `);\n let d = 0;\n l && this.options.unpairedTags.indexOf(l) !== -1 ? (d = n.lastIndexOf(\".\", n.lastIndexOf(\".\") - 1), this.tagsNodeStack.pop()) : d = n.lastIndexOf(\".\"), n = n.substring(0, d), i = this.tagsNodeStack.pop(), r = \"\", s = a;\n } else if (t[s + 1] === \"?\") {\n let a = D(t, s, !1, \"?>\");\n if (!a)\n throw new Error(\"Pi Tag is not closed.\");\n if (r = this.saveTextToParentTag(r, i, n), !(this.options.ignoreDeclaration && a.tagName === \"?xml\" || this.options.ignorePiTags)) {\n const o = new N(a.tagName);\n o.add(this.options.textNodeName, \"\"), a.tagName !== a.tagExp && a.attrExpPresent && (o[\":@\"] = this.buildAttributesMap(a.tagExp, n, a.tagName)), this.addChild(i, o, n);\n }\n s = a.closeIndex + 1;\n } else if (t.substr(s + 1, 3) === \"!--\") {\n const a = x(t, \"-->\", s + 4, \"Comment is not closed.\");\n if (this.options.commentPropName) {\n const o = t.substring(s + 4, a - 2);\n r = this.saveTextToParentTag(r, i, n), i.add(this.options.commentPropName, [{ [this.options.textNodeName]: o }]);\n }\n s = a;\n } else if (t.substr(s + 1, 2) === \"!D\") {\n const a = ee(t, s);\n this.docTypeEntities = a.entities, s = a.i;\n } else if (t.substr(s + 1, 2) === \"![\") {\n const a = x(t, \"]]>\", s, \"CDATA is not closed.\") - 2, o = t.substring(s + 9, a);\n if (r = this.saveTextToParentTag(r, i, n), this.options.cdataPropName)\n i.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o }]);\n else {\n let l = this.parseTextData(o, i.tagname, n, !0, !1, !0);\n l == null && (l = \"\"), i.add(this.options.textNodeName, l);\n }\n s = a + 2;\n } else {\n let a = D(t, s, this.options.removeNSPrefix), o = a.tagName;\n const l = a.rawTagName;\n let d = a.tagExp, u = a.attrExpPresent, c = a.closeIndex;\n this.options.transformTagName && (o = this.options.transformTagName(o)), i && r && i.tagname !== \"!xml\" && (r = this.saveTextToParentTag(r, i, n, !1));\n const p = i;\n if (p && this.options.unpairedTags.indexOf(p.tagname) !== -1 && (i = this.tagsNodeStack.pop(), n = n.substring(0, n.lastIndexOf(\".\"))), o !== e.tagname && (n += n ? \".\" + o : o), this.isItStopNode(this.options.stopNodes, n, o)) {\n let h = \"\";\n if (d.length > 0 && d.lastIndexOf(\"/\") === d.length - 1)\n s = a.closeIndex;\n else if (this.options.unpairedTags.indexOf(o) !== -1)\n s = a.closeIndex;\n else {\n const b = this.readStopNodeData(t, l, c + 1);\n if (!b)\n throw new Error(`Unexpected end of ${l}`);\n s = b.i, h = b.tagContent;\n }\n const w = new N(o);\n o !== d && u && (w[\":@\"] = this.buildAttributesMap(d, n, o)), h && (h = this.parseTextData(h, o, n, !0, u, !0, !0)), n = n.substr(0, n.lastIndexOf(\".\")), w.add(this.options.textNodeName, h), this.addChild(i, w, n);\n } else {\n if (d.length > 0 && d.lastIndexOf(\"/\") === d.length - 1) {\n o[o.length - 1] === \"/\" ? (o = o.substr(0, o.length - 1), n = n.substr(0, n.length - 1), d = o) : d = d.substr(0, d.length - 1), this.options.transformTagName && (o = this.options.transformTagName(o));\n const h = new N(o);\n o !== d && u && (h[\":@\"] = this.buildAttributesMap(d, n, o)), this.addChild(i, h, n), n = n.substr(0, n.lastIndexOf(\".\"));\n } else {\n const h = new N(o);\n this.tagsNodeStack.push(i), o !== d && u && (h[\":@\"] = this.buildAttributesMap(d, n, o)), this.addChild(i, h, n), i = h;\n }\n r = \"\", s = c;\n }\n }\n else\n r += t[s];\n return e.child;\n};\nfunction ue(t, e, i) {\n const r = this.options.updateTag(e.tagname, i, e[\":@\"]);\n r === !1 || (typeof r == \"string\" && (e.tagname = r), t.addChild(e));\n}\nconst ce = function(t) {\n if (this.options.processEntities) {\n for (let e in this.docTypeEntities) {\n const i = this.docTypeEntities[e];\n t = t.replace(i.regx, i.val);\n }\n for (let e in this.lastEntities) {\n const i = this.lastEntities[e];\n t = t.replace(i.regex, i.val);\n }\n if (this.options.htmlEntities)\n for (let e in this.htmlEntities) {\n const i = this.htmlEntities[e];\n t = t.replace(i.regex, i.val);\n }\n t = t.replace(this.ampEntity.regex, this.ampEntity.val);\n }\n return t;\n};\nfunction he(t, e, i, r) {\n return t && (r === void 0 && (r = Object.keys(e.child).length === 0), t = this.parseTextData(t, e.tagname, i, !1, e[\":@\"] ? Object.keys(e[\":@\"]).length !== 0 : !1, r), t !== void 0 && t !== \"\" && e.add(this.options.textNodeName, t), t = \"\"), t;\n}\nfunction pe(t, e, i) {\n const r = \"*.\" + i;\n for (const n in t) {\n const s = t[n];\n if (r === s || e === s)\n return !0;\n }\n return !1;\n}\nfunction fe(t, e, i = \">\") {\n let r, n = \"\";\n for (let s = e; s < t.length; s++) {\n let a = t[s];\n if (r)\n a === r && (r = \"\");\n else if (a === '\"' || a === \"'\")\n r = a;\n else if (a === i[0])\n if (i[1]) {\n if (t[s + 1] === i[1])\n return { data: n, index: s };\n } else\n return { data: n, index: s };\n else\n a === \"\t\" && (a = \" \");\n n += a;\n }\n}\nfunction x(t, e, i, r) {\n const n = t.indexOf(e, i);\n if (n === -1)\n throw new Error(r);\n return n + e.length - 1;\n}\nfunction D(t, e, i, r = \">\") {\n const n = fe(t, e + 1, r);\n if (!n)\n return;\n let s = n.data;\n const a = n.index, o = s.search(/\\s/);\n let l = s, d = !0;\n o !== -1 && (l = s.substr(0, o).replace(/\\s\\s*$/, \"\"), s = s.substr(o + 1));\n const u = l;\n if (i) {\n const c = l.indexOf(\":\");\n c !== -1 && (l = l.substr(c + 1), d = l !== n.data.substr(c + 1));\n }\n return { tagName: l, tagExp: s, closeIndex: a, attrExpPresent: d, rawTagName: u };\n}\nfunction ge(t, e, i) {\n const r = i;\n let n = 1;\n for (; i < t.length; i++)\n if (t[i] === \"<\")\n if (t[i + 1] === \"/\") {\n const s = x(t, \">\", i, `${e} is not closed`);\n if (t.substring(i + 2, s).trim() === e && (n--, n === 0))\n return { tagContent: t.substring(r, i), i: s };\n i = s;\n } else if (t[i + 1] === \"?\")\n i = x(t, \"?>\", i + 1, \"StopNode is not closed.\");\n else if (t.substr(i + 1, 3) === \"!--\")\n i = x(t, \"-->\", i + 3, \"StopNode is not closed.\");\n else if (t.substr(i + 1, 2) === \"![\")\n i = x(t, \"]]>\", i, \"StopNode is not closed.\") - 2;\n else {\n const s = D(t, i, \">\");\n s && ((s && s.tagName) === e && s.tagExp[s.tagExp.length - 1] !== \"/\" && n++, i = s.closeIndex);\n }\n}\nfunction S(t, e, i) {\n if (e && typeof t == \"string\") {\n const r = t.trim();\n return r === \"true\" ? !0 : r === \"false\" ? !1 : ie(t, i);\n } else\n return j.isExist(t) ? t : \"\";\n}\nvar me = ne, nt = {};\nfunction we(t, e) {\n return rt(t, e);\n}\nfunction rt(t, e, i) {\n let r;\n const n = {};\n for (let s = 0; s < t.length; s++) {\n const a = t[s], o = ve(a);\n let l = \"\";\n if (i === void 0 ? l = o : l = i + \".\" + o, o === e.textNodeName)\n r === void 0 ? r = a[o] : r += \"\" + a[o];\n else {\n if (o === void 0)\n continue;\n if (a[o]) {\n let d = rt(a[o], e, l);\n const u = xe(d, e);\n a[\":@\"] ? ye(d, a[\":@\"], l, e) : Object.keys(d).length === 1 && d[e.textNodeName] !== void 0 && !e.alwaysCreateTextNode ? d = d[e.textNodeName] : Object.keys(d).length === 0 && (e.alwaysCreateTextNode ? d[e.textNodeName] = \"\" : d = \"\"), n[o] !== void 0 && n.hasOwnProperty(o) ? (Array.isArray(n[o]) || (n[o] = [n[o]]), n[o].push(d)) : e.isArray(o, l, u) ? n[o] = [d] : n[o] = d;\n }\n }\n }\n return typeof r == \"string\" ? r.length > 0 && (n[e.textNodeName] = r) : r !== void 0 && (n[e.textNodeName] = r), n;\n}\nfunction ve(t) {\n const e = Object.keys(t);\n for (let i = 0; i < e.length; i++) {\n const r = e[i];\n if (r !== \":@\")\n return r;\n }\n}\nfunction ye(t, e, i, r) {\n if (e) {\n const n = Object.keys(e), s = n.length;\n for (let a = 0; a < s; a++) {\n const o = n[a];\n r.isArray(o, i + \".\" + o, !0, !0) ? t[o] = [e[o]] : t[o] = e[o];\n }\n }\n}\nfunction xe(t, e) {\n const { textNodeName: i } = e, r = Object.keys(t).length;\n return !!(r === 0 || r === 1 && (t[i] || typeof t[i] == \"boolean\" || t[i] === 0));\n}\nnt.prettify = we;\nconst { buildOptions: be } = C, Ee = me, { prettify: Ne } = nt, _e = L;\nlet Ae = class {\n constructor(t) {\n this.externalEntities = {}, this.options = be(t);\n }\n parse(t, e) {\n if (typeof t != \"string\")\n if (t.toString)\n t = t.toString();\n else\n throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n if (e) {\n e === !0 && (e = {});\n const n = _e.validate(t, e);\n if (n !== !0)\n throw Error(`${n.err.msg}:${n.err.line}:${n.err.col}`);\n }\n const i = new Ee(this.options);\n i.addExternalEntities(this.externalEntities);\n const r = i.parseXml(t);\n return this.options.preserveOrder || r === void 0 ? r : Ne(r, this.options);\n }\n addEntity(t, e) {\n if (e.indexOf(\"&\") !== -1)\n throw new Error(\"Entity value can't have '&'\");\n if (t.indexOf(\"&\") !== -1 || t.indexOf(\";\") !== -1)\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");\n if (e === \"&\")\n throw new Error(\"An entity with value '&' is not permitted\");\n this.externalEntities[t] = e;\n }\n};\nvar Te = Ae;\nconst Ie = `\n`;\nfunction Pe(t, e) {\n let i = \"\";\n return e.format && e.indentBy.length > 0 && (i = Ie), st(t, e, \"\", i);\n}\nfunction st(t, e, i, r) {\n let n = \"\", s = !1;\n for (let a = 0; a < t.length; a++) {\n const o = t[a], l = Oe(o);\n if (l === void 0)\n continue;\n let d = \"\";\n if (i.length === 0 ? d = l : d = `${i}.${l}`, l === e.textNodeName) {\n let w = o[l];\n Ce(d, e) || (w = e.tagValueProcessor(l, w), w = ot(w, e)), s && (n += r), n += w, s = !1;\n continue;\n } else if (l === e.cdataPropName) {\n s && (n += r), n += ``, s = !1;\n continue;\n } else if (l === e.commentPropName) {\n n += r + ``, s = !0;\n continue;\n } else if (l[0] === \"?\") {\n const w = X(o[\":@\"], e), b = l === \"?xml\" ? \"\" : r;\n let _ = o[l][0][e.textNodeName];\n _ = _.length !== 0 ? \" \" + _ : \"\", n += b + `<${l}${_}${w}?>`, s = !0;\n continue;\n }\n let u = r;\n u !== \"\" && (u += e.indentBy);\n const c = X(o[\":@\"], e), p = r + `<${l}${c}`, h = st(o[l], e, d, u);\n e.unpairedTags.indexOf(l) !== -1 ? e.suppressUnpairedNode ? n += p + \">\" : n += p + \"/>\" : (!h || h.length === 0) && e.suppressEmptyNode ? n += p + \"/>\" : h && h.endsWith(\">\") ? n += p + `>${h}${r}` : (n += p + \">\", h && r !== \"\" && (h.includes(\"/>\") || h.includes(\"`), s = !0;\n }\n return n;\n}\nfunction Oe(t) {\n const e = Object.keys(t);\n for (let i = 0; i < e.length; i++) {\n const r = e[i];\n if (t.hasOwnProperty(r) && r !== \":@\")\n return r;\n }\n}\nfunction X(t, e) {\n let i = \"\";\n if (t && !e.ignoreAttributes)\n for (let r in t) {\n if (!t.hasOwnProperty(r))\n continue;\n let n = e.attributeValueProcessor(r, t[r]);\n n = ot(n, e), n === !0 && e.suppressBooleanAttributes ? i += ` ${r.substr(e.attributeNamePrefix.length)}` : i += ` ${r.substr(e.attributeNamePrefix.length)}=\"${n}\"`;\n }\n return i;\n}\nfunction Ce(t, e) {\n t = t.substr(0, t.length - e.textNodeName.length - 1);\n let i = t.substr(t.lastIndexOf(\".\") + 1);\n for (let r in e.stopNodes)\n if (e.stopNodes[r] === t || e.stopNodes[r] === \"*.\" + i)\n return !0;\n return !1;\n}\nfunction ot(t, e) {\n if (t && t.length > 0 && e.processEntities)\n for (let i = 0; i < e.entities.length; i++) {\n const r = e.entities[i];\n t = t.replace(r.regex, r.val);\n }\n return t;\n}\nvar De = Pe;\nconst Se = De, Fe = { attributeNamePrefix: \"@_\", attributesGroupName: !1, textNodeName: \"#text\", ignoreAttributes: !0, cdataPropName: !1, format: !1, indentBy: \" \", suppressEmptyNode: !1, suppressUnpairedNode: !0, suppressBooleanAttributes: !0, tagValueProcessor: function(t, e) {\n return e;\n}, attributeValueProcessor: function(t, e) {\n return e;\n}, preserveOrder: !1, commentPropName: !1, unpairedTags: [], entities: [{ regex: new RegExp(\"&\", \"g\"), val: \"&\" }, { regex: new RegExp(\">\", \"g\"), val: \">\" }, { regex: new RegExp(\"<\", \"g\"), val: \"<\" }, { regex: new RegExp(\"'\", \"g\"), val: \"'\" }, { regex: new RegExp('\"', \"g\"), val: \""\" }], processEntities: !0, stopNodes: [], oneListGroup: !1 };\nfunction y(t) {\n this.options = Object.assign({}, Fe, t), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {\n return !1;\n } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = ke), this.processTextOrObjNode = $e, this.options.format ? (this.indentate = Ve, this.tagEndChar = `>\n`, this.newLine = `\n`) : (this.indentate = function() {\n return \"\";\n }, this.tagEndChar = \">\", this.newLine = \"\");\n}\ny.prototype.build = function(t) {\n return this.options.preserveOrder ? Se(t, this.options) : (Array.isArray(t) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (t = { [this.options.arrayNodeName]: t }), this.j2x(t, 0).val);\n}, y.prototype.j2x = function(t, e) {\n let i = \"\", r = \"\";\n for (let n in t)\n if (t.hasOwnProperty(n))\n if (typeof t[n] > \"u\")\n this.isAttribute(n) && (r += \"\");\n else if (t[n] === null)\n this.isAttribute(n) ? r += \"\" : n[0] === \"?\" ? r += this.indentate(e) + \"<\" + n + \"?\" + this.tagEndChar : r += this.indentate(e) + \"<\" + n + \"/\" + this.tagEndChar;\n else if (t[n] instanceof Date)\n r += this.buildTextValNode(t[n], n, \"\", e);\n else if (typeof t[n] != \"object\") {\n const s = this.isAttribute(n);\n if (s)\n i += this.buildAttrPairStr(s, \"\" + t[n]);\n else if (n === this.options.textNodeName) {\n let a = this.options.tagValueProcessor(n, \"\" + t[n]);\n r += this.replaceEntitiesValue(a);\n } else\n r += this.buildTextValNode(t[n], n, \"\", e);\n } else if (Array.isArray(t[n])) {\n const s = t[n].length;\n let a = \"\";\n for (let o = 0; o < s; o++) {\n const l = t[n][o];\n typeof l > \"u\" || (l === null ? n[0] === \"?\" ? r += this.indentate(e) + \"<\" + n + \"?\" + this.tagEndChar : r += this.indentate(e) + \"<\" + n + \"/\" + this.tagEndChar : typeof l == \"object\" ? this.options.oneListGroup ? a += this.j2x(l, e + 1).val : a += this.processTextOrObjNode(l, n, e) : a += this.buildTextValNode(l, n, \"\", e));\n }\n this.options.oneListGroup && (a = this.buildObjectNode(a, n, \"\", e)), r += a;\n } else if (this.options.attributesGroupName && n === this.options.attributesGroupName) {\n const s = Object.keys(t[n]), a = s.length;\n for (let o = 0; o < a; o++)\n i += this.buildAttrPairStr(s[o], \"\" + t[n][s[o]]);\n } else\n r += this.processTextOrObjNode(t[n], n, e);\n return { attrStr: i, val: r };\n}, y.prototype.buildAttrPairStr = function(t, e) {\n return e = this.options.attributeValueProcessor(t, \"\" + e), e = this.replaceEntitiesValue(e), this.options.suppressBooleanAttributes && e === \"true\" ? \" \" + t : \" \" + t + '=\"' + e + '\"';\n};\nfunction $e(t, e, i) {\n const r = this.j2x(t, i + 1);\n return t[this.options.textNodeName] !== void 0 && Object.keys(t).length === 1 ? this.buildTextValNode(t[this.options.textNodeName], e, r.attrStr, i) : this.buildObjectNode(r.val, e, r.attrStr, i);\n}\ny.prototype.buildObjectNode = function(t, e, i, r) {\n if (t === \"\")\n return e[0] === \"?\" ? this.indentate(r) + \"<\" + e + i + \"?\" + this.tagEndChar : this.indentate(r) + \"<\" + e + i + this.closeTag(e) + this.tagEndChar;\n {\n let n = \"\" + t + n : this.options.commentPropName !== !1 && e === this.options.commentPropName && s.length === 0 ? this.indentate(r) + `` + this.newLine : this.indentate(r) + \"<\" + e + i + s + this.tagEndChar + t + this.indentate(r) + n;\n }\n}, y.prototype.closeTag = function(t) {\n let e = \"\";\n return this.options.unpairedTags.indexOf(t) !== -1 ? this.options.suppressUnpairedNode || (e = \"/\") : this.options.suppressEmptyNode ? e = \"/\" : e = `>` + this.newLine;\n if (this.options.commentPropName !== !1 && e === this.options.commentPropName)\n return this.indentate(r) + `` + this.newLine;\n if (e[0] === \"?\")\n return this.indentate(r) + \"<\" + e + i + \"?\" + this.tagEndChar;\n {\n let n = this.options.tagValueProcessor(e, t);\n return n = this.replaceEntitiesValue(n), n === \"\" ? this.indentate(r) + \"<\" + e + i + this.closeTag(e) + this.tagEndChar : this.indentate(r) + \"<\" + e + i + \">\" + n + \" 0 && this.options.processEntities)\n for (let e = 0; e < this.options.entities.length; e++) {\n const i = this.options.entities[e];\n t = t.replace(i.regex, i.val);\n }\n return t;\n};\nfunction Ve(t) {\n return this.options.indentBy.repeat(t);\n}\nfunction ke(t) {\n return t.startsWith(this.options.attributeNamePrefix) && t !== this.options.textNodeName ? t.substr(this.attrPrefixLen) : !1;\n}\nvar Le = y;\nconst Re = L, je = Te, Me = Le;\nvar H = { XMLParser: je, XMLValidator: Re, XMLBuilder: Me };\nfunction Be(t) {\n if (typeof t != \"string\")\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof t}\\``);\n if (t = t.trim(), t.length === 0 || H.XMLValidator.validate(t) !== !0)\n return !1;\n let e;\n const i = new H.XMLParser();\n try {\n e = i.parse(t);\n } catch {\n return !1;\n }\n return !(!e || !(\"svg\" in e));\n}\nclass ci {\n _view;\n constructor(e) {\n qe(e), this._view = e;\n }\n get id() {\n return this._view.id;\n }\n get name() {\n return this._view.name;\n }\n get caption() {\n return this._view.caption;\n }\n get emptyTitle() {\n return this._view.emptyTitle;\n }\n get emptyCaption() {\n return this._view.emptyCaption;\n }\n get getContents() {\n return this._view.getContents;\n }\n get icon() {\n return this._view.icon;\n }\n set icon(e) {\n this._view.icon = e;\n }\n get order() {\n return this._view.order;\n }\n set order(e) {\n this._view.order = e;\n }\n get params() {\n return this._view.params;\n }\n set params(e) {\n this._view.params = e;\n }\n get columns() {\n return this._view.columns;\n }\n get emptyView() {\n return this._view.emptyView;\n }\n get parent() {\n return this._view.parent;\n }\n get sticky() {\n return this._view.sticky;\n }\n get expanded() {\n return this._view.expanded;\n }\n set expanded(e) {\n this._view.expanded = e;\n }\n get defaultSortKey() {\n return this._view.defaultSortKey;\n }\n}\nconst qe = function(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"View id is required and must be a string\");\n if (!t.name || typeof t.name != \"string\")\n throw new Error(\"View name is required and must be a string\");\n if (t.columns && t.columns.length > 0 && (!t.caption || typeof t.caption != \"string\"))\n throw new Error(\"View caption is required for top-level views and must be a string\");\n if (!t.getContents || typeof t.getContents != \"function\")\n throw new Error(\"View getContents is required and must be a function\");\n if (!t.icon || typeof t.icon != \"string\" || !Be(t.icon))\n throw new Error(\"View icon is required and must be a valid svg string\");\n if (!(\"order\" in t) || typeof t.order != \"number\")\n throw new Error(\"View order is required and must be a number\");\n if (t.columns && t.columns.forEach((e) => {\n if (!(e instanceof At))\n throw new Error(\"View columns must be an array of Column. Invalid column found\");\n }), t.emptyView && typeof t.emptyView != \"function\")\n throw new Error(\"View emptyView must be a function\");\n if (t.parent && typeof t.parent != \"string\")\n throw new Error(\"View parent must be a string\");\n if (\"sticky\" in t && typeof t.sticky != \"boolean\")\n throw new Error(\"View sticky must be a boolean\");\n if (\"expanded\" in t && typeof t.expanded != \"boolean\")\n throw new Error(\"View expanded must be a boolean\");\n if (t.defaultSortKey && typeof t.defaultSortKey != \"string\")\n throw new Error(\"View defaultSortKey must be a string\");\n return !0;\n}, hi = function(t) {\n return F().registerEntry(t);\n}, pi = function(t) {\n return F().unregisterEntry(t);\n}, fi = function(t) {\n return F().getEntries(t);\n};\nexport {\n At as Column,\n K as DefaultType,\n bt as File,\n Qe as FileAction,\n k as FileType,\n Et as Folder,\n ii as Header,\n _t as Navigation,\n Q as Node,\n J as NodeStatus,\n v as Permission,\n ci as View,\n hi as addNewFileMenuEntry,\n li as davGetClient,\n oi as davGetDefaultPropfind,\n yt as davGetFavoritesReport,\n ai as davGetRecentSearch,\n xt as davParsePermissions,\n et as davRemoteURL,\n Nt as davResultToNode,\n tt as davRootPath,\n Y as defaultDavNamespaces,\n W as defaultDavProperties,\n Ze as formatFileSize,\n V as getDavNameSpaces,\n $ as getDavProperties,\n di as getFavoriteNodes,\n ei as getFileActions,\n ri as getFileListHeaders,\n ui as getNavigation,\n fi as getNewFileMenuEntries,\n Je as parseFileSize,\n si as registerDavProperty,\n ti as registerFileAction,\n ni as registerFileListHeaders,\n pi as removeNewFileMenuEntry\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"9712b63e6d8aa316e55f\" + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 8213;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && !scriptUrl) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t8213: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(5220); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","STORAGE_STATUS","isMissingAuthConfig","config","status","SUCCESS","userProvided","authMechanism","isNodeExternalStorage","node","type","FileType","File","attributes","scope","backend","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","undefined","done","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","doneResult","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","action","FileAction","id","t","iconSvgInline","enabled","nodes","_node$attributes","exec","_callee","response","data","configResponse","_context","axios","get","generateOcsUrl","validateStatus","ocs","user","password","put","generateUrl","backendOptions","showError","statusMessage","showSuccess","Vue","args","arguments","apply","order","default","DefaultType","DEFAULT","inline","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","_objectSpread","target","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","input","hint","prim","toPrimitive","res","String","_toPrimitive","_toPropertyKey","rootPath","concat","_getCurrentUser","getCurrentUser","uid","entryToFolder","ocsEntry","_getCurrentUser2","path","replace","Folder","generateRemoteUrl","root","owner","permissions","Permission","NONE","READ","getContents","_ref","_getCurrentUser3","contents","map","folder","getStatus","_asyncToGenerator","_exec","every","renderInline","_callee2","_config","isWarning","overlay","span","_context2","t0","showWarning","basename","document","createElement","classList","add","className","innerHTML","title","message","prepend","_nodes$","INDETERMINATE","view","window","OC","dialogs","confirm","redirect","location","href","OCP","Files","Router","goToRoute","dir","HIDDEN","allowUserMounting","loadState","getNavigation","register","View","caption","emptyCaption","emptyTitle","icon","columns","Column","render","textContent","_node$attributes2","registerFileAction","enterCredentialsAction","inlineStorageCheckAction","openInFilesAction","___CSS_LOADER_EXPORT___","module","m","setApp","build","setUid","P","O","Ze","e","Number","r","Math","floor","log","min","n","s","pow","toFixed","parseFloat","toLocaleString","K","Qe","_action","this","validateAction","execBatch","includes","ti","_nc_fileactions","debug","find","v","CREATE","UPDATE","DELETE","SHARE","ALL","W","Y","d","nc","oc","$","_nc_dav_properties","join","V","_nc_dav_namespaces","oi","ai","k","Z","match","B","URL","startsWith","mtime","Date","crtime","mime","size","J","NEW","FAILED","LOADING","LOCKED","Q","_data","_attributes","_knownDavService","set","a","updateMtime","Reflect","deleteProperty","Proxy","encodedSource","origin","extension","dirname","indexOf","pathname","isDavRessource","split","fileid","move","rename","bt","Et","super","tt","et","li","headers","requesttoken","patch","di","getDirectoryContents","details","includeSelf","filename","Nt","props","xt","parse","lastmod","parseInt","getcontentlength","hasPreview","_t","_views","_currentView","remove","findIndex","splice","views","setActive","active","ui","_nc_navigation","At","_column","Tt","sort","summary","L","I","RegExp","isExist","o","isEmptyObject","merge","l","u","c","p","getValue","isName","getAllMatches","startIndex","lastIndex","h","nameRegexp","R","It","allowBooleanAttributes","unpairedTags","q","U","substr","f","g","z","validate","assign","trim","substring","Vt","Ct","index","G","code","msg","line","tagClosed","tagName","tagStartPos","col","Ft","JSON","stringify","Pt","Ot","Dt","E","$t","St","C","it","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","attributeValueProcessor","stopNodes","alwaysCreateTextNode","isArray","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","buildOptions","defaultOptions","jt","Bt","qt","Ut","zt","Gt","Xt","Ht","Wt","Yt","Zt","decimalPoint","j","N","tagname","child","addChild","ee","entityName","regx","entities","ie","skipLike","test","Qt","search","re","lastEntities","regex","se","replaceEntitiesValue","S","oe","ae","le","resolveNameSpace","de","x","saveTextToParentTag","lastIndexOf","tagsNodeStack","D","tagExp","attrExpPresent","buildAttributesMap","closeIndex","docTypeEntities","parseTextData","rawTagName","isItStopNode","b","readStopNodeData","tagContent","w","ue","ce","ampEntity","he","pe","fe","ge","nt","rt","ve","xe","ye","Array","prettify","be","Ee","currentNode","apos","gt","lt","quot","space","cent","pound","yen","euro","copyright","reg","inr","addExternalEntities","parseXml","Ne","_e","st","Oe","Ce","ot","X","_","indentBy","suppressUnpairedNode","suppressEmptyNode","endsWith","suppressBooleanAttributes","Se","format","Fe","oneListGroup","y","isAttribute","attrPrefixLen","ke","processTextOrObjNode","$e","indentate","Ve","tagEndChar","newLine","j2x","buildTextValNode","attrStr","buildObjectNode","repeat","arrayNodeName","buildAttrPairStr","closeTag","H","XMLParser","externalEntities","toString","addEntity","XMLValidator","XMLBuilder","ci","_view","qe","params","emptyView","parent","sticky","expanded","defaultSortKey","Be","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","chunkIds","priority","notFulfilled","Infinity","fulfilled","getter","__esModule","definition","chunkId","all","reduce","promises","globalThis","Function","prop","url","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","setAttribute","src","onScriptComplete","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","setTimeout","bind","head","appendChild","nmd","paths","children","scriptUrl","importScripts","currentScript","baseURI","installedChunks","installedChunkData","promise","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"files_external-init.js?v=768f674366e7a3a6f34a","mappings":"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","sources":["webpack:///nextcloud/webpack/runtime/chunk loaded","webpack:///nextcloud/webpack/runtime/load script","webpack:///nextcloud/apps/files_external/src/utils/credentialsUtils.ts","webpack:///nextcloud/apps/files_external/src/utils/externalStorageUtils.ts","webpack:///nextcloud/apps/files_external/src/actions/enterCredentialsAction.ts","webpack://nextcloud/./apps/files_external/src/css/fileEntryStatus.scss?3c5c","webpack:///nextcloud/apps/files_external/src/services/externalStorage.ts","webpack:///nextcloud/apps/files_external/src/actions/inlineStorageCheckAction.ts","webpack:///nextcloud/apps/files_external/src/actions/openInFilesAction.ts","webpack:///nextcloud/apps/files_external/src/init.ts","webpack:///nextcloud/apps/files_external/src/css/fileEntryStatus.scss","webpack:///nextcloud/node_modules/@nextcloud/files/dist/index.mjs","webpack:///nextcloud/webpack/bootstrap","webpack:///nextcloud/webpack/runtime/compat get default export","webpack:///nextcloud/webpack/runtime/define property getters","webpack:///nextcloud/webpack/runtime/ensure chunk","webpack:///nextcloud/webpack/runtime/get javascript chunk filename","webpack:///nextcloud/webpack/runtime/global","webpack:///nextcloud/webpack/runtime/hasOwnProperty shorthand","webpack:///nextcloud/webpack/runtime/make namespace object","webpack:///nextcloud/webpack/runtime/node module decorator","webpack:///nextcloud/webpack/runtime/runtimeId","webpack:///nextcloud/webpack/runtime/publicPath","webpack:///nextcloud/webpack/runtime/jsonp chunk loading","webpack:///nextcloud/webpack/runtime/nonce","webpack:///nextcloud/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"nextcloud:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// @see https://github.com/nextcloud/server/blob/ac2bc2384efe3c15ff987b87a7432bc60d545c67/lib/public/Files/StorageNotAvailableException.php#L41\nexport var STORAGE_STATUS;\n(function (STORAGE_STATUS) {\n STORAGE_STATUS[STORAGE_STATUS[\"SUCCESS\"] = 0] = \"SUCCESS\";\n STORAGE_STATUS[STORAGE_STATUS[\"ERROR\"] = 1] = \"ERROR\";\n STORAGE_STATUS[STORAGE_STATUS[\"INDETERMINATE\"] = 2] = \"INDETERMINATE\";\n STORAGE_STATUS[STORAGE_STATUS[\"INCOMPLETE_CONF\"] = 3] = \"INCOMPLETE_CONF\";\n STORAGE_STATUS[STORAGE_STATUS[\"UNAUTHORIZED\"] = 4] = \"UNAUTHORIZED\";\n STORAGE_STATUS[STORAGE_STATUS[\"TIMEOUT\"] = 5] = \"TIMEOUT\";\n STORAGE_STATUS[STORAGE_STATUS[\"NETWORK_ERROR\"] = 6] = \"NETWORK_ERROR\";\n})(STORAGE_STATUS || (STORAGE_STATUS = {}));\nexport const isMissingAuthConfig = function (config) {\n // If we don't know the status, assume it is ok\n if (!config.status || config.status === STORAGE_STATUS.SUCCESS) {\n return false;\n }\n return config.userProvided || config.authMechanism === 'password::global::user';\n};\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\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 .\n *\n */\nimport { FileType, Node } from '@nextcloud/files';\nexport const isNodeExternalStorage = function (node) {\n // Not a folder, not a storage\n if (node.type === FileType.File) {\n return false;\n }\n // No backend or scope, not a storage\n const attributes = node.attributes;\n if (!attributes.scope || !attributes.backend) {\n return false;\n }\n // Specific markers that we're sure are ext storage only\n return attributes.scope === 'personal' || attributes.scope === 'system';\n};\n","import { generateOcsUrl, generateUrl } from '@nextcloud/router';\nimport { showError, showSuccess } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport axios from '@nextcloud/axios';\nimport LoginSvg from '@mdi/svg/svg/login.svg?raw';\nimport Vue from 'vue';\nimport { FileAction, DefaultType } from '@nextcloud/files';\nimport { STORAGE_STATUS, isMissingAuthConfig } from '../utils/credentialsUtils';\nimport { isNodeExternalStorage } from '../utils/externalStorageUtils';\nexport const action = new FileAction({\n id: 'credentials-external-storage',\n displayName: () => t('files', 'Enter missing credentials'),\n iconSvgInline: () => LoginSvg,\n enabled: (nodes) => {\n // Only works on single node\n if (nodes.length !== 1) {\n return false;\n }\n const node = nodes[0];\n if (!isNodeExternalStorage(node)) {\n return false;\n }\n const config = (node.attributes?.config || {});\n if (isMissingAuthConfig(config)) {\n return true;\n }\n return false;\n },\n async exec(node) {\n // always resolve auth request, we'll process the data afterwards\n // Using fetch as axios have integrated auth handling and X-Requested-With header\n const response = await fetch(generateOcsUrl('/apps/files_external/api/v1/auth'), {\n headers: new Headers({ Accept: 'application/json' }),\n credentials: 'include',\n });\n const data = (await response?.json() || {});\n if (data.ocs.data.user && data.ocs.data.password) {\n const configResponse = await axios.put(generateUrl('apps/files_external/userglobalstorages/{id}', node.attributes), {\n backendOptions: data.ocs.data,\n });\n const config = configResponse.data;\n if (config.status !== STORAGE_STATUS.SUCCESS) {\n showError(t('files_external', 'Unable to update this external storage config. {statusMessage}', {\n statusMessage: config?.statusMessage || '',\n }));\n return null;\n }\n // Success update config attribute\n showSuccess(t('files_external', 'New configuration successfully saved'));\n Vue.set(node.attributes, 'config', config);\n }\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.DEFAULT,\n inline: () => true,\n});\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./fileEntryStatus.scss\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js!../../../../node_modules/sass-loader/dist/cjs.js!./fileEntryStatus.scss\";\n export default content && content.locals ? content.locals : undefined;\n","import { Folder, Permission } from '@nextcloud/files';\nimport { generateOcsUrl, generateRemoteUrl, generateUrl } from '@nextcloud/router';\nimport { getCurrentUser } from '@nextcloud/auth';\nimport axios from '@nextcloud/axios';\nimport { STORAGE_STATUS } from '../utils/credentialsUtils';\nexport const rootPath = `/files/${getCurrentUser()?.uid}`;\nconst entryToFolder = (ocsEntry) => {\n const path = (ocsEntry.path + '/' + ocsEntry.name).replace(/^\\//gm, '');\n return new Folder({\n id: ocsEntry.id,\n source: generateRemoteUrl('dav' + rootPath + '/' + path),\n root: rootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: ocsEntry.config.status !== STORAGE_STATUS.SUCCESS\n ? Permission.NONE\n : ocsEntry?.permissions || Permission.READ,\n attributes: {\n displayName: path,\n ...ocsEntry,\n },\n });\n};\nexport const getContents = async () => {\n const response = await axios.get(generateOcsUrl('apps/files_external/api/v1/mounts'));\n const contents = response.data.ocs.data.map(entryToFolder);\n return {\n folder: new Folder({\n id: 0,\n source: generateRemoteUrl('dav' + rootPath),\n root: rootPath,\n owner: getCurrentUser()?.uid || null,\n permissions: Permission.READ,\n }),\n contents,\n };\n};\nexport const getStatus = function (id, global = true) {\n const type = global ? 'userglobalstorages' : 'userstorages';\n return axios.get(generateUrl(`apps/files_external/${type}/${id}?testOnly=false`));\n};\n","import { showWarning } from '@nextcloud/dialogs';\nimport { translate as t } from '@nextcloud/l10n';\nimport AlertSvg from '@mdi/svg/svg/alert-circle.svg?raw';\nimport Vue from 'vue';\nimport '../css/fileEntryStatus.scss';\nimport { getStatus } from '../services/externalStorage';\nimport { isMissingAuthConfig, STORAGE_STATUS } from '../utils/credentialsUtils';\nimport { isNodeExternalStorage } from '../utils/externalStorageUtils';\nimport { FileAction } from '@nextcloud/files';\nexport const action = new FileAction({\n id: 'check-external-storage',\n displayName: () => '',\n iconSvgInline: () => '',\n enabled: (nodes) => {\n return nodes.every(node => isNodeExternalStorage(node) === true);\n },\n exec: async () => null,\n /**\n * Use this function to check the storage availability\n * We then update the node attributes directly.\n */\n async renderInline(node) {\n let config = null;\n try {\n const response = await getStatus(node.attributes.id, node.attributes.scope === 'system');\n config = response.data;\n Vue.set(node.attributes, 'config', config);\n if (config.status !== STORAGE_STATUS.SUCCESS) {\n throw new Error(config?.statusMessage || t('files_external', 'There was an error with this external storage.'));\n }\n return null;\n }\n catch (error) {\n // If axios failed or if something else prevented\n // us from getting the config\n if (error.response && !config) {\n showWarning(t('files_external', 'We were unable to check the external storage {basename}', {\n basename: node.basename,\n }));\n return null;\n }\n // Checking if we really have an error\n const isWarning = isMissingAuthConfig(config);\n const overlay = document.createElement('span');\n overlay.classList.add(`files-list__row-status--${isWarning ? 'warning' : 'error'}`);\n const span = document.createElement('span');\n span.className = 'files-list__row-status';\n // Only show an icon for errors, warning like missing credentials\n // have a dedicated inline action button\n if (!isWarning) {\n span.innerHTML = AlertSvg;\n span.title = error.message;\n }\n span.prepend(overlay);\n return span;\n }\n },\n order: 10,\n});\n","import { generateUrl } from '@nextcloud/router';\nimport { translate as t } from '@nextcloud/l10n';\nimport { FileAction, DefaultType } from '@nextcloud/files';\nimport { STORAGE_STATUS } from '../utils/credentialsUtils';\nexport const action = new FileAction({\n id: 'open-in-files-external-storage',\n displayName: (nodes) => {\n const config = nodes?.[0]?.attributes?.config || { status: STORAGE_STATUS.INDETERMINATE };\n if (config.status !== STORAGE_STATUS.SUCCESS) {\n return t('files_external', 'Examine this faulty external storage configuration');\n }\n return t('files', 'Open in files');\n },\n iconSvgInline: () => '',\n enabled: (nodes, view) => view.id === 'extstoragemounts',\n async exec(node) {\n const config = node.attributes.config;\n if (config?.status !== STORAGE_STATUS.SUCCESS) {\n window.OC.dialogs.confirm(t('files_external', 'There was an error with this external storage. Do you want to review this mount point config in the settings page?'), t('files_external', 'External mount error'), (redirect) => {\n if (redirect === true) {\n const scope = node.attributes.scope === 'personal' ? 'user' : 'admin';\n window.location.href = generateUrl(`/settings/${scope}/externalstorages`);\n }\n });\n return null;\n }\n // Do not use fileid as we don't have that information\n // from the external storage api\n window.OCP.Files.Router.goToRoute(null, // use default route\n { view: 'files' }, { dir: node.path });\n return null;\n },\n // Before openFolderAction\n order: -1000,\n default: DefaultType.HIDDEN,\n});\n","/**\n * @copyright Copyright (c) 2023 John Molakvoæ \n *\n * @author John Molakvoæ \n *\n * @license AGPL-3.0-or-later\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 .\n *\n */\nimport { loadState } from '@nextcloud/initial-state';\nimport { translate as t } from '@nextcloud/l10n';\nimport { View, getNavigation, Column, registerFileAction } from '@nextcloud/files';\nimport FolderNetworkSvg from '@mdi/svg/svg/folder-network.svg?raw';\nimport { action as enterCredentialsAction } from './actions/enterCredentialsAction';\nimport { action as inlineStorageCheckAction } from './actions/inlineStorageCheckAction';\nimport { action as openInFilesAction } from './actions/openInFilesAction';\nimport { getContents } from './services/externalStorage';\nconst allowUserMounting = loadState('files_external', 'allowUserMounting', false);\n// Register view\nconst Navigation = getNavigation();\nNavigation.register(new View({\n id: 'extstoragemounts',\n name: t('files_external', 'External storage'),\n caption: t('files_external', 'List of external storage.'),\n emptyCaption: allowUserMounting\n ? t('files_external', 'There is no external storage configured. You can configure them in your Personal settings.')\n : t('files_external', 'There is no external storage configured and you don\\'t have the permission to configure them.'),\n emptyTitle: t('files_external', 'No external storage'),\n icon: FolderNetworkSvg,\n order: 30,\n columns: [\n new Column({\n id: 'storage-type',\n title: t('files_external', 'Storage type'),\n render(node) {\n const backend = node.attributes?.backend || t('files_external', 'Unknown');\n const span = document.createElement('span');\n span.textContent = backend;\n return span;\n },\n }),\n new Column({\n id: 'scope',\n title: t('files_external', 'Scope'),\n render(node) {\n const span = document.createElement('span');\n let scope = t('files_external', 'Personal');\n if (node.attributes?.scope === 'system') {\n scope = t('files_external', 'System');\n }\n span.textContent = scope;\n return span;\n },\n }),\n ],\n getContents,\n}));\n// Register actions\nregisterFileAction(enterCredentialsAction);\nregisterFileAction(inlineStorageCheckAction);\nregisterFileAction(openInFilesAction);\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".files-list__row-status{display:flex;width:44px;justify-content:center;align-items:center;height:100%}.files-list__row-status svg{width:24px;height:24px}.files-list__row-status svg path{fill:currentColor}.files-list__row-status--error,.files-list__row-status--warning{position:absolute;display:block;top:0;left:0;right:0;bottom:0;opacity:.1;z-index:-1}.files-list__row-status--error{background:var(--color-error)}.files-list__row-status--warning{background:var(--color-warning)}\", \"\",{\"version\":3,\"sources\":[\"webpack://./apps/files_external/src/css/fileEntryStatus.scss\"],\"names\":[],\"mappings\":\"AAAA,wBACC,YAAA,CACA,UAAA,CACA,sBAAA,CACA,kBAAA,CACA,WAAA,CAEA,4BACC,UAAA,CACA,WAAA,CAEA,iCACC,iBAAA,CAIF,gEAEC,iBAAA,CACA,aAAA,CACA,KAAA,CACA,MAAA,CACA,OAAA,CACA,QAAA,CACA,UAAA,CACA,UAAA,CAGD,+BACC,6BAAA,CAGD,iCACC,+BAAA\",\"sourcesContent\":[\".files-list__row-status {\\n\\tdisplay: flex;\\n\\twidth: 44px;\\n\\tjustify-content: center;\\n\\talign-items: center;\\n\\theight: 100%;\\n\\n\\tsvg {\\n\\t\\twidth: 24px;\\n\\t\\theight: 24px;\\n\\n\\t\\tpath {\\n\\t\\t\\tfill: currentColor;\\n\\t\\t}\\n\\t}\\n\\n\\t&--error,\\n\\t&--warning {\\n\\t\\tposition: absolute;\\n\\t\\tdisplay: block;\\n\\t\\ttop: 0;\\n\\t\\tleft: 0;\\n\\t\\tright: 0;\\n\\t\\tbottom: 0;\\n\\t\\topacity: .1;\\n\\t\\tz-index: -1;\\n\\t}\\n\\n\\t&--error {\\n\\t\\tbackground: var(--color-error);\\n\\t}\\n\\n\\t&--warning {\\n\\t\\tbackground: var(--color-warning);\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","import { getCurrentUser as T, getRequestToken as at } from \"@nextcloud/auth\";\nimport { getLoggerBuilder as M } from \"@nextcloud/logger\";\nimport { getCanonicalLocale as lt } from \"@nextcloud/l10n\";\nimport { join as dt, basename as ut, extname as ct, dirname as A } from \"path\";\nimport { encodePath as ht } from \"@nextcloud/paths\";\nimport { generateRemoteUrl as pt } from \"@nextcloud/router\";\nimport { createClient as ft, getPatcher as gt } from \"webdav\";\nimport { request as mt } from \"webdav/dist/node/request.js\";\nconst wt = (t) => t === null ? M().setApp(\"files\").build() : M().setApp(\"files\").setUid(t.uid).build(), m = wt(T());\nclass vt {\n _entries = [];\n registerEntry(e) {\n this.validateEntry(e), this._entries.push(e);\n }\n unregisterEntry(e) {\n const i = typeof e == \"string\" ? this.getEntryIndex(e) : this.getEntryIndex(e.id);\n if (i === -1) {\n m.warn(\"Entry not found, nothing removed\", { entry: e, entries: this.getEntries() });\n return;\n }\n this._entries.splice(i, 1);\n }\n getEntries(e) {\n return e ? this._entries.filter((i) => typeof i.if == \"function\" ? i.if(e) : !0) : this._entries;\n }\n getEntryIndex(e) {\n return this._entries.findIndex((i) => i.id === e);\n }\n validateEntry(e) {\n if (!e.id || !e.displayName || !(e.iconSvgInline || e.iconClass || e.handler))\n throw new Error(\"Invalid entry\");\n if (typeof e.id != \"string\" || typeof e.displayName != \"string\")\n throw new Error(\"Invalid id or displayName property\");\n if (e.iconClass && typeof e.iconClass != \"string\" || e.iconSvgInline && typeof e.iconSvgInline != \"string\")\n throw new Error(\"Invalid icon provided\");\n if (e.if !== void 0 && typeof e.if != \"function\")\n throw new Error(\"Invalid if property\");\n if (e.templateName && typeof e.templateName != \"string\")\n throw new Error(\"Invalid templateName property\");\n if (e.handler && typeof e.handler != \"function\")\n throw new Error(\"Invalid handler property\");\n if (!e.templateName && !e.handler)\n throw new Error(\"At least a templateName or a handler must be provided\");\n if (this.getEntryIndex(e.id) !== -1)\n throw new Error(\"Duplicate entry\");\n }\n}\nconst F = function() {\n return typeof window._nc_newfilemenu > \"u\" && (window._nc_newfilemenu = new vt(), m.debug(\"NewFileMenu initialized\")), window._nc_newfilemenu;\n}, P = [\"B\", \"KB\", \"MB\", \"GB\", \"TB\", \"PB\"], O = [\"B\", \"KiB\", \"MiB\", \"GiB\", \"TiB\", \"PiB\"];\nfunction Ze(t, e = !1, i = !0) {\n typeof t == \"string\" && (t = Number(t));\n let r = t > 0 ? Math.floor(Math.log(t) / Math.log(i ? 1024 : 1e3)) : 0;\n r = Math.min((i ? O.length : P.length) - 1, r);\n const n = i ? O[r] : P[r];\n let s = (t / Math.pow(i ? 1024 : 1e3, r)).toFixed(1);\n return e === !0 && r === 0 ? (s !== \"0.0\" ? \"< 1 \" : \"0 \") + (i ? O[1] : P[1]) : (r < 2 ? s = parseFloat(s).toFixed(0) : s = parseFloat(s).toLocaleString(lt()), s + \" \" + n);\n}\nfunction Je(t, e = !1) {\n try {\n t = `${t}`.toLocaleLowerCase().replaceAll(/\\s+/g, \"\").replaceAll(\",\", \".\");\n } catch {\n return null;\n }\n const i = t.match(/^([0-9]*(\\.[0-9]*)?)([kmgtp]?)(i?)b?$/);\n if (i === null || i[1] === \".\" || i[1] === \"\")\n return null;\n const r = { \"\": 0, k: 1, m: 2, g: 3, t: 4, p: 5, e: 6 }, n = `${i[1]}`, s = i[4] === \"i\" || e ? 1024 : 1e3;\n return Math.round(Number.parseFloat(n) * s ** r[i[3]]);\n}\nvar K = ((t) => (t.DEFAULT = \"default\", t.HIDDEN = \"hidden\", t))(K || {});\nclass Qe {\n _action;\n constructor(e) {\n this.validateAction(e), this._action = e;\n }\n get id() {\n return this._action.id;\n }\n get displayName() {\n return this._action.displayName;\n }\n get title() {\n return this._action.title;\n }\n get iconSvgInline() {\n return this._action.iconSvgInline;\n }\n get enabled() {\n return this._action.enabled;\n }\n get exec() {\n return this._action.exec;\n }\n get execBatch() {\n return this._action.execBatch;\n }\n get order() {\n return this._action.order;\n }\n get default() {\n return this._action.default;\n }\n get inline() {\n return this._action.inline;\n }\n get renderInline() {\n return this._action.renderInline;\n }\n validateAction(e) {\n if (!e.id || typeof e.id != \"string\")\n throw new Error(\"Invalid id\");\n if (!e.displayName || typeof e.displayName != \"function\")\n throw new Error(\"Invalid displayName function\");\n if (\"title\" in e && typeof e.title != \"function\")\n throw new Error(\"Invalid title function\");\n if (!e.iconSvgInline || typeof e.iconSvgInline != \"function\")\n throw new Error(\"Invalid iconSvgInline function\");\n if (!e.exec || typeof e.exec != \"function\")\n throw new Error(\"Invalid exec function\");\n if (\"enabled\" in e && typeof e.enabled != \"function\")\n throw new Error(\"Invalid enabled function\");\n if (\"execBatch\" in e && typeof e.execBatch != \"function\")\n throw new Error(\"Invalid execBatch function\");\n if (\"order\" in e && typeof e.order != \"number\")\n throw new Error(\"Invalid order\");\n if (e.default && !Object.values(K).includes(e.default))\n throw new Error(\"Invalid default\");\n if (\"inline\" in e && typeof e.inline != \"function\")\n throw new Error(\"Invalid inline function\");\n if (\"renderInline\" in e && typeof e.renderInline != \"function\")\n throw new Error(\"Invalid renderInline function\");\n }\n}\nconst ti = function(t) {\n if (typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions.find((e) => e.id === t.id)) {\n m.error(`FileAction ${t.id} already registered`, { action: t });\n return;\n }\n window._nc_fileactions.push(t);\n}, ei = function() {\n return typeof window._nc_fileactions > \"u\" && (window._nc_fileactions = [], m.debug(\"FileActions initialized\")), window._nc_fileactions;\n};\nclass ii {\n _header;\n constructor(e) {\n this.validateHeader(e), this._header = e;\n }\n get id() {\n return this._header.id;\n }\n get order() {\n return this._header.order;\n }\n get enabled() {\n return this._header.enabled;\n }\n get render() {\n return this._header.render;\n }\n get updated() {\n return this._header.updated;\n }\n validateHeader(e) {\n if (!e.id || !e.render || !e.updated)\n throw new Error(\"Invalid header: id, render and updated are required\");\n if (typeof e.id != \"string\")\n throw new Error(\"Invalid id property\");\n if (e.enabled !== void 0 && typeof e.enabled != \"function\")\n throw new Error(\"Invalid enabled property\");\n if (e.render && typeof e.render != \"function\")\n throw new Error(\"Invalid render property\");\n if (e.updated && typeof e.updated != \"function\")\n throw new Error(\"Invalid updated property\");\n }\n}\nconst ni = function(t) {\n if (typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader.find((e) => e.id === t.id)) {\n m.error(`Header ${t.id} already registered`, { header: t });\n return;\n }\n window._nc_filelistheader.push(t);\n}, ri = function() {\n return typeof window._nc_filelistheader > \"u\" && (window._nc_filelistheader = [], m.debug(\"FileListHeaders initialized\")), window._nc_filelistheader;\n};\nvar v = ((t) => (t[t.NONE = 0] = \"NONE\", t[t.CREATE = 4] = \"CREATE\", t[t.READ = 1] = \"READ\", t[t.UPDATE = 2] = \"UPDATE\", t[t.DELETE = 8] = \"DELETE\", t[t.SHARE = 16] = \"SHARE\", t[t.ALL = 31] = \"ALL\", t))(v || {});\nconst W = [\"d:getcontentlength\", \"d:getcontenttype\", \"d:getetag\", \"d:getlastmodified\", \"d:quota-available-bytes\", \"d:resourcetype\", \"nc:has-preview\", \"nc:is-encrypted\", \"nc:mount-type\", \"nc:share-attributes\", \"oc:comments-unread\", \"oc:favorite\", \"oc:fileid\", \"oc:owner-display-name\", \"oc:owner-id\", \"oc:permissions\", \"oc:share-types\", \"oc:size\", \"ocs:share-permissions\"], Y = { d: \"DAV:\", nc: \"http://nextcloud.org/ns\", oc: \"http://owncloud.org/ns\", ocs: \"http://open-collaboration-services.org/ns\" }, si = function(t, e = { nc: \"http://nextcloud.org/ns\" }) {\n typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...W], window._nc_dav_namespaces = { ...Y });\n const i = { ...window._nc_dav_namespaces, ...e };\n if (window._nc_dav_properties.find((n) => n === t))\n return m.error(`${t} already registered`, { prop: t }), !1;\n if (t.startsWith(\"<\") || t.split(\":\").length !== 2)\n return m.error(`${t} is not valid. See example: 'oc:fileid'`, { prop: t }), !1;\n const r = t.split(\":\")[0];\n return i[r] ? (window._nc_dav_properties.push(t), window._nc_dav_namespaces = i, !0) : (m.error(`${t} namespace unknown`, { prop: t, namespaces: i }), !1);\n}, $ = function() {\n return typeof window._nc_dav_properties > \"u\" && (window._nc_dav_properties = [...W]), window._nc_dav_properties.map((t) => `<${t} />`).join(\" \");\n}, V = function() {\n return typeof window._nc_dav_namespaces > \"u\" && (window._nc_dav_namespaces = { ...Y }), Object.keys(window._nc_dav_namespaces).map((t) => `xmlns:${t}=\"${window._nc_dav_namespaces?.[t]}\"`).join(\" \");\n}, oi = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${$()}\n\t\t\t\n\t\t`;\n}, yt = function() {\n return `\n\t\t\n\t\t\t\n\t\t\t\t${$()}\n\t\t\t\n\t\t\t\n\t\t\t\t1\n\t\t\t\n\t\t`;\n}, ai = function(t) {\n return `\n\n\t\n\t\t\n\t\t\t\n\t\t\t\t${$()}\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t/files/${T()?.uid}/\n\t\t\t\tinfinity\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\thttpd/unix-directory\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t0\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t${t}\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t\t\n\t\t\t100\n\t\t\t0\n\t\t\n\t\n`;\n}, xt = function(t = \"\") {\n let e = v.NONE;\n return t && ((t.includes(\"C\") || t.includes(\"K\")) && (e |= v.CREATE), t.includes(\"G\") && (e |= v.READ), (t.includes(\"W\") || t.includes(\"N\") || t.includes(\"V\")) && (e |= v.UPDATE), t.includes(\"D\") && (e |= v.DELETE), t.includes(\"R\") && (e |= v.SHARE)), e;\n};\nvar k = ((t) => (t.Folder = \"folder\", t.File = \"file\", t))(k || {});\nconst Z = function(t, e) {\n return t.match(e) !== null;\n}, B = (t, e) => {\n if (t.id && typeof t.id != \"number\")\n throw new Error(\"Invalid id type of value\");\n if (!t.source)\n throw new Error(\"Missing mandatory source\");\n try {\n new URL(t.source);\n } catch {\n throw new Error(\"Invalid source format, source must be a valid URL\");\n }\n if (!t.source.startsWith(\"http\"))\n throw new Error(\"Invalid source format, only http(s) is supported\");\n if (t.mtime && !(t.mtime instanceof Date))\n throw new Error(\"Invalid mtime type\");\n if (t.crtime && !(t.crtime instanceof Date))\n throw new Error(\"Invalid crtime type\");\n if (!t.mime || typeof t.mime != \"string\" || !t.mime.match(/^[-\\w.]+\\/[-+\\w.]+$/gi))\n throw new Error(\"Missing or invalid mandatory mime\");\n if (\"size\" in t && typeof t.size != \"number\" && t.size !== void 0)\n throw new Error(\"Invalid size type\");\n if (\"permissions\" in t && t.permissions !== void 0 && !(typeof t.permissions == \"number\" && t.permissions >= v.NONE && t.permissions <= v.ALL))\n throw new Error(\"Invalid permissions\");\n if (t.owner && t.owner !== null && typeof t.owner != \"string\")\n throw new Error(\"Invalid owner type\");\n if (t.attributes && typeof t.attributes != \"object\")\n throw new Error(\"Invalid attributes type\");\n if (t.root && typeof t.root != \"string\")\n throw new Error(\"Invalid root type\");\n if (t.root && !t.root.startsWith(\"/\"))\n throw new Error(\"Root must start with a leading slash\");\n if (t.root && !t.source.includes(t.root))\n throw new Error(\"Root must be part of the source\");\n if (t.root && Z(t.source, e)) {\n const i = t.source.match(e)[0];\n if (!t.source.includes(dt(i, t.root)))\n throw new Error(\"The root must be relative to the service. e.g /files/emma\");\n }\n if (t.status && !Object.values(J).includes(t.status))\n throw new Error(\"Status must be a valid NodeStatus\");\n};\nvar J = ((t) => (t.NEW = \"new\", t.FAILED = \"failed\", t.LOADING = \"loading\", t.LOCKED = \"locked\", t))(J || {});\nclass Q {\n _data;\n _attributes;\n _knownDavService = /(remote|public)\\.php\\/(web)?dav/i;\n constructor(e, i) {\n B(e, i || this._knownDavService), this._data = e;\n const r = { set: (n, s, a) => (this.updateMtime(), Reflect.set(n, s, a)), deleteProperty: (n, s) => (this.updateMtime(), Reflect.deleteProperty(n, s)) };\n this._attributes = new Proxy(e.attributes || {}, r), delete this._data.attributes, i && (this._knownDavService = i);\n }\n get source() {\n return this._data.source.replace(/\\/$/i, \"\");\n }\n get encodedSource() {\n const { origin: e } = new URL(this.source);\n return e + ht(this.source.slice(e.length));\n }\n get basename() {\n return ut(this.source);\n }\n get extension() {\n return ct(this.source);\n }\n get dirname() {\n if (this.root) {\n const i = this.source.indexOf(this.root);\n return A(this.source.slice(i + this.root.length) || \"/\");\n }\n const e = new URL(this.source);\n return A(e.pathname);\n }\n get mime() {\n return this._data.mime;\n }\n get mtime() {\n return this._data.mtime;\n }\n get crtime() {\n return this._data.crtime;\n }\n get size() {\n return this._data.size;\n }\n get attributes() {\n return this._attributes;\n }\n get permissions() {\n return this.owner === null && !this.isDavRessource ? v.READ : this._data.permissions !== void 0 ? this._data.permissions : v.NONE;\n }\n get owner() {\n return this.isDavRessource ? this._data.owner : null;\n }\n get isDavRessource() {\n return Z(this.source, this._knownDavService);\n }\n get root() {\n return this._data.root ? this._data.root.replace(/^(.+)\\/$/, \"$1\") : this.isDavRessource && A(this.source).split(this._knownDavService).pop() || null;\n }\n get path() {\n if (this.root) {\n const e = this.source.indexOf(this.root);\n return this.source.slice(e + this.root.length) || \"/\";\n }\n return (this.dirname + \"/\" + this.basename).replace(/\\/\\//g, \"/\");\n }\n get fileid() {\n return this._data?.id || this.attributes?.fileid;\n }\n get status() {\n return this._data?.status;\n }\n set status(e) {\n this._data.status = e;\n }\n move(e) {\n B({ ...this._data, source: e }, this._knownDavService), this._data.source = e, this.updateMtime();\n }\n rename(e) {\n if (e.includes(\"/\"))\n throw new Error(\"Invalid basename\");\n this.move(A(this.source) + \"/\" + e);\n }\n updateMtime() {\n this._data.mtime && (this._data.mtime = /* @__PURE__ */ new Date());\n }\n}\nclass bt extends Q {\n get type() {\n return k.File;\n }\n}\nclass Et extends Q {\n constructor(e) {\n super({ ...e, mime: \"httpd/unix-directory\" });\n }\n get type() {\n return k.Folder;\n }\n get extension() {\n return null;\n }\n get mime() {\n return \"httpd/unix-directory\";\n }\n}\nconst tt = `/files/${T()?.uid}`, et = pt(\"dav\"), li = function(t = et) {\n const e = ft(t, { headers: { requesttoken: at() || \"\" } });\n return gt().patch(\"request\", (i) => (i.headers?.method && (i.method = i.headers.method, delete i.headers.method), mt(i))), e;\n}, di = async (t, e = \"/\", i = tt) => (await t.getDirectoryContents(`${i}${e}`, { details: !0, data: yt(), headers: { method: \"REPORT\" }, includeSelf: !0 })).data.filter((r) => r.filename !== e).map((r) => Nt(r, i)), Nt = function(t, e = tt, i = et) {\n const r = t.props, n = xt(r?.permissions), s = T()?.uid, a = { id: r?.fileid || 0, source: `${i}${t.filename}`, mtime: new Date(Date.parse(t.lastmod)), mime: t.mime, size: r?.size || Number.parseInt(r.getcontentlength || \"0\"), permissions: n, owner: s, root: e, attributes: { ...t, ...r, hasPreview: r?.[\"has-preview\"] } };\n return delete a.attributes?.props, t.type === \"file\" ? new bt(a) : new Et(a);\n};\nclass _t {\n _views = [];\n _currentView = null;\n register(e) {\n if (this._views.find((i) => i.id === e.id))\n throw new Error(`View id ${e.id} is already registered`);\n this._views.push(e);\n }\n remove(e) {\n const i = this._views.findIndex((r) => r.id === e);\n i !== -1 && this._views.splice(i, 1);\n }\n get views() {\n return this._views;\n }\n setActive(e) {\n this._currentView = e;\n }\n get active() {\n return this._currentView;\n }\n}\nconst ui = function() {\n return typeof window._nc_navigation > \"u\" && (window._nc_navigation = new _t(), m.debug(\"Navigation service initialized\")), window._nc_navigation;\n};\nclass At {\n _column;\n constructor(e) {\n Tt(e), this._column = e;\n }\n get id() {\n return this._column.id;\n }\n get title() {\n return this._column.title;\n }\n get render() {\n return this._column.render;\n }\n get sort() {\n return this._column.sort;\n }\n get summary() {\n return this._column.summary;\n }\n}\nconst Tt = function(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"A column id is required\");\n if (!t.title || typeof t.title != \"string\")\n throw new Error(\"A column title is required\");\n if (!t.render || typeof t.render != \"function\")\n throw new Error(\"A render function is required\");\n if (t.sort && typeof t.sort != \"function\")\n throw new Error(\"Column sortFunction must be a function\");\n if (t.summary && typeof t.summary != \"function\")\n throw new Error(\"Column summary must be a function\");\n return !0;\n};\nvar L = {}, I = {};\n(function(t) {\n const e = \":A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\", i = e + \"\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040\", r = \"[\" + e + \"][\" + i + \"]*\", n = new RegExp(\"^\" + r + \"$\"), s = function(o, l) {\n const d = [];\n let u = l.exec(o);\n for (; u; ) {\n const c = [];\n c.startIndex = l.lastIndex - u[0].length;\n const p = u.length;\n for (let h = 0; h < p; h++)\n c.push(u[h]);\n d.push(c), u = l.exec(o);\n }\n return d;\n }, a = function(o) {\n const l = n.exec(o);\n return !(l === null || typeof l > \"u\");\n };\n t.isExist = function(o) {\n return typeof o < \"u\";\n }, t.isEmptyObject = function(o) {\n return Object.keys(o).length === 0;\n }, t.merge = function(o, l, d) {\n if (l) {\n const u = Object.keys(l), c = u.length;\n for (let p = 0; p < c; p++)\n d === \"strict\" ? o[u[p]] = [l[u[p]]] : o[u[p]] = l[u[p]];\n }\n }, t.getValue = function(o) {\n return t.isExist(o) ? o : \"\";\n }, t.isName = a, t.getAllMatches = s, t.nameRegexp = r;\n})(I);\nconst R = I, It = { allowBooleanAttributes: !1, unpairedTags: [] };\nL.validate = function(t, e) {\n e = Object.assign({}, It, e);\n const i = [];\n let r = !1, n = !1;\n t[0] === \"\\uFEFF\" && (t = t.substr(1));\n for (let s = 0; s < t.length; s++)\n if (t[s] === \"<\" && t[s + 1] === \"?\") {\n if (s += 2, s = U(t, s), s.err)\n return s;\n } else if (t[s] === \"<\") {\n let a = s;\n if (s++, t[s] === \"!\") {\n s = z(t, s);\n continue;\n } else {\n let o = !1;\n t[s] === \"/\" && (o = !0, s++);\n let l = \"\";\n for (; s < t.length && t[s] !== \">\" && t[s] !== \" \" && t[s] !== \"\t\" && t[s] !== `\n` && t[s] !== \"\\r\"; s++)\n l += t[s];\n if (l = l.trim(), l[l.length - 1] === \"/\" && (l = l.substring(0, l.length - 1), s--), !Vt(l)) {\n let c;\n return l.trim().length === 0 ? c = \"Invalid space after '<'.\" : c = \"Tag '\" + l + \"' is an invalid name.\", f(\"InvalidTag\", c, g(t, s));\n }\n const d = Ct(t, s);\n if (d === !1)\n return f(\"InvalidAttr\", \"Attributes for '\" + l + \"' have open quote.\", g(t, s));\n let u = d.value;\n if (s = d.index, u[u.length - 1] === \"/\") {\n const c = s - u.length;\n u = u.substring(0, u.length - 1);\n const p = G(u, e);\n if (p === !0)\n r = !0;\n else\n return f(p.err.code, p.err.msg, g(t, c + p.err.line));\n } else if (o)\n if (d.tagClosed) {\n if (u.trim().length > 0)\n return f(\"InvalidTag\", \"Closing tag '\" + l + \"' can't have attributes or invalid starting.\", g(t, a));\n {\n const c = i.pop();\n if (l !== c.tagName) {\n let p = g(t, c.tagStartPos);\n return f(\"InvalidTag\", \"Expected closing tag '\" + c.tagName + \"' (opened in line \" + p.line + \", col \" + p.col + \") instead of closing tag '\" + l + \"'.\", g(t, a));\n }\n i.length == 0 && (n = !0);\n }\n } else\n return f(\"InvalidTag\", \"Closing tag '\" + l + \"' doesn't have proper closing.\", g(t, s));\n else {\n const c = G(u, e);\n if (c !== !0)\n return f(c.err.code, c.err.msg, g(t, s - u.length + c.err.line));\n if (n === !0)\n return f(\"InvalidXml\", \"Multiple possible root nodes found.\", g(t, s));\n e.unpairedTags.indexOf(l) !== -1 || i.push({ tagName: l, tagStartPos: a }), r = !0;\n }\n for (s++; s < t.length; s++)\n if (t[s] === \"<\")\n if (t[s + 1] === \"!\") {\n s++, s = z(t, s);\n continue;\n } else if (t[s + 1] === \"?\") {\n if (s = U(t, ++s), s.err)\n return s;\n } else\n break;\n else if (t[s] === \"&\") {\n const c = Ft(t, s);\n if (c == -1)\n return f(\"InvalidChar\", \"char '&' is not expected.\", g(t, s));\n s = c;\n } else if (n === !0 && !q(t[s]))\n return f(\"InvalidXml\", \"Extra text at the end\", g(t, s));\n t[s] === \"<\" && s--;\n }\n } else {\n if (q(t[s]))\n continue;\n return f(\"InvalidChar\", \"char '\" + t[s] + \"' is not expected.\", g(t, s));\n }\n if (r) {\n if (i.length == 1)\n return f(\"InvalidTag\", \"Unclosed tag '\" + i[0].tagName + \"'.\", g(t, i[0].tagStartPos));\n if (i.length > 0)\n return f(\"InvalidXml\", \"Invalid '\" + JSON.stringify(i.map((s) => s.tagName), null, 4).replace(/\\r?\\n/g, \"\") + \"' found.\", { line: 1, col: 1 });\n } else\n return f(\"InvalidXml\", \"Start tag expected.\", 1);\n return !0;\n};\nfunction q(t) {\n return t === \" \" || t === \"\t\" || t === `\n` || t === \"\\r\";\n}\nfunction U(t, e) {\n const i = e;\n for (; e < t.length; e++)\n if (t[e] == \"?\" || t[e] == \" \") {\n const r = t.substr(i, e - i);\n if (e > 5 && r === \"xml\")\n return f(\"InvalidXml\", \"XML declaration allowed only at the start of the document.\", g(t, e));\n if (t[e] == \"?\" && t[e + 1] == \">\") {\n e++;\n break;\n } else\n continue;\n }\n return e;\n}\nfunction z(t, e) {\n if (t.length > e + 5 && t[e + 1] === \"-\" && t[e + 2] === \"-\") {\n for (e += 3; e < t.length; e++)\n if (t[e] === \"-\" && t[e + 1] === \"-\" && t[e + 2] === \">\") {\n e += 2;\n break;\n }\n } else if (t.length > e + 8 && t[e + 1] === \"D\" && t[e + 2] === \"O\" && t[e + 3] === \"C\" && t[e + 4] === \"T\" && t[e + 5] === \"Y\" && t[e + 6] === \"P\" && t[e + 7] === \"E\") {\n let i = 1;\n for (e += 8; e < t.length; e++)\n if (t[e] === \"<\")\n i++;\n else if (t[e] === \">\" && (i--, i === 0))\n break;\n } else if (t.length > e + 9 && t[e + 1] === \"[\" && t[e + 2] === \"C\" && t[e + 3] === \"D\" && t[e + 4] === \"A\" && t[e + 5] === \"T\" && t[e + 6] === \"A\" && t[e + 7] === \"[\") {\n for (e += 8; e < t.length; e++)\n if (t[e] === \"]\" && t[e + 1] === \"]\" && t[e + 2] === \">\") {\n e += 2;\n break;\n }\n }\n return e;\n}\nconst Pt = '\"', Ot = \"'\";\nfunction Ct(t, e) {\n let i = \"\", r = \"\", n = !1;\n for (; e < t.length; e++) {\n if (t[e] === Pt || t[e] === Ot)\n r === \"\" ? r = t[e] : r !== t[e] || (r = \"\");\n else if (t[e] === \">\" && r === \"\") {\n n = !0;\n break;\n }\n i += t[e];\n }\n return r !== \"\" ? !1 : { value: i, index: e, tagClosed: n };\n}\nconst Dt = new RegExp(`(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*(['\"])(([\\\\s\\\\S])*?)\\\\5)?`, \"g\");\nfunction G(t, e) {\n const i = R.getAllMatches(t, Dt), r = {};\n for (let n = 0; n < i.length; n++) {\n if (i[n][1].length === 0)\n return f(\"InvalidAttr\", \"Attribute '\" + i[n][2] + \"' has no space in starting.\", E(i[n]));\n if (i[n][3] !== void 0 && i[n][4] === void 0)\n return f(\"InvalidAttr\", \"Attribute '\" + i[n][2] + \"' is without value.\", E(i[n]));\n if (i[n][3] === void 0 && !e.allowBooleanAttributes)\n return f(\"InvalidAttr\", \"boolean attribute '\" + i[n][2] + \"' is not allowed.\", E(i[n]));\n const s = i[n][2];\n if (!$t(s))\n return f(\"InvalidAttr\", \"Attribute '\" + s + \"' is an invalid name.\", E(i[n]));\n if (!r.hasOwnProperty(s))\n r[s] = 1;\n else\n return f(\"InvalidAttr\", \"Attribute '\" + s + \"' is repeated.\", E(i[n]));\n }\n return !0;\n}\nfunction St(t, e) {\n let i = /\\d/;\n for (t[e] === \"x\" && (e++, i = /[\\da-fA-F]/); e < t.length; e++) {\n if (t[e] === \";\")\n return e;\n if (!t[e].match(i))\n break;\n }\n return -1;\n}\nfunction Ft(t, e) {\n if (e++, t[e] === \";\")\n return -1;\n if (t[e] === \"#\")\n return e++, St(t, e);\n let i = 0;\n for (; e < t.length; e++, i++)\n if (!(t[e].match(/\\w/) && i < 20)) {\n if (t[e] === \";\")\n break;\n return -1;\n }\n return e;\n}\nfunction f(t, e, i) {\n return { err: { code: t, msg: e, line: i.line || i, col: i.col } };\n}\nfunction $t(t) {\n return R.isName(t);\n}\nfunction Vt(t) {\n return R.isName(t);\n}\nfunction g(t, e) {\n const i = t.substring(0, e).split(/\\r?\\n/);\n return { line: i.length, col: i[i.length - 1].length + 1 };\n}\nfunction E(t) {\n return t.startIndex + t[1].length;\n}\nvar C = {};\nconst it = { preserveOrder: !1, attributeNamePrefix: \"@_\", attributesGroupName: !1, textNodeName: \"#text\", ignoreAttributes: !0, removeNSPrefix: !1, allowBooleanAttributes: !1, parseTagValue: !0, parseAttributeValue: !1, trimValues: !0, cdataPropName: !1, numberParseOptions: { hex: !0, leadingZeros: !0, eNotation: !0 }, tagValueProcessor: function(t, e) {\n return e;\n}, attributeValueProcessor: function(t, e) {\n return e;\n}, stopNodes: [], alwaysCreateTextNode: !1, isArray: () => !1, commentPropName: !1, unpairedTags: [], processEntities: !0, htmlEntities: !1, ignoreDeclaration: !1, ignorePiTags: !1, transformTagName: !1, transformAttributeName: !1, updateTag: function(t, e, i) {\n return t;\n} }, kt = function(t) {\n return Object.assign({}, it, t);\n};\nC.buildOptions = kt, C.defaultOptions = it;\nclass Lt {\n constructor(e) {\n this.tagname = e, this.child = [], this[\":@\"] = {};\n }\n add(e, i) {\n e === \"__proto__\" && (e = \"#__proto__\"), this.child.push({ [e]: i });\n }\n addChild(e) {\n e.tagname === \"__proto__\" && (e.tagname = \"#__proto__\"), e[\":@\"] && Object.keys(e[\":@\"]).length > 0 ? this.child.push({ [e.tagname]: e.child, \":@\": e[\":@\"] }) : this.child.push({ [e.tagname]: e.child });\n }\n}\nvar Rt = Lt;\nconst jt = I;\nfunction Mt(t, e) {\n const i = {};\n if (t[e + 3] === \"O\" && t[e + 4] === \"C\" && t[e + 5] === \"T\" && t[e + 6] === \"Y\" && t[e + 7] === \"P\" && t[e + 8] === \"E\") {\n e = e + 9;\n let r = 1, n = !1, s = !1, a = \"\";\n for (; e < t.length; e++)\n if (t[e] === \"<\" && !s) {\n if (n && Ut(t, e))\n e += 7, [entityName, val, e] = Bt(t, e + 1), val.indexOf(\"&\") === -1 && (i[Ht(entityName)] = { regx: RegExp(`&${entityName};`, \"g\"), val });\n else if (n && zt(t, e))\n e += 8;\n else if (n && Gt(t, e))\n e += 8;\n else if (n && Xt(t, e))\n e += 9;\n else if (qt)\n s = !0;\n else\n throw new Error(\"Invalid DOCTYPE\");\n r++, a = \"\";\n } else if (t[e] === \">\") {\n if (s ? t[e - 1] === \"-\" && t[e - 2] === \"-\" && (s = !1, r--) : r--, r === 0)\n break;\n } else\n t[e] === \"[\" ? n = !0 : a += t[e];\n if (r !== 0)\n throw new Error(\"Unclosed DOCTYPE\");\n } else\n throw new Error(\"Invalid Tag instead of DOCTYPE\");\n return { entities: i, i: e };\n}\nfunction Bt(t, e) {\n let i = \"\";\n for (; e < t.length && t[e] !== \"'\" && t[e] !== '\"'; e++)\n i += t[e];\n if (i = i.trim(), i.indexOf(\" \") !== -1)\n throw new Error(\"External entites are not supported\");\n const r = t[e++];\n let n = \"\";\n for (; e < t.length && t[e] !== r; e++)\n n += t[e];\n return [i, n, e];\n}\nfunction qt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"-\" && t[e + 3] === \"-\";\n}\nfunction Ut(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"E\" && t[e + 3] === \"N\" && t[e + 4] === \"T\" && t[e + 5] === \"I\" && t[e + 6] === \"T\" && t[e + 7] === \"Y\";\n}\nfunction zt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"E\" && t[e + 3] === \"L\" && t[e + 4] === \"E\" && t[e + 5] === \"M\" && t[e + 6] === \"E\" && t[e + 7] === \"N\" && t[e + 8] === \"T\";\n}\nfunction Gt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"A\" && t[e + 3] === \"T\" && t[e + 4] === \"T\" && t[e + 5] === \"L\" && t[e + 6] === \"I\" && t[e + 7] === \"S\" && t[e + 8] === \"T\";\n}\nfunction Xt(t, e) {\n return t[e + 1] === \"!\" && t[e + 2] === \"N\" && t[e + 3] === \"O\" && t[e + 4] === \"T\" && t[e + 5] === \"A\" && t[e + 6] === \"T\" && t[e + 7] === \"I\" && t[e + 8] === \"O\" && t[e + 9] === \"N\";\n}\nfunction Ht(t) {\n if (jt.isName(t))\n return t;\n throw new Error(`Invalid entity name ${t}`);\n}\nvar Kt = Mt;\nconst Wt = /^[-+]?0x[a-fA-F0-9]+$/, Yt = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n!Number.parseInt && window.parseInt && (Number.parseInt = window.parseInt), !Number.parseFloat && window.parseFloat && (Number.parseFloat = window.parseFloat);\nconst Zt = { hex: !0, leadingZeros: !0, decimalPoint: \".\", eNotation: !0 };\nfunction Jt(t, e = {}) {\n if (e = Object.assign({}, Zt, e), !t || typeof t != \"string\")\n return t;\n let i = t.trim();\n if (e.skipLike !== void 0 && e.skipLike.test(i))\n return t;\n if (e.hex && Wt.test(i))\n return Number.parseInt(i, 16);\n {\n const r = Yt.exec(i);\n if (r) {\n const n = r[1], s = r[2];\n let a = Qt(r[3]);\n const o = r[4] || r[6];\n if (!e.leadingZeros && s.length > 0 && n && i[2] !== \".\" || !e.leadingZeros && s.length > 0 && !n && i[1] !== \".\")\n return t;\n {\n const l = Number(i), d = \"\" + l;\n return d.search(/[eE]/) !== -1 || o ? e.eNotation ? l : t : i.indexOf(\".\") !== -1 ? d === \"0\" && a === \"\" || d === a || n && d === \"-\" + a ? l : t : s ? a === d || n + a === d ? l : t : i === d || i === n + d ? l : t;\n }\n } else\n return t;\n }\n}\nfunction Qt(t) {\n return t && t.indexOf(\".\") !== -1 && (t = t.replace(/0+$/, \"\"), t === \".\" ? t = \"0\" : t[0] === \".\" ? t = \"0\" + t : t[t.length - 1] === \".\" && (t = t.substr(0, t.length - 1))), t;\n}\nvar te = Jt;\nconst j = I, N = Rt, ee = Kt, ie = te;\n\"<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)\".replace(/NAME/g, j.nameRegexp);\nlet ne = class {\n constructor(t) {\n this.options = t, this.currentNode = null, this.tagsNodeStack = [], this.docTypeEntities = {}, this.lastEntities = { apos: { regex: /&(apos|#39|#x27);/g, val: \"'\" }, gt: { regex: /&(gt|#62|#x3E);/g, val: \">\" }, lt: { regex: /&(lt|#60|#x3C);/g, val: \"<\" }, quot: { regex: /&(quot|#34|#x22);/g, val: '\"' } }, this.ampEntity = { regex: /&(amp|#38|#x26);/g, val: \"&\" }, this.htmlEntities = { space: { regex: /&(nbsp|#160);/g, val: \" \" }, cent: { regex: /&(cent|#162);/g, val: \"¢\" }, pound: { regex: /&(pound|#163);/g, val: \"£\" }, yen: { regex: /&(yen|#165);/g, val: \"¥\" }, euro: { regex: /&(euro|#8364);/g, val: \"€\" }, copyright: { regex: /&(copy|#169);/g, val: \"©\" }, reg: { regex: /&(reg|#174);/g, val: \"®\" }, inr: { regex: /&(inr|#8377);/g, val: \"₹\" } }, this.addExternalEntities = re, this.parseXml = de, this.parseTextData = se, this.resolveNameSpace = oe, this.buildAttributesMap = le, this.isItStopNode = pe, this.replaceEntitiesValue = ce, this.readStopNodeData = ge, this.saveTextToParentTag = he, this.addChild = ue;\n }\n};\nfunction re(t) {\n const e = Object.keys(t);\n for (let i = 0; i < e.length; i++) {\n const r = e[i];\n this.lastEntities[r] = { regex: new RegExp(\"&\" + r + \";\", \"g\"), val: t[r] };\n }\n}\nfunction se(t, e, i, r, n, s, a) {\n if (t !== void 0 && (this.options.trimValues && !r && (t = t.trim()), t.length > 0)) {\n a || (t = this.replaceEntitiesValue(t));\n const o = this.options.tagValueProcessor(e, t, i, n, s);\n return o == null ? t : typeof o != typeof t || o !== t ? o : this.options.trimValues ? S(t, this.options.parseTagValue, this.options.numberParseOptions) : t.trim() === t ? S(t, this.options.parseTagValue, this.options.numberParseOptions) : t;\n }\n}\nfunction oe(t) {\n if (this.options.removeNSPrefix) {\n const e = t.split(\":\"), i = t.charAt(0) === \"/\" ? \"/\" : \"\";\n if (e[0] === \"xmlns\")\n return \"\";\n e.length === 2 && (t = i + e[1]);\n }\n return t;\n}\nconst ae = new RegExp(`([^\\\\s=]+)\\\\s*(=\\\\s*(['\"])([\\\\s\\\\S]*?)\\\\3)?`, \"gm\");\nfunction le(t, e, i) {\n if (!this.options.ignoreAttributes && typeof t == \"string\") {\n const r = j.getAllMatches(t, ae), n = r.length, s = {};\n for (let a = 0; a < n; a++) {\n const o = this.resolveNameSpace(r[a][1]);\n let l = r[a][4], d = this.options.attributeNamePrefix + o;\n if (o.length)\n if (this.options.transformAttributeName && (d = this.options.transformAttributeName(d)), d === \"__proto__\" && (d = \"#__proto__\"), l !== void 0) {\n this.options.trimValues && (l = l.trim()), l = this.replaceEntitiesValue(l);\n const u = this.options.attributeValueProcessor(o, l, e);\n u == null ? s[d] = l : typeof u != typeof l || u !== l ? s[d] = u : s[d] = S(l, this.options.parseAttributeValue, this.options.numberParseOptions);\n } else\n this.options.allowBooleanAttributes && (s[d] = !0);\n }\n if (!Object.keys(s).length)\n return;\n if (this.options.attributesGroupName) {\n const a = {};\n return a[this.options.attributesGroupName] = s, a;\n }\n return s;\n }\n}\nconst de = function(t) {\n t = t.replace(/\\r\\n?/g, `\n`);\n const e = new N(\"!xml\");\n let i = e, r = \"\", n = \"\";\n for (let s = 0; s < t.length; s++)\n if (t[s] === \"<\")\n if (t[s + 1] === \"/\") {\n const a = x(t, \">\", s, \"Closing Tag is not closed.\");\n let o = t.substring(s + 2, a).trim();\n if (this.options.removeNSPrefix) {\n const u = o.indexOf(\":\");\n u !== -1 && (o = o.substr(u + 1));\n }\n this.options.transformTagName && (o = this.options.transformTagName(o)), i && (r = this.saveTextToParentTag(r, i, n));\n const l = n.substring(n.lastIndexOf(\".\") + 1);\n if (o && this.options.unpairedTags.indexOf(o) !== -1)\n throw new Error(`Unpaired tag can not be used as closing tag: `);\n let d = 0;\n l && this.options.unpairedTags.indexOf(l) !== -1 ? (d = n.lastIndexOf(\".\", n.lastIndexOf(\".\") - 1), this.tagsNodeStack.pop()) : d = n.lastIndexOf(\".\"), n = n.substring(0, d), i = this.tagsNodeStack.pop(), r = \"\", s = a;\n } else if (t[s + 1] === \"?\") {\n let a = D(t, s, !1, \"?>\");\n if (!a)\n throw new Error(\"Pi Tag is not closed.\");\n if (r = this.saveTextToParentTag(r, i, n), !(this.options.ignoreDeclaration && a.tagName === \"?xml\" || this.options.ignorePiTags)) {\n const o = new N(a.tagName);\n o.add(this.options.textNodeName, \"\"), a.tagName !== a.tagExp && a.attrExpPresent && (o[\":@\"] = this.buildAttributesMap(a.tagExp, n, a.tagName)), this.addChild(i, o, n);\n }\n s = a.closeIndex + 1;\n } else if (t.substr(s + 1, 3) === \"!--\") {\n const a = x(t, \"-->\", s + 4, \"Comment is not closed.\");\n if (this.options.commentPropName) {\n const o = t.substring(s + 4, a - 2);\n r = this.saveTextToParentTag(r, i, n), i.add(this.options.commentPropName, [{ [this.options.textNodeName]: o }]);\n }\n s = a;\n } else if (t.substr(s + 1, 2) === \"!D\") {\n const a = ee(t, s);\n this.docTypeEntities = a.entities, s = a.i;\n } else if (t.substr(s + 1, 2) === \"![\") {\n const a = x(t, \"]]>\", s, \"CDATA is not closed.\") - 2, o = t.substring(s + 9, a);\n if (r = this.saveTextToParentTag(r, i, n), this.options.cdataPropName)\n i.add(this.options.cdataPropName, [{ [this.options.textNodeName]: o }]);\n else {\n let l = this.parseTextData(o, i.tagname, n, !0, !1, !0);\n l == null && (l = \"\"), i.add(this.options.textNodeName, l);\n }\n s = a + 2;\n } else {\n let a = D(t, s, this.options.removeNSPrefix), o = a.tagName;\n const l = a.rawTagName;\n let d = a.tagExp, u = a.attrExpPresent, c = a.closeIndex;\n this.options.transformTagName && (o = this.options.transformTagName(o)), i && r && i.tagname !== \"!xml\" && (r = this.saveTextToParentTag(r, i, n, !1));\n const p = i;\n if (p && this.options.unpairedTags.indexOf(p.tagname) !== -1 && (i = this.tagsNodeStack.pop(), n = n.substring(0, n.lastIndexOf(\".\"))), o !== e.tagname && (n += n ? \".\" + o : o), this.isItStopNode(this.options.stopNodes, n, o)) {\n let h = \"\";\n if (d.length > 0 && d.lastIndexOf(\"/\") === d.length - 1)\n s = a.closeIndex;\n else if (this.options.unpairedTags.indexOf(o) !== -1)\n s = a.closeIndex;\n else {\n const b = this.readStopNodeData(t, l, c + 1);\n if (!b)\n throw new Error(`Unexpected end of ${l}`);\n s = b.i, h = b.tagContent;\n }\n const w = new N(o);\n o !== d && u && (w[\":@\"] = this.buildAttributesMap(d, n, o)), h && (h = this.parseTextData(h, o, n, !0, u, !0, !0)), n = n.substr(0, n.lastIndexOf(\".\")), w.add(this.options.textNodeName, h), this.addChild(i, w, n);\n } else {\n if (d.length > 0 && d.lastIndexOf(\"/\") === d.length - 1) {\n o[o.length - 1] === \"/\" ? (o = o.substr(0, o.length - 1), n = n.substr(0, n.length - 1), d = o) : d = d.substr(0, d.length - 1), this.options.transformTagName && (o = this.options.transformTagName(o));\n const h = new N(o);\n o !== d && u && (h[\":@\"] = this.buildAttributesMap(d, n, o)), this.addChild(i, h, n), n = n.substr(0, n.lastIndexOf(\".\"));\n } else {\n const h = new N(o);\n this.tagsNodeStack.push(i), o !== d && u && (h[\":@\"] = this.buildAttributesMap(d, n, o)), this.addChild(i, h, n), i = h;\n }\n r = \"\", s = c;\n }\n }\n else\n r += t[s];\n return e.child;\n};\nfunction ue(t, e, i) {\n const r = this.options.updateTag(e.tagname, i, e[\":@\"]);\n r === !1 || (typeof r == \"string\" && (e.tagname = r), t.addChild(e));\n}\nconst ce = function(t) {\n if (this.options.processEntities) {\n for (let e in this.docTypeEntities) {\n const i = this.docTypeEntities[e];\n t = t.replace(i.regx, i.val);\n }\n for (let e in this.lastEntities) {\n const i = this.lastEntities[e];\n t = t.replace(i.regex, i.val);\n }\n if (this.options.htmlEntities)\n for (let e in this.htmlEntities) {\n const i = this.htmlEntities[e];\n t = t.replace(i.regex, i.val);\n }\n t = t.replace(this.ampEntity.regex, this.ampEntity.val);\n }\n return t;\n};\nfunction he(t, e, i, r) {\n return t && (r === void 0 && (r = Object.keys(e.child).length === 0), t = this.parseTextData(t, e.tagname, i, !1, e[\":@\"] ? Object.keys(e[\":@\"]).length !== 0 : !1, r), t !== void 0 && t !== \"\" && e.add(this.options.textNodeName, t), t = \"\"), t;\n}\nfunction pe(t, e, i) {\n const r = \"*.\" + i;\n for (const n in t) {\n const s = t[n];\n if (r === s || e === s)\n return !0;\n }\n return !1;\n}\nfunction fe(t, e, i = \">\") {\n let r, n = \"\";\n for (let s = e; s < t.length; s++) {\n let a = t[s];\n if (r)\n a === r && (r = \"\");\n else if (a === '\"' || a === \"'\")\n r = a;\n else if (a === i[0])\n if (i[1]) {\n if (t[s + 1] === i[1])\n return { data: n, index: s };\n } else\n return { data: n, index: s };\n else\n a === \"\t\" && (a = \" \");\n n += a;\n }\n}\nfunction x(t, e, i, r) {\n const n = t.indexOf(e, i);\n if (n === -1)\n throw new Error(r);\n return n + e.length - 1;\n}\nfunction D(t, e, i, r = \">\") {\n const n = fe(t, e + 1, r);\n if (!n)\n return;\n let s = n.data;\n const a = n.index, o = s.search(/\\s/);\n let l = s, d = !0;\n o !== -1 && (l = s.substr(0, o).replace(/\\s\\s*$/, \"\"), s = s.substr(o + 1));\n const u = l;\n if (i) {\n const c = l.indexOf(\":\");\n c !== -1 && (l = l.substr(c + 1), d = l !== n.data.substr(c + 1));\n }\n return { tagName: l, tagExp: s, closeIndex: a, attrExpPresent: d, rawTagName: u };\n}\nfunction ge(t, e, i) {\n const r = i;\n let n = 1;\n for (; i < t.length; i++)\n if (t[i] === \"<\")\n if (t[i + 1] === \"/\") {\n const s = x(t, \">\", i, `${e} is not closed`);\n if (t.substring(i + 2, s).trim() === e && (n--, n === 0))\n return { tagContent: t.substring(r, i), i: s };\n i = s;\n } else if (t[i + 1] === \"?\")\n i = x(t, \"?>\", i + 1, \"StopNode is not closed.\");\n else if (t.substr(i + 1, 3) === \"!--\")\n i = x(t, \"-->\", i + 3, \"StopNode is not closed.\");\n else if (t.substr(i + 1, 2) === \"![\")\n i = x(t, \"]]>\", i, \"StopNode is not closed.\") - 2;\n else {\n const s = D(t, i, \">\");\n s && ((s && s.tagName) === e && s.tagExp[s.tagExp.length - 1] !== \"/\" && n++, i = s.closeIndex);\n }\n}\nfunction S(t, e, i) {\n if (e && typeof t == \"string\") {\n const r = t.trim();\n return r === \"true\" ? !0 : r === \"false\" ? !1 : ie(t, i);\n } else\n return j.isExist(t) ? t : \"\";\n}\nvar me = ne, nt = {};\nfunction we(t, e) {\n return rt(t, e);\n}\nfunction rt(t, e, i) {\n let r;\n const n = {};\n for (let s = 0; s < t.length; s++) {\n const a = t[s], o = ve(a);\n let l = \"\";\n if (i === void 0 ? l = o : l = i + \".\" + o, o === e.textNodeName)\n r === void 0 ? r = a[o] : r += \"\" + a[o];\n else {\n if (o === void 0)\n continue;\n if (a[o]) {\n let d = rt(a[o], e, l);\n const u = xe(d, e);\n a[\":@\"] ? ye(d, a[\":@\"], l, e) : Object.keys(d).length === 1 && d[e.textNodeName] !== void 0 && !e.alwaysCreateTextNode ? d = d[e.textNodeName] : Object.keys(d).length === 0 && (e.alwaysCreateTextNode ? d[e.textNodeName] = \"\" : d = \"\"), n[o] !== void 0 && n.hasOwnProperty(o) ? (Array.isArray(n[o]) || (n[o] = [n[o]]), n[o].push(d)) : e.isArray(o, l, u) ? n[o] = [d] : n[o] = d;\n }\n }\n }\n return typeof r == \"string\" ? r.length > 0 && (n[e.textNodeName] = r) : r !== void 0 && (n[e.textNodeName] = r), n;\n}\nfunction ve(t) {\n const e = Object.keys(t);\n for (let i = 0; i < e.length; i++) {\n const r = e[i];\n if (r !== \":@\")\n return r;\n }\n}\nfunction ye(t, e, i, r) {\n if (e) {\n const n = Object.keys(e), s = n.length;\n for (let a = 0; a < s; a++) {\n const o = n[a];\n r.isArray(o, i + \".\" + o, !0, !0) ? t[o] = [e[o]] : t[o] = e[o];\n }\n }\n}\nfunction xe(t, e) {\n const { textNodeName: i } = e, r = Object.keys(t).length;\n return !!(r === 0 || r === 1 && (t[i] || typeof t[i] == \"boolean\" || t[i] === 0));\n}\nnt.prettify = we;\nconst { buildOptions: be } = C, Ee = me, { prettify: Ne } = nt, _e = L;\nlet Ae = class {\n constructor(t) {\n this.externalEntities = {}, this.options = be(t);\n }\n parse(t, e) {\n if (typeof t != \"string\")\n if (t.toString)\n t = t.toString();\n else\n throw new Error(\"XML data is accepted in String or Bytes[] form.\");\n if (e) {\n e === !0 && (e = {});\n const n = _e.validate(t, e);\n if (n !== !0)\n throw Error(`${n.err.msg}:${n.err.line}:${n.err.col}`);\n }\n const i = new Ee(this.options);\n i.addExternalEntities(this.externalEntities);\n const r = i.parseXml(t);\n return this.options.preserveOrder || r === void 0 ? r : Ne(r, this.options);\n }\n addEntity(t, e) {\n if (e.indexOf(\"&\") !== -1)\n throw new Error(\"Entity value can't have '&'\");\n if (t.indexOf(\"&\") !== -1 || t.indexOf(\";\") !== -1)\n throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for ' '\");\n if (e === \"&\")\n throw new Error(\"An entity with value '&' is not permitted\");\n this.externalEntities[t] = e;\n }\n};\nvar Te = Ae;\nconst Ie = `\n`;\nfunction Pe(t, e) {\n let i = \"\";\n return e.format && e.indentBy.length > 0 && (i = Ie), st(t, e, \"\", i);\n}\nfunction st(t, e, i, r) {\n let n = \"\", s = !1;\n for (let a = 0; a < t.length; a++) {\n const o = t[a], l = Oe(o);\n if (l === void 0)\n continue;\n let d = \"\";\n if (i.length === 0 ? d = l : d = `${i}.${l}`, l === e.textNodeName) {\n let w = o[l];\n Ce(d, e) || (w = e.tagValueProcessor(l, w), w = ot(w, e)), s && (n += r), n += w, s = !1;\n continue;\n } else if (l === e.cdataPropName) {\n s && (n += r), n += ``, s = !1;\n continue;\n } else if (l === e.commentPropName) {\n n += r + ``, s = !0;\n continue;\n } else if (l[0] === \"?\") {\n const w = X(o[\":@\"], e), b = l === \"?xml\" ? \"\" : r;\n let _ = o[l][0][e.textNodeName];\n _ = _.length !== 0 ? \" \" + _ : \"\", n += b + `<${l}${_}${w}?>`, s = !0;\n continue;\n }\n let u = r;\n u !== \"\" && (u += e.indentBy);\n const c = X(o[\":@\"], e), p = r + `<${l}${c}`, h = st(o[l], e, d, u);\n e.unpairedTags.indexOf(l) !== -1 ? e.suppressUnpairedNode ? n += p + \">\" : n += p + \"/>\" : (!h || h.length === 0) && e.suppressEmptyNode ? n += p + \"/>\" : h && h.endsWith(\">\") ? n += p + `>${h}${r}` : (n += p + \">\", h && r !== \"\" && (h.includes(\"/>\") || h.includes(\"`), s = !0;\n }\n return n;\n}\nfunction Oe(t) {\n const e = Object.keys(t);\n for (let i = 0; i < e.length; i++) {\n const r = e[i];\n if (t.hasOwnProperty(r) && r !== \":@\")\n return r;\n }\n}\nfunction X(t, e) {\n let i = \"\";\n if (t && !e.ignoreAttributes)\n for (let r in t) {\n if (!t.hasOwnProperty(r))\n continue;\n let n = e.attributeValueProcessor(r, t[r]);\n n = ot(n, e), n === !0 && e.suppressBooleanAttributes ? i += ` ${r.substr(e.attributeNamePrefix.length)}` : i += ` ${r.substr(e.attributeNamePrefix.length)}=\"${n}\"`;\n }\n return i;\n}\nfunction Ce(t, e) {\n t = t.substr(0, t.length - e.textNodeName.length - 1);\n let i = t.substr(t.lastIndexOf(\".\") + 1);\n for (let r in e.stopNodes)\n if (e.stopNodes[r] === t || e.stopNodes[r] === \"*.\" + i)\n return !0;\n return !1;\n}\nfunction ot(t, e) {\n if (t && t.length > 0 && e.processEntities)\n for (let i = 0; i < e.entities.length; i++) {\n const r = e.entities[i];\n t = t.replace(r.regex, r.val);\n }\n return t;\n}\nvar De = Pe;\nconst Se = De, Fe = { attributeNamePrefix: \"@_\", attributesGroupName: !1, textNodeName: \"#text\", ignoreAttributes: !0, cdataPropName: !1, format: !1, indentBy: \" \", suppressEmptyNode: !1, suppressUnpairedNode: !0, suppressBooleanAttributes: !0, tagValueProcessor: function(t, e) {\n return e;\n}, attributeValueProcessor: function(t, e) {\n return e;\n}, preserveOrder: !1, commentPropName: !1, unpairedTags: [], entities: [{ regex: new RegExp(\"&\", \"g\"), val: \"&\" }, { regex: new RegExp(\">\", \"g\"), val: \">\" }, { regex: new RegExp(\"<\", \"g\"), val: \"<\" }, { regex: new RegExp(\"'\", \"g\"), val: \"'\" }, { regex: new RegExp('\"', \"g\"), val: \""\" }], processEntities: !0, stopNodes: [], oneListGroup: !1 };\nfunction y(t) {\n this.options = Object.assign({}, Fe, t), this.options.ignoreAttributes || this.options.attributesGroupName ? this.isAttribute = function() {\n return !1;\n } : (this.attrPrefixLen = this.options.attributeNamePrefix.length, this.isAttribute = ke), this.processTextOrObjNode = $e, this.options.format ? (this.indentate = Ve, this.tagEndChar = `>\n`, this.newLine = `\n`) : (this.indentate = function() {\n return \"\";\n }, this.tagEndChar = \">\", this.newLine = \"\");\n}\ny.prototype.build = function(t) {\n return this.options.preserveOrder ? Se(t, this.options) : (Array.isArray(t) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1 && (t = { [this.options.arrayNodeName]: t }), this.j2x(t, 0).val);\n}, y.prototype.j2x = function(t, e) {\n let i = \"\", r = \"\";\n for (let n in t)\n if (t.hasOwnProperty(n))\n if (typeof t[n] > \"u\")\n this.isAttribute(n) && (r += \"\");\n else if (t[n] === null)\n this.isAttribute(n) ? r += \"\" : n[0] === \"?\" ? r += this.indentate(e) + \"<\" + n + \"?\" + this.tagEndChar : r += this.indentate(e) + \"<\" + n + \"/\" + this.tagEndChar;\n else if (t[n] instanceof Date)\n r += this.buildTextValNode(t[n], n, \"\", e);\n else if (typeof t[n] != \"object\") {\n const s = this.isAttribute(n);\n if (s)\n i += this.buildAttrPairStr(s, \"\" + t[n]);\n else if (n === this.options.textNodeName) {\n let a = this.options.tagValueProcessor(n, \"\" + t[n]);\n r += this.replaceEntitiesValue(a);\n } else\n r += this.buildTextValNode(t[n], n, \"\", e);\n } else if (Array.isArray(t[n])) {\n const s = t[n].length;\n let a = \"\";\n for (let o = 0; o < s; o++) {\n const l = t[n][o];\n typeof l > \"u\" || (l === null ? n[0] === \"?\" ? r += this.indentate(e) + \"<\" + n + \"?\" + this.tagEndChar : r += this.indentate(e) + \"<\" + n + \"/\" + this.tagEndChar : typeof l == \"object\" ? this.options.oneListGroup ? a += this.j2x(l, e + 1).val : a += this.processTextOrObjNode(l, n, e) : a += this.buildTextValNode(l, n, \"\", e));\n }\n this.options.oneListGroup && (a = this.buildObjectNode(a, n, \"\", e)), r += a;\n } else if (this.options.attributesGroupName && n === this.options.attributesGroupName) {\n const s = Object.keys(t[n]), a = s.length;\n for (let o = 0; o < a; o++)\n i += this.buildAttrPairStr(s[o], \"\" + t[n][s[o]]);\n } else\n r += this.processTextOrObjNode(t[n], n, e);\n return { attrStr: i, val: r };\n}, y.prototype.buildAttrPairStr = function(t, e) {\n return e = this.options.attributeValueProcessor(t, \"\" + e), e = this.replaceEntitiesValue(e), this.options.suppressBooleanAttributes && e === \"true\" ? \" \" + t : \" \" + t + '=\"' + e + '\"';\n};\nfunction $e(t, e, i) {\n const r = this.j2x(t, i + 1);\n return t[this.options.textNodeName] !== void 0 && Object.keys(t).length === 1 ? this.buildTextValNode(t[this.options.textNodeName], e, r.attrStr, i) : this.buildObjectNode(r.val, e, r.attrStr, i);\n}\ny.prototype.buildObjectNode = function(t, e, i, r) {\n if (t === \"\")\n return e[0] === \"?\" ? this.indentate(r) + \"<\" + e + i + \"?\" + this.tagEndChar : this.indentate(r) + \"<\" + e + i + this.closeTag(e) + this.tagEndChar;\n {\n let n = \"\" + t + n : this.options.commentPropName !== !1 && e === this.options.commentPropName && s.length === 0 ? this.indentate(r) + `` + this.newLine : this.indentate(r) + \"<\" + e + i + s + this.tagEndChar + t + this.indentate(r) + n;\n }\n}, y.prototype.closeTag = function(t) {\n let e = \"\";\n return this.options.unpairedTags.indexOf(t) !== -1 ? this.options.suppressUnpairedNode || (e = \"/\") : this.options.suppressEmptyNode ? e = \"/\" : e = `>` + this.newLine;\n if (this.options.commentPropName !== !1 && e === this.options.commentPropName)\n return this.indentate(r) + `` + this.newLine;\n if (e[0] === \"?\")\n return this.indentate(r) + \"<\" + e + i + \"?\" + this.tagEndChar;\n {\n let n = this.options.tagValueProcessor(e, t);\n return n = this.replaceEntitiesValue(n), n === \"\" ? this.indentate(r) + \"<\" + e + i + this.closeTag(e) + this.tagEndChar : this.indentate(r) + \"<\" + e + i + \">\" + n + \" 0 && this.options.processEntities)\n for (let e = 0; e < this.options.entities.length; e++) {\n const i = this.options.entities[e];\n t = t.replace(i.regex, i.val);\n }\n return t;\n};\nfunction Ve(t) {\n return this.options.indentBy.repeat(t);\n}\nfunction ke(t) {\n return t.startsWith(this.options.attributeNamePrefix) && t !== this.options.textNodeName ? t.substr(this.attrPrefixLen) : !1;\n}\nvar Le = y;\nconst Re = L, je = Te, Me = Le;\nvar H = { XMLParser: je, XMLValidator: Re, XMLBuilder: Me };\nfunction Be(t) {\n if (typeof t != \"string\")\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof t}\\``);\n if (t = t.trim(), t.length === 0 || H.XMLValidator.validate(t) !== !0)\n return !1;\n let e;\n const i = new H.XMLParser();\n try {\n e = i.parse(t);\n } catch {\n return !1;\n }\n return !(!e || !(\"svg\" in e));\n}\nclass ci {\n _view;\n constructor(e) {\n qe(e), this._view = e;\n }\n get id() {\n return this._view.id;\n }\n get name() {\n return this._view.name;\n }\n get caption() {\n return this._view.caption;\n }\n get emptyTitle() {\n return this._view.emptyTitle;\n }\n get emptyCaption() {\n return this._view.emptyCaption;\n }\n get getContents() {\n return this._view.getContents;\n }\n get icon() {\n return this._view.icon;\n }\n set icon(e) {\n this._view.icon = e;\n }\n get order() {\n return this._view.order;\n }\n set order(e) {\n this._view.order = e;\n }\n get params() {\n return this._view.params;\n }\n set params(e) {\n this._view.params = e;\n }\n get columns() {\n return this._view.columns;\n }\n get emptyView() {\n return this._view.emptyView;\n }\n get parent() {\n return this._view.parent;\n }\n get sticky() {\n return this._view.sticky;\n }\n get expanded() {\n return this._view.expanded;\n }\n set expanded(e) {\n this._view.expanded = e;\n }\n get defaultSortKey() {\n return this._view.defaultSortKey;\n }\n}\nconst qe = function(t) {\n if (!t.id || typeof t.id != \"string\")\n throw new Error(\"View id is required and must be a string\");\n if (!t.name || typeof t.name != \"string\")\n throw new Error(\"View name is required and must be a string\");\n if (t.columns && t.columns.length > 0 && (!t.caption || typeof t.caption != \"string\"))\n throw new Error(\"View caption is required for top-level views and must be a string\");\n if (!t.getContents || typeof t.getContents != \"function\")\n throw new Error(\"View getContents is required and must be a function\");\n if (!t.icon || typeof t.icon != \"string\" || !Be(t.icon))\n throw new Error(\"View icon is required and must be a valid svg string\");\n if (!(\"order\" in t) || typeof t.order != \"number\")\n throw new Error(\"View order is required and must be a number\");\n if (t.columns && t.columns.forEach((e) => {\n if (!(e instanceof At))\n throw new Error(\"View columns must be an array of Column. Invalid column found\");\n }), t.emptyView && typeof t.emptyView != \"function\")\n throw new Error(\"View emptyView must be a function\");\n if (t.parent && typeof t.parent != \"string\")\n throw new Error(\"View parent must be a string\");\n if (\"sticky\" in t && typeof t.sticky != \"boolean\")\n throw new Error(\"View sticky must be a boolean\");\n if (\"expanded\" in t && typeof t.expanded != \"boolean\")\n throw new Error(\"View expanded must be a boolean\");\n if (t.defaultSortKey && typeof t.defaultSortKey != \"string\")\n throw new Error(\"View defaultSortKey must be a string\");\n return !0;\n}, hi = function(t) {\n return F().registerEntry(t);\n}, pi = function(t) {\n return F().unregisterEntry(t);\n}, fi = function(t) {\n return F().getEntries(t);\n};\nexport {\n At as Column,\n K as DefaultType,\n bt as File,\n Qe as FileAction,\n k as FileType,\n Et as Folder,\n ii as Header,\n _t as Navigation,\n Q as Node,\n J as NodeStatus,\n v as Permission,\n ci as View,\n hi as addNewFileMenuEntry,\n li as davGetClient,\n oi as davGetDefaultPropfind,\n yt as davGetFavoritesReport,\n ai as davGetRecentSearch,\n xt as davParsePermissions,\n et as davRemoteURL,\n Nt as davResultToNode,\n tt as davRootPath,\n Y as defaultDavNamespaces,\n W as defaultDavProperties,\n Ze as formatFileSize,\n V as getDavNameSpaces,\n $ as getDavProperties,\n di as getFavoriteNodes,\n ei as getFileActions,\n ri as getFileListHeaders,\n ui as getNavigation,\n fi as getNewFileMenuEntries,\n Je as parseFileSize,\n si as registerDavProperty,\n ti as registerFileAction,\n ni as registerFileListHeaders,\n pi as removeNewFileMenuEntry\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-\" + chunkId + \".js?v=\" + \"9712b63e6d8aa316e55f\" + \"\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 8213;","var scriptUrl;\nif (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + \"\";\nvar document = __webpack_require__.g.document;\nif (!scriptUrl && document) {\n\tif (document.currentScript)\n\t\tscriptUrl = document.currentScript.src;\n\tif (!scriptUrl) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tif(scripts.length) {\n\t\t\tvar i = scripts.length - 1;\n\t\t\twhile (i > -1 && !scriptUrl) scriptUrl = scripts[i--].src;\n\t\t}\n\t}\n}\n// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration\n// or pass an empty string (\"\") and set the __webpack_public_path__ variable from your code to use your own logic.\nif (!scriptUrl) throw new Error(\"Automatic publicPath is not supported in this browser\");\nscriptUrl = scriptUrl.replace(/#.*$/, \"\").replace(/\\?.*$/, \"\").replace(/\\/[^\\/]+$/, \"/\");\n__webpack_require__.p = scriptUrl;","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t8213: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunknextcloud\"] = self[\"webpackChunknextcloud\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [7874], function() { return __webpack_require__(5220); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","inProgress","dataWebpackPrefix","STORAGE_STATUS","isMissingAuthConfig","config","status","SUCCESS","userProvided","authMechanism","isNodeExternalStorage","node","type","FileType","File","attributes","scope","backend","_regeneratorRuntime","exports","Op","Object","prototype","hasOwn","hasOwnProperty","defineProperty","obj","key","desc","value","$Symbol","Symbol","iteratorSymbol","iterator","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","enumerable","configurable","writable","err","wrap","innerFn","outerFn","self","tryLocsList","protoGenerator","Generator","generator","create","context","Context","makeInvokeMethod","tryCatch","fn","arg","call","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","getPrototypeOf","NativeIteratorPrototype","values","Gp","defineIteratorMethods","forEach","method","_invoke","AsyncIterator","PromiseImpl","invoke","resolve","reject","record","result","_typeof","__await","then","unwrapped","error","previousPromise","callInvokeWithMethodAndArg","state","Error","undefined","done","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","return","TypeError","info","resultName","next","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","length","i","doneResult","displayName","isGeneratorFunction","genFun","ctor","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","iter","keys","val","object","reverse","pop","skipTempReset","prev","charAt","slice","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","action","FileAction","id","t","iconSvgInline","enabled","nodes","_node$attributes","exec","_callee","response","data","configResponse","_context","fetch","generateOcsUrl","headers","Headers","Accept","credentials","json","t0","ocs","user","password","axios","put","generateUrl","backendOptions","showError","statusMessage","showSuccess","Vue","args","arguments","apply","order","default","DefaultType","DEFAULT","inline","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","locals","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","_objectSpread","target","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","input","hint","prim","toPrimitive","res","String","_toPrimitive","_toPropertyKey","rootPath","concat","_getCurrentUser","getCurrentUser","uid","entryToFolder","ocsEntry","_getCurrentUser2","path","replace","Folder","generateRemoteUrl","root","owner","permissions","Permission","NONE","READ","getContents","_ref","_getCurrentUser3","contents","get","map","folder","getStatus","_asyncToGenerator","_exec","every","renderInline","_callee2","_config","isWarning","overlay","span","_context2","showWarning","basename","document","createElement","classList","add","className","innerHTML","title","message","prepend","_nodes$","INDETERMINATE","view","window","OC","dialogs","confirm","redirect","location","href","OCP","Files","Router","goToRoute","dir","HIDDEN","allowUserMounting","loadState","getNavigation","register","View","caption","emptyCaption","emptyTitle","icon","columns","Column","render","textContent","_node$attributes2","registerFileAction","enterCredentialsAction","inlineStorageCheckAction","openInFilesAction","___CSS_LOADER_EXPORT___","module","m","setApp","build","setUid","P","O","Ze","e","Number","r","Math","floor","log","min","n","s","pow","toFixed","parseFloat","toLocaleString","K","Qe","_action","this","validateAction","execBatch","includes","ti","_nc_fileactions","debug","find","v","CREATE","UPDATE","DELETE","SHARE","ALL","W","Y","d","nc","oc","$","_nc_dav_properties","join","V","_nc_dav_namespaces","oi","ai","k","Z","match","B","URL","startsWith","mtime","Date","crtime","mime","size","J","NEW","FAILED","LOADING","LOCKED","Q","_data","_attributes","_knownDavService","set","a","updateMtime","Reflect","deleteProperty","Proxy","encodedSource","origin","extension","dirname","indexOf","pathname","isDavRessource","split","fileid","move","rename","bt","Et","super","tt","et","li","requesttoken","patch","di","getDirectoryContents","details","includeSelf","filename","Nt","props","xt","parse","lastmod","parseInt","getcontentlength","hasPreview","_t","_views","_currentView","remove","findIndex","splice","views","setActive","active","ui","_nc_navigation","At","_column","Tt","sort","summary","L","I","RegExp","isExist","o","isEmptyObject","merge","l","u","c","p","getValue","isName","getAllMatches","startIndex","lastIndex","h","nameRegexp","R","It","allowBooleanAttributes","unpairedTags","q","U","substr","f","g","z","validate","assign","trim","substring","Vt","Ct","index","G","code","msg","line","tagClosed","tagName","tagStartPos","col","Ft","JSON","stringify","Pt","Ot","Dt","E","$t","St","C","it","preserveOrder","attributeNamePrefix","attributesGroupName","textNodeName","ignoreAttributes","removeNSPrefix","parseTagValue","parseAttributeValue","trimValues","cdataPropName","numberParseOptions","hex","leadingZeros","eNotation","tagValueProcessor","attributeValueProcessor","stopNodes","alwaysCreateTextNode","isArray","commentPropName","processEntities","htmlEntities","ignoreDeclaration","ignorePiTags","transformTagName","transformAttributeName","updateTag","buildOptions","defaultOptions","jt","Bt","qt","Ut","zt","Gt","Xt","Ht","Wt","Yt","Zt","decimalPoint","j","N","tagname","child","addChild","ee","entityName","regx","entities","ie","skipLike","test","Qt","search","re","lastEntities","regex","se","replaceEntitiesValue","S","oe","ae","le","resolveNameSpace","de","x","saveTextToParentTag","lastIndexOf","tagsNodeStack","D","tagExp","attrExpPresent","buildAttributesMap","closeIndex","docTypeEntities","parseTextData","rawTagName","isItStopNode","b","readStopNodeData","tagContent","w","ue","ce","ampEntity","he","pe","fe","ge","nt","rt","ve","xe","ye","Array","prettify","be","Ee","currentNode","apos","gt","lt","quot","space","cent","pound","yen","euro","copyright","reg","inr","addExternalEntities","parseXml","Ne","_e","st","Oe","Ce","ot","X","_","indentBy","suppressUnpairedNode","suppressEmptyNode","endsWith","suppressBooleanAttributes","Se","format","Fe","oneListGroup","y","isAttribute","attrPrefixLen","ke","processTextOrObjNode","$e","indentate","Ve","tagEndChar","newLine","j2x","buildTextValNode","attrStr","buildObjectNode","repeat","arrayNodeName","buildAttrPairStr","closeTag","H","XMLParser","externalEntities","toString","addEntity","XMLValidator","XMLBuilder","ci","_view","qe","params","emptyView","parent","sticky","expanded","defaultSortKey","Be","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","chunkIds","priority","notFulfilled","Infinity","fulfilled","getter","__esModule","definition","chunkId","all","reduce","promises","globalThis","Function","prop","url","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","setAttribute","src","onScriptComplete","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","setTimeout","bind","head","appendChild","nmd","paths","children","scriptUrl","importScripts","currentScript","baseURI","installedChunks","installedChunkData","promise","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file